diff --git a/cours.md b/cours.md
index 4168b042411bcf44b981103e3994cc52cdda167a..4002028501fea3a3a20cb9ef48d0fda921624988 100644
--- a/cours.md
+++ b/cours.md
@@ -1621,34 +1621,53 @@ de l'optimisation discrète: le choix du moyen optimal de livraison d'un paquet,
 
 L'optimisation discrète est une branche des mathématiques très intéressante. Elle permet de poser des problèmes relativements simples, dont les solutions brute force sont très "simples" conceptuellement. En revanche les solutions "réalisables" dans un temps raisonnables (polynomial) sont souvent très difficiles à obtenir comme on l'a vu avec le problème du voyageur de commerce. Le problème se formule de façon simple, il existe une soltution très simple conceptuellement au problème (l'essai de toutes les possibilités), mais qui n'est pas réalisable en pratique, car déjà à 25 villes il faudrait des milliards d'années pour le résoudre.
 
-Une erreur commune est de penser les problèmes d'optimisation discrète comme un cas particulier des problèmes continus. Ce n'est presque jamais une solution. On peut s'en convaincre avec le problème suivant. On cherche
+Une heuristique possible serait de penser les problèmes d'optimisation discrète comme un cas particulier des problèmes continus.
+En résumé on *relaxe* (on retire la condition que $\vec x\in\natural^n$) le problème discret en le rendant continu,
+on trouve la solution et finalement on tronque la solution pour la rendre entière.
+
+En procédant de la sorte, il est possible d'approximer de trouver une solution approchée de relativement bonne qualité, mais
+on est pas du tout certains de trouver la solution optimale.
+
+On peut s'en convaincre avec le problème suivant. On cherche
 \begin{align}
 &\max 10x_1+11x_2,\\
 &10x_1+12x_2\leq 59,\\
 &x_1,x_2\in \real\mbox{ ou } x_1,x_2\in \natural.
 \end{align}
 
-1. Dans le cas continu la solution de ce problème est $x_1=5.9$, $x_2=0$
+Dans le cas discret la solution de ce problème est $x_1=1$, $x_2=4$
+\begin{align}
+&10x_1+11x_2=54,\\
+&10x_1+12x_2=58\leq 59.
+\end{align}
 
+1. L'heuristique de la relaxation au cas continu, nous donne $x_1^\ast=5.9$, $x_2^\ast=0$
 \begin{align}
 &10x_1+11x_2=59,\\
 &10x_1+12x_2=59\leq 59.
 \end{align}
-
-2. Dans le cas réediscret la solution de ce problème est $x_1=1$, $x_2=4$
-
+On aurait donc après avoir tronqué $x_1^\ast$ et $x_2^\ast$, la solution est donc $x_1=5$, $x_2=0$, on obtient
+$$
+10x_1+11x_2=50,
+$$
+ce qui est assez différent de $x_1=1$ et $x_4=4$, où 10x_1+11x_2=58 (mais c'est pas non plus la pire solution possible).
+2. Il est possible d'appliquer une heuristique un peu meilleure en général. Le problème qui nous intéresse ici peut se formuler de la façon suivante en général:
 \begin{align}
-&10x_1+11x_2=54,\\
-&10x_1+12x_2=58\leq 59.
+&\max m_1x_1+m_2x_2,\\
+&v_1x_1+v_2x_2\leq V.
 \end{align}
-
-On voit que non seulement les solutions ne sont pas les mêmes, mais que de plus, elles ont une structure très différente.
+On commence par calculer "la densité" $\rho_i=m_i/v_i$ de chaque indice $i$. Ici on a $\rho_1=1$ et $\rho_2=11/12$.
+On classe les $\rho_i$ par ordre décroissant, et on prend le maximum possible de chacun.
+On commence donc par prendre autant de $i=1$ que possible comme il a la plus grande densité.
+Cela nous donne $x_1=5$ et il ne reste plus la place pour des $x_2$ telle que la contrainte est satisfaire et on a terminé.
+On a donc $x_1=5$ et $x_2=0$, ce qui est le même résultat que la relaxation continue, mais ce n'est pas toujours le cas.
+Cette façon de procéder est au moins aussi bonne que la relaxation continue en général (elle peut donc être meilleure).
 
 ## Programmation linéaire
 
 Contrairement à ce qu'on pourrait croire, la *programmation linéaire* n'a pas forcément grand chose à avoir avec l'informatique. Il s'agit d'un sous ensemble des problèmes d'optimisation mathématique. Si la fonction objective et les fonctions de contraintes sont toutes **linéaires**, alors le problème en lui est même est dit linéaire. La façon la plus générale d'écrire un programme linéaire discret, est de faire un "mélange" (le programme est dit *mixte*) entre un programme discret et un programme continu
 \begin{align}
-\min_{\vec x_1\in\real^n,\vec x_2\in\integer^n} \vec c_1^T\cdot \vec x_1+ \vec c_2^T\cdot \vec x_2+,\\
+\min_{\vec x_1\in\real^n,\vec x_2\in\integer^n} \vec c_1^T\cdot \vec x_1+ \vec c_2^T\cdot \vec x_2,\\
 \mat{A}_1\cdot \vec x_1+\mat{A}_2\cdot \vec x_2\leq b,
 \end{align}
 où $\vec c_1$ et $\vec c_2$ sont des vecteurs, et $\mat{A}_1$ et $\mat{A}_2$ des matrices des parties continues, $\vec x_1$ et discrfètes, $\vec x_2$.
@@ -1657,6 +1676,51 @@ Les programmes linéaires continus ont tous des solutions polynomiales, en revan
 
 Il existe bien évidemment des programmes non-linéaires (la fonction objectif, ou les fonctions de contraintes ne sont pas linéaires) mais leur résolution est en général beaucoup plus compliquée, car nous ne sommes pas assurés de l'existence d'un minimum global (il existe également des minima locaux).
 
+### Pogrammation linéaire continue: l'algorithme du simplexe
+
+Une des méthodes les plus répandues de résolution de problèmes d'optimisation continue est la méthode du simplexe linéaire.
+Bien que cette méthode soit sous-optimale (elle est a en général un coût exponentiel en fonction du nombre de dimensions)
+elle reste très utilisée, car elle est relativement intuitive et simple à implémenter.
+
+Nous commençons par définir un problème de programmation linéaire continu de façon générale comme
+\begin{align}
+&\min_{\vec x\in\real^n} {\vec c}^T\cdot \vec x,\\
+&\mat{A}\cdot \vec x\leq b,\\
+&\vec x \geq \vec 0,\quad \vec x\in\real^n.
+\end{align}
+Si on suppose que $\mat{A}$ représente une application surjective, on peut représenter
+$\mat{A}$ comme un polyèdre fermé.
+
+---
+
+Exemple (Polyèdre) +.#
+
+Soit le problème de programmation linéaire suivant
+\begin{align}
+&\max 10x_1+11x_2,\\
+&10x_1+12x_2\leq 59,\\
+&x_1\geq 0,\quad x_2\geq 0.
+\end{align}
+On peut faire correspondre la formulation générale ci-dessus à
+\begin{align}
+\vec x = \vectwo{x_1}{x_2},\quad \vec c=\vectwo{10}{11},\\
+\mat{A}=\left(10\ 12\right),\quad \vec b=(59).
+\end{align}
+Les conditions sur $\vec x$
+\begin{align*}
+&x_2\leq \frac{59-10 x_2}{12},\\
+&x_1\geq 0,\quad x_2\geq 0,
+\end{align*}
+peuvent se représenter graphiquement par un polygone (nous sommes en deux dimensions), comme représenté sur la @fig:polygon.
+
+![Les conditions $x_2\leq\frac{59-10 x_2}{12}$ (noir), $x_1\geq 0$ (rouge), $x_2\geq 0$ (bleu) représentées graphiquement. Tout ce qui est à l'intérieur du triangle satisfait ces trois conditions simultanément.](figs/polygon.svg){#fig:polygon width=70%}
+
+---
+
+### Le problème du sac à dos
+
+Le problème du sac à dos est un problème classique en optimisation combinatoire.
+
 ### Modélisation: apprentissage par problème
 
 L'exercice de transposer un problème d'optimisation en formulation mathématique est appelée **modélisation**. L'exercice en lui même est intéressant, et nous allons en voir quelques exemples que vous devrez proposer et résoudre par vous mêmes.
@@ -1668,15 +1732,15 @@ Exemple (Transport d'abricots) +.#
 Une entreprise de fabrication de confitures d'abricots du Valais possède deux lieux de récoltes, à Sion et à Martigny. Elle doit transporter les abricots dans trois usines pour la fabrication des confitures, une à Genève, une à Olten et une à Lugano. L'usine de Genève a besoin de $4$ tonnes par semaine, celle d'Olten de $3$ tonnes et celle de Lugano de $2$ tonnes.
 Le champs de Sion peut fournir $6$ tonnes et celui de Martigny $3$ tonnes.
 
-Les coûts de transport entre les champs et les usine peuvent être représentés sous forme de tableau comme en milliers
+Les coûts de transport entre les champs et les usines peuvent être représentés sous forme de tableau comme en milliers
 de francs par tonnes.
 
 +----------+--------+-------+--------+
 |          | Genève | Olten | Lugano |
 +==========+========+=======+========+
-| Sion     | 5      | 6     | 3      |
+| Sion     | 4      | 5     | 2      |
 +----------+--------+-------+--------+
-| Martigny | 3      | 4     | 4      |
+| Martigny | 2      | 3     | 3      |
 +----------+--------+-------+--------+
 
 ---
diff --git a/figs/polygon.svg b/figs/polygon.svg
new file mode 100644
index 0000000000000000000000000000000000000000..cce7c5d73ab45151fd4143f300ece4328f4524f0
--- /dev/null
+++ b/figs/polygon.svg
@@ -0,0 +1,593 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Created with matplotlib (https://matplotlib.org/) -->
+<svg height="345.6pt" version="1.1" viewBox="0 0 460.8 345.6" width="460.8pt" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <defs>
+  <style type="text/css">
+*{stroke-linecap:butt;stroke-linejoin:round;}
+  </style>
+ </defs>
+ <g id="figure_1">
+  <g id="patch_1">
+   <path d="M 0 345.6 
+L 460.8 345.6 
+L 460.8 0 
+L 0 0 
+z
+" style="fill:#ffffff;"/>
+  </g>
+  <g id="axes_1">
+   <g id="patch_2">
+    <path d="M 57.6 307.584 
+L 414.72 307.584 
+L 414.72 41.472 
+L 57.6 41.472 
+z
+" style="fill:#ffffff;"/>
+   </g>
+   <g id="matplotlib.axis_1">
+    <g id="xtick_1">
+     <g id="line2d_1">
+      <defs>
+       <path d="M 0 0 
+L 0 3.5 
+" id="m2be6e6f9b3" style="stroke:#000000;stroke-width:0.8;"/>
+      </defs>
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="73.832727" xlink:href="#m2be6e6f9b3" y="307.584"/>
+      </g>
+     </g>
+     <g id="text_1">
+      <!-- 0 -->
+      <defs>
+       <path d="M 31.78125 66.40625 
+Q 24.171875 66.40625 20.328125 58.90625 
+Q 16.5 51.421875 16.5 36.375 
+Q 16.5 21.390625 20.328125 13.890625 
+Q 24.171875 6.390625 31.78125 6.390625 
+Q 39.453125 6.390625 43.28125 13.890625 
+Q 47.125 21.390625 47.125 36.375 
+Q 47.125 51.421875 43.28125 58.90625 
+Q 39.453125 66.40625 31.78125 66.40625 
+z
+M 31.78125 74.21875 
+Q 44.046875 74.21875 50.515625 64.515625 
+Q 56.984375 54.828125 56.984375 36.375 
+Q 56.984375 17.96875 50.515625 8.265625 
+Q 44.046875 -1.421875 31.78125 -1.421875 
+Q 19.53125 -1.421875 13.0625 8.265625 
+Q 6.59375 17.96875 6.59375 36.375 
+Q 6.59375 54.828125 13.0625 64.515625 
+Q 19.53125 74.21875 31.78125 74.21875 
+z
+" id="DejaVuSans-48"/>
+      </defs>
+      <g transform="translate(70.651477 322.182437)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-48"/>
+      </g>
+     </g>
+    </g>
+    <g id="xtick_2">
+     <g id="line2d_2">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="128.858921" xlink:href="#m2be6e6f9b3" y="307.584"/>
+      </g>
+     </g>
+     <g id="text_2">
+      <!-- 1 -->
+      <defs>
+       <path d="M 12.40625 8.296875 
+L 28.515625 8.296875 
+L 28.515625 63.921875 
+L 10.984375 60.40625 
+L 10.984375 69.390625 
+L 28.421875 72.90625 
+L 38.28125 72.90625 
+L 38.28125 8.296875 
+L 54.390625 8.296875 
+L 54.390625 0 
+L 12.40625 0 
+z
+" id="DejaVuSans-49"/>
+      </defs>
+      <g transform="translate(125.677671 322.182437)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-49"/>
+      </g>
+     </g>
+    </g>
+    <g id="xtick_3">
+     <g id="line2d_3">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="183.885116" xlink:href="#m2be6e6f9b3" y="307.584"/>
+      </g>
+     </g>
+     <g id="text_3">
+      <!-- 2 -->
+      <defs>
+       <path d="M 19.1875 8.296875 
+L 53.609375 8.296875 
+L 53.609375 0 
+L 7.328125 0 
+L 7.328125 8.296875 
+Q 12.9375 14.109375 22.625 23.890625 
+Q 32.328125 33.6875 34.8125 36.53125 
+Q 39.546875 41.84375 41.421875 45.53125 
+Q 43.3125 49.21875 43.3125 52.78125 
+Q 43.3125 58.59375 39.234375 62.25 
+Q 35.15625 65.921875 28.609375 65.921875 
+Q 23.96875 65.921875 18.8125 64.3125 
+Q 13.671875 62.703125 7.8125 59.421875 
+L 7.8125 69.390625 
+Q 13.765625 71.78125 18.9375 73 
+Q 24.125 74.21875 28.421875 74.21875 
+Q 39.75 74.21875 46.484375 68.546875 
+Q 53.21875 62.890625 53.21875 53.421875 
+Q 53.21875 48.921875 51.53125 44.890625 
+Q 49.859375 40.875 45.40625 35.40625 
+Q 44.1875 33.984375 37.640625 27.21875 
+Q 31.109375 20.453125 19.1875 8.296875 
+z
+" id="DejaVuSans-50"/>
+      </defs>
+      <g transform="translate(180.703866 322.182437)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-50"/>
+      </g>
+     </g>
+    </g>
+    <g id="xtick_4">
+     <g id="line2d_4">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="238.91131" xlink:href="#m2be6e6f9b3" y="307.584"/>
+      </g>
+     </g>
+     <g id="text_4">
+      <!-- 3 -->
+      <defs>
+       <path d="M 40.578125 39.3125 
+Q 47.65625 37.796875 51.625 33 
+Q 55.609375 28.21875 55.609375 21.1875 
+Q 55.609375 10.40625 48.1875 4.484375 
+Q 40.765625 -1.421875 27.09375 -1.421875 
+Q 22.515625 -1.421875 17.65625 -0.515625 
+Q 12.796875 0.390625 7.625 2.203125 
+L 7.625 11.71875 
+Q 11.71875 9.328125 16.59375 8.109375 
+Q 21.484375 6.890625 26.8125 6.890625 
+Q 36.078125 6.890625 40.9375 10.546875 
+Q 45.796875 14.203125 45.796875 21.1875 
+Q 45.796875 27.640625 41.28125 31.265625 
+Q 36.765625 34.90625 28.71875 34.90625 
+L 20.21875 34.90625 
+L 20.21875 43.015625 
+L 29.109375 43.015625 
+Q 36.375 43.015625 40.234375 45.921875 
+Q 44.09375 48.828125 44.09375 54.296875 
+Q 44.09375 59.90625 40.109375 62.90625 
+Q 36.140625 65.921875 28.71875 65.921875 
+Q 24.65625 65.921875 20.015625 65.03125 
+Q 15.375 64.15625 9.8125 62.3125 
+L 9.8125 71.09375 
+Q 15.4375 72.65625 20.34375 73.4375 
+Q 25.25 74.21875 29.59375 74.21875 
+Q 40.828125 74.21875 47.359375 69.109375 
+Q 53.90625 64.015625 53.90625 55.328125 
+Q 53.90625 49.265625 50.4375 45.09375 
+Q 46.96875 40.921875 40.578125 39.3125 
+z
+" id="DejaVuSans-51"/>
+      </defs>
+      <g transform="translate(235.73006 322.182437)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-51"/>
+      </g>
+     </g>
+    </g>
+    <g id="xtick_5">
+     <g id="line2d_5">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="293.937504" xlink:href="#m2be6e6f9b3" y="307.584"/>
+      </g>
+     </g>
+     <g id="text_5">
+      <!-- 4 -->
+      <defs>
+       <path d="M 37.796875 64.3125 
+L 12.890625 25.390625 
+L 37.796875 25.390625 
+z
+M 35.203125 72.90625 
+L 47.609375 72.90625 
+L 47.609375 25.390625 
+L 58.015625 25.390625 
+L 58.015625 17.1875 
+L 47.609375 17.1875 
+L 47.609375 0 
+L 37.796875 0 
+L 37.796875 17.1875 
+L 4.890625 17.1875 
+L 4.890625 26.703125 
+z
+" id="DejaVuSans-52"/>
+      </defs>
+      <g transform="translate(290.756254 322.182437)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-52"/>
+      </g>
+     </g>
+    </g>
+    <g id="xtick_6">
+     <g id="line2d_6">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="348.963698" xlink:href="#m2be6e6f9b3" y="307.584"/>
+      </g>
+     </g>
+     <g id="text_6">
+      <!-- 5 -->
+      <defs>
+       <path d="M 10.796875 72.90625 
+L 49.515625 72.90625 
+L 49.515625 64.59375 
+L 19.828125 64.59375 
+L 19.828125 46.734375 
+Q 21.96875 47.46875 24.109375 47.828125 
+Q 26.265625 48.1875 28.421875 48.1875 
+Q 40.625 48.1875 47.75 41.5 
+Q 54.890625 34.8125 54.890625 23.390625 
+Q 54.890625 11.625 47.5625 5.09375 
+Q 40.234375 -1.421875 26.90625 -1.421875 
+Q 22.3125 -1.421875 17.546875 -0.640625 
+Q 12.796875 0.140625 7.71875 1.703125 
+L 7.71875 11.625 
+Q 12.109375 9.234375 16.796875 8.0625 
+Q 21.484375 6.890625 26.703125 6.890625 
+Q 35.15625 6.890625 40.078125 11.328125 
+Q 45.015625 15.765625 45.015625 23.390625 
+Q 45.015625 31 40.078125 35.4375 
+Q 35.15625 39.890625 26.703125 39.890625 
+Q 22.75 39.890625 18.8125 39.015625 
+Q 14.890625 38.140625 10.796875 36.28125 
+z
+" id="DejaVuSans-53"/>
+      </defs>
+      <g transform="translate(345.782448 322.182437)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-53"/>
+      </g>
+     </g>
+    </g>
+    <g id="xtick_7">
+     <g id="line2d_7">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="403.989892" xlink:href="#m2be6e6f9b3" y="307.584"/>
+      </g>
+     </g>
+     <g id="text_7">
+      <!-- 6 -->
+      <defs>
+       <path d="M 33.015625 40.375 
+Q 26.375 40.375 22.484375 35.828125 
+Q 18.609375 31.296875 18.609375 23.390625 
+Q 18.609375 15.53125 22.484375 10.953125 
+Q 26.375 6.390625 33.015625 6.390625 
+Q 39.65625 6.390625 43.53125 10.953125 
+Q 47.40625 15.53125 47.40625 23.390625 
+Q 47.40625 31.296875 43.53125 35.828125 
+Q 39.65625 40.375 33.015625 40.375 
+z
+M 52.59375 71.296875 
+L 52.59375 62.3125 
+Q 48.875 64.0625 45.09375 64.984375 
+Q 41.3125 65.921875 37.59375 65.921875 
+Q 27.828125 65.921875 22.671875 59.328125 
+Q 17.53125 52.734375 16.796875 39.40625 
+Q 19.671875 43.65625 24.015625 45.921875 
+Q 28.375 48.1875 33.59375 48.1875 
+Q 44.578125 48.1875 50.953125 41.515625 
+Q 57.328125 34.859375 57.328125 23.390625 
+Q 57.328125 12.15625 50.6875 5.359375 
+Q 44.046875 -1.421875 33.015625 -1.421875 
+Q 20.359375 -1.421875 13.671875 8.265625 
+Q 6.984375 17.96875 6.984375 36.375 
+Q 6.984375 53.65625 15.1875 63.9375 
+Q 23.390625 74.21875 37.203125 74.21875 
+Q 40.921875 74.21875 44.703125 73.484375 
+Q 48.484375 72.75 52.59375 71.296875 
+z
+" id="DejaVuSans-54"/>
+      </defs>
+      <g transform="translate(400.808642 322.182437)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-54"/>
+      </g>
+     </g>
+    </g>
+   </g>
+   <g id="matplotlib.axis_2">
+    <g id="ytick_1">
+     <g id="line2d_8">
+      <defs>
+       <path d="M 0 0 
+L -3.5 0 
+" id="m3b4c479270" style="stroke:#000000;stroke-width:0.8;"/>
+      </defs>
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="57.6" xlink:href="#m3b4c479270" y="295.488"/>
+      </g>
+     </g>
+     <g id="text_8">
+      <!-- 0 -->
+      <g transform="translate(44.2375 299.287219)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-48"/>
+      </g>
+     </g>
+    </g>
+    <g id="ytick_2">
+     <g id="line2d_9">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="57.6" xlink:href="#m3b4c479270" y="246.283932"/>
+      </g>
+     </g>
+     <g id="text_9">
+      <!-- 1 -->
+      <g transform="translate(44.2375 250.083151)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-49"/>
+      </g>
+     </g>
+    </g>
+    <g id="ytick_3">
+     <g id="line2d_10">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="57.6" xlink:href="#m3b4c479270" y="197.079864"/>
+      </g>
+     </g>
+     <g id="text_10">
+      <!-- 2 -->
+      <g transform="translate(44.2375 200.879083)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-50"/>
+      </g>
+     </g>
+    </g>
+    <g id="ytick_4">
+     <g id="line2d_11">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="57.6" xlink:href="#m3b4c479270" y="147.875797"/>
+      </g>
+     </g>
+     <g id="text_11">
+      <!-- 3 -->
+      <g transform="translate(44.2375 151.675015)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-51"/>
+      </g>
+     </g>
+    </g>
+    <g id="ytick_5">
+     <g id="line2d_12">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="57.6" xlink:href="#m3b4c479270" y="98.671729"/>
+      </g>
+     </g>
+     <g id="text_12">
+      <!-- 4 -->
+      <g transform="translate(44.2375 102.470948)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-52"/>
+      </g>
+     </g>
+    </g>
+    <g id="ytick_6">
+     <g id="line2d_13">
+      <g>
+       <use style="stroke:#000000;stroke-width:0.8;" x="57.6" xlink:href="#m3b4c479270" y="49.467661"/>
+      </g>
+     </g>
+     <g id="text_13">
+      <!-- 5 -->
+      <g transform="translate(44.2375 53.26688)scale(0.1 -0.1)">
+       <use xlink:href="#DejaVuSans-53"/>
+      </g>
+     </g>
+    </g>
+   </g>
+   <g id="line2d_14">
+    <path clip-path="url(#pc71ad428b8)" d="M 73.832727 53.568 
+L 79.335347 57.668339 
+L 84.837966 61.768678 
+L 90.340586 65.869017 
+L 95.843205 69.969356 
+L 101.345824 74.069695 
+L 106.848444 78.170034 
+L 112.351063 82.270373 
+L 117.853683 86.370712 
+L 123.356302 90.471051 
+L 128.858921 94.57139 
+L 134.361541 98.671729 
+L 139.86416 102.772068 
+L 145.36678 106.872407 
+L 150.869399 110.972746 
+L 156.372018 115.073085 
+L 161.874638 119.173424 
+L 167.377257 123.273763 
+L 172.879877 127.374102 
+L 178.382496 131.474441 
+L 183.885116 135.57478 
+L 189.387735 139.675119 
+L 194.890354 143.775458 
+L 200.392974 147.875797 
+L 205.895593 151.976136 
+L 211.398213 156.076475 
+L 216.900832 160.176814 
+L 222.403451 164.277153 
+L 227.906071 168.377492 
+L 233.40869 172.477831 
+L 238.91131 176.578169 
+L 244.413929 180.678508 
+L 249.916549 184.778847 
+L 255.419168 188.879186 
+L 260.921787 192.979525 
+L 266.424407 197.079864 
+L 271.927026 201.180203 
+L 277.429646 205.280542 
+L 282.932265 209.380881 
+L 288.434884 213.48122 
+L 293.937504 217.581559 
+L 299.440123 221.681898 
+L 304.942743 225.782237 
+L 310.445362 229.882576 
+L 315.947982 233.982915 
+L 321.450601 238.083254 
+L 326.95322 242.183593 
+L 332.45584 246.283932 
+L 337.958459 250.384271 
+L 343.461079 254.48461 
+L 348.963698 258.584949 
+L 354.466317 262.685288 
+L 359.968937 266.785627 
+L 365.471556 270.885966 
+L 370.974176 274.986305 
+L 376.476795 279.086644 
+L 381.979414 283.186983 
+L 387.482034 287.287322 
+L 392.984653 291.387661 
+L 398.487273 295.488 
+" style="fill:none;stroke:#000000;stroke-linecap:square;stroke-width:1.5;"/>
+   </g>
+   <g id="line2d_15">
+    <path clip-path="url(#pc71ad428b8)" d="M 73.832727 295.488 
+L 79.335347 295.488 
+L 84.837966 295.488 
+L 90.340586 295.488 
+L 95.843205 295.488 
+L 101.345824 295.488 
+L 106.848444 295.488 
+L 112.351063 295.488 
+L 117.853683 295.488 
+L 123.356302 295.488 
+L 128.858921 295.488 
+L 134.361541 295.488 
+L 139.86416 295.488 
+L 145.36678 295.488 
+L 150.869399 295.488 
+L 156.372018 295.488 
+L 161.874638 295.488 
+L 167.377257 295.488 
+L 172.879877 295.488 
+L 178.382496 295.488 
+L 183.885116 295.488 
+L 189.387735 295.488 
+L 194.890354 295.488 
+L 200.392974 295.488 
+L 205.895593 295.488 
+L 211.398213 295.488 
+L 216.900832 295.488 
+L 222.403451 295.488 
+L 227.906071 295.488 
+L 233.40869 295.488 
+L 238.91131 295.488 
+L 244.413929 295.488 
+L 249.916549 295.488 
+L 255.419168 295.488 
+L 260.921787 295.488 
+L 266.424407 295.488 
+L 271.927026 295.488 
+L 277.429646 295.488 
+L 282.932265 295.488 
+L 288.434884 295.488 
+L 293.937504 295.488 
+L 299.440123 295.488 
+L 304.942743 295.488 
+L 310.445362 295.488 
+L 315.947982 295.488 
+L 321.450601 295.488 
+L 326.95322 295.488 
+L 332.45584 295.488 
+L 337.958459 295.488 
+L 343.461079 295.488 
+L 348.963698 295.488 
+L 354.466317 295.488 
+L 359.968937 295.488 
+L 365.471556 295.488 
+L 370.974176 295.488 
+L 376.476795 295.488 
+L 381.979414 295.488 
+L 387.482034 295.488 
+L 392.984653 295.488 
+L 398.487273 295.488 
+" style="fill:none;stroke:#ff0000;stroke-linecap:square;stroke-width:1.5;"/>
+   </g>
+   <g id="line2d_16">
+    <path clip-path="url(#pc71ad428b8)" d="M 73.832727 295.488 
+L 73.832727 290.567593 
+L 73.832727 285.647186 
+L 73.832727 280.72678 
+L 73.832727 275.806373 
+L 73.832727 270.885966 
+L 73.832727 265.965559 
+L 73.832727 261.045153 
+L 73.832727 256.124746 
+L 73.832727 251.204339 
+L 73.832727 246.283932 
+L 73.832727 241.363525 
+L 73.832727 236.443119 
+L 73.832727 231.522712 
+L 73.832727 226.602305 
+L 73.832727 221.681898 
+L 73.832727 216.761492 
+L 73.832727 211.841085 
+L 73.832727 206.920678 
+L 73.832727 202.000271 
+L 73.832727 197.079864 
+L 73.832727 192.159458 
+L 73.832727 187.239051 
+L 73.832727 182.318644 
+L 73.832727 177.398237 
+L 73.832727 172.477831 
+L 73.832727 167.557424 
+L 73.832727 162.637017 
+L 73.832727 157.71661 
+L 73.832727 152.796203 
+L 73.832727 147.875797 
+L 73.832727 142.95539 
+L 73.832727 138.034983 
+L 73.832727 133.114576 
+L 73.832727 128.194169 
+L 73.832727 123.273763 
+L 73.832727 118.353356 
+L 73.832727 113.432949 
+L 73.832727 108.512542 
+L 73.832727 103.592136 
+L 73.832727 98.671729 
+L 73.832727 93.751322 
+L 73.832727 88.830915 
+L 73.832727 83.910508 
+L 73.832727 78.990102 
+L 73.832727 74.069695 
+L 73.832727 69.149288 
+L 73.832727 64.228881 
+L 73.832727 59.308475 
+L 73.832727 54.388068 
+" style="fill:none;stroke:#0000ff;stroke-linecap:square;stroke-width:1.5;"/>
+   </g>
+   <g id="patch_3">
+    <path d="M 57.6 307.584 
+L 57.6 41.472 
+" style="fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;"/>
+   </g>
+   <g id="patch_4">
+    <path d="M 414.72 307.584 
+L 414.72 41.472 
+" style="fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;"/>
+   </g>
+   <g id="patch_5">
+    <path d="M 57.6 307.584 
+L 414.72 307.584 
+" style="fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;"/>
+   </g>
+   <g id="patch_6">
+    <path d="M 57.6 41.472 
+L 414.72 41.472 
+" style="fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;stroke-width:0.8;"/>
+   </g>
+  </g>
+ </g>
+ <defs>
+  <clipPath id="pc71ad428b8">
+   <rect height="266.112" width="357.12" x="57.6" y="41.472"/>
+  </clipPath>
+ </defs>
+</svg>