2021-11-26 13:51:01 +00:00
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# TP 2-3 : Branch-and-bound applied to a knapsack problem"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
2021-12-05 15:21:15 +00:00
"## Initialisation (à faire une seule fois)"
2021-11-26 13:51:01 +00:00
]
},
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 11,
2021-11-26 13:51:01 +00:00
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"\u001b[32m\u001b[1m Resolving\u001b[22m\u001b[39m package versions...\n",
2021-12-09 07:25:20 +00:00
"\u001b[32m\u001b[1m No Changes\u001b[22m\u001b[39m to `~/.julia/environments/v1.7/Project.toml`\n",
"\u001b[32m\u001b[1m No Changes\u001b[22m\u001b[39m to `~/.julia/environments/v1.7/Manifest.toml`\n",
2021-11-26 16:57:38 +00:00
"\u001b[32m\u001b[1mPrecompiling\u001b[22m\u001b[39m project...\n",
"\u001b[32m ✓ \u001b[39mTestOptinum\n",
2021-12-09 07:25:20 +00:00
" 1 dependency successfully precompiled in 2 seconds (262 already precompiled, 2 skipped during auto due to previous errors)\n",
2021-11-26 13:51:01 +00:00
"\u001b[32m\u001b[1m Resolving\u001b[22m\u001b[39m package versions...\n",
2021-12-09 07:25:20 +00:00
"\u001b[32m\u001b[1m No Changes\u001b[22m\u001b[39m to `~/.julia/environments/v1.7/Project.toml`\n",
"\u001b[32m\u001b[1m No Changes\u001b[22m\u001b[39m to `~/.julia/environments/v1.7/Manifest.toml`\n",
2021-11-26 16:57:38 +00:00
"\u001b[32m\u001b[1mPrecompiling\u001b[22m\u001b[39m project...\n",
"\u001b[32m ✓ \u001b[39mTestOptinum\n",
2021-12-09 07:25:20 +00:00
" 1 dependency successfully precompiled in 1 seconds (262 already precompiled, 2 skipped during auto due to previous errors)\n"
2021-11-26 13:51:01 +00:00
]
}
],
"source": [
2021-12-05 15:21:15 +00:00
"import Pkg;\n",
2021-12-05 14:25:55 +00:00
"Pkg.add(\"GraphRecipes\");\n",
2021-12-05 15:21:15 +00:00
"Pkg.add(\"Plots\");\n",
2021-11-26 13:51:01 +00:00
"using GraphRecipes, Plots #only used to visualize the search tree at the end of the branch-and-bound"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
2021-12-05 15:21:15 +00:00
"## Récupération des données"
2021-11-26 13:51:01 +00:00
]
},
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 12,
2021-11-26 13:51:01 +00:00
"metadata": {},
2021-12-05 15:21:15 +00:00
"outputs": [
{
"data": {
"text/plain": [
"readKnapInstance"
]
},
"metadata": {},
2021-12-09 07:25:20 +00:00
"output_type": "display_data"
2021-12-05 15:21:15 +00:00
}
],
2021-11-26 13:51:01 +00:00
"source": [
2021-12-05 14:25:55 +00:00
"\"\"\"Open and read a KnapFile.\n",
"\n",
2021-12-05 15:21:15 +00:00
"Args: \\\\\n",
" - filename (String): the name of the file to read.\n",
2021-12-05 14:25:55 +00:00
"\n",
2021-12-05 15:21:15 +00:00
"Returns: \\\\\n",
" - price (Vector{Integer}): prices of items to put in the KnapSack. \\\\\n",
" - weight (Vector{Integer}): weights of items to put in the KnapSack. \\\\\n",
" - capacity (Integer): the maximum capacity of the KnapSack.\n",
2021-12-05 14:25:55 +00:00
"\"\"\"\n",
2021-11-26 15:58:55 +00:00
"function readKnapInstance(filename)\n",
2021-12-05 15:21:15 +00:00
" price = []\n",
" weight = []\n",
2021-11-26 15:58:55 +00:00
" capacity = -1\n",
2021-11-26 13:51:01 +00:00
" open(filename) do f\n",
2021-12-05 15:21:15 +00:00
" for i = 1:3\n",
2021-11-26 13:51:01 +00:00
" tok = split(readline(f))\n",
" if (tok[1] == \"ListPrices=\")\n",
2021-12-05 15:21:15 +00:00
" for i = 2:(length(tok)-1)\n",
" push!(price, parse(Int64, tok[i]))\n",
2021-11-26 13:51:01 +00:00
" end\n",
2021-11-26 15:58:55 +00:00
" elseif (tok[1] == \"ListWeights=\")\n",
2021-12-05 15:21:15 +00:00
" for i = 2:(length(tok)-1)\n",
" push!(weight, parse(Int64, tok[i]))\n",
2021-11-26 13:51:01 +00:00
" end\n",
2021-11-26 15:58:55 +00:00
" elseif (tok[1] == \"Capacity=\")\n",
" capacity = parse(Int64, tok[2])\n",
2021-11-26 13:51:01 +00:00
" else\n",
" println(\"Unknown read :\", tok)\n",
2021-12-05 15:21:15 +00:00
" end\n",
2021-11-26 13:51:01 +00:00
" end\n",
" end\n",
" return price, weight, capacity\n",
2021-12-05 14:25:55 +00:00
"end"
]
},
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 13,
2021-12-05 14:25:55 +00:00
"metadata": {},
"outputs": [],
"source": [
2021-12-09 14:53:39 +00:00
"# on convert tous les .opb en .lp pour les utiliser dans glpk\n",
2021-12-05 14:25:55 +00:00
"for (root, dirs, files) in walkdir(\"data\")\n",
" for file in files\n",
" if endswith(file, \".opb\")\n",
2021-12-09 14:48:12 +00:00
" price, weight, capacity = readKnapInstance(root * \"/\" * file)\n",
2021-12-09 14:53:39 +00:00
" filename = splitext(file)[1]\n",
" f = open(root * \"/\" * filename * \".lp\", \"w\");\n",
" write(f, \"Maximize\\n\")\n",
" write(f, \" Knap: \")\n",
" for (i, p) in enumerate(price)\n",
" write(f, \"+ \" * string(p) * \" obj\" * string(i) * \" \")\n",
" end\n",
" write(f, \"\\n\")\n",
"\n",
" write(f, \"\\nSubject To\\n\")\n",
" write(f, \" MaxKnap: \")\n",
" for (i, w) in enumerate(weight)\n",
" write(f, \"+ \" * string(w) * \" obj\" * string(i) * \" \")\n",
" end\n",
" write(f, \"\\n\")\n",
"\n",
" write(f, \"\\nBinary\\n\")\n",
" for (i, p) in enumerate(price)\n",
" write(f, \" obj\" * string(i) * \"\\n\")\n",
" end\n",
"\n",
" write(f, \"\\nEnd\\n\")\n",
" close(f)\n",
2021-12-05 14:25:55 +00:00
" end\n",
" end\n",
"end"
2021-11-26 13:51:01 +00:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
2021-12-05 15:21:15 +00:00
"## Procédure d'application des tests de sondabilités TA, TO et TR pour le cas de la relaxation linéaire"
2021-11-26 13:51:01 +00:00
]
},
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 14,
2021-11-26 13:51:01 +00:00
"metadata": {},
2021-12-05 15:21:15 +00:00
"outputs": [
{
"data": {
"text/plain": [
"TestsSondabilite_relaxlin"
]
},
"metadata": {},
2021-12-09 07:25:20 +00:00
"output_type": "display_data"
2021-12-05 15:21:15 +00:00
}
],
2021-11-26 13:51:01 +00:00
"source": [
2021-12-05 15:21:15 +00:00
"\"\"\"Test if a node should be pruned.\n",
"\n",
"Args: \\\\\n",
" - x (Vector{Integer}): the node to be tested. \\\\\n",
" - price (Vector{Integer}): prices of items to put in the KnapSack. \\\\\n",
" - weight (Vector{Integer}): weights of items to put in the KnapSack. \\\\\n",
" - capacity (Integer): the maximum capacity of the KnapSack. \\\\\n",
" - BestProfit (Integer): the current BestProfit value. \\\\\n",
" - Bestsol (Integer): the current BestSol values. \\\\\n",
" - affich (Bool): determine if the function should print to stdout.\n",
"\n",
"Returns: \\\\\n",
" - TA (Bool): true if the node is feasible. \\\\\n",
" - TO (Bool): true if the node is optimal. \\\\\n",
" - TR (Bool): true if the node is resolvable. \\\\\n",
" - BestProfit (Integer): the updated value of BestProfit. \\\\\n",
" - Bestsol (Vector{Integer}): the updated values of BestSol.\n",
"\"\"\"\n",
2021-11-27 10:20:11 +00:00
"function TestsSondabilite_relaxlin(x, price, weight, capacity, BestProfit, Bestsol, affich)\n",
2021-11-26 13:51:01 +00:00
" TA, TO, TR = false, false, false\n",
2021-12-05 15:21:15 +00:00
"\n",
2021-11-26 15:58:55 +00:00
" if (!Constraints(x, weight, capacity)) # Test de faisabilite\n",
" TA = true\n",
2021-11-27 10:20:11 +00:00
" if affich\n",
2021-12-05 15:21:15 +00:00
" println(\"TA\\n\")\n",
2021-11-27 10:20:11 +00:00
" end\n",
2021-12-05 15:21:15 +00:00
"\n",
2021-11-26 15:58:55 +00:00
" elseif (Objective(x, price) <= BestProfit) # Test d'optimalite\n",
" TO = true\n",
2021-11-27 10:20:11 +00:00
" if affich\n",
2021-12-05 15:21:15 +00:00
" println(\"TO\\n\")\n",
2021-11-27 10:20:11 +00:00
" end\n",
2021-12-05 15:21:15 +00:00
"\n",
2021-11-26 15:58:55 +00:00
" elseif (AllDef(x)) # Test de resolution\n",
" TR = true\n",
2021-11-27 10:20:11 +00:00
" if affich\n",
2021-12-05 15:21:15 +00:00
" println(\"TR : solution \", \" de profit \", Objective(x, price), \"\\n\")\n",
2021-11-27 10:20:11 +00:00
" end\n",
2021-11-27 10:44:55 +00:00
" if (Objective(x, price) >= BestProfit) # Le profit de la solution trouvée est meilleur que les autres\n",
2021-11-27 10:20:11 +00:00
" if affich\n",
2021-12-05 15:21:15 +00:00
" println(\"\\t-> Cette solution a un meilleur profit.\\n\")\n",
2021-11-27 10:20:11 +00:00
" end\n",
2021-11-27 10:44:55 +00:00
" # On remplace la solution et le profit par les nouvelles valeurs\n",
2021-11-26 15:58:55 +00:00
" Bestsol = x\n",
" BestProfit = Objective(x, price)\n",
2021-11-27 10:20:11 +00:00
" else\n",
" if affich\n",
2021-12-05 15:21:15 +00:00
" println(\"\\t-> Cette solution est moins bonne.\\n\")\n",
2021-11-27 10:20:11 +00:00
" end\n",
2021-11-26 13:51:01 +00:00
" end\n",
2021-12-05 15:21:15 +00:00
"\n",
" elseif affich\n",
" println(\"non sondable\\n\")\n",
2021-11-26 13:51:01 +00:00
" end\n",
2021-12-05 15:21:15 +00:00
"\n",
" return TA, TO, TR, Bestsol, BestProfit\n",
2021-11-26 13:51:01 +00:00
"end"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
2021-12-05 15:21:15 +00:00
"## Procédure de séparation et stratégie d'exploration permettant de se placer au prochain noeud à traiter"
2021-11-26 13:51:01 +00:00
]
},
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 15,
2021-11-26 13:51:01 +00:00
"metadata": {},
2021-12-05 15:21:15 +00:00
"outputs": [
{
"data": {
"text/plain": [
2021-12-09 10:54:09 +00:00
"SeparerNoeud"
2021-12-05 15:21:15 +00:00
]
},
"metadata": {},
2021-12-09 07:25:20 +00:00
"output_type": "display_data"
2021-12-05 15:21:15 +00:00
}
],
2021-11-26 13:51:01 +00:00
"source": [
2021-12-05 15:21:15 +00:00
"\"\"\"Split a node in two.\n",
"\n",
"Args: \\\\\n",
" - price (Vector{Integer}): prices of items to put in the KnapSack. \\\\\n",
" - listvars (Vector{Vector{Integer}}): the current values of listvars. \\\\\n",
" - listvals (Vector{Integer}): the current values of listvals.\n",
"\n",
"Returns: \\\\\n",
" - listvars (Vector{Vector{Integer}}): the updated values of listvars. \\\\\n",
" - listvals (Vector{Integer}): the updated values of listvals.\n",
"\"\"\"\n",
2021-12-09 10:54:09 +00:00
"function SeparerNoeud(price, listvars, listvals)\n",
2021-11-27 10:44:55 +00:00
" # Le noeud est non-sondable. Appliquer le critère de séparation pour le séparer en sous-noeuds \n",
2021-11-26 16:57:38 +00:00
"\n",
2021-11-26 15:58:55 +00:00
" # Cas du noeud le plus à gauche\n",
2021-11-27 10:44:55 +00:00
"\n",
" # On sépare le noeud actuel en 2 sous-noeuds\n",
2021-11-27 10:20:11 +00:00
" predX = pop!(listvars)\n",
" nextX0 = copy(predX)\n",
" nextX1 = copy(predX)\n",
2021-11-27 10:44:55 +00:00
"\n",
" # On initialise leurs valeurs à zéro\n",
2021-11-26 16:57:38 +00:00
" val0 = 0\n",
" val1 = 0\n",
2021-11-27 10:44:55 +00:00
"\n",
" # On fixe la nouvelle variable des deux sous-noeuds\n",
" n = length(predX)\n",
2021-12-05 15:21:15 +00:00
" for i = 1:n\n",
2021-11-26 16:57:38 +00:00
" if predX[i] == -1\n",
2021-11-27 10:44:55 +00:00
" # L'un a zéro\n",
2021-11-26 16:57:38 +00:00
" nextX0[i] = 0\n",
2021-11-27 10:44:55 +00:00
" # L'autre a un\n",
2021-11-26 16:57:38 +00:00
" nextX1[i] = 1\n",
2021-11-26 13:51:01 +00:00
"\n",
2021-11-27 10:44:55 +00:00
" # On calcule leurs valeurs\n",
2021-11-26 16:57:38 +00:00
" val0 = Objective(nextX0, price)\n",
" val1 = Objective(nextX1, price)\n",
" break\n",
" end\n",
" end\n",
2021-12-09 10:54:09 +00:00
" \n",
2021-11-27 10:44:55 +00:00
" # On ajoute les sous-noeuds a la pile des noeuds a explorer\n",
2021-11-27 10:20:11 +00:00
" push!(listvars, nextX0)\n",
2021-11-27 15:33:20 +00:00
" push!(listvars, nextX1)\n",
2021-11-27 10:44:55 +00:00
"\n",
" # On ajoute aussi leurs valeurs\n",
2021-11-27 10:20:11 +00:00
" push!(listvals, val0)\n",
2021-11-27 15:33:20 +00:00
" push!(listvals, val1)\n",
2021-11-27 10:44:55 +00:00
"\n",
2021-12-05 15:21:15 +00:00
" return listvars, listvals\n",
"end"
]
},
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 16,
2021-12-05 15:21:15 +00:00
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"ExplorerAutreNoeud_relaxlin"
]
},
"metadata": {},
2021-12-09 07:25:20 +00:00
"output_type": "display_data"
2021-12-05 15:21:15 +00:00
}
],
"source": [
"\"\"\"Pop node fom the list to explore another node.\n",
2021-11-26 13:51:01 +00:00
"\n",
2021-12-05 15:21:15 +00:00
"Args: \\\\\n",
" - price (Vector{Integer}): prices of items to put in the KnapSack. \\\\\n",
" - listvars (Vector{Vector{Integer}}): the current values of listvars. \\\\\n",
" - listvals (Vector{Integer}): the current values of listvals.\n",
2021-11-26 13:51:01 +00:00
"\n",
2021-12-05 15:21:15 +00:00
"Returns: \\\\\n",
" - listvars (Vector{Vector{Integer}}): the updated values of listvars. \\\\\n",
" - listvals (Vector{Integer}): the updated values of listvals. \\\\\n",
" - stop (Bool): true if the tree search is finished.\n",
"\"\"\"\n",
2021-11-26 16:57:38 +00:00
"function ExplorerAutreNoeud_relaxlin(listvars, listvals)\n",
2021-11-27 10:44:55 +00:00
" # Le noeud est sondable, on l'enlève de la pile des noeuds à sonder\n",
2021-12-05 15:21:15 +00:00
"\n",
2021-11-26 16:57:38 +00:00
" stop = false\n",
" if (length(listvars) > 1)\n",
2021-11-27 10:44:55 +00:00
" # On passe au noeud suivant\n",
2021-11-26 16:57:38 +00:00
" var = pop!(listvars)\n",
" val = pop!(listvals)\n",
2021-11-26 13:51:01 +00:00
" else\n",
2021-11-27 10:44:55 +00:00
" # Il n'y a pas d'autre noeud\n",
2021-11-26 16:57:38 +00:00
" stop = true\n",
2021-11-26 13:51:01 +00:00
" end\n",
2021-11-27 10:44:55 +00:00
"\n",
2021-12-05 15:21:15 +00:00
" return listvars, listvals, stop\n",
2021-11-26 13:51:01 +00:00
"end"
]
},
2021-12-05 15:21:15 +00:00
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Fonctions décrivant l'objectif et les contraintes"
]
},
2021-11-26 13:51:01 +00:00
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 17,
2021-11-26 13:51:01 +00:00
"metadata": {},
2021-12-05 15:21:15 +00:00
"outputs": [
{
"data": {
"text/plain": [
"AllDef (generic function with 1 method)"
]
},
"metadata": {},
2021-12-09 07:25:20 +00:00
"output_type": "display_data"
2021-12-05 15:21:15 +00:00
}
],
2021-11-26 13:51:01 +00:00
"source": [
2021-11-27 10:44:55 +00:00
"# Fonction objectif que l'on souhaite maximiser/minimiser (évalué dans le meilleur des cas)\n",
2021-12-05 15:21:15 +00:00
"Objective(x, price) =\n",
2021-11-26 15:58:55 +00:00
" sum(\n",
" if x[i] < 0\n",
2021-11-27 10:20:11 +00:00
" price[i]\n",
2021-11-26 15:58:55 +00:00
" else\n",
2021-12-05 15:21:15 +00:00
" price[i] * x[i]\n",
2021-11-26 15:58:55 +00:00
" end\n",
2021-12-05 15:21:15 +00:00
" for i = 1:length(x)\n",
2021-11-26 15:58:55 +00:00
" )\n",
2021-11-26 13:51:01 +00:00
"\n",
2021-11-27 10:44:55 +00:00
"# Fonction permettant de vérfier toutes les contraintes du modèle (dans le meilleur des cas)\n",
2021-11-26 15:58:55 +00:00
"Constraints(x, weight, capacity) =\n",
" sum(\n",
" if x[i] < 0\n",
" 0\n",
2021-12-05 15:21:15 +00:00
" else\n",
" weight[i] * x[i]\n",
2021-11-26 13:51:01 +00:00
" end\n",
2021-12-05 15:21:15 +00:00
" for i = 1:length(x)\n",
2021-11-26 15:58:55 +00:00
" ) <= capacity\n",
2021-11-26 13:51:01 +00:00
"\n",
2021-11-27 10:44:55 +00:00
"# Fonction qui nous dis si toutes les variables de x sont fixées\n",
2021-11-27 10:20:11 +00:00
"function AllDef(x)\n",
2021-12-05 15:21:15 +00:00
" for i = 1:length(x)\n",
2021-11-27 10:20:11 +00:00
" if x[i] < 0\n",
2021-11-26 15:58:55 +00:00
" return false\n",
" end\n",
2021-11-26 13:51:01 +00:00
" end\n",
2021-11-27 10:20:11 +00:00
" return true\n",
"end"
2021-11-26 13:51:01 +00:00
]
2021-11-26 16:57:38 +00:00
},
2021-12-05 15:21:15 +00:00
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Résolution du problème KnapSack"
]
},
2021-11-26 16:57:38 +00:00
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 18,
2021-11-26 16:57:38 +00:00
"metadata": {},
2021-12-05 15:21:15 +00:00
"outputs": [
{
"data": {
"text/plain": [
"SolveKnapInstance"
]
},
"metadata": {},
2021-12-09 07:25:20 +00:00
"output_type": "display_data"
2021-12-05 15:21:15 +00:00
}
],
2021-11-26 16:57:38 +00:00
"source": [
2021-12-05 15:21:15 +00:00
"\"\"\"Solve the KnapSack problem for the data contained in `filename`.\n",
"\n",
"Args: \\\\\n",
" - filename (String): the name of the file to read.\n",
"\n",
"Returns: \\\\\n",
" - trParentnodes (Vector{Integer}): the parents nodes, to plot the tree.\n",
" - trChildnodes (Vector{Integer}): the child nodes, to plot the tree.\n",
" - trNamenodes (Vector{Integer}): the name of the nodes, to plot the tree.\n",
"\"\"\"\n",
2021-11-26 16:57:38 +00:00
"function SolveKnapInstance(filename)\n",
"\n",
2021-12-05 15:21:15 +00:00
" stop = false\n",
" affich = false\n",
2021-12-09 10:54:09 +00:00
" \n",
2021-11-27 15:33:20 +00:00
" # Extraction des données\n",
2021-11-26 16:57:38 +00:00
" price, weight, capacity = readKnapInstance(filename)\n",
2021-12-09 10:54:09 +00:00
" \n",
" tri = false\n",
" if tri\n",
" couples = zip(price, weight)\n",
" couples = sort(collect(couples), by = x -> x[1] / x[2])\n",
" unzip(a) = map(x->getfield.(a, x), fieldnames(eltype(a)))\n",
" price, weight = unzip(couples)\n",
" end\n",
2021-11-26 16:57:38 +00:00
"\n",
2021-12-05 15:21:15 +00:00
" if affich\n",
" println(\"Capacity : \", capacity, \" | Number of objects : \", length(price), \"\\n\")\n",
" end\n",
2021-11-27 10:20:11 +00:00
"\n",
2021-11-27 15:33:20 +00:00
" # Pour dessiner le graph\n",
" trParentnodes = Int64[]\n",
" trChildnodes = Int64[]\n",
" trNamenodes = []\n",
"\n",
2021-11-27 10:44:55 +00:00
" # Liste des variable pour naviguer de noeuds en noeuds\n",
2021-11-27 15:33:20 +00:00
" listvars = []\n",
" listvals = []\n",
" listnodes = []\n",
2021-11-26 16:57:38 +00:00
"\n",
2021-11-27 10:44:55 +00:00
" # La meilleur solution et sa valeur\n",
2021-11-27 15:33:20 +00:00
" BestProfit = -1\n",
" Bestsol = []\n",
2021-11-26 16:57:38 +00:00
"\n",
2021-11-27 10:44:55 +00:00
" # Compter le nombre de noeud explorés\n",
" current_node_number = 0\n",
"\n",
" # On ajoute le premier noeud à explorer (la racine)\n",
2021-11-26 16:57:38 +00:00
" push!(listvars, [-1 for p in price])\n",
2021-11-27 10:20:11 +00:00
" push!(listvals, Objective(last(listvars), price))\n",
2021-11-27 15:33:20 +00:00
" push!(listnodes, 1)\n",
" push!(trNamenodes, 0)\n",
" newnodeid = 2\n",
2021-11-26 16:57:38 +00:00
"\n",
" while (!stop)\n",
2021-11-27 15:33:20 +00:00
"\n",
2021-11-27 10:44:55 +00:00
" # Le noeud actuel\n",
2021-11-27 10:20:11 +00:00
" x = last(listvars)\n",
2021-11-26 16:57:38 +00:00
"\n",
2021-12-05 15:21:15 +00:00
" if affich && current_node_number % 10000 == 0\n",
" println(\"----------\\nNode n°\", current_node_number, \" :\\n\")\n",
" println(\"Previous Solution memorized \", \" with bestprofit \", BestProfit, \"\\n\")\n",
2021-11-26 16:57:38 +00:00
" end\n",
"\n",
2021-11-27 10:44:55 +00:00
" # Test de sondabilité du noeud actuel\n",
" # -> On mets a jour la solution et sa valeur si besoin\n",
2021-11-27 10:20:11 +00:00
" TA, TO, TR, Bestsol, BestProfit = TestsSondabilite_relaxlin(x, price, weight, capacity, BestProfit, Bestsol, affich)\n",
2021-12-05 15:21:15 +00:00
"\n",
2021-11-26 16:57:38 +00:00
" is_node_sondable = TA || TO || TR\n",
" if (!is_node_sondable)\n",
2021-11-27 10:44:55 +00:00
" # Le noeud n'est pas sondable, on le sépare en 2 sous-noeuds\n",
2021-11-26 16:57:38 +00:00
" listvars, listvals = SeparerNoeud_relaxlin(price, listvars, listvals)\n",
2021-11-27 15:33:20 +00:00
"\n",
" curnode = pop!(listnodes)\n",
"\n",
" push!(trParentnodes, curnode)\n",
" push!(trParentnodes, curnode)\n",
"\n",
2021-12-05 15:21:15 +00:00
" push!(listnodes, newnodeid + 1)\n",
2021-11-27 15:33:20 +00:00
" push!(listnodes, newnodeid)\n",
"\n",
" push!(trChildnodes, newnodeid)\n",
2021-12-05 15:21:15 +00:00
" push!(trChildnodes, newnodeid + 1)\n",
2021-11-27 15:33:20 +00:00
"\n",
2021-12-05 15:21:15 +00:00
" push!(trNamenodes, newnodeid - 1)\n",
2021-11-27 15:33:20 +00:00
" push!(trNamenodes, newnodeid)\n",
"\n",
" newnodeid += 2\n",
"\n",
2021-11-26 16:57:38 +00:00
" else\n",
2021-11-27 10:44:55 +00:00
" # Le noeud est sondable, on passe au noeud suivant\n",
2021-11-26 16:57:38 +00:00
" listvars, listvals, stop = ExplorerAutreNoeud_relaxlin(listvars, listvals)\n",
2021-11-27 15:33:20 +00:00
"\n",
" pop!(listnodes)\n",
2021-11-26 16:57:38 +00:00
" end\n",
"\n",
" current_node_number += 1\n",
" end\n",
"\n",
2021-12-09 10:54:09 +00:00
" \n",
" println(\"\\n******\\n\\nOptimal value = \", BestProfit, \"\\n\\nOptimal x = \", Bestsol)\n",
" \n",
2021-12-05 15:21:15 +00:00
" \n",
" return trParentnodes, trChildnodes, trNamenodes\n",
2021-11-27 15:33:20 +00:00
"end"
]
},
2021-12-05 15:21:15 +00:00
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 24,
2021-12-05 15:21:15 +00:00
"metadata": {},
2021-12-09 10:54:09 +00:00
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"******\n",
"\n",
"Optimal value = 2\n",
"\n",
"Optimal x = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n"
]
},
{
"data": {
"text/plain": [
"([1, 1, 2, 2, 5, 5, 7, 7, 9, 9 … 93, 93, 100, 100, 103, 103, 101, 101, 106, 106], [2, 3, 4, 5, 6, 7, 8, 9, 10, 11 … 100, 101, 102, 103, 104, 105, 106, 107, 108, 109], Any[0, 1, 2, 3, 4, 5, 6, 7, 8, 9 … 99, 100, 101, 102, 103, 104, 105, 106, 107, 108])"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"trParentnodes, trChildnodes, trNamenodes = SolveKnapInstance(\"data/test_perso/2max.opb\")\n",
"# trParentnodes, trChildnodes, trNamenodes = SolveKnapInstance(\"data/subset_sum/knapPI_6_50_1000_1_-994.opb\")"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOzdeVyM2/8A8M9MM9O0N+2LSsnSolAkKRKiupcoIbK0kCUh+3IpIZR9iWy5JEt2soXsWhSJhDbSvm+z//4Y326/tDJNmM/79f3DnOcsn5l7vz73PM9zziFwuVxACCGEhBWxswNACCGEOhMmQoQQQkINEyFCCCGhhokQIYSQUMNEiBBCSKhhIkQIISTUMBEihBASapgIEUIICTVMhAghhIQaJkKEEEJCDRMhQgghoYaJECGEkFDDRIgQQkioYSJECCEk1DARIoQQEmqYCBFCCAk1TIQIIYSEGiZChBBCQg0TIUIIIaGGiRAhhJBQw0SIEEJIqGEiRAghJNQwESKEEBJqmAgRQggJNUyECCGEhBomQoQQQkINEyFCCCGhhokQIYSQUMNEiBBCSKhhIkQIISTUMBEihBASapgIEUIICTVMhAghhIQaJkKEEEJCDRMhQgghoYaJECGEkFDDRIgQQkioYSJECCEk1DARIoQQEmqYCBFCCAk1TIQIIYSEGiZChBBCQg0TIUIIIaGGiRAhhJBQw0SIEEJIqGEiRAghJNQwESKEEBJqmAgRQggJNUyECCGEhBomQoQQQkINEyFCCCGhhokQIYSQUMNEiBBCSKhhIkQIISTUMBEihBASapgIEUIICTVMhAghhIQaJkKEEEJCDRMhQgghoYaJECGEkFDDRIhQ56upqYmJiXn16lVnB4KQMCJ1dgAICbuSkpIhQ4aYm5u/e/du0KBBmzdv7uyIEBIuBC6X29kxICTU1qxZs2VbMJFM5bBZRC7rQ3q6urp6ZweFkBDBW6MIdbJj4Se4+iPqQvIZ2z6zuISjR492dkQICRdMhAh1ptLS0s852UxzNwAAshhL1fD67XudHRRCwgUTIUKdiUajKSgqiSRf4X0kFbw3N+3TuSEhJGzwZRmEOtl4x7GHjx0npD8hclkibLqXl1dnR4SQcMGXZRDqZJmZmaamplJSUnl5eQMGDHjw4EFnR4SQcMEZIUKdrEuXLnJycsOHDyeRSNHR0eXl5TIyMp0dFEJCBGeECHWyLVu2xMTEREdHA8DChQsTExOvXbsmKSnZ2XEhJCwwESLUmeLi4hwcHF68eKGlpQUAHA5n9uzZr1+/vnTpkpKSUmdHh5BQwLdGEeo0X79+dXJyCg0N5WVBACASiaGhoba2tmZmZvHx8Z0bHkJCQmTdunWdHQNCwqiystLW1nbq1Kmenp4NywkEwtChQ7W0tFxdXUkkkpmZGYFA6KwgERIGeGsUoU5QW1trb2+vp6e3d+/e5upkZmZOnjxZUlLy6NGjuOkaQh0Hb40iJGgMBsPJyUlNTW337t0tVOvatWtsbKyVlVW/fv0iIiIEFh5CwgZnhAgJFJPJdHZ2JpPJERERJFKb1i8lJiZOnTrVyMho//79srKyHR0hQsIGZ4QICQ6bzXZ1deVyuadOnWpjFgSAfv36xcfHKyoq9u3b99mzZx0aIUJCCF+WQUhAuFyuh4dHYWFhVFQUhUJpV1symTx69GgdHR1XV1cpKSlTU9MOChIhIYS3RhESkBUrVsTGxt6+fVtcXPyHO/n48eNff/3l4OAQFBSEb5MixBd4axQhQTh69GhUVNTly5d/JgsCQLdu3R4/fhwbG7tkyRJ+xYaQkMMZIUIdLikpydbWNjY2tmfPnnzpsLS0dPDgwX5+fjNmzOBLhwgJM5wRItSxmEymm5tbSEgIv7IgANBoNBMTEw8PDyKRWF5ezq9uERJOmAgR6ijV1dWvX7/esmVLly5dXF1d+dv5yJEjqdLyXICevfu9ePGCv50jJFQwESLUIcLDw42MjFatWrVu3To5OTn+ds5ms9cGbqlx3ARkaoH5rBnePviMA6EfhokQoQ5hZWVFlpC5de8Bh0g+HxWVlpbGx84jIiIKQBIGuQGByLWYkV1Wl5SUxMf+ERIqmAgR6hCnTkd+pmrQA9M5G97Q6YzXr1/zsXMTExNO3geoLAQAqMjnlHyh0Wh87B8hoYKJECH+YzAYARsCq//aAOI0iNnP1e5/6lI0H/vX09ObPtVV/KAzMOlix6bN9Z7VtWtXPvaPkFDBRIgQ/1EolIGDrUhvbsCdXZAZJyEjZ2rQg79DuIwf62ppABzWkO5Kw4da8bdzhIRKW3c7RAi1S+iukN59TYBAJnXtJ1WctnhhFH/7LygokJWVJRAI1dXVOTk5/O0cIaGCM0KEOkRycjKRwyLRK1XK0+a4TysoKOBv/87Ozps2bSIQCEwm093dnb+dIyRUMBEi1CGUlZVnzJghJydXUlJCIpFYLBbfh+DtNfrx48fMzEy+d46Q8MBEiFCHsLKyEhMTmz17tr6+vrm5uba2Nt+HIBAIXC530qRJhw8f5nvnCAkP3GsUoQ5Bp9O1tLQePXoUFRX14cOHgwcPdsQoRCIxNTV16NChnz59+sntvBESWjgjRKhDnDhxwsTERFdXd+rUqefPn6+srOyggXr27Dlo0KCwsLAO6h+hPx7OCBHiPwaDoaenFx4ebmFhAQCTJk0yMzPz9fXl+0BkMrm2tjYlJcXe3v79+/cSEhJ8HwKhPx7OCBHivwMHDvTq1YuXBQHAz88vJCSETqfzfSAikcjhcPr06TNkyJCtW7fyvX+EhAHOCBHis6KiIgMDg3v37unr69cX2tvbOzg4eHt783csKpVaVlZGpVKzsrJMTU0TEhI0NTX5OwRCfzxMhAjx2fTp0+Xl5YODgxsWxsfHOzo6vn//XkxMjI9jiYuLFxcX8/rcsGFDQkLChQsX+Ng/QsIAb40ixE937tx58ODB+vXrG5WbmpoOHDhw586d/B2Od2uU9+clS5a8ffv20qVL/B0CoT8ezggR4pvKykpjY+P9+/fb2tp+fzU9Pd3CwiI1NVVBQYFfI8rIyOTk5EhLS/M+xsbGurq6pqSkyMjI8GsIhP54mAgR4htPT08CgdDCkkFfX18Wi7Vnzx5+jSgrK5uVldUw7Xl7ezOZTFxNgVDbYSJEiD+uXr26YMGCpKQkKSmp5uqUlpb26tUrJibGwMCAL4PKycl9/Pix4WGElZWVRkZGBw4caHJWihD6Hj4jRIgPCgsLZ82adfz48RayIADQaLRly5atWLGCX+OKiIiw2eyGJVJSUmFhYV5eXuXl5fwaBaE/GyZChPjA09Nz2rRpgwcPbrXmvHnz3rx5c//+fb6My9tutFGhjY2Ng4NDR6zfR+iPhIkQoZ91+PDh7OzsdevWtaUyhULZsGHD8uXL+fJUouFbow0FBQXFxsZev37954dA6I+HiRChn5KRkbFixYp///2XQqG0sYmLi0tdXd2VK1d+fvTvb43ySEpKhoWFzZ49u6ys7OdHQejPhokQoR/H5XLd3d2XLVvWcBOZVhGJxPXr169fv/7nJ4XNzQgBwNra2sHBYcmSJT85BEJ/PEyECP240NBQOp2+cOHC9jb8+++/WSzWrVu3fjKAFhIhAGzevPnWrVv8eh6J0J8KEyFCP+jr169r1649dOgQkdju/x8RCITFixfv2LHjJ2NoORFKS0vv3LnT29ubwWD85EAI/cEwESL0g5YuXerh4dGum6INubi4JCQkZGRk/EwMLSdCABg7dmz37t23b9/+M6Mg9GfDRIjQj3jx4sX9+/dXrVr1wz2Iioq6uLicOnXqZ8JoNRECwPbt27dt25afn/8zAyH0ByN1dgAI/ZZWrVr1zz///NhBuFVVVUVFRampqQwG48CBAyQSCQCsrKzMzc3b21VbEmG3bt2mTZu2fv36ffv2/UC0CP3xcIs1hNrt+fPnkyZNSktLI5PJ7W07b968mzdvqqioPH7yhNzvb4ashqioKCvpOvdrGofDZjKZvLzYRnp6elFRUXp6ei1XKyoq0tPTi4+P19LSam/ACP3x8NYoQu22c+dOX1/fH8iCADB//vz09HR1bV2S2URGVjK4BNPHbmTPjqSaT/iB3ohEYlv+W1ZBQcHDw6PREYkIIR5MhAi1T3l5+Y0bN9zc3H6
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n<defs>\n <clipPath id=\"clip880\">\n <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n </clipPath>\n</defs>\n<path clip-path=\"url(#clip880)\" d=\"\nM0 1600 L2400 1600 L2400 0 L0 0 Z\n \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n<defs>\n <clipPath id=\"clip881\">\n <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n </clipPath>\n</defs>\n<path clip-path=\"url(#clip880)\" d=\"\nM447.244 1552.76 L1952.76 1552.76 L1952.76 47.2441 L447.244 47.2441 Z\n \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n<defs>\n <clipPath id=\"clip882\">\n <rect x=\"447\" y=\"47\" width=\"1507\" height=\"1507\"/>\n </clipPath>\n</defs>\n<polyline clip-path=\"url(#clip882)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n 1211.27,262.317 1211.51,265.591 1212.23,268.761 1213.38,271.832 1214.93,274.815 1216.84,277.715 1219.09,280.542 1221.63,283.303 1224.43,286.005 1227.45,288.657 \n 1230.67,291.265 1234.05,293.839 1237.54,296.386 1241.13,298.913 1244.76,301.428 1248.41,303.94 1252.05,306.455 1255.63,308.983 1259.13,311.529 1262.5,314.103 \n 1265.72,316.712 1268.75,319.363 1271.55,322.066 1274.09,324.826 1276.33,327.653 1278.25,330.554 1279.8,333.536 1280.95,336.608 1281.66,339.777 1281.91,343.051 \n \n \"/>\n<polyline clip-path=\"url(#clip882)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n 1211.27,262.317 1211.07,265.544 1210.51,268.733 1209.6,271.887 1208.38,275.01 1206.87,278.104 1205.09,281.171 1203.09,284.215 1200.88,287.237 1198.49,290.242 \n 1195.95,293.232 1193.29,296.209 1190.53,299.177 1187.7,302.137 1184.84,305.094 1181.95,308.049 1179.09,311.005 1176.26,313.966 1173.5,316.933 1170.84,319.911 \n 1168.3,322.9 1165.91,325.905 1163.7,328.928 1161.7,331.972 1159.92,335.039 1158.41,338.133 1157.19,341.255 1156.28,344.41 1155.72,347.599 1155.52,350.826 \n \n \"/>\n<polyline clip-path=\"url(#clip882)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n 1281.91,343.051 1281.91,348.072 1281.92,353.2 1281.94,358.426 1281.96,363.742 1281.99,369.141 1282.02,374.615 1282.05,380.156 1282.09,385.755 1282.13,391.406 \n 1282.17,397.101 1282.22,402.83 1282.26,408.587 1282.31,414.364 1282.36,420.153 1282.41,425.945 1282.46,431.734 1282.51,437.511 1282.55,443.268 1282.6,448.998 \n 1282.64,454.692 1282.68,460.343 1282.72,465.942 1282.75,471.483 1282.78,476.957 1282.81,482.356 1282.83,487.672 1282.85,492.898 1282.85,498.026 1282.86,503.047 \n \n \"/>\n<polyline clip-path=\"url(#clip882)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n 1281.91,343.051 1282.14,348.066 1282.81,353.093 1283.9,358.132 1285.35,363.181 1287.15,368.239 1289.26,373.306 1291.65,378.381 1294.29,383.462 1297.13,388.55 \n 1300.16,393.642 1303.33,398.738 1306.62,403.838 1309.98,408.94 1313.4,414.043 1316.84,419.147 1320.25,424.25 1323.62,429.351 1326.91,434.451 1330.08,439.547 \n 1333.11,444.64 1335.95,449.727 1338.59,454.809 1340.98,459.883 1343.09,464.95 1344.89,470.009 1346.34,475.057 1347.42,480.096 1348.1,485.123 1348.33,490.138 \n \n \"/>\n<polyline clip-path=\"url(#clip882)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n 1348.33,490.138 1348.35,493.276 1348.41,496.457 1348.5,499.68 1348.63,502.939 1348.78,506.232 1348.96,509.556 1349.17,512.908 1349.4,516.284 1349.65,519.681 \n 1349.91,523.096 1350.18,526.525 1350.47,529.966 1350.76,533.415 1351.05,536.868 1351.35,540.324 1351.65,543.777 1351.94,547.226 1352.22,550.667 1352.5,554.096 \n 1352.76,557.511 1353.01,560.908 1353.24,564.284 1353.44,567.636
"text/html": [
"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
"<defs>\n",
" <clipPath id=\"clip910\">\n",
" <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<path clip-path=\"url(#clip910)\" d=\"\n",
"M0 1600 L2400 1600 L2400 0 L0 0 Z\n",
" \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<defs>\n",
" <clipPath id=\"clip911\">\n",
" <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<path clip-path=\"url(#clip910)\" d=\"\n",
"M447.244 1552.76 L1952.76 1552.76 L1952.76 47.2441 L447.244 47.2441 Z\n",
" \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<defs>\n",
" <clipPath id=\"clip912\">\n",
" <rect x=\"447\" y=\"47\" width=\"1507\" height=\"1507\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1211.27,262.317 1211.51,265.591 1212.23,268.761 1213.38,271.832 1214.93,274.815 1216.84,277.715 1219.09,280.542 1221.63,283.303 1224.43,286.005 1227.45,288.657 \n",
" 1230.67,291.265 1234.05,293.839 1237.54,296.386 1241.13,298.913 1244.76,301.428 1248.41,303.94 1252.05,306.455 1255.63,308.983 1259.13,311.529 1262.5,314.103 \n",
" 1265.72,316.712 1268.75,319.363 1271.55,322.066 1274.09,324.826 1276.33,327.653 1278.25,330.554 1279.8,333.536 1280.95,336.608 1281.66,339.777 1281.91,343.051 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1211.27,262.317 1211.07,265.544 1210.51,268.733 1209.6,271.887 1208.38,275.01 1206.87,278.104 1205.09,281.171 1203.09,284.215 1200.88,287.237 1198.49,290.242 \n",
" 1195.95,293.232 1193.29,296.209 1190.53,299.177 1187.7,302.137 1184.84,305.094 1181.95,308.049 1179.09,311.005 1176.26,313.966 1173.5,316.933 1170.84,319.911 \n",
" 1168.3,322.9 1165.91,325.905 1163.7,328.928 1161.7,331.972 1159.92,335.039 1158.41,338.133 1157.19,341.255 1156.28,344.41 1155.72,347.599 1155.52,350.826 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1281.91,343.051 1281.91,348.072 1281.92,353.2 1281.94,358.426 1281.96,363.742 1281.99,369.141 1282.02,374.615 1282.05,380.156 1282.09,385.755 1282.13,391.406 \n",
" 1282.17,397.101 1282.22,402.83 1282.26,408.587 1282.31,414.364 1282.36,420.153 1282.41,425.945 1282.46,431.734 1282.51,437.511 1282.55,443.268 1282.6,448.998 \n",
" 1282.64,454.692 1282.68,460.343 1282.72,465.942 1282.75,471.483 1282.78,476.957 1282.81,482.356 1282.83,487.672 1282.85,492.898 1282.85,498.026 1282.86,503.047 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1281.91,343.051 1282.14,348.066 1282.81,353.093 1283.9,358.132 1285.35,363.181 1287.15,368.239 1289.26,373.306 1291.65,378.381 1294.29,383.462 1297.13,388.55 \n",
" 1300.16,393.642 1303.33,398.738 1306.62,403.838 1309.98,408.94 1313.4,414.043 1316.84,419.147 1320.25,424.25 1323.62,429.351 1326.91,434.451 1330.08,439.547 \n",
" 1333.11,444.64 1335.95,449.727 1338.59,454.809 1340.98,459.883 1343.09,464.95 1344.89,470.009 1346.34,475.057 1347.42,480.096 1348.1,485.123 1348.33,490.138 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1348.33,490.138 1348.35,493.276 1348.41,496.457 1348.5,499.68 1348.63,502.939 1348.78,506.232 1348.96,509.556 1349.17,512.908 1349.4,516.284 1349.65,519.681 \n",
" 1349.91,523.096 1350.18,526.525 1350.47,529.966 1350.76,533.415 1351.05,536.868 1351.35,540.324 1351.65,543.777 1351.94,547.226 1352.22,550.667 1352.5,554.096 \n",
" 1352.76,557.511 1353.01,560.908 1353.24,564.284 1353.44,567.636 1353.62,570.96 1353.78,574.253 1353.91,577.512 1354,580.734 1354.06,583.916 1354.08,587.054 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1348.33,490.138 1348.55,494.264 1349.18,498.375 1350.19,502.473 1351.55,506.559 1353.24,510.634 1355.22,514.699 1357.46,518.756 1359.93,522.804 1362.59,526.846 \n",
" 1365.43,530.882 1368.4,534.913 1371.48,538.941 1374.64,542.966 1377.84,546.989 1381.06,551.012 1384.26,555.035 1387.42,559.06 1390.5,563.088 1393.47,567.119 \n",
" 1396.31,571.155 1398.98,575.196 1401.45,579.245 1403.68,583.301 1405.66,587.366 1407.35,591.442 1408.71,595.528 1409.73,599.626 1410.36,603.737 1410.57,607.863 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1410.57,607.863 1410.63,610.872 1410.81,613.679 1411.08,616.3 1411.45,618.75 1411.91,621.043 1412.45,623.194 1413.06,625.218 1413.74,627.13 1414.46,628.945 \n",
" 1415.24,630.678 1416.05,632.344 1416.89,633.958 1417.75,635.534 1418.62,637.088 1419.5,638.635 1420.37,640.189 1421.23,641.765 1422.07,643.379 1422.88,645.045 \n",
" 1423.66,646.778 1424.38,648.593 1425.06,650.505 1425.67,652.53 1426.21,654.681 1426.67,656.973 1427.04,659.423 1427.32,662.044 1427.49,664.852 1427.55,667.861 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1410.57,607.863 1410.81,610.84 1411.5,613.556 1412.61,616.03 1414.1,618.28 1415.94,620.328 1418.11,622.191 1420.55,623.889 1423.25,625.442 1426.16,626.869 \n",
" 1429.26,628.19 1432.51,629.423 1435.88,630.588 1439.33,631.705 1442.83,632.793 1446.34,633.871 1449.85,634.959 1453.3,636.076 1456.66,637.242 1459.91,638.475 \n",
" 1463.01,639.795 1465.92,641.222 1468.62,642.775 1471.07,644.474 1473.23,646.337 1475.07,648.384 1476.56,650.635 1477.67,653.109 1478.36,655.825 1478.6,658.802 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1478.6,658.802 1478.61,662.328 1478.64,665.928 1478.7,669.596 1478.77,673.328 1478.86,677.118 1478.97,680.96 1479.09,684.849 1479.22,688.779 1479.36,692.745 \n",
" 1479.51,696.741 1479.67,700.762 1479.83,704.802 1480,708.856 1480.17,712.918 1480.35,716.983 1480.52,721.045 1480.68,725.099 1480.85,729.139 1481.01,733.16 \n",
" 1481.16,737.156 1481.3,741.122 1481.43,745.052 1481.55,748.941 1481.66,752.783 1481.75,756.572 1481.82,760.304 1481.88,763.973 1481.91,767.573 1481.92,771.098 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1478.6,658.802 1478.79,662.661 1479.36,666.514 1480.26,670.363 1481.49,674.208 1483,678.049 1484.77,681.887 1486.77,685.721 1488.98,689.553 1491.37,693.383 \n",
" 1493.91,697.21 1496.57,701.036 1499.33,704.86 1502.16,708.684 1505.03,712.507 1507.91,716.329 1510.78,720.152 1513.6,723.976 1516.36,727.8 1519.02,731.626 \n",
" 1521.56,735.453 1523.95,739.283 1526.16,743.115 1528.16,746.949 1529.94,750.787 1531.45,754.628 1532.67,758.473 1533.58,762.322 1534.14,766.175 1534.33,770.034 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1534.33,770.034 1534.34,773.409 1534.34,776.856 1534.36,780.369 1534.37,783.942 1534.39,787.571 1534.41,791.251 1534.44,794.975 1534.47,798.739 1534.5,802.538 \n",
" 1534.53,806.366 1534.57,810.217 1534.6,814.087 1534.64,817.97 1534.68,821.861 1534.71,825.755 1534.75,829.646 1534.79,833.529 1534.82,837.399 1534.86,841.251 \n",
" 1534.89,845.078 1534.92,848.877 1534.95,852.641 1534.98,856.365 1535,860.045 1535.02,863.674 1535.04,867.248 1535.05,870.76 1535.06,874.207 1535.06,877.582 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1534.33,770.034 1534.5,774.534 1534.96,779.08 1535.71,783.667 1536.73,788.294 1537.98,792.956 1539.44,797.649 1541.1,802.372 1542.93,807.119 1544.91,811.889 \n",
" 1547.02,816.677 1549.22,821.48 1551.5,826.295 1553.85,831.118 1556.22,835.946 1558.61,840.776 1560.98,845.604 1563.32,850.428 1565.61,855.243 1567.81,860.046 \n",
" 1569.92,864.834 1571.89,869.603 1573.72,874.351 1575.38,879.073 1576.85,883.767 1578.1,888.428 1579.12,893.055 1579.87,897.643 1580.33,902.188 1580.49,906.689 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1580.49,906.689 1580.49,909.824 1580.48,912.998 1580.46,916.209 1580.43,919.453 1580.4,922.727 1580.36,926.029 1580.31,929.356 1580.26,932.704 1580.21,936.071 \n",
" 1580.15,939.454 1580.09,942.85 1580.03,946.256 1579.96,949.67 1579.9,953.088 1579.83,956.507 1579.77,959.925 1579.7,963.338 1579.64,966.744 1579.58,970.14 \n",
" 1579.52,973.523 1579.47,976.89 1579.42,980.239 1579.37,983.565 1579.33,986.867 1579.3,990.142 1579.27,993.386 1579.25,996.596 1579.24,999.771 1579.23,1002.91 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1580.49,906.689 1580.67,909.771 1581.19,912.791 1582.01,915.753 1583.12,918.663 1584.5,921.524 1586.11,924.342 1587.93,927.121 1589.94,929.865 1592.12,932.579 \n",
" 1594.43,935.267 1596.85,937.935 1599.36,940.587 1601.93,943.228 1604.54,945.861 1607.16,948.493 1609.77,951.126 1612.34,953.767 1614.85,956.418 1617.27,959.087 \n",
" 1619.58,961.775 1621.76,964.489 1623.77,967.233 1625.59,970.012 1627.2,972.829 1628.58,975.691 1629.69,978.6 1630.51,981.563 1631.03,984.583 1631.2,987.665 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1631.2,987.665 1631.2,990.929 1631.19,994.261 1631.17,997.657 1631.15,1001.11 1631.12,1004.62 1631.09,1008.18 1631.05,1011.78 1631.01,1015.42 1630.97,1019.09 \n",
" 1630.92,1022.79 1630.87,1026.51 1630.82,1030.26 1630.77,1034.01 1630.72,1037.77 1630.66,1041.54 1630.61,1045.3 1630.56,1049.05 1630.51,1052.79 1630.46,1056.52 \n",
" 1630.41,1060.22 1630.37,1063.89 1630.33,1067.53 1630.29,1071.13 1630.26,1074.69 1630.23,1078.2 1630.21,1081.65 1630.19,1085.05 1630.18,1088.38 1630.18,1091.64 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1631.2,987.665 1631.35,991.214 1631.77,994.784 1632.46,998.376 1633.38,1001.99 1634.51,1005.62 1635.84,1009.26 1637.35,1012.92 1639.01,1016.59 1640.81,1020.27 \n",
" 1642.72,1023.96 1644.72,1027.66 1646.8,1031.37 1648.93,1035.08 1651.08,1038.79 1653.25,1042.5 1655.41,1046.21 1657.54,1049.92 1659.61,1053.62 1661.61,1057.32 \n",
" 1663.52,1061.01 1665.32,1064.7 1666.98,1068.37 1668.49,1072.03 1669.82,1075.67 1670.96,1079.3 1671.88,1082.91 1672.56,1086.5 1672.99,1090.07 1673.13,1093.62 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1673.13,1093.62 1673.26,1096.71 1673.63,1099.74 1674.23,1102.72 1675.03,1105.66 1676.03,1108.56 1677.2,1111.42 1678.52,1114.24 1679.97,1117.04 1681.54,1119.81 \n",
" 1683.22,1122.56 1684.97,1125.29 1686.79,1128 1688.65,1130.71 1690.54,1133.41 1692.44,1136.11 1694.33,1138.81 1696.19,1141.51 1698.01,1144.23 1699.76,1146.96 \n",
" 1701.43,1149.71 1703,1152.48 1704.46,1155.27 1705.78,1158.1 1706.95,1160.96 1707.94,1163.85 1708.75,1166.79 1709.34,1169.77 1709.72,1172.81 1709.84,1175.89 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1673.13,1093.62 1673.2,1097.62 1673.39,1101.7 1673.7,1105.85 1674.12,1110.06 1674.64,1114.33 1675.25,1118.65 1675.94,1123.02 1676.7,1127.43 1677.52,1131.88 \n",
" 1678.39,1136.36 1679.3,1140.86 1680.25,1145.39 1681.22,1149.93 1682.2,1154.47 1683.19,1159.02 1684.18,1163.57 1685.15,1168.1 1686.09,1172.63 1687.01,1177.13 \n",
" 1687.88,1181.61 1688.7,1186.06 1689.46,1190.47 1690.14,1194.84 1690.75,1199.16 1691.27,1203.43 1691.69,1207.64 1692,1211.79 1692.19,1215.87 1692.26,1219.87 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1692.26,1219.87 1692.42,1222.97 1692.88,1226.05 1693.62,1229.1 1694.62,1232.13 1695.85,1235.14 1697.29,1238.13 1698.92,1241.1 1700.72,1244.06 1702.67,1247.01 \n",
" 1704.74,1249.95 1706.91,1252.88 1709.16,1255.8 1711.46,1258.72 1713.8,1261.63 1716.15,1264.54 1718.48,1267.46 1720.79,1270.37 1723.04,1273.3 1725.2,1276.22 \n",
" 1727.27,1279.16 1729.22,1282.11 1731.02,1285.07 1732.65,1288.04 1734.1,1291.04 1735.33,1294.04 1736.33,1297.07 1737.06,1300.13 1737.52,1303.2 1737.68,1306.3 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1692.26,1219.87 1692.29,1223.58 1692.37,1227.36 1692.5,1231.21 1692.68,1235.13 1692.9,1239.11 1693.15,1243.14 1693.45,1247.22 1693.76,1251.34 1694.11,1255.5 \n",
" 1694.48,1259.69 1694.86,1263.9 1695.26,1268.14 1695.67,1272.39 1696.09,1276.65 1696.51,1280.91 1696.92,1285.17 1697.33,1289.42 1697.73,1293.65 1698.11,1297.87 \n",
" 1698.48,1302.06 1698.83,1306.22 1699.15,1310.34 1699.44,1314.42 1699.69,1318.45 1699.91,1322.43 1700.09,1326.34 1700.22,1330.2 1700.3,1333.98 1700.33,1337.68 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1155.52,350.826 1155.68,354.699 1156.13,358.601 1156.85,362.529 1157.82,366.482 1159.02,370.456 1160.43,374.451 1162.02,378.464 1163.77,382.492 1165.67,386.534 \n",
" 1167.68,390.588 1169.8,394.651 1171.99,398.722 1174.24,402.798 1176.51,406.877 1178.8,410.957 1181.08,415.036 1183.32,419.112 1185.51,423.182 1187.63,427.246 \n",
" 1189.65,431.299 1191.54,435.342 1193.3,439.37 1194.89,443.383 1196.3,447.377 1197.5,451.352 1198.47,455.305 1199.19,459.233 1199.64,463.135 1199.79,467.008 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1155.52,350.826 1155.31,355.318 1154.69,359.816 1153.69,364.318 1152.34,368.825 1150.68,373.337 1148.73,377.852 1146.52,382.37 1144.09,386.891 1141.46,391.415 \n",
" 1138.66,395.941 1135.73,400.469 1132.69,404.998 1129.58,409.528 1126.42,414.059 1123.25,418.589 1120.09,423.12 1116.97,427.65 1113.94,432.179 1111,436.707 \n",
" 1108.21,441.233 1105.58,445.757 1103.14,450.278 1100.94,454.796 1098.99,459.311 1097.32,463.823 1095.98,468.33 1094.98,472.832 1094.36,477.33 1094.14,481.822 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1199.79,467.008 1199.77,470.144 1199.71,473.319 1199.61,476.532 1199.48,479.778 1199.32,483.056 1199.13,486.361 1198.92,489.692 1198.68,493.044 1198.43,496.416 \n",
" 1198.16,499.804 1197.88,503.206 1197.58,506.617 1197.28,510.036 1196.98,513.46 1196.67,516.885 1196.36,520.308 1196.06,523.727 1195.77,527.139 1195.49,530.54 \n",
" 1195.22,533.929 1194.96,537.3 1194.73,540.653 1194.51,543.984 1194.32,547.289 1194.16,550.566 1194.03,553.813 1193.94,557.025 1193.88,560.201 1193.86,563.337 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1199.79,467.008 1199.97,470.973 1200.51,474.945 1201.37,478.925 1202.54,482.913 1203.98,486.906 1205.66,490.905 1207.57,494.909 1209.67,498.918 1211.94,502.93 \n",
" 1214.36,506.946 1216.89,510.965 1219.52,514.985 1222.21,519.007 1224.94,523.03 1227.68,527.054 1230.41,531.077 1233.1,535.099 1235.72,539.12 1238.25,543.138 \n",
" 1240.67,547.154 1242.94,551.167 1245.04,555.175 1246.95,559.179 1248.64,563.178 1250.07,567.172 1251.24,571.159 1252.1,575.139 1252.64,579.112 1252.82,583.076 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1252.82,583.076 1252.81,586.194 1252.76,589.317 1252.69,592.446 1252.59,595.58 1252.48,598.717 1252.34,601.859 1252.18,605.005 1252,608.153 1251.81,611.304 \n",
" 1251.61,614.458 1251.4,617.613 1251.18,620.77 1250.96,623.928 1250.73,627.087 1250.51,630.246 1250.28,633.404 1250.06,636.562 1249.84,639.719 1249.63,642.874 \n",
" 1249.43,646.028 1249.24,649.179 1249.06,652.328 1248.91,655.473 1248.77,658.615 1248.65,661.753 1248.55,664.886 1248.48,668.015 1248.43,671.138 1248.42,674.256 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1252.82,583.076 1253,587.312 1253.53,591.571 1254.37,595.851 1255.5,600.15 1256.9,604.467 1258.54,608.8 1260.39,613.148 1262.44,617.509 1264.65,621.88 \n",
" 1267,626.261 1269.47,630.649 1272.02,635.043 1274.64,639.442 1277.29,643.843 1279.96,648.245 1282.62,652.646 1285.24,657.045 1287.79,661.439 1290.25,665.827 \n",
" 1292.61,670.208 1294.82,674.579 1296.86,678.94 1298.72,683.288 1300.36,687.621 1301.76,691.938 1302.89,696.237 1303.73,700.517 1304.25,704.776 1304.43,709.012 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1304.43,709.012 1304.46,712.025 1304.56,714.845 1304.71,717.485 1304.91,719.961 1305.16,722.286 1305.45,724.475 1305.78,726.542 1306.14,728.501 1306.54,730.367 \n",
" 1306.95,732.154 1307.39,733.877 1307.85,735.55 1308.31,737.187 1308.78,738.802 1309.26,740.41 1309.73,742.025 1310.2,743.662 1310.65,745.335 1311.09,747.057 \n",
" 1311.51,748.845 1311.9,750.711 1312.26,752.67 1312.59,754.737 1312.88,756.926 1313.13,759.251 1313.33,761.726 1313.48,764.367 1313.58,767.187 1313.61,770.2 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1304.43,709.012 1304.63,712.425 1305.21,715.806 1306.13,719.159 1307.38,722.485 1308.92,725.786 1310.73,729.066 1312.78,732.325 1315.03,735.567 1317.47,738.794 \n",
" 1320.06,742.008 1322.78,745.212 1325.6,748.408 1328.49,751.598 1331.41,754.784 1334.36,757.969 1337.28,761.155 1340.17,764.345 1342.99,767.541 1345.7,770.744 \n",
" 1348.3,773.959 1350.73,777.186 1352.99,780.428 1355.04,783.687 1356.84,786.966 1358.39,790.268 1359.63,793.594 1360.56,796.946 1361.14,800.328 1361.34,803.741 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1361.34,803.741 1361.33,806.84 1361.33,809.909 1361.31,812.95 1361.3,815.966 1361.28,818.958 1361.25,821.929 1361.23,824.881 1361.2,827.816 1361.17,830.737 \n",
" 1361.13,833.645 1361.1,836.544 1361.06,839.435 1361.02,842.32 1360.99,845.202 1360.95,848.082 1360.91,850.964 1360.87,853.849 1360.84,856.74 1360.8,859.639 \n",
" 1360.77,862.547 1360.73,865.468 1360.71,868.403 1360.68,871.355 1360.66,874.326 1360.64,877.318 1360.62,880.334 1360.61,883.375 1360.6,886.444 1360.6,889.543 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1361.34,803.741 1361.49,807.67 1361.95,811.627 1362.69,815.609 1363.69,819.614 1364.92,823.642 1366.36,827.688 1368,831.752 1369.8,835.831 1371.74,839.924 \n",
" 1373.81,844.028 1375.98,848.141 1378.23,852.261 1380.53,856.386 1382.87,860.514 1385.22,864.644 1387.56,868.772 1389.86,872.897 1392.11,877.017 1394.28,881.13 \n",
" 1396.34,885.234 1398.29,889.326 1400.09,893.406 1401.72,897.47 1403.17,901.516 1404.4,905.543 1405.39,909.549 1406.13,913.531 1406.59,917.488 1406.75,921.417 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1406.75,921.417 1406.83,924.386 1407.05,927.078 1407.41,929.514 1407.89,931.713 1408.49,933.697 1409.19,935.486 1409.98,937.1 1410.86,938.56 1411.8,939.886 \n",
" 1412.8,941.1 1413.86,942.221 1414.95,943.271 1416.06,944.269 1417.2,945.236 1418.34,946.193 1419.47,947.16 1420.59,948.158 1421.68,949.208 1422.73,950.329 \n",
" 1423.73,951.543 1424.68,952.869 1425.55,954.329 1426.34,955.944 1427.04,957.732 1427.64,959.716 1428.13,961.915 1428.48,964.351 1428.71,967.043 1428.78,970.012 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1406.75,921.417 1406.95,924.448 1407.51,927.319 1408.42,930.043 1409.65,932.63 1411.17,935.094 1412.94,937.444 1414.95,939.695 1417.17,941.856 1419.56,943.941 \n",
" 1422.11,945.961 1424.78,947.927 1427.55,949.852 1430.38,951.748 1433.26,953.625 1436.15,955.497 1439.03,957.375 1441.86,959.27 1444.63,961.196 1447.3,963.162 \n",
" 1449.85,965.182 1452.24,967.266 1454.46,969.428 1456.47,971.678 1458.25,974.029 1459.76,976.493 1460.99,979.08 1461.9,981.804 1462.47,984.675 1462.66,987.706 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1462.66,987.706 1462.62,992.207 1462.51,996.801 1462.34,1001.48 1462.1,1006.24 1461.8,1011.07 1461.46,1015.97 1461.07,1020.92 1460.64,1025.92 1460.17,1030.97 \n",
" 1459.68,1036.06 1459.16,1041.18 1458.62,1046.32 1458.07,1051.48 1457.51,1056.65 1456.95,1061.83 1456.39,1067 1455.84,1072.15 1455.3,1077.3 1454.79,1082.42 \n",
" 1454.29,1087.5 1453.83,1092.55 1453.4,1097.56 1453,1102.51 1452.66,1107.41 1452.37,1112.24 1452.13,1117 1451.95,1121.68 1451.84,1126.27 1451.8,1130.77 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1462.66,987.706 1462.81,991.337 1463.24,994.993 1463.92,998.673 1464.85,1002.37 1465.99,1006.09 1467.33,1009.83 1468.85,1013.58 1470.52,1017.35 1472.33,1021.13 \n",
" 1474.25,1024.92 1476.27,1028.72 1478.35,1032.52 1480.49,1036.33 1482.66,1040.14 1484.85,1043.95 1487.02,1047.77 1489.16,1051.57 1491.24,1055.38 1493.26,1059.18 \n",
" 1495.18,1062.97 1496.99,1066.74 1498.66,1070.51 1500.18,1074.27 1501.52,1078 1502.66,1081.72 1503.59,1085.42 1504.28,1089.1 1504.7,1092.76 1504.85,1096.39 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1504.85,1096.39 1504.87,1099.51 1504.92,1102.66 1505.01,1105.82 1505.12,1108.99 1505.26,1112.18 1505.43,1115.38 1505.61,1118.6 1505.82,1121.82 1506.04,1125.05 \n",
" 1506.28,1128.29 1506.53,1131.54 1506.79,1134.79 1507.05,1138.04 1507.32,1141.3 1507.59,1144.55 1507.86,1147.81 1508.12,1151.06 1508.38,1154.31 1508.63,1157.56 \n",
" 1508.86,1160.8 1509.09,1164.03 1509.29,1167.25 1509.48,1170.47 1509.65,1173.67 1509.79,1176.86 1509.9,1180.03 1509.99,1183.19 1510.04,1186.34 1510.06,1189.46 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1504.85,1096.39 1505.01,1099.48 1505.47,1102.53 1506.21,1105.55 1507.21,1108.53 1508.45,1111.47 1509.9,1114.39 1511.54,1117.28 1513.35,1120.15 1515.3,1123 \n",
" 1517.38,1125.83 1519.56,1128.65 1521.81,1131.45 1524.13,1134.25 1526.47,1137.05 1528.83,1139.84 1531.18,1142.63 1533.49,1145.43 1535.75,1148.24 1537.93,1151.06 \n",
" 1540,1153.89 1541.96,1156.74 1543.76,1159.6 1545.4,1162.5 1546.85,1165.41 1548.09,1168.36 1549.09,1171.34 1549.83,1174.35 1550.29,1177.4 1550.45,1180.5 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1550.45,1180.5 1550.45,1185.08 1550.43,1189.77 1550.4,1194.54 1550.37,1199.4 1550.32,1204.33 1550.27,1209.34 1550.21,1214.4 1550.14,1219.51 1550.07,1224.68 \n",
" 1550,1229.88 1549.92,1235.11 1549.84,1240.37 1549.75,1245.65 1549.67,1250.94 1549.58,1256.23 1549.5,1261.52 1549.41,1266.8 1549.33,1272.06 1549.25,1277.3 \n",
" 1549.18,1282.5 1549.11,1287.66 1549.04,1292.78 1548.98,1297.84 1548.93,1302.84 1548.88,1307.77 1548.85,1312.63 1548.82,1317.41 1548.8,1322.09 1548.8,1326.68 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1550.45,1180.5 1550.57,1184.43 1550.9,1188.41 1551.42,1192.45 1552.14,1196.54 1553.02,1200.67 1554.05,1204.83 1555.21,1209.03 1556.5,1213.27 1557.89,1217.53 \n",
" 1559.37,1221.81 1560.92,1226.11 1562.53,1230.42 1564.17,1234.75 1565.84,1239.08 1567.52,1243.41 1569.19,1247.74 1570.84,1252.06 1572.44,1256.38 1573.99,1260.68 \n",
" 1575.47,1264.96 1576.86,1269.22 1578.15,1273.45 1579.32,1277.65 1580.35,1281.82 1581.23,1285.95 1581.94,1290.03 1582.47,1294.07 1582.8,1298.06 1582.91,1301.99 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1094.14,481.822 1093.93,485.415 1093.32,488.973 1092.34,492.499 1091.01,495.995 1089.38,499.464 1087.46,502.909 1085.29,506.332 1082.9,509.735 1080.31,513.122 \n",
" 1077.56,516.494 1074.68,519.855 1071.69,523.207 1068.63,526.552 1065.53,529.894 1062.41,533.234 1059.3,536.575 1056.24,539.921 1053.25,543.272 1050.37,546.633 \n",
" 1047.62,550.006 1045.03,553.392 1042.64,556.796 1040.47,560.218 1038.55,563.663 1036.92,567.132 1035.59,570.628 1034.61,574.154 1034,577.712 1033.79,581.305 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1094.14,481.822 1094.07,484.925 1093.85,488.004 1093.51,491.061 1093.05,494.099 1092.48,497.118 1091.81,500.12 1091.05,503.108 1090.22,506.083 1089.32,509.047 \n",
" 1088.36,512.001 1087.35,514.947 1086.31,517.887 1085.24,520.823 1084.16,523.756 1083.07,526.688 1081.99,529.621 1080.92,532.557 1079.88,535.497 1078.88,538.443 \n",
" 1077.92,541.397 1077.02,544.36 1076.18,547.335 1075.42,550.323 1074.76,553.326 1074.18,556.345 1073.72,559.382 1073.38,562.44 1073.17,565.519 1073.09,568.621 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1033.79,581.305 1033.84,584.425 1033.98,587.556 1034.21,590.697 1034.52,593.846 1034.9,597.004 1035.35,600.169 1035.86,603.34 1036.42,606.517 1037.03,609.7 \n",
" 1037.67,612.886 1038.34,616.076 1039.04,619.269 1039.76,622.464 1040.49,625.66 1041.22,628.856 1041.94,632.052 1042.66,635.247 1043.36,638.44 1044.03,641.63 \n",
" 1044.68,644.817 1045.28,647.999 1045.84,651.176 1046.35,654.348 1046.8,657.513 1047.18,660.67 1047.49,663.82 1047.72,666.96 1047.86,670.091 1047.91,673.211 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1033.79,581.305 1033.56,584.767 1032.91,588.167 1031.85,591.509 1030.42,594.798 1028.66,598.039 1026.6,601.236 1024.26,604.393 1021.69,607.517 1018.9,610.61 \n",
" 1015.94,613.678 1012.84,616.725 1009.62,619.756 1006.33,622.775 1002.99,625.788 999.627,628.798 996.284,631.81 992.989,634.83 989.774,637.861 986.671,640.908 \n",
" 983.711,643.976 980.928,647.069 978.352,650.192 976.016,653.35 973.951,656.547 972.191,659.788 970.766,663.077 969.708,666.419 969.05,669.819 968.824,673.281 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 968.824,673.281 968.783,676.374 968.664,679.428 968.473,682.444 968.216,685.425 967.898,688.376 967.526,691.298 967.104,694.194 966.64,697.068 966.137,699.923 \n",
" 965.603,702.761 965.043,705.586 964.463,708.4 963.869,711.207 963.266,714.01 962.66,716.811 962.056,719.613 961.462,722.42 960.882,725.234 960.322,728.059 \n",
" 959.788,730.897 959.285,733.752 958.821,736.626 958.399,739.523 958.027,742.445 957.709,745.395 957.452,748.377 957.261,751.393 957.142,754.446 957.101,757.54 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 968.824,673.281 968.593,676.59 967.922,679.821 966.844,682.978 965.39,686.068 963.595,689.096 961.49,692.068 959.108,694.991 956.481,697.87 953.643,700.71 \n",
" 950.625,703.519 947.461,706.301 944.182,709.062 940.822,711.809 937.413,714.547 933.988,717.283 930.579,720.021 927.22,722.768 923.941,725.529 920.777,728.311 \n",
" 917.759,731.12 914.921,733.96 912.294,736.839 909.912,739.762 907.807,742.734 906.011,745.762 904.558,748.852 903.48,752.009 902.809,755.24 902.578,758.549 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 902.578,758.549 902.565,762.958 902.529,767.461 902.469,772.049 902.389,776.717 902.291,781.456 902.175,786.262 902.044,791.126 901.9,796.041 901.744,801.002 \n",
" 901.578,806 901.404,811.029 901.223,816.082 901.039,821.153 900.851,826.234 900.663,831.318 900.475,836.399 900.291,841.47 900.11,846.523 899.937,851.552 \n",
" 899.771,856.551 899.615,861.511 899.47,866.427 899.339,871.29 899.223,876.096 899.125,880.836 899.045,885.503 898.986,890.092 898.949,894.594 898.936,899.003 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 902.578,758.549 902.378,762.498 901.798,766.441 900.865,770.378 899.608,774.31 898.054,778.238 896.233,782.162 894.172,786.081 891.9,789.998 889.444,793.911 \n",
" 886.833,797.823 884.095,801.732 881.259,805.639 878.352,809.546 875.403,813.452 872.439,817.357 869.49,821.263 866.583,825.17 863.746,829.077 861.009,832.987 \n",
" 858.398,836.898 855.942,840.811 853.67,844.728 851.609,848.648 849.787,852.571 848.234,856.499 846.977,860.431 846.044,864.368 845.463,868.311 845.264,872.26 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 845.264,872.26 845.262,877.099 845.259,882.041 845.254,887.078 845.247,892.202 845.239,897.406 845.229,902.681 845.218,908.021 845.205,913.419 845.192,918.865 \n",
" 845.177,924.353 845.162,929.875 845.147,935.424 845.131,940.992 845.115,946.571 845.099,952.154 845.082,957.734 845.067,963.301 845.051,968.85 845.036,974.373 \n",
" 845.022,979.861 845.008,985.307 844.996,990.704 844.985,996.044 844.975,1001.32 844.966,1006.52 844.959,1011.65 844.954,1016.68 844.951,1021.63 844.95,1026.47 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 845.264,872.26 845.074,875.597 844.522,878.908 843.635,882.195 842.44,885.459 840.963,888.703 839.232,891.928 837.272,895.137 835.112,898.331 832.777,901.512 \n",
" 830.295,904.683 827.692,907.845 824.996,911 822.232,914.151 819.428,917.298 816.611,920.444 813.807,923.592 811.044,926.742 808.347,929.897 805.745,933.059 \n",
" 803.262,936.23 800.928,939.412 798.767,942.606 796.808,945.814 795.077,949.04 793.6,952.283 792.405,955.548 791.518,958.834 790.966,962.145 790.776,965.483 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 790.776,965.483 790.793,970.557 790.843,975.739 790.922,981.019 791.029,986.39 791.162,991.845 791.317,997.375 791.493,1002.97 791.687,1008.63 791.897,1014.34 \n",
" 792.119,1020.09 792.353,1025.88 792.595,1031.69 792.843,1037.53 793.095,1043.37 793.348,1049.22 793.599,1055.07 793.847,1060.9 794.089,1066.72 794.323,1072.51 \n",
" 794.546,1078.26 794.755,1083.97 794.949,1089.62 795.125,1095.22 795.28,1100.75 795.413,1106.21 795.52,1111.58 795.6,1116.86 795.649,1122.04 795.666,1127.11 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 790.776,965.483 790.644,970.752 790.259,976.105 789.641,981.534 788.809,987.035 787.78,992.6 786.574,998.223 785.209,1003.9 783.704,1009.62 782.078,1015.38 \n",
" 780.349,1021.18 778.535,1027 776.657,1032.85 774.732,1038.71 772.779,1044.58 770.816,1050.45 768.863,1056.32 766.938,1062.18 765.059,1068.02 763.246,1073.85 \n",
" 761.517,1079.64 759.891,1085.4 758.386,1091.13 757.021,1096.8 755.814,1102.43 754.786,1107.99 753.953,1113.49 753.335,1118.92 752.951,1124.27 752.818,1129.54 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 752.818,1129.54 752.693,1132.52 752.328,1135.22 751.741,1137.67 750.95,1139.89 749.973,1141.9 748.828,1143.72 747.531,1145.37 746.102,1146.87 744.557,1148.23 \n",
" 742.915,1149.49 741.193,1150.66 739.409,1151.76 737.581,1152.8 735.725,1153.82 733.862,1154.83 732.007,1155.85 730.178,1156.89 728.394,1157.99 726.672,1159.16 \n",
" 725.03,1160.41 723.485,1161.78 722.056,1163.28 720.759,1164.93 719.614,1166.75 718.637,1168.76 717.846,1170.98 717.259,1173.43 716.894,1176.13 716.769,1179.11 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 752.818,1129.54 752.683,1132.98 752.289,1136.44 751.656,1139.93 750.803,1143.44 749.75,1146.96 748.514,1150.51 747.116,1154.08 745.574,1157.65 743.908,1161.25 \n",
" 742.137,1164.85 740.28,1168.46 738.355,1172.08 736.383,1175.7 734.383,1179.32 732.372,1182.95 730.371,1186.57 728.399,1190.2 726.475,1193.81 724.618,1197.42 \n",
" 722.847,1201.03 721.181,1204.62 719.639,1208.19 718.241,1211.76 717.005,1215.31 715.951,1218.84 715.099,1222.34 714.466,1225.83 714.072,1229.29 713.936,1232.73 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 713.936,1232.73 713.756,1235.74 713.234,1238.57 712.393,1241.21 711.261,1243.7 709.862,1246.03 708.222,1248.23 706.366,1250.31 704.319,1252.29 702.107,1254.17 \n",
" 699.756,1255.98 697.29,1257.72 694.736,1259.41 692.117,1261.07 689.461,1262.7 686.792,1264.33 684.136,1265.96 681.518,1267.62 678.963,1269.31 676.498,1271.05 \n",
" 674.146,1272.86 671.935,1274.74 669.888,1276.72 668.032,1278.8 666.391,1281 664.992,1283.33 663.86,1285.82 663.02,1288.46 662.497,1291.29 662.317,1294.3 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 713.936,1232.73 713.813,1235.69 713.453,1238.36 712.876,1240.77 712.097,1242.92 711.135,1244.85 710.008,1246.58 708.732,1248.12 707.325,1249.5 705.804,1250.74 \n",
" 704.187,1251.87 702.492,1252.89 700.736,1253.84 698.936,1254.74 697.11,1255.61 695.275,1256.46 693.449,1257.33 691.649,1258.23 689.893,1259.18 688.198,1260.2 \n",
" 686.581,1261.33 685.061,1262.57 683.654,1263.95 682.377,1265.49 681.25,1267.22 680.288,1269.15 679.51,1271.3 678.932,1273.71 678.572,1276.38 678.449,1279.34 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1073.09,568.621 1072.91,572.757 1072.39,576.912 1071.55,581.085 1070.42,585.275 1069.02,589.479 1067.39,593.697 1065.53,597.927 1063.49,602.167 1061.28,606.417 \n",
" 1058.93,610.675 1056.47,614.939 1053.92,619.208 1051.3,623.48 1048.65,627.755 1045.98,632.03 1043.33,636.305 1040.72,640.578 1038.16,644.847 1035.7,649.111 \n",
" 1033.35,653.368 1031.14,657.618 1029.1,661.859 1027.25,666.089 1025.61,670.306 1024.21,674.511 1023.08,678.7 1022.24,682.873 1021.72,687.028 1021.54,691.164 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1073.09,568.621 1073.19,571.734 1073.46,574.842 1073.9,577.947 1074.5,581.049 1075.23,584.147 1076.09,587.242 1077.06,590.335 1078.14,593.425 1079.3,596.513 \n",
" 1080.53,599.6 1081.82,602.685 1083.16,605.77 1084.53,608.853 1085.92,611.936 1087.32,615.019 1088.72,618.102 1090.09,621.186 1091.43,624.27 1092.72,627.356 \n",
" 1093.95,630.442 1095.11,633.531 1096.19,636.621 1097.16,639.714 1098.02,642.809 1098.75,645.907 1099.35,649.008 1099.79,652.113 1100.06,655.222 1100.15,658.335 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1021.54,691.164 1021.57,694.563 1021.66,698.031 1021.8,701.563 1022,705.154 1022.24,708.8 1022.52,712.495 1022.84,716.233 1023.19,720.01 1023.57,723.82 \n",
" 1023.98,727.659 1024.4,731.521 1024.84,735.401 1025.29,739.294 1025.75,743.195 1026.21,747.098 1026.66,750.998 1027.12,754.891 1027.55,758.771 1027.98,762.633 \n",
" 1028.38,766.472 1028.76,770.283 1029.12,774.059 1029.43,777.798 1029.72,781.492 1029.96,785.138 1030.15,788.73 1030.3,792.262 1030.39,795.73 1030.42,799.128 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1021.54,691.164 1021.35,695.193 1020.81,699.231 1019.95,703.278 1018.78,707.334 1017.33,711.398 1015.64,715.468 1013.72,719.545 1011.61,723.628 1009.33,727.715 \n",
" 1006.9,731.806 1004.35,735.901 1001.71,739.998 999.01,744.097 996.268,748.197 993.512,752.298 990.769,756.398 988.066,760.497 985.428,764.594 982.882,768.689 \n",
" 980.454,772.78 978.17,776.867 976.057,780.95 974.14,785.026 972.447,789.097 971.002,793.161 969.833,797.217 968.965,801.264 968.426,805.302 968.24,809.33 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 968.24,809.33 968.246,812.692 968.262,816.124 968.288,819.622 968.324,823.181 968.367,826.794 968.419,830.458 968.477,834.167 968.541,837.915 968.61,841.697 \n",
" 968.684,845.508 968.761,849.343 968.841,853.197 968.923,857.063 969.006,860.938 969.09,864.815 969.173,868.689 969.255,872.556 969.335,876.409 969.412,880.244 \n",
" 969.485,884.055 969.555,887.837 969.619,891.586 969.677,895.294 969.728,898.958 969.772,902.572 969.807,906.13 969.834,909.629 969.85,913.061 969.856,916.422 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 968.24,809.33 968.049,812.86 967.495,816.372 966.604,819.867 965.403,823.349 963.919,826.816 962.179,830.272 960.211,833.717 958.04,837.152 955.694,840.578 \n",
" 953.201,843.998 950.586,847.412 947.876,850.821 945.1,854.228 942.282,857.632 939.452,861.036 936.635,864.44 933.858,867.846 931.149,871.256 928.534,874.67 \n",
" 926.04,878.089 923.694,881.516 921.524,884.951 919.555,888.396 917.815,891.851 916.332,895.319 915.131,898.8 914.24,902.296 913.685,905.808 913.494,909.337 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 913.494,909.337 913.473,912.443 913.411,915.533 913.311,918.607 913.177,921.667 913.011,924.714 912.817,927.749 912.596,930.774 912.354,933.789 912.091,936.797 \n",
" 911.812,939.797 911.52,942.793 911.217,945.783 910.906,948.771 910.591,951.757 910.275,954.742 909.96,957.728 909.649,960.716 909.346,963.707 909.054,966.702 \n",
" 908.775,969.703 908.513,972.71 908.27,975.726 908.05,978.751 907.855,981.786 907.689,984.833 907.555,987.893 907.455,990.967 907.393,994.056 907.372,997.162 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 913.494,909.337 913.308,912.758 912.768,916.162 911.899,919.548 910.728,922.92 909.282,926.278 907.585,929.623 905.666,932.957 903.55,936.28 901.263,939.596 \n",
" 898.831,942.904 896.282,946.206 893.64,949.504 890.933,952.798 888.186,956.09 885.427,959.382 882.68,962.674 879.973,965.968 877.331,969.266 874.782,972.568 \n",
" 872.35,975.876 870.063,979.191 867.947,982.515 866.028,985.849 864.332,989.194 862.885,992.552 861.714,995.923 860.845,999.31 860.305,1002.71 860.119,1006.13 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 860.119,1006.13 860.095,1009.23 860.027,1012.3 859.917,1015.33 859.769,1018.34 859.586,1021.32 859.372,1024.28 859.129,1027.22 858.862,1030.14 858.573,1033.04 \n",
" 858.265,1035.93 857.943,1038.81 857.609,1041.69 857.267,1044.55 856.92,1047.41 856.571,1050.28 856.224,1053.14 855.882,1056 855.548,1058.88 855.226,1061.76 \n",
" 854.918,1064.65 854.629,1067.55 854.362,1070.47 854.119,1073.41 853.905,1076.37 853.722,1079.35 853.574,1082.36 853.464,1085.39 853.396,1088.46 853.372,1091.56 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 860.119,1006.13 859.956,1009.69 859.482,1013.25 858.72,1016.83 857.694,1020.41 856.426,1024 854.94,1027.59 853.258,1031.19 851.403,1034.8 849.398,1038.41 \n",
" 847.267,1042.02 845.033,1045.64 842.717,1049.26 840.345,1052.89 837.937,1056.51 835.519,1060.13 833.111,1063.76 830.739,1067.38 828.423,1071 826.189,1074.62 \n",
" 824.058,1078.23 822.053,1081.84 820.198,1085.45 818.516,1089.05 817.03,1092.65 815.762,1096.24 814.735,1099.82 813.974,1103.39 813.5,1106.95 813.337,1110.51 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 813.337,1110.51 813.189,1113.6 812.757,1116.66 812.063,1119.68 811.127,1122.66 809.971,1125.61 808.616,1128.54 807.083,1131.44 805.392,1134.32 803.565,1137.18 \n",
" 801.623,1140.03 799.586,1142.86 797.475,1145.68 795.313,1148.49 793.118,1151.3 790.913,1154.11 788.719,1156.92 786.556,1159.73 784.446,1162.55 782.409,1165.38 \n",
" 780.467,1168.23 778.639,1171.09 776.949,1173.97 775.415,1176.87 774.06,1179.8 772.905,1182.75 771.969,1185.73 771.275,1188.75 770.843,1191.81 770.695,1194.9 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 813.337,1110.51 813.218,1113.58 812.872,1116.58 812.315,1119.5 811.564,1122.36 810.637,1125.15 809.551,1127.89 808.321,1130.58 806.965,1133.23 805.499,1135.83 \n",
" 803.941,1138.41 802.307,1140.96 800.614,1143.49 798.88,1146.01 797.12,1148.51 795.351,1151.02 793.591,1153.52 791.856,1156.04 790.164,1158.57 788.53,1161.12 \n",
" 786.972,1163.7 785.506,1166.3 784.15,1168.95 782.92,1171.64 781.833,1174.38 780.906,1177.17 780.156,1180.03 779.599,1182.95 779.253,1185.95 779.134,1189.02 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 779.134,1189.02 779.067,1192.44 778.874,1195.92 778.564,1199.46 778.147,1203.05 777.631,1206.69 777.025,1210.37 776.341,1214.09 775.586,1217.84 774.77,1221.62 \n",
" 773.902,1225.43 772.993,1229.26 772.05,1233.1 771.084,1236.96 770.104,1240.82 769.12,1244.69 768.14,1248.55 767.174,1252.41 766.232,1256.25 765.322,1260.08 \n",
" 764.455,1263.89 763.639,1267.67 762.884,1271.42 762.199,1275.14 761.594,1278.82 761.078,1282.46 760.66,1286.05 760.35,1289.59 760.157,1293.07 760.091,1296.49 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 779.134,1189.02 778.988,1193.22 778.566,1197.47 777.888,1201.76 776.973,1206.09 775.843,1210.46 774.519,1214.85 773.02,1219.28 771.367,1223.73 769.581,1228.2 \n",
" 767.682,1232.69 765.691,1237.2 763.628,1241.72 761.514,1246.24 759.369,1250.78 757.213,1255.31 755.068,1259.84 752.954,1264.37 750.891,1268.88 748.9,1273.39 \n",
" 747.001,1277.88 745.215,1282.35 743.562,1286.8 742.063,1291.23 740.739,1295.63 739.609,1299.99 738.694,1304.32 738.016,1308.61 737.594,1312.86 737.448,1317.06 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1100.15,658.335 1100.02,661.642 1099.62,664.969 1098.98,668.316 1098.12,671.681 1097.06,675.062 1095.82,678.458 1094.41,681.866 1092.86,685.287 1091.18,688.717 \n",
" 1089.39,692.156 1087.52,695.601 1085.58,699.052 1083.6,702.507 1081.58,705.964 1079.55,709.422 1077.54,712.88 1075.55,716.334 1073.61,719.786 1071.74,723.231 \n",
" 1069.96,726.67 1068.28,730.1 1066.73,733.52 1065.32,736.929 1064.07,740.325 1063.01,743.706 1062.15,747.07 1061.51,750.417 1061.12,753.745 1060.98,757.052 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1100.15,658.335 1100.28,663.036 1100.66,667.807 1101.27,672.641 1102.08,677.534 1103.09,682.481 1104.28,687.475 1105.62,692.513 1107.09,697.589 1108.69,702.699 \n",
" 1110.38,707.836 1112.16,712.996 1114.01,718.174 1115.9,723.365 1117.81,728.563 1119.74,733.764 1121.65,738.962 1123.54,744.153 1125.38,749.331 1127.16,754.491 \n",
" 1128.86,759.629 1130.46,764.738 1131.93,769.814 1133.27,774.852 1134.45,779.847 1135.46,784.793 1136.28,789.686 1136.89,794.52 1137.26,799.291 1137.39,803.993 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1060.98,757.052 1061.02,761.61 1061.12,766.262 1061.29,771.001 1061.51,775.82 1061.79,780.712 1062.12,785.671 1062.49,790.689 1062.9,795.759 1063.34,800.874 \n",
" 1063.81,806.028 1064.3,811.213 1064.81,816.422 1065.33,821.649 1065.86,826.886 1066.39,832.127 1066.92,837.364 1067.44,842.591 1067.95,847.8 1068.45,852.985 \n",
" 1068.91,858.139 1069.36,863.254 1069.76,868.324 1070.13,873.342 1070.46,878.301 1070.74,883.193 1070.97,888.012 1071.13,892.751 1071.24,897.403 1071.27,901.961 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1060.98,757.052 1060.82,761.984 1060.35,766.974 1059.6,772.019 1058.59,777.115 1057.33,782.256 1055.87,787.439 1054.21,792.659 1052.37,797.912 1050.39,803.193 \n",
" 1048.29,808.498 1046.08,813.823 1043.8,819.163 1041.45,824.514 1039.08,829.872 1036.69,835.232 1034.31,840.589 1031.97,845.94 1029.68,851.28 1027.47,856.605 \n",
" 1025.37,861.91 1023.39,867.192 1021.56,872.444 1019.9,877.664 1018.43,882.847 1017.18,887.988 1016.16,893.084 1015.41,898.129 1014.95,903.12 1014.78,908.051 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1014.78,908.051 1014.79,911.139 1014.82,914.174 1014.87,917.161 1014.94,920.103 1015.02,923.005 1015.11,925.87 1015.22,928.702 1015.33,931.506 1015.46,934.284 \n",
" 1015.59,937.041 1015.73,939.78 1015.88,942.506 1016.03,945.222 1016.18,947.932 1016.33,950.641 1016.48,953.351 1016.63,956.068 1016.77,958.794 1016.92,961.533 \n",
" 1017.05,964.29 1017.18,967.068 1017.29,969.871 1017.4,972.703 1017.49,975.568 1017.57,978.47 1017.63,981.413 1017.68,984.4 1017.71,987.435 1017.72,990.522 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1014.78,908.051 1014.61,911.446 1014.11,914.836 1013.31,918.222 1012.23,921.602 1010.9,924.98 1009.33,928.353 1007.56,931.723 1005.6,935.091 1003.49,938.456 \n",
" 1001.25,941.818 998.895,945.18 996.456,948.539 993.957,951.898 991.421,955.257 988.874,958.615 986.338,961.973 983.839,965.332 981.401,968.692 979.047,972.053 \n",
" 976.803,975.416 974.691,978.781 972.738,982.149 970.966,985.519 969.4,988.892 968.065,992.269 966.984,995.65 966.182,999.035 965.683,1002.43 965.511,1005.82 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 965.511,1005.82 965.536,1009.62 965.607,1013.49 965.721,1017.44 965.875,1021.45 966.065,1025.53 966.288,1029.66 966.541,1033.85 966.819,1038.07 967.119,1042.34 \n",
" 967.439,1046.63 967.774,1050.96 968.122,1055.3 968.477,1059.66 968.839,1064.02 969.201,1068.39 969.563,1072.76 969.918,1077.12 970.266,1081.46 970.601,1085.78 \n",
" 970.921,1090.08 971.221,1094.34 971.5,1098.57 971.752,1102.75 971.975,1106.88 972.165,1110.96 972.319,1114.98 972.433,1118.92 972.504,1122.8 972.529,1126.59 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 965.511,1005.82 965.353,1009.17 964.892,1012.53 964.151,1015.9 963.153,1019.27 961.92,1022.64 960.474,1026.01 958.837,1029.39 957.033,1032.77 955.083,1036.16 \n",
" 953.01,1039.54 950.836,1042.93 948.584,1046.32 946.276,1049.71 943.935,1053.1 941.582,1056.49 939.24,1059.88 936.932,1063.27 934.68,1066.66 932.506,1070.05 \n",
" 930.433,1073.43 928.484,1076.82 926.679,1080.2 925.043,1083.57 923.597,1086.95 922.364,1090.32 921.365,1093.69 920.625,1097.05 920.164,1100.41 920.005,1103.77 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 920.005,1103.77 920.021,1107.33 920.067,1110.96 920.141,1114.66 920.241,1118.42 920.364,1122.25 920.509,1126.12 920.672,1130.05 920.853,1134.01 921.047,1138.01 \n",
" 921.255,1142.04 921.472,1146.1 921.697,1150.17 921.928,1154.26 922.162,1158.36 922.397,1162.46 922.631,1166.55 922.862,1170.64 923.087,1174.72 923.304,1178.77 \n",
" 923.511,1182.8 923.706,1186.8 923.887,1190.77 924.05,1194.69 924.195,1198.57 924.318,1202.39 924.418,1206.15 924.492,1209.86 924.538,1213.49 924.554,1217.05 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 920.005,1103.77 919.875,1107.58 919.496,1111.43 918.887,1115.33 918.066,1119.25 917.052,1123.22 915.863,1127.21 914.517,1131.22 913.034,1135.26 911.431,1139.32 \n",
" 909.726,1143.4 907.939,1147.49 906.087,1151.6 904.189,1155.71 902.264,1159.82 900.33,1163.94 898.404,1168.06 896.506,1172.17 894.655,1176.27 892.867,1180.36 \n",
" 891.163,1184.44 889.56,1188.5 888.076,1192.54 886.731,1196.56 885.542,1200.55 884.528,1204.51 883.707,1208.44 883.098,1212.33 882.719,1216.19 882.589,1220 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 882.589,1220 882.43,1223.09 881.969,1226.13 881.228,1229.14 880.229,1232.1 878.995,1235.03 877.548,1237.93 875.91,1240.8 874.105,1243.64 872.154,1246.46 \n",
" 870.08,1249.26 867.905,1252.05 865.652,1254.83 863.342,1257.59 860.999,1260.35 858.645,1263.12 856.302,1265.88 853.993,1268.64 851.739,1271.42 849.564,1274.21 \n",
" 847.49,1277.01 845.539,1279.83 843.734,1282.67 842.096,1285.54 840.649,1288.44 839.415,1291.37 838.417,1294.33 837.675,1297.34 837.214,1300.38 837.056,1303.47 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 882.589,1220 882.486,1223.01 882.19,1225.83 881.712,1228.47 881.069,1230.94 880.275,1233.26 879.343,1235.45 878.289,1237.51 877.127,1239.46 875.871,1241.32 \n",
" 874.535,1243.11 873.135,1244.82 871.684,1246.49 870.197,1248.12 868.689,1249.73 867.173,1251.33 865.665,1252.94 864.178,1254.57 862.727,1256.24 861.327,1257.95 \n",
" 859.992,1259.74 858.736,1261.6 857.573,1263.55 856.519,1265.61 855.588,1267.8 854.793,1270.12 854.15,1272.59 853.673,1275.23 853.376,1278.05 853.274,1281.06 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1137.39,803.993 1137.32,807.096 1137.11,810.176 1136.76,813.235 1136.3,816.274 1135.73,819.296 1135.06,822.302 1134.31,825.293 1133.47,828.272 1132.57,831.24 \n",
" 1131.62,834.198 1130.61,837.149 1129.57,840.094 1128.5,843.035 1127.42,845.973 1126.33,848.911 1125.25,851.849 1124.18,854.79 1123.14,857.735 1122.14,860.686 \n",
" 1121.18,863.644 1120.28,866.612 1119.44,869.591 1118.69,872.582 1118.02,875.588 1117.45,878.61 1116.99,881.649 1116.65,884.708 1116.43,887.789 1116.36,890.891 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1137.39,803.993 1137.56,807.109 1138.03,810.216 1138.79,813.315 1139.81,816.405 1141.08,819.488 1142.56,822.564 1144.24,825.634 1146.09,828.7 1148.09,831.76 \n",
" 1150.22,834.817 1152.45,837.87 1154.76,840.921 1157.12,843.97 1159.52,847.018 1161.94,850.066 1164.34,853.114 1166.71,856.164 1169.02,859.215 1171.25,862.268 \n",
" 1173.37,865.325 1175.37,868.385 1177.22,871.45 1178.9,874.52 1180.38,877.597 1181.65,880.68 1182.67,883.77 1183.43,886.868 1183.9,889.975 1184.07,893.092 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1116.36,890.891 1116.4,895.145 1116.5,899.485 1116.67,903.907 1116.9,908.402 1117.18,912.966 1117.51,917.592 1117.89,922.272 1118.3,927.001 1118.75,931.772 \n",
" 1119.23,936.578 1119.73,941.414 1120.24,946.272 1120.77,951.147 1121.31,956.031 1121.85,960.918 1122.39,965.802 1122.92,970.677 1123.43,975.535 1123.93,980.371 \n",
" 1124.41,985.177 1124.85,989.948 1125.27,994.677 1125.64,999.358 1125.97,1003.98 1126.26,1008.55 1126.49,1013.04 1126.66,1017.46 1126.76,1021.8 1126.8,1026.06 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1116.36,890.891 1116.23,894 1115.85,897.097 1115.25,900.184 1114.44,903.26 1113.44,906.328 1112.26,909.387 1110.93,912.439 1109.46,915.485 1107.88,918.524 \n",
" 1106.19,921.56 1104.42,924.591 1102.59,927.619 1100.71,930.646 1098.81,933.67 1096.89,936.695 1094.99,939.72 1093.11,942.746 1091.28,945.774 1089.51,948.806 \n",
" 1087.83,951.841 1086.24,954.881 1084.77,957.926 1083.44,960.978 1082.26,964.038 1081.26,967.105 1080.45,970.182 1079.85,973.268 1079.47,976.365 1079.34,979.474 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1079.34,979.474 1079.38,983.164 1079.5,986.93 1079.68,990.764 1079.93,994.661 1080.23,998.617 1080.59,1002.62 1081,1006.68 1081.45,1010.78 1081.93,1014.91 \n",
" 1082.45,1019.07 1082.98,1023.26 1083.54,1027.47 1084.12,1031.69 1084.7,1035.92 1085.28,1040.15 1085.86,1044.38 1086.44,1048.6 1086.99,1052.8 1087.53,1056.99 \n",
" 1088.05,1061.15 1088.53,1065.29 1088.98,1069.38 1089.39,1073.44 1089.74,1077.45 1090.05,1081.4 1090.3,1085.3 1090.48,1089.13 1090.6,1092.9 1090.64,1096.59 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1079.34,979.474 1079.2,982.62 1078.79,985.778 1078.14,988.947 1077.25,992.125 1076.15,995.312 1074.87,998.507 1073.42,1001.71 1071.82,1004.92 1070.09,1008.13 \n",
" 1068.24,1011.35 1066.31,1014.57 1064.32,1017.8 1062.27,1021.02 1060.19,1024.25 1058.1,1027.48 1056.02,1030.71 1053.97,1033.94 1051.97,1037.16 1050.04,1040.38 \n",
" 1048.2,1043.6 1046.47,1046.82 1044.87,1050.02 1043.42,1053.23 1042.13,1056.42 1041.04,1059.61 1040.15,1062.79 1039.49,1065.95 1039.08,1069.11 1038.94,1072.26 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1038.94,1072.26 1038.84,1076.65 1038.53,1081.12 1038.03,1085.65 1037.36,1090.24 1036.53,1094.89 1035.56,1099.59 1034.47,1104.33 1033.26,1109.11 1031.95,1113.92 \n",
" 1030.56,1118.77 1029.1,1123.63 1027.59,1128.52 1026.04,1133.42 1024.47,1138.33 1022.89,1143.24 1021.32,1148.14 1019.77,1153.04 1018.26,1157.93 1016.8,1162.8 \n",
" 1015.41,1167.64 1014.1,1172.45 1012.89,1177.23 1011.79,1181.98 1010.82,1186.67 1010,1191.32 1009.33,1195.91 1008.83,1200.44 1008.52,1204.91 1008.41,1209.3 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1038.94,1072.26 1038.93,1076.72 1038.87,1081.27 1038.79,1085.91 1038.68,1090.63 1038.54,1095.42 1038.38,1100.28 1038.2,1105.19 1037.99,1110.16 1037.77,1115.17 \n",
" 1037.54,1120.23 1037.3,1125.31 1037.05,1130.42 1036.79,1135.54 1036.53,1140.68 1036.26,1145.81 1036,1150.95 1035.74,1156.07 1035.49,1161.18 1035.25,1166.26 \n",
" 1035.01,1171.32 1034.79,1176.33 1034.59,1181.3 1034.41,1186.21 1034.25,1191.07 1034.11,1195.86 1034,1200.58 1033.91,1205.22 1033.86,1209.77 1033.85,1214.23 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1033.85,1214.23 1033.71,1218.1 1033.33,1222.02 1032.72,1225.98 1031.9,1229.97 1030.88,1234 1029.68,1238.06 1028.33,1242.14 1026.84,1246.26 1025.23,1250.39 \n",
" 1023.52,1254.54 1021.72,1258.7 1019.86,1262.88 1017.96,1267.06 1016.02,1271.25 1014.08,1275.44 1012.14,1279.63 1010.24,1283.81 1008.38,1287.98 1006.58,1292.15 \n",
" 1004.87,1296.3 1003.26,1300.43 1001.77,1304.54 1000.41,1308.63 999.22,1312.69 998.201,1316.71 997.377,1320.71 996.765,1324.67 996.384,1328.58 996.253,1332.45 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1033.85,1214.23 1033.87,1217.37 1033.96,1220.55 1034.09,1223.76 1034.26,1227.01 1034.48,1230.3 1034.74,1233.61 1035.03,1236.95 1035.35,1240.32 1035.7,1243.7 \n",
" 1036.07,1247.1 1036.45,1250.52 1036.85,1253.94 1037.26,1257.37 1037.68,1260.81 1038.1,1264.25 1038.51,1267.69 1038.92,1271.12 1039.32,1274.55 1039.71,1277.96 \n",
" 1040.08,1281.36 1040.43,1284.75 1040.75,1288.11 1041.04,1291.45 1041.29,1294.76 1041.51,1298.05 1041.69,1301.3 1041.82,1304.52 1041.9,1307.7 1041.93,1310.83 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1184.07,893.092 1184.23,896.566 1184.69,900.049 1185.44,903.541 1186.44,907.04 1187.68,910.547 1189.14,914.06 1190.79,917.578 1192.6,921.101 1194.57,924.629 \n",
" 1196.65,928.161 1198.84,931.695 1201.11,935.232 1203.43,938.771 1205.79,942.31 1208.16,945.85 1210.52,949.39 1212.84,952.928 1215.11,956.465 1217.3,959.999 \n",
" 1219.38,963.531 1221.35,967.059 1223.16,970.582 1224.81,974.101 1226.26,977.613 1227.51,981.12 1228.51,984.619 1229.26,988.111 1229.72,991.594 1229.88,995.068 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1184.07,893.092 1184.08,897.161 1184.12,901.315 1184.19,905.549 1184.28,909.856 1184.39,914.229 1184.52,918.663 1184.66,923.151 1184.83,927.686 1185,932.263 \n",
" 1185.18,936.874 1185.38,941.514 1185.58,946.177 1185.79,950.855 1186,955.543 1186.21,960.233 1186.42,964.921 1186.62,969.599 1186.82,974.262 1187.02,978.902 \n",
" 1187.2,983.513 1187.38,988.09 1187.54,992.625 1187.68,997.113 1187.81,1001.55 1187.92,1005.92 1188.01,1010.23 1188.08,1014.46 1188.12,1018.62 1188.13,1022.68 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1229.88,995.068 1229.89,998.801 1229.92,1002.61 1229.96,1006.5 1230.02,1010.45 1230.09,1014.46 1230.17,1018.53 1230.27,1022.65 1230.37,1026.81 1230.48,1031.01 \n",
" 1230.6,1035.24 1230.73,1039.5 1230.86,1043.78 1230.99,1048.07 1231.12,1052.37 1231.26,1056.68 1231.39,1060.98 1231.53,1065.27 1231.66,1069.55 1231.78,1073.81 \n",
" 1231.9,1078.04 1232.01,1082.24 1232.12,1086.4 1232.21,1090.52 1232.3,1094.59 1232.37,1098.6 1232.42,1102.56 1232.47,1106.44 1232.49,1110.25 1232.5,1113.98 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1229.88,995.068 1230.06,998.156 1230.57,1001.19 1231.4,1004.18 1232.51,1007.12 1233.89,1010.02 1235.5,1012.89 1237.33,1015.72 1239.34,1018.53 1241.52,1021.31 \n",
" 1243.83,1024.06 1246.25,1026.81 1248.77,1029.53 1251.34,1032.25 1253.96,1034.96 1256.58,1037.67 1259.19,1040.38 1261.77,1043.1 1264.28,1045.83 1266.71,1048.57 \n",
" 1269.02,1051.33 1271.2,1054.11 1273.21,1056.91 1275.03,1059.74 1276.65,1062.61 1278.02,1065.51 1279.14,1068.46 1279.96,1071.44 1280.48,1074.48 1280.66,1077.57 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1280.66,1077.57 1280.69,1081.22 1280.78,1084.95 1280.93,1088.75 1281.13,1092.62 1281.38,1096.54 1281.67,1100.51 1282,1104.54 1282.36,1108.6 1282.75,1112.7 \n",
" 1283.17,1116.83 1283.61,1120.99 1284.06,1125.16 1284.52,1129.35 1285,1133.55 1285.47,1137.75 1285.94,1141.95 1286.4,1146.13 1286.86,1150.31 1287.29,1154.47 \n",
" 1287.71,1158.6 1288.1,1162.7 1288.47,1166.76 1288.8,1170.78 1289.09,1174.76 1289.33,1178.68 1289.54,1182.54 1289.68,1186.34 1289.78,1190.07 1289.81,1193.73 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1280.66,1077.57 1280.78,1082.06 1281.15,1086.63 1281.75,1091.25 1282.55,1095.92 1283.54,1100.65 1284.7,1105.42 1286.02,1110.23 1287.47,1115.08 1289.04,1119.95 \n",
" 1290.7,1124.86 1292.45,1129.78 1294.26,1134.73 1296.11,1139.68 1297.99,1144.64 1299.88,1149.6 1301.77,1154.56 1303.62,1159.52 1305.43,1164.46 1307.18,1169.39 \n",
" 1308.84,1174.29 1310.41,1179.17 1311.86,1184.01 1313.17,1188.83 1314.34,1193.6 1315.33,1198.32 1316.13,1203 1316.73,1207.62 1317.1,1212.18 1317.22,1216.68 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1317.22,1216.68 1317.36,1219.78 1317.74,1222.86 1318.37,1225.91 1319.21,1228.94 1320.24,1231.96 1321.46,1234.95 1322.84,1237.93 1324.35,1240.9 1325.99,1243.85 \n",
" 1327.74,1246.8 1329.56,1249.73 1331.46,1252.66 1333.4,1255.58 1335.37,1258.51 1337.35,1261.43 1339.32,1264.35 1341.26,1267.27 1343.15,1270.2 1344.98,1273.14 \n",
" 1346.72,1276.08 1348.36,1279.03 1349.88,1282 1351.26,1284.98 1352.47,1287.98 1353.51,1290.99 1354.35,1294.02 1354.97,1297.08 1355.36,1300.15 1355.49,1303.25 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1317.22,1216.68 1317.25,1219.96 1317.31,1223.3 1317.42,1226.71 1317.57,1230.18 1317.75,1233.7 1317.96,1237.27 1318.2,1240.88 1318.47,1244.53 1318.75,1248.21 \n",
" 1319.06,1251.92 1319.38,1255.66 1319.71,1259.41 1320.04,1263.17 1320.39,1266.94 1320.73,1270.71 1321.08,1274.48 1321.42,1278.25 1321.75,1282 1322.06,1285.73 \n",
" 1322.37,1289.44 1322.65,1293.12 1322.92,1296.77 1323.16,1300.38 1323.37,1303.95 1323.55,1307.47 1323.7,1310.94 1323.81,1314.35 1323.87,1317.69 1323.9,1320.97 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1188.13,1022.68 1188.25,1025.8 1188.59,1028.93 1189.13,1032.06 1189.86,1035.2 1190.76,1038.34 1191.81,1041.48 1193.01,1044.64 1194.32,1047.79 1195.75,1050.95 \n",
" 1197.26,1054.11 1198.85,1057.27 1200.49,1060.44 1202.17,1063.6 1203.88,1066.77 1205.6,1069.94 1207.31,1073.1 1208.99,1076.27 1210.64,1079.43 1212.22,1082.6 \n",
" 1213.74,1085.76 1215.16,1088.92 1216.48,1092.07 1217.67,1095.22 1218.73,1098.37 1219.63,1101.51 1220.36,1104.65 1220.9,1107.78 1221.23,1110.9 1221.35,1114.02 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1188.13,1022.68 1188.03,1025.68 1187.74,1028.44 1187.26,1031 1186.63,1033.36 1185.84,1035.54 1184.91,1037.55 1183.86,1039.43 1182.71,1041.18 1181.46,1042.81 \n",
" 1180.13,1044.36 1178.74,1045.82 1177.3,1047.23 1175.83,1048.6 1174.33,1049.94 1172.82,1051.27 1171.32,1052.61 1169.85,1053.97 1168.4,1055.38 1167.01,1056.85 \n",
" 1165.69,1058.39 1164.44,1060.03 1163.28,1061.77 1162.24,1063.65 1161.31,1065.67 1160.52,1067.85 1159.88,1070.21 1159.41,1072.76 1159.11,1075.52 1159.01,1078.52 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1221.35,1114.02 1221.5,1117.1 1221.94,1120.1 1222.64,1123.03 1223.6,1125.9 1224.77,1128.72 1226.15,1131.48 1227.71,1134.19 1229.43,1136.87 1231.29,1139.5 \n",
" 1233.26,1142.11 1235.33,1144.69 1237.48,1147.26 1239.68,1149.81 1241.91,1152.35 1244.15,1154.89 1246.38,1157.43 1248.58,1159.98 1250.73,1162.54 1252.8,1165.13 \n",
" 1254.77,1167.73 1256.63,1170.37 1258.35,1173.04 1259.91,1175.76 1261.29,1178.52 1262.46,1181.33 1263.42,1184.2 1264.12,1187.14 1264.56,1190.14 1264.71,1193.21 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1221.35,1114.02 1221.43,1117.71 1221.65,1121.46 1222.01,1125.28 1222.5,1129.14 1223.1,1133.06 1223.81,1137.02 1224.6,1141.03 1225.48,1145.07 1226.43,1149.14 \n",
" 1227.44,1153.23 1228.5,1157.35 1229.6,1161.48 1230.73,1165.63 1231.87,1169.78 1233.02,1173.94 1234.16,1178.09 1235.29,1182.24 1236.38,1186.37 1237.44,1190.49 \n",
" 1238.45,1194.58 1239.41,1198.65 1240.29,1202.69 1241.08,1206.69 1241.79,1210.66 1242.39,1214.57 1242.88,1218.44 1243.24,1222.25 1243.46,1226.01 1243.54,1229.7 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1243.54,1229.7 1243.66,1233.04 1244.01,1236.41 1244.57,1239.82 1245.32,1243.26 1246.25,1246.72 1247.35,1250.2 1248.58,1253.71 1249.95,1257.23 1251.42,1260.77 \n",
" 1252.99,1264.32 1254.63,1267.89 1256.33,1271.46 1258.08,1275.04 1259.85,1278.63 1261.63,1282.21 1263.4,1285.8 1265.14,1289.38 1266.84,1292.95 1268.49,1296.51 \n",
" 1270.05,1300.07 1271.53,1303.61 1272.89,1307.13 1274.13,1310.64 1275.22,1314.12 1276.15,1317.58 1276.91,1321.02 1277.47,1324.42 1277.82,1327.8 1277.94,1331.14 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1243.54,1229.7 1243.49,1232.7 1243.34,1235.49 1243.09,1238.07 1242.76,1240.48 1242.36,1242.72 1241.88,1244.8 1241.35,1246.75 1240.75,1248.59 1240.11,1250.31 \n",
" 1239.43,1251.95 1238.72,1253.52 1237.98,1255.04 1237.22,1256.51 1236.45,1257.96 1235.68,1259.4 1234.91,1260.85 1234.15,1262.32 1233.41,1263.84 1232.69,1265.41 \n",
" 1232.01,1267.05 1231.37,1268.77 1230.78,1270.61 1230.24,1272.56 1229.77,1274.64 1229.36,1276.88 1229.03,1279.29 1228.79,1281.87 1228.64,1284.66 1228.59,1287.66 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1159.01,1078.52 1158.94,1083.31 1158.74,1088.19 1158.42,1093.16 1157.98,1098.21 1157.44,1103.34 1156.81,1108.52 1156.1,1113.77 1155.31,1119.07 1154.46,1124.41 \n",
" 1153.56,1129.79 1152.61,1135.2 1151.62,1140.63 1150.62,1146.09 1149.59,1151.55 1148.57,1157.01 1147.54,1162.48 1146.54,1167.93 1145.55,1173.36 1144.6,1178.77 \n",
" 1143.7,1184.15 1142.85,1189.49 1142.06,1194.79 1141.35,1200.04 1140.71,1205.22 1140.18,1210.35 1139.74,1215.4 1139.42,1220.37 1139.22,1225.25 1139.15,1230.04 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1159.01,1078.52 1159.06,1082.39 1159.22,1086.34 1159.46,1090.36 1159.78,1094.44 1160.19,1098.59 1160.66,1102.78 1161.2,1107.03 1161.79,1111.32 1162.43,1115.64 \n",
" 1163.1,1119.99 1163.82,1124.37 1164.55,1128.77 1165.31,1133.19 1166.08,1137.61 1166.85,1142.03 1167.61,1146.46 1168.37,1150.87 1169.1,1155.27 1169.82,1159.65 \n",
" 1170.49,1164 1171.13,1168.33 1171.72,1172.61 1172.26,1176.86 1172.73,1181.05 1173.14,1185.2 1173.46,1189.28 1173.71,1193.3 1173.86,1197.25 1173.91,1201.12 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1139.15,1230.04 1139.04,1233.11 1138.74,1236.07 1138.25,1238.95 1137.59,1241.74 1136.78,1244.46 1135.82,1247.11 1134.74,1249.7 1133.55,1252.23 1132.27,1254.72 \n",
" 1130.9,1257.17 1129.46,1259.58 1127.98,1261.97 1126.45,1264.34 1124.91,1266.7 1123.36,1269.06 1121.81,1271.42 1120.29,1273.79 1118.8,1276.18 1117.37,1278.6 \n",
" 1116,1281.04 1114.72,1283.53 1113.52,1286.06 1112.45,1288.65 1111.49,1291.3 1110.68,1294.02 1110.02,1296.81 1109.53,1299.69 1109.23,1302.66 1109.12,1305.72 \n",
" \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1139.15,1230.04 1139.23,1233.12 1139.48,1236.13 1139.88,1239.07 1140.42,1241.95 1141.09,1244.78 1141.87,1247.56 1142.75,1250.29 1143.73,1252.98 1144.78,1255.64 \n",
" 1145.9,1258.28 1147.08,1260.88 1148.3,1263.47 1149.54,1266.05 1150.81,1268.62 1152.08,1271.19 1153.35,1273.76 1154.59,1276.33 1155.81,1278.92 1156.99,1281.53 \n",
" 1158.11,1284.16 1159.16,1286.82 1160.14,1289.52 1161.02,1292.25 1161.8,1295.03 1162.47,1297.86 1163.01,1300.74 1163.41,1303.68 1163.66,1306.69 1163.74,1309.77 \n",
" \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1221.13 262.317 L1216.2 253.777 L1206.33 253.777 L1201.4 262.317 L1206.33 270.858 L1216.2 270.858 L1221.13 262.317 L1221.13 262.317 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1221.13,262.317 1216.2,253.777 1206.33,253.777 1201.4,262.317 1206.33,270.858 1216.2,270.858 1221.13,262.317 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1291.77 343.051 L1286.84 334.511 L1276.98 334.511 L1272.05 343.051 L1276.98 351.592 L1286.84 351.592 L1291.77 343.051 L1291.77 343.051 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1291.77,343.051 1286.84,334.511 1276.98,334.511 1272.05,343.051 1276.98,351.592 1286.84,351.592 1291.77,343.051 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1165.39 350.826 L1160.46 342.285 L1150.59 342.285 L1145.66 350.826 L1150.59 359.366 L1160.46 359.366 L1165.39 350.826 L1165.39 350.826 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1165.39,350.826 1160.46,342.285 1150.59,342.285 1145.66,350.826 1150.59,359.366 1160.46,359.366 1165.39,350.826 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1292.72 503.047 L1287.79 494.506 L1277.93 494.506 L1273 503.047 L1277.93 511.587 L1287.79 511.587 L1292.72 503.047 L1292.72 503.047 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1292.72,503.047 1287.79,494.506 1277.93,494.506 1273,503.047 1277.93,511.587 1287.79,511.587 1292.72,503.047 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1358.19 490.138 L1353.26 481.598 L1343.4 481.598 L1338.47 490.138 L1343.4 498.679 L1353.26 498.679 L1358.19 490.138 L1358.19 490.138 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1358.19,490.138 1353.26,481.598 1343.4,481.598 1338.47,490.138 1343.4,498.679 1353.26,498.679 1358.19,490.138 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1363.94 587.054 L1359.01 578.513 L1349.15 578.513 L1344.22 587.054 L1349.15 595.594 L1359.01 595.594 L1363.94 587.054 L1363.94 587.054 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1363.94,587.054 1359.01,578.513 1349.15,578.513 1344.22,587.054 1349.15,595.594 1359.01,595.594 1363.94,587.054 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1420.44 607.863 L1415.51 599.322 L1405.64 599.322 L1400.71 607.863 L1405.64 616.403 L1415.51 616.403 L1420.44 607.863 L1420.44 607.863 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1420.44,607.863 1415.51,599.322 1405.64,599.322 1400.71,607.863 1405.64,616.403 1415.51,616.403 1420.44,607.863 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1437.41 667.861 L1432.48 659.32 L1422.62 659.32 L1417.68 667.861 L1422.62 676.401 L1432.48 676.401 L1437.41 667.861 L1437.41 667.861 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1437.41,667.861 1432.48,659.32 1422.62,659.32 1417.68,667.861 1422.62,676.401 1432.48,676.401 1437.41,667.861 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1488.46 658.802 L1483.53 650.262 L1473.67 650.262 L1468.74 658.802 L1473.67 667.343 L1483.53 667.343 L1488.46 658.802 L1488.46 658.802 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1488.46,658.802 1483.53,650.262 1473.67,650.262 1468.74,658.802 1473.67,667.343 1483.53,667.343 1488.46,658.802 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1491.78 771.098 L1486.85 762.558 L1476.99 762.558 L1472.06 771.098 L1476.99 779.639 L1486.85 779.639 L1491.78 771.098 L1491.78 771.098 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1491.78,771.098 1486.85,762.558 1476.99,762.558 1472.06,771.098 1476.99,779.639 1486.85,779.639 1491.78,771.098 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1551.5 770.034 L1542.92 755.164 L1525.75 755.164 L1517.16 770.034 L1525.75 784.904 L1542.92 784.904 L1551.5 770.034 L1551.5 770.034 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1551.5,770.034 1542.92,755.164 1525.75,755.164 1517.16,770.034 1525.75,784.904 1542.92,784.904 1551.5,770.034 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1552.23 877.582 L1543.64 862.712 L1526.47 862.712 L1517.89 877.582 L1526.47 892.452 L1543.64 892.452 L1552.23 877.582 L1552.23 877.582 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1552.23,877.582 1543.64,862.712 1526.47,862.712 1517.89,877.582 1526.47,892.452 1543.64,892.452 1552.23,877.582 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1597.67 906.689 L1589.08 891.819 L1571.91 891.819 L1563.32 906.689 L1571.91 921.559 L1589.08 921.559 L1597.67 906.689 L1597.67 906.689 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1597.67,906.689 1589.08,891.819 1571.91,891.819 1563.32,906.689 1571.91,921.559 1589.08,921.559 1597.67,906.689 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1596.4 1002.91 L1587.82 988.036 L1570.65 988.036 L1562.06 1002.91 L1570.65 1017.78 L1587.82 1017.78 L1596.4 1002.91 L1596.4 1002.91 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1596.4,1002.91 1587.82,988.036 1570.65,988.036 1562.06,1002.91 1570.65,1017.78 1587.82,1017.78 1596.4,1002.91 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1648.37 987.665 L1639.79 972.795 L1622.62 972.795 L1614.03 987.665 L1622.62 1002.54 L1639.79 1002.54 L1648.37 987.665 L1648.37 987.665 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1648.37,987.665 1639.79,972.795 1622.62,972.795 1614.03,987.665 1622.62,1002.54 1639.79,1002.54 1648.37,987.665 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1647.35 1091.64 L1638.76 1076.77 L1621.59 1076.77 L1613.01 1091.64 L1621.59 1106.51 L1638.76 1106.51 L1647.35 1091.64 L1647.35 1091.64 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1647.35,1091.64 1638.76,1076.77 1621.59,1076.77 1613.01,1091.64 1621.59,1106.51 1638.76,1106.51 1647.35,1091.64 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1690.3 1093.62 L1681.72 1078.75 L1664.55 1078.75 L1655.96 1093.62 L1664.55 1108.49 L1681.72 1108.49 L1690.3 1093.62 L1690.3 1093.62 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1690.3,1093.62 1681.72,1078.75 1664.55,1078.75 1655.96,1093.62 1664.55,1108.49 1681.72,1108.49 1690.3,1093.62 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1727.01 1175.89 L1718.43 1161.02 L1701.26 1161.02 L1692.67 1175.89 L1701.26 1190.76 L1718.43 1190.76 L1727.01 1175.89 L1727.01 1175.89 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1727.01,1175.89 1718.43,1161.02 1701.26,1161.02 1692.67,1175.89 1701.26,1190.76 1718.43,1190.76 1727.01,1175.89 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1709.43 1219.87 L1700.85 1205 L1683.68 1205 L1675.09 1219.87 L1683.68 1234.74 L1700.85 1234.74 L1709.43 1219.87 L1709.43 1219.87 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1709.43,1219.87 1700.85,1205 1683.68,1205 1675.09,1219.87 1683.68,1234.74 1700.85,1234.74 1709.43,1219.87 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1754.85 1306.3 L1746.27 1291.43 L1729.1 1291.43 L1720.51 1306.3 L1729.1 1321.17 L1746.27 1321.17 L1754.85 1306.3 L1754.85 1306.3 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1754.85,1306.3 1746.27,1291.43 1729.1,1291.43 1720.51,1306.3 1729.1,1321.17 1746.27,1321.17 1754.85,1306.3 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1717.5 1337.68 L1708.92 1322.81 L1691.75 1322.81 L1683.16 1337.68 L1691.75 1352.55 L1708.92 1352.55 L1717.5 1337.68 L1717.5 1337.68 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1717.5,1337.68 1708.92,1322.81 1691.75,1322.81 1683.16,1337.68 1691.75,1352.55 1708.92,1352.55 1717.5,1337.68 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1216.96 467.008 L1208.37 452.138 L1191.2 452.138 L1182.62 467.008 L1191.2 481.878 L1208.37 481.878 L1216.96 467.008 L1216.96 467.008 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1216.96,467.008 1208.37,452.138 1191.2,452.138 1182.62,467.008 1191.2,481.878 1208.37,481.878 1216.96,467.008 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1111.31 481.822 L1102.73 466.952 L1085.56 466.952 L1076.97 481.822 L1085.56 496.692 L1102.73 496.692 L1111.31 481.822 L1111.31 481.822 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1111.31,481.822 1102.73,466.952 1085.56,466.952 1076.97,481.822 1085.56,496.692 1102.73,496.692 1111.31,481.822 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1211.03 563.337 L1202.44 548.467 L1185.27 548.467 L1176.69 563.337 L1185.27 578.207 L1202.44 578.207 L1211.03 563.337 L1211.03 563.337 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1211.03,563.337 1202.44,548.467 1185.27,548.467 1176.69,563.337 1185.27,578.207 1202.44,578.207 1211.03,563.337 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1269.99 583.076 L1261.41 568.206 L1244.24 568.206 L1235.65 583.076 L1244.24 597.946 L1261.41 597.946 L1269.99 583.076 L1269.99 583.076 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1269.99,583.076 1261.41,568.206 1244.24,568.206 1235.65,583.076 1244.24,597.946 1261.41,597.946 1269.99,583.076 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1265.59 674.256 L1257 659.386 L1239.83 659.386 L1231.25 674.256 L1239.83 689.126 L1257 689.126 L1265.59 674.256 L1265.59 674.256 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1265.59,674.256 1257,659.386 1239.83,659.386 1231.25,674.256 1239.83,689.126 1257,689.126 1265.59,674.256 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1321.6 709.012 L1313.02 694.142 L1295.85 694.142 L1287.26 709.012 L1295.85 723.882 L1313.02 723.882 L1321.6 709.012 L1321.6 709.012 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1321.6,709.012 1313.02,694.142 1295.85,694.142 1287.26,709.012 1295.85,723.882 1313.02,723.882 1321.6,709.012 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1330.78 770.2 L1322.19 755.33 L1305.02 755.33 L1296.44 770.2 L1305.02 785.07 L1322.19 785.07 L1330.78 770.2 L1330.78 770.2 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1330.78,770.2 1322.19,755.33 1305.02,755.33 1296.44,770.2 1305.02,785.07 1322.19,785.07 1330.78,770.2 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1378.51 803.741 L1369.92 788.871 L1352.75 788.871 L1344.17 803.741 L1352.75 818.611 L1369.92 818.611 L1378.51 803.741 L1378.51 803.741 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1378.51,803.741 1369.92,788.871 1352.75,788.871 1344.17,803.741 1352.75,818.611 1369.92,818.611 1378.51,803.741 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1377.77 889.543 L1369.18 874.673 L1352.01 874.673 L1343.43 889.543 L1352.01 904.413 L1369.18 904.413 L1377.77 889.543 L1377.77 889.543 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1377.77,889.543 1369.18,874.673 1352.01,874.673 1343.43,889.543 1352.01,904.413 1369.18,904.413 1377.77,889.543 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1423.92 921.417 L1415.34 906.547 L1398.17 906.547 L1389.58 921.417 L1398.17 936.287 L1415.34 936.287 L1423.92 921.417 L1423.92 921.417 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1423.92,921.417 1415.34,906.547 1398.17,906.547 1389.58,921.417 1398.17,936.287 1415.34,936.287 1423.92,921.417 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1445.95 970.012 L1437.37 955.142 L1420.2 955.142 L1411.61 970.012 L1420.2 984.882 L1437.37 984.882 L1445.95 970.012 L1445.95 970.012 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1445.95,970.012 1437.37,955.142 1420.2,955.142 1411.61,970.012 1420.2,984.882 1437.37,984.882 1445.95,970.012 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1479.83 987.706 L1471.25 972.836 L1454.08 972.836 L1445.49 987.706 L1454.08 1002.58 L1471.25 1002.58 L1479.83 987.706 L1479.83 987.706 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1479.83,987.706 1471.25,972.836 1454.08,972.836 1445.49,987.706 1454.08,1002.58 1471.25,1002.58 1479.83,987.706 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1468.97 1130.77 L1460.39 1115.9 L1443.22 1115.9 L1434.63 1130.77 L1443.22 1145.64 L1460.39 1145.64 L1468.97 1130.77 L1468.97 1130.77 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1468.97,1130.77 1460.39,1115.9 1443.22,1115.9 1434.63,1130.77 1443.22,1145.64 1460.39,1145.64 1468.97,1130.77 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1522.02 1096.39 L1513.43 1081.52 L1496.26 1081.52 L1487.68 1096.39 L1496.26 1111.26 L1513.43 1111.26 L1522.02 1096.39 L1522.02 1096.39 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1522.02,1096.39 1513.43,1081.52 1496.26,1081.52 1487.68,1096.39 1496.26,1111.26 1513.43,1111.26 1522.02,1096.39 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1527.23 1189.46 L1518.64 1174.59 L1501.47 1174.59 L1492.89 1189.46 L1501.47 1204.33 L1518.64 1204.33 L1527.23 1189.46 L1527.23 1189.46 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1527.23,1189.46 1518.64,1174.59 1501.47,1174.59 1492.89,1189.46 1501.47,1204.33 1518.64,1204.33 1527.23,1189.46 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1567.62 1180.5 L1559.04 1165.63 L1541.87 1165.63 L1533.28 1180.5 L1541.87 1195.37 L1559.04 1195.37 L1567.62 1180.5 L1567.62 1180.5 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1567.62,1180.5 1559.04,1165.63 1541.87,1165.63 1533.28,1180.5 1541.87,1195.37 1559.04,1195.37 1567.62,1180.5 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1565.97 1326.68 L1557.38 1311.81 L1540.21 1311.81 L1531.63 1326.68 L1540.21 1341.55 L1557.38 1341.55 L1565.97 1326.68 L1565.97 1326.68 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1565.97,1326.68 1557.38,1311.81 1540.21,1311.81 1531.63,1326.68 1540.21,1341.55 1557.38,1341.55 1565.97,1326.68 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1600.08 1301.99 L1591.5 1287.12 L1574.33 1287.12 L1565.74 1301.99 L1574.33 1316.86 L1591.5 1316.86 L1600.08 1301.99 L1600.08 1301.99 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1600.08,1301.99 1591.5,1287.12 1574.33,1287.12 1565.74,1301.99 1574.33,1316.86 1591.5,1316.86 1600.08,1301.99 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1050.96 581.305 L1042.38 566.435 L1025.21 566.435 L1016.62 581.305 L1025.21 596.175 L1042.38 596.175 L1050.96 581.305 L1050.96 581.305 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1050.96,581.305 1042.38,566.435 1025.21,566.435 1016.62,581.305 1025.21,596.175 1042.38,596.175 1050.96,581.305 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1090.26 568.621 L1081.68 553.751 L1064.51 553.751 L1055.92 568.621 L1064.51 583.491 L1081.68 583.491 L1090.26 568.621 L1090.26 568.621 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1090.26,568.621 1081.68,553.751 1064.51,553.751 1055.92,568.621 1064.51,583.491 1081.68,583.491 1090.26,568.621 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1065.08 673.211 L1056.5 658.341 L1039.33 658.341 L1030.74 673.211 L1039.33 688.081 L1056.5 688.081 L1065.08 673.211 L1065.08 673.211 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1065.08,673.211 1056.5,658.341 1039.33,658.341 1030.74,673.211 1039.33,688.081 1056.5,688.081 1065.08,673.211 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M985.994 673.281 L977.409 658.411 L960.238 658.411 L951.653 673.281 L960.238 688.151 L977.409 688.151 L985.994 673.281 L985.994 673.281 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 985.994,673.281 977.409,658.411 960.238,658.411 951.653,673.281 960.238,688.151 977.409,688.151 985.994,673.281 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M974.272 757.54 L965.687 742.67 L948.516 742.67 L939.931 757.54 L948.516 772.41 L965.687 772.41 L974.272 757.54 L974.272 757.54 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 974.272,757.54 965.687,742.67 948.516,742.67 939.931,757.54 948.516,772.41 965.687,772.41 974.272,757.54 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M919.749 758.549 L911.163 743.679 L893.993 743.679 L885.408 758.549 L893.993 773.419 L911.163 773.419 L919.749 758.549 L919.749 758.549 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 919.749,758.549 911.163,743.679 893.993,743.679 885.408,758.549 893.993,773.419 911.163,773.419 919.749,758.549 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M916.106 899.003 L907.521 884.133 L890.351 884.133 L881.766 899.003 L890.351 913.873 L907.521 913.873 L916.106 899.003 L916.106 899.003 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 916.106,899.003 907.521,884.133 890.351,884.133 881.766,899.003 890.351,913.873 907.521,913.873 916.106,899.003 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M862.434 872.26 L853.849 857.39 L836.678 857.39 L828.093 872.26 L836.678 887.13 L853.849 887.13 L862.434 872.26 L862.434 872.26 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 862.434,872.26 853.849,857.39 836.678,857.39 828.093,872.26 836.678,887.13 853.849,887.13 862.434,872.26 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M862.12 1026.47 L853.535 1011.6 L836.365 1011.6 L827.78 1026.47 L836.365 1041.34 L853.535 1041.34 L862.12 1026.47 L862.12 1026.47 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 862.12,1026.47 853.535,1011.6 836.365,1011.6 827.78,1026.47 836.365,1041.34 853.535,1041.34 862.12,1026.47 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M807.946 965.483 L799.361 950.613 L782.191 950.613 L773.606 965.483 L782.191 980.353 L799.361 980.353 L807.946 965.483 L807.946 965.483 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 807.946,965.483 799.361,950.613 782.191,950.613 773.606,965.483 782.191,980.353 799.361,980.353 807.946,965.483 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M812.837 1127.11 L804.251 1112.24 L787.081 1112.24 L778.496 1127.11 L787.081 1141.98 L804.251 1141.98 L812.837 1127.11 L812.837 1127.11 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 812.837,1127.11 804.251,1112.24 787.081,1112.24 778.496,1127.11 787.081,1141.98 804.251,1141.98 812.837,1127.11 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M769.989 1129.54 L761.404 1114.67 L744.233 1114.67 L735.648 1129.54 L744.233 1144.41 L761.404 1144.41 L769.989 1129.54 L769.989 1129.54 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 769.989,1129.54 761.404,1114.67 744.233,1114.67 735.648,1129.54 744.233,1144.41 761.404,1144.41 769.989,1129.54 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M733.939 1179.11 L725.354 1164.24 L708.183 1164.24 L699.598 1179.11 L708.183 1193.98 L725.354 1193.98 L733.939 1179.11 L733.939 1179.11 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 733.939,1179.11 725.354,1164.24 708.183,1164.24 699.598,1179.11 708.183,1193.98 725.354,1193.98 733.939,1179.11 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M731.107 1232.73 L722.521 1217.86 L705.351 1217.86 L696.766 1232.73 L705.351 1247.6 L722.521 1247.6 L731.107 1232.73 L731.107 1232.73 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 731.107,1232.73 722.521,1217.86 705.351,1217.86 696.766,1232.73 705.351,1247.6 722.521,1247.6 731.107,1232.73 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M679.488 1294.3 L670.902 1279.43 L653.732 1279.43 L645.147 1294.3 L653.732 1309.17 L670.902 1309.17 L679.488 1294.3 L679.488 1294.3 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 679.488,1294.3 670.902,1279.43 653.732,1279.43 645.147,1294.3 653.732,1309.17 670.902,1309.17 679.488,1294.3 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M695.619 1279.34 L687.034 1264.47 L669.864 1264.47 L661.278 1279.34 L669.864 1294.21 L687.034 1294.21 L695.619 1279.34 L695.619 1279.34 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 695.619,1279.34 687.034,1264.47 669.864,1264.47 661.278,1279.34 669.864,1294.21 687.034,1294.21 695.619,1279.34 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1038.71 691.164 L1030.12 676.294 L1012.95 676.294 L1004.37 691.164 L1012.95 706.034 L1030.12 706.034 L1038.71 691.164 L1038.71 691.164 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1038.71,691.164 1030.12,676.294 1012.95,676.294 1004.37,691.164 1012.95,706.034 1030.12,706.034 1038.71,691.164 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1117.32 658.335 L1108.74 643.465 L1091.57 643.465 L1082.98 658.335 L1091.57 673.205 L1108.74 673.205 L1117.32 658.335 L1117.32 658.335 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1117.32,658.335 1108.74,643.465 1091.57,643.465 1082.98,658.335 1091.57,673.205 1108.74,673.205 1117.32,658.335 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1047.59 799.128 L1039 784.258 L1021.83 784.258 L1013.25 799.128 L1021.83 813.998 L1039 813.998 L1047.59 799.128 L1047.59 799.128 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1047.59,799.128 1039,784.258 1021.83,784.258 1013.25,799.128 1021.83,813.998 1039,813.998 1047.59,799.128 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M985.41 809.33 L976.825 794.46 L959.655 794.46 L951.07 809.33 L959.655 824.2 L976.825 824.2 L985.41 809.33 L985.41 809.33 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 985.41,809.33 976.825,794.46 959.655,794.46 951.07,809.33 959.655,824.2 976.825,824.2 985.41,809.33 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M987.026 916.422 L978.441 901.552 L961.271 901.552 L952.685 916.422 L961.271 931.292 L978.441 931.292 L987.026 916.422 L987.026 916.422 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 987.026,916.422 978.441,901.552 961.271,901.552 952.685,916.422 961.271,931.292 978.441,931.292 987.026,916.422 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M930.665 909.337 L922.08 894.467 L904.909 894.467 L896.324 909.337 L904.909 924.207 L922.08 924.207 L930.665 909.337 L930.665 909.337 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 930.665,909.337 922.08,894.467 904.909,894.467 896.324,909.337 904.909,924.207 922.08,924.207 930.665,909.337 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M924.542 997.162 L915.957 982.292 L898.787 982.292 L890.201 997.162 L898.787 1012.03 L915.957 1012.03 L924.542 997.162 L924.542 997.162 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 924.542,997.162 915.957,982.292 898.787,982.292 890.201,997.162 898.787,1012.03 915.957,1012.03 924.542,997.162 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M877.289 1006.13 L868.704 991.264 L851.534 991.264 L842.948 1006.13 L851.534 1021 L868.704 1021 L877.289 1006.13 L877.289 1006.13 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 877.289,1006.13 868.704,991.264 851.534,991.264 842.948,1006.13 851.534,1021 868.704,1021 877.289,1006.13 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M870.543 1091.56 L861.957 1076.69 L844.787 1076.69 L836.202 1091.56 L844.787 1106.43 L861.957 1106.43 L870.543 1091.56 L870.543 1091.56 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 870.543,1091.56 861.957,1076.69 844.787,1076.69 836.202,1091.56 844.787,1106.43 861.957,1106.43 870.543,1091.56 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M830.508 1110.51 L821.922 1095.64 L804.752 1095.64 L796.167 1110.51 L804.752 1125.38 L821.922 1125.38 L830.508 1110.51 L830.508 1110.51 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 830.508,1110.51 821.922,1095.64 804.752,1095.64 796.167,1110.51 804.752,1125.38 821.922,1125.38 830.508,1110.51 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M787.865 1194.9 L779.28 1180.03 L762.109 1180.03 L753.524 1194.9 L762.109 1209.77 L779.28 1209.77 L787.865 1194.9 L787.865 1194.9 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 787.865,1194.9 779.28,1180.03 762.109,1180.03 753.524,1194.9 762.109,1209.77 779.28,1209.77 787.865,1194.9 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M796.304 1189.02 L787.719 1174.15 L770.548 1174.15 L761.963 1189.02 L770.548 1203.89 L787.719 1203.89 L796.304 1189.02 L796.304 1189.02 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 796.304,1189.02 787.719,1174.15 770.548,1174.15 761.963,1189.02 770.548,1203.89 787.719,1203.89 796.304,1189.02 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M777.261 1296.49 L768.676 1281.62 L751.506 1281.62 L742.92 1296.49 L751.506 1311.36 L768.676 1311.36 L777.261 1296.49 L777.261 1296.49 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 777.261,1296.49 768.676,1281.62 751.506,1281.62 742.92,1296.49 751.506,1311.36 768.676,1311.36 777.261,1296.49 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M754.619 1317.06 L746.034 1302.19 L728.863 1302.19 L720.278 1317.06 L728.863 1331.93 L746.034 1331.93 L754.619 1317.06 L754.619 1317.06 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 754.619,1317.06 746.034,1302.19 728.863,1302.19 720.278,1317.06 728.863,1331.93 746.034,1331.93 754.619,1317.06 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1078.15 757.052 L1069.57 742.182 L1052.4 742.182 L1043.81 757.052 L1052.4 771.922 L1069.57 771.922 L1078.15 757.052 L1078.15 757.052 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1078.15,757.052 1069.57,742.182 1052.4,742.182 1043.81,757.052 1052.4,771.922 1069.57,771.922 1078.15,757.052 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1154.56 803.993 L1145.98 789.123 L1128.81 789.123 L1120.22 803.993 L1128.81 818.863 L1145.98 818.863 L1154.56 803.993 L1154.56 803.993 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1154.56,803.993 1145.98,789.123 1128.81,789.123 1120.22,803.993 1128.81,818.863 1145.98,818.863 1154.56,803.993 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1088.44 901.961 L1079.86 887.091 L1062.69 887.091 L1054.1 901.961 L1062.69 916.831 L1079.86 916.831 L1088.44 901.961 L1088.44 901.961 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1088.44,901.961 1079.86,887.091 1062.69,887.091 1054.1,901.961 1062.69,916.831 1079.86,916.831 1088.44,901.961 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1031.95 908.051 L1023.37 893.181 L1006.2 893.181 L997.614 908.051 L1006.2 922.921 L1023.37 922.921 L1031.95 908.051 L1031.95 908.051 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1031.95,908.051 1023.37,893.181 1006.2,893.181 997.614,908.051 1006.2,922.921 1023.37,922.921 1031.95,908.051 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1034.89 990.522 L1026.31 975.652 L1009.14 975.652 L1000.55 990.522 L1009.14 1005.39 L1026.31 1005.39 L1034.89 990.522 L1034.89 990.522 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1034.89,990.522 1026.31,975.652 1009.14,975.652 1000.55,990.522 1009.14,1005.39 1026.31,1005.39 1034.89,990.522 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M982.682 1005.82 L974.096 990.951 L956.926 990.951 L948.341 1005.82 L956.926 1020.69 L974.096 1020.69 L982.682 1005.82 L982.682 1005.82 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 982.682,1005.82 974.096,990.951 956.926,990.951 948.341,1005.82 956.926,1020.69 974.096,1020.69 982.682,1005.82 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M989.699 1126.59 L981.114 1111.72 L963.944 1111.72 L955.358 1126.59 L963.944 1141.46 L981.114 1141.46 L989.699 1126.59 L989.699 1126.59 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 989.699,1126.59 981.114,1111.72 963.944,1111.72 955.358,1126.59 963.944,1141.46 981.114,1141.46 989.699,1126.59 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M937.175 1103.77 L928.59 1088.9 L911.42 1088.9 L902.835 1103.77 L911.42 1118.64 L928.59 1118.64 L937.175 1103.77 L937.175 1103.77 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 937.175,1103.77 928.59,1088.9 911.42,1088.9 902.835,1103.77 911.42,1118.64 928.59,1118.64 937.175,1103.77 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M941.724 1217.05 L933.139 1202.18 L915.969 1202.18 L907.383 1217.05 L915.969 1231.92 L933.139 1231.92 L941.724 1217.05 L941.724 1217.05 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 941.724,1217.05 933.139,1202.18 915.969,1202.18 907.383,1217.05 915.969,1231.92 933.139,1231.92 941.724,1217.05 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M899.759 1220 L891.174 1205.13 L874.003 1205.13 L865.418 1220 L874.003 1234.87 L891.174 1234.87 L899.759 1220 L899.759 1220 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 899.759,1220 891.174,1205.13 874.003,1205.13 865.418,1220 874.003,1234.87 891.174,1234.87 899.759,1220 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M854.226 1303.47 L845.641 1288.6 L828.47 1288.6 L819.885 1303.47 L828.47 1318.34 L845.641 1318.34 L854.226 1303.47 L854.226 1303.47 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 854.226,1303.47 845.641,1288.6 828.47,1288.6 819.885,1303.47 828.47,1318.34 845.641,1318.34 854.226,1303.47 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M870.444 1281.06 L861.859 1266.19 L844.689 1266.19 L836.103 1281.06 L844.689 1295.93 L861.859 1295.93 L870.444 1281.06 L870.444 1281.06 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 870.444,1281.06 861.859,1266.19 844.689,1266.19 836.103,1281.06 844.689,1295.93 861.859,1295.93 870.444,1281.06 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1133.53 890.891 L1124.94 876.021 L1107.77 876.021 L1099.19 890.891 L1107.77 905.761 L1124.94 905.761 L1133.53 890.891 L1133.53 890.891 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1133.53,890.891 1124.94,876.021 1107.77,876.021 1099.19,890.891 1107.77,905.761 1124.94,905.761 1133.53,890.891 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1201.24 893.092 L1192.65 878.222 L1175.48 878.222 L1166.9 893.092 L1175.48 907.962 L1192.65 907.962 L1201.24 893.092 L1201.24 893.092 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1201.24,893.092 1192.65,878.222 1175.48,878.222 1166.9,893.092 1175.48,907.962 1192.65,907.962 1201.24,893.092 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1143.97 1026.06 L1135.38 1011.19 L1118.21 1011.19 L1109.63 1026.06 L1118.21 1040.93 L1135.38 1040.93 L1143.97 1026.06 L1143.97 1026.06 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1143.97,1026.06 1135.38,1011.19 1118.21,1011.19 1109.63,1026.06 1118.21,1040.93 1135.38,1040.93 1143.97,1026.06 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1096.51 979.474 L1087.93 964.604 L1070.76 964.604 L1062.17 979.474 L1070.76 994.344 L1087.93 994.344 L1096.51 979.474 L1096.51 979.474 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1096.51,979.474 1087.93,964.604 1070.76,964.604 1062.17,979.474 1070.76,994.344 1087.93,994.344 1096.51,979.474 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1107.81 1096.59 L1099.22 1081.72 L1082.05 1081.72 L1073.47 1096.59 L1082.05 1111.46 L1099.22 1111.46 L1107.81 1096.59 L1107.81 1096.59 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1107.81,1096.59 1099.22,1081.72 1082.05,1081.72 1073.47,1096.59 1082.05,1111.46 1099.22,1111.46 1107.81,1096.59 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1056.11 1072.26 L1047.53 1057.39 L1030.36 1057.39 L1021.77 1072.26 L1030.36 1087.13 L1047.53 1087.13 L1056.11 1072.26 L1056.11 1072.26 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1056.11,1072.26 1047.53,1057.39 1030.36,1057.39 1021.77,1072.26 1030.36,1087.13 1047.53,1087.13 1056.11,1072.26 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1025.59 1209.3 L1017 1194.43 L999.83 1194.43 L991.245 1209.3 L999.83 1224.17 L1017 1224.17 L1025.59 1209.3 L1025.59 1209.3 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1025.59,1209.3 1017,1194.43 999.83,1194.43 991.245,1209.3 999.83,1224.17 1017,1224.17 1025.59,1209.3 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1051.02 1214.23 L1042.43 1199.36 L1025.26 1199.36 L1016.67 1214.23 L1025.26 1229.1 L1042.43 1229.1 L1051.02 1214.23 L1051.02 1214.23 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1051.02,1214.23 1042.43,1199.36 1025.26,1199.36 1016.67,1214.23 1025.26,1229.1 1042.43,1229.1 1051.02,1214.23 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1013.42 1332.45 L1004.84 1317.58 L987.668 1317.58 L979.083 1332.45 L987.668 1347.32 L1004.84 1347.32 L1013.42 1332.45 L1013.42 1332.45 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1013.42,1332.45 1004.84,1317.58 987.668,1317.58 979.083,1332.45 987.668,1347.32 1004.84,1347.32 1013.42,1332.45 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1059.1 1310.83 L1050.52 1295.96 L1033.35 1295.96 L1024.76 1310.83 L1033.35 1325.7 L1050.52 1325.7 L1059.1 1310.83 L1059.1 1310.83 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1059.1,1310.83 1050.52,1295.96 1033.35,1295.96 1024.76,1310.83 1033.35,1325.7 1050.52,1325.7 1059.1,1310.83 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1247.05 995.068 L1238.47 980.198 L1221.3 980.198 L1212.71 995.068 L1221.3 1009.94 L1238.47 1009.94 L1247.05 995.068 L1247.05 995.068 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1247.05,995.068 1238.47,980.198 1221.3,980.198 1212.71,995.068 1221.3,1009.94 1238.47,1009.94 1247.05,995.068 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1205.31 1022.68 L1196.72 1007.81 L1179.55 1007.81 L1170.96 1022.68 L1179.55 1037.55 L1196.72 1037.55 L1205.31 1022.68 L1205.31 1022.68 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1205.31,1022.68 1196.72,1007.81 1179.55,1007.81 1170.96,1022.68 1179.55,1037.55 1196.72,1037.55 1205.31,1022.68 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1249.67 1113.98 L1241.09 1099.11 L1223.92 1099.11 L1215.33 1113.98 L1223.92 1128.85 L1241.09 1128.85 L1249.67 1113.98 L1249.67 1113.98 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1249.67,1113.98 1241.09,1099.11 1223.92,1099.11 1215.33,1113.98 1223.92,1128.85 1241.09,1128.85 1249.67,1113.98 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1297.83 1077.57 L1289.24 1062.7 L1272.07 1062.7 L1263.48 1077.57 L1272.07 1092.44 L1289.24 1092.44 L1297.83 1077.57 L1297.83 1077.57 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1297.83,1077.57 1289.24,1062.7 1272.07,1062.7 1263.48,1077.57 1272.07,1092.44 1289.24,1092.44 1297.83,1077.57 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1306.98 1193.73 L1298.39 1178.86 L1281.22 1178.86 L1272.64 1193.73 L1281.22 1208.6 L1298.39 1208.6 L1306.98 1193.73 L1306.98 1193.73 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1306.98,1193.73 1298.39,1178.86 1281.22,1178.86 1272.64,1193.73 1281.22,1208.6 1298.39,1208.6 1306.98,1193.73 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1334.39 1216.68 L1325.81 1201.81 L1308.64 1201.81 L1300.05 1216.68 L1308.64 1231.55 L1325.81 1231.55 L1334.39 1216.68 L1334.39 1216.68 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1334.39,1216.68 1325.81,1201.81 1308.64,1201.81 1300.05,1216.68 1308.64,1231.55 1325.81,1231.55 1334.39,1216.68 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1372.66 1303.25 L1364.08 1288.38 L1346.91 1288.38 L1338.32 1303.25 L1346.91 1318.12 L1364.08 1318.12 L1372.66 1303.25 L1372.66 1303.25 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1372.66,1303.25 1364.08,1288.38 1346.91,1288.38 1338.32,1303.25 1346.91,1318.12 1364.08,1318.12 1372.66,1303.25 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1341.07 1320.97 L1332.48 1306.1 L1315.31 1306.1 L1306.73 1320.97 L1315.31 1335.84 L1332.48 1335.84 L1341.07 1320.97 L1341.07 1320.97 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1341.07,1320.97 1332.48,1306.1 1315.31,1306.1 1306.73,1320.97 1315.31,1335.84 1332.48,1335.84 1341.07,1320.97 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1238.52 1114.02 L1229.93 1099.15 L1212.76 1099.15 L1204.18 1114.02 L1212.76 1128.89 L1229.93 1128.89 L1238.52 1114.02 L1238.52 1114.02 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1238.52,1114.02 1229.93,1099.15 1212.76,1099.15 1204.18,1114.02 1212.76,1128.89 1229.93,1128.89 1238.52,1114.02 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1182.76 1078.52 L1170.89 1057.95 L1147.14 1057.95 L1135.26 1078.52 L1147.14 1099.09 L1170.89 1099.09 L1182.76 1078.52 L1182.76 1078.52 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1182.76,1078.52 1170.89,1057.95 1147.14,1057.95 1135.26,1078.52 1147.14,1099.09 1170.89,1099.09 1182.76,1078.52 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1288.46 1193.21 L1276.59 1172.65 L1252.84 1172.65 L1240.96 1193.21 L1252.84 1213.78 L1276.59 1213.78 L1288.46 1193.21 L1288.46 1193.21 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1288.46,1193.21 1276.59,1172.65 1252.84,1172.65 1240.96,1193.21 1252.84,1213.78 1276.59,1213.78 1288.46,1193.21 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1267.29 1229.7 L1255.41 1209.13 L1231.67 1209.13 L1219.79 1229.7 L1231.67 1250.26 L1255.41 1250.26 L1267.29 1229.7 L1267.29 1229.7 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1267.29,1229.7 1255.41,1209.13 1231.67,1209.13 1219.79,1229.7 1231.67,1250.26 1255.41,1250.26 1267.29,1229.7 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1301.69 1331.14 L1289.81 1310.57 L1266.06 1310.57 L1254.19 1331.14 L1266.06 1351.71 L1289.81 1351.71 L1301.69 1331.14 L1301.69 1331.14 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1301.69,1331.14 1289.81,1310.57 1266.06,1310.57 1254.19,1331.14 1266.06,1351.71 1289.81,1351.71 1301.69,1331.14 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1252.33 1287.66 L1240.46 1267.1 L1216.71 1267.1 L1204.84 1287.66 L1216.71 1308.23 L1240.46 1308.23 L1252.33 1287.66 L1252.33 1287.66 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1252.33,1287.66 1240.46,1267.1 1216.71,1267.1 1204.84,1287.66 1216.71,1308.23 1240.46,1308.23 1252.33,1287.66 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1162.9 1230.04 L1151.02 1209.47 L1127.27 1209.47 L1115.4 1230.04 L1127.27 1250.61 L1151.02 1250.61 L1162.9 1230.04 L1162.9 1230.04 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1162.9,1230.04 1151.02,1209.47 1127.27,1209.47 1115.4,1230.04 1127.27,1250.61 1151.02,1250.61 1162.9,1230.04 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1197.66 1201.12 L1185.78 1180.56 L1162.03 1180.56 L1150.16 1201.12 L1162.03 1221.69 L1185.78 1221.69 L1197.66 1201.12 L1197.66 1201.12 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1197.66,1201.12 1185.78,1180.56 1162.03,1180.56 1150.16,1201.12 1162.03,1221.69 1185.78,1221.69 1197.66,1201.12 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1132.87 1305.72 L1121 1285.15 L1097.25 1285.15 L1085.37 1305.72 L1097.25 1326.29 L1121 1326.29 L1132.87 1305.72 L1132.87 1305.72 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1132.87,1305.72 1121,1285.15 1097.25,1285.15 1085.37,1305.72 1097.25,1326.29 1121,1326.29 1132.87,1305.72 \n",
" \"/>\n",
"<path clip-path=\"url(#clip912)\" d=\"\n",
"M1187.49 1309.77 L1175.62 1289.2 L1151.87 1289.2 L1139.99 1309.77 L1151.87 1330.33 L1175.62 1330.33 L1187.49 1309.77 L1187.49 1309.77 Z\n",
" \" fill=\"#009af9\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<polyline clip-path=\"url(#clip912)\" style=\"stroke:#000000; stroke-linecap:butt; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1187.49,1309.77 1175.62,1289.2 1151.87,1289.2 1139.99,1309.77 1151.87,1330.33 1175.62,1330.33 1187.49,1309.77 \n",
" \"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1211.27\" cy=\"262.317\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1281.91\" cy=\"343.051\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1155.52\" cy=\"350.826\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1282.86\" cy=\"503.047\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1348.33\" cy=\"490.138\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1354.08\" cy=\"587.054\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1410.57\" cy=\"607.863\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1427.55\" cy=\"667.861\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1478.6\" cy=\"658.802\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1481.92\" cy=\"771.098\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1534.33\" cy=\"770.034\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1535.06\" cy=\"877.582\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1580.49\" cy=\"906.689\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1579.23\" cy=\"1002.91\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1631.2\" cy=\"987.665\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1630.18\" cy=\"1091.64\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1673.13\" cy=\"1093.62\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1709.84\" cy=\"1175.89\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1692.26\" cy=\"1219.87\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1737.68\" cy=\"1306.3\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1700.33\" cy=\"1337.68\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1199.79\" cy=\"467.008\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1094.14\" cy=\"481.822\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1193.86\" cy=\"563.337\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1252.82\" cy=\"583.076\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1248.42\" cy=\"674.256\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1304.43\" cy=\"709.012\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1313.61\" cy=\"770.2\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1361.34\" cy=\"803.741\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1360.6\" cy=\"889.543\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1406.75\" cy=\"921.417\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1428.78\" cy=\"970.012\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1462.66\" cy=\"987.706\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1451.8\" cy=\"1130.77\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1504.85\" cy=\"1096.39\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1510.06\" cy=\"1189.46\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1550.45\" cy=\"1180.5\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1548.8\" cy=\"1326.68\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1582.91\" cy=\"1301.99\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1033.79\" cy=\"581.305\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1073.09\" cy=\"568.621\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1047.91\" cy=\"673.211\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"968.824\" cy=\"673.281\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"957.101\" cy=\"757.54\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"902.578\" cy=\"758.549\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"898.936\" cy=\"899.003\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"845.264\" cy=\"872.26\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"844.95\" cy=\"1026.47\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"790.776\" cy=\"965.483\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"795.666\" cy=\"1127.11\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"752.818\" cy=\"1129.54\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"716.769\" cy=\"1179.11\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"713.936\" cy=\"1232.73\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"662.317\" cy=\"1294.3\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"678.449\" cy=\"1279.34\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1021.54\" cy=\"691.164\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1100.15\" cy=\"658.335\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1030.42\" cy=\"799.128\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"968.24\" cy=\"809.33\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"969.856\" cy=\"916.422\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"913.494\" cy=\"909.337\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"907.372\" cy=\"997.162\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"860.119\" cy=\"1006.13\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"853.372\" cy=\"1091.56\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"813.337\" cy=\"1110.51\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"770.695\" cy=\"1194.9\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"779.134\" cy=\"1189.02\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"760.091\" cy=\"1296.49\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"737.448\" cy=\"1317.06\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1060.98\" cy=\"757.052\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1137.39\" cy=\"803.993\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1071.27\" cy=\"901.961\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1014.78\" cy=\"908.051\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1017.72\" cy=\"990.522\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"965.511\" cy=\"1005.82\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"972.529\" cy=\"1126.59\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"920.005\" cy=\"1103.77\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"924.554\" cy=\"1217.05\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"882.589\" cy=\"1220\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"837.056\" cy=\"1303.47\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"853.274\" cy=\"1281.06\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1116.36\" cy=\"890.891\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1184.07\" cy=\"893.092\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1126.8\" cy=\"1026.06\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1079.34\" cy=\"979.474\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1090.64\" cy=\"1096.59\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1038.94\" cy=\"1072.26\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1008.41\" cy=\"1209.3\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1033.85\" cy=\"1214.23\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"996.253\" cy=\"1332.45\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1041.93\" cy=\"1310.83\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1229.88\" cy=\"995.068\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1188.13\" cy=\"1022.68\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1232.5\" cy=\"1113.98\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1280.66\" cy=\"1077.57\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1289.81\" cy=\"1193.73\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1317.22\" cy=\"1216.68\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1355.49\" cy=\"1303.25\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1323.9\" cy=\"1320.97\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1221.35\" cy=\"1114.02\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1159.01\" cy=\"1078.52\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1264.71\" cy=\"1193.21\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1243.54\" cy=\"1229.7\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1277.94\" cy=\"1331.14\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1228.59\" cy=\"1287.66\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1139.15\" cy=\"1230.04\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1173.91\" cy=\"1201.12\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1109.12\" cy=\"1305.72\" r=\"2\"/>\n",
"<circle clip-path=\"url(#clip912)\" style=\"fill:#009af9; stroke:none; fill-opacity:1\" cx=\"1163.74\" cy=\"1309.77\" r=\"2\"/>\n",
"<path clip-path=\"url(#clip910)\" d=\"M1211.27 249.891 Q1208.11 249.891 1206.51 253.01 Q1204.93 256.109 1204.93 262.348 Q1204.93 268.566 1206.51 271.685 Q1208.11 274.784 1211.27 274.784 Q1214.45 274.784 1216.03 271.685 Q1217.63 268.566 1217.63 262.348 Q1217.63 256.109 1216.03 253.01 Q1214.45 249.891 1211.27 249.891 M1211.27 246.65 Q1216.35 246.65 1219.02 250.681 Q1221.72 254.691 1221.72 262.348 Q1221.72 269.984 1219.02 274.014 Q1216.35 278.025 1211.27 278.025 Q1206.18 278.025 1203.49 274.014 Q1200.81 269.984 1200.81 262.348 Q1200.81 254.691 1203.49 250.681 Q1206.18 246.65 1211.27 246.65 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip910)\" d=\"M1273.5 354.728 L1280.18 354.728 L1280.18 331.658 L1272.91 333.116 L1272.91 329.39 L1280.14 327.931 L1284.23 327.931 L1284.23 354.728 L1290.91 354.728 L1290.91 358.171 L1273.5 358.171 L1273.5 354.728 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip910)\" d=\"M1150.85 362.502 L1165.13 362.502 L1165.13 365.946 L1145.92 365.946 L1145.92 362.502 Q1148.25 360.092 1152.26 356.041 Q1156.29 351.97 1157.33 350.795 Q1159.29 348.587 1160.06 347.068 Q1160.85 345.529 1160.85 344.05 Q1160.85 341.64 1159.15 340.121 Q1157.47 338.602 1154.76 338.602 Q1152.83 338.602 1150.68 339.27 Q1148.56 339.939 1146.13 341.296 L1146.13 337.164 Q1148.6 336.171 1150.74 335.665 Q1152.89 335.159 1154.67 335.159 Q1159.37 335.159 1162.17 337.508 Q1164.96 339.858 1164.96 343.787 Q1164.96 345.651 1164.25 347.332 Q1163.57 348.993 1161.72 351.261 Q1161.22 351.848 1158.5 354.664 Q1155.79 357.459 1150.85 362.502 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip910)\" d=\"M1286.57 501.862 Q1289.51 502.49 1291.15 504.475 Q1292.81 506.46 1292.81 509.376 Q1292.81 513.853 1289.73 516.303 Q1286.66 518.754 1280.98 518.754 Q1279.08 518.754 1277.06 518.369 Q1275.05 518.005 1272.9 517.255 L1272.9 513.306 Q1274.6 514.298 1276.63 514.805 Q1278.66 515.311 1280.86 515.311 Q1284.71 515.311 1286.72 513.792 Q1288.74 512.273 1288.74 509.376 Q1288.74 506.703 1286.86 505.204 Q1285 503.685 1281.65 503.685 L1278.13 503.685 L1278.13 500.323 L1281.82 500.323 Q1284.83 500.323 1286.43 499.128 Q1288.03 497.912 1288.03 495.644 Q1288.03 493.315 1286.37 492.079 Q1284.73 490.823 1281.65 490.823 Q1279.97 490.823 1278.05 491.188 Q1276.12 491.552 1273.81 492.322 L1273.81 488.676 Q1276.14 488.028 1278.17 487.704 Q1280.22 487.38 1282.02 487.38 Q1286.68 487.38 1289.39 489.507 Q1292.1 491.613 1292.1 495.219 Q1292.1 497.73 1290.67 499.472 Q1289.23 501.194 1286.57 501.862 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip910)\" d=\"M1350.96 478.583 L1340.63 494.726 L1350.96 494.726 L1350.96 478.583 M1349.89 475.018 L1355.03 475.018 L1355.03 494.726 L1359.35 494.726 L1359.35 498.129 L1355.03 498.129 L1355.03 505.258 L1350.96 505.258 L1350.96 498.129 L1337.31 498.129 L1337.31 494.179 L1349.89 475.018 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip910)\" d=\"M1345.57 571.934 L1361.63 571.934 L1361.63 575.377 L1349.32 575.377 L1349.32 582.79 Q1350.21 582.486 1351.1 582.344 Q1351.99 582.182 1352.88 582.182 Q1357.95 582.182 1360.9 584.957 Q1363.86 587.732 1363.86 592.472 Q1363.86 597.353 1360.82 600.067 Q1357.79 602.761 1352.26 602.761 Q1350.35 602.761 1348.37 602.437 Q1346.4 602.113 1344.3 601.465 L1344.3 597.353 Q1346.12 598.346 1348.06 598.832 Q1350.01 599.318 1352.17 599.318 Q1355.68 599.318 1357.72 597.475 Q1359.77 595.631 1359.77 592.472 Q1359.77 589.312 1357.72 587.469 Q1355.68 585.626 1352.17 585.626 Q1350.53 585.626 1348.89 585.99 Q1347.27 586.355 1345.57 587.125 L1345.57 571.934 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip910)\" d=\"M1410.93 606.232 Q1408.17 606.232 1406.55 608.116 Q1404.95 609.999 1404.95 613.281 Q1404.95 616.542 1406.55 618.446 Q1408.17 620.329 1410.93 620.329 Q1413.68 620.329 1415.28 618.446 Q1416.9 616.542 1416.9 613.281 Q1416.9 609.999 1415.28 608.116 Q1413.68 606.232 1410
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"graphplot(trParentnodes, trChildnodes, names = trNamenodes, method = :tree)"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"nombres de noeuds explorés : 109\n"
]
}
],
2021-12-05 15:21:15 +00:00
"source": [
2021-12-09 10:54:09 +00:00
"println(\"nombres de noeuds explorés : \", length(trNamenodes))"
2021-12-05 15:21:15 +00:00
]
},
2021-11-27 15:33:20 +00:00
{
"cell_type": "code",
2021-12-09 10:54:09 +00:00
"execution_count": 21,
2021-11-27 15:33:20 +00:00
"metadata": {},
"outputs": [],
"source": [
2021-12-05 15:21:15 +00:00
"# # on teste de résoudre tous les fichiers .opb\n",
"# for (root, dirs, files) in walkdir(\"data\")\n",
"# for file in files\n",
"# if endswith(file, \".opb\")\n",
"# SolveKnapInstance(root * \"/\" * file)\n",
"# end\n",
"# end\n",
"# end"
2021-11-26 16:57:38 +00:00
]
2021-12-09 10:54:09 +00:00
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Rapport\n",
"\n",
"- Quelques détails sur les points clés et non triviaux de votre implémentation\n",
"- Une courte argumentation de l’ adéquation du résultat avec l’ instance résolue\n",
"- Quelques éléments d’ analyse, par exemple :\n",
"- Analyser l’ impact des différents paramètres de la PSE sur la performance en terme de vitesse/délais (en temps cpu et nombre de noeuds explorés) pour l’ obtention d’ une solution réalisable, pour l’ obtention de la meilleure solution, pour l’ obtention de bornes supérieures de qualité et pour la complétion de l’ algorithme\n",
"\n",
"## Notre implémentation\n",
"\n",
"Pour l'implémentation de notre `branch and bound`, nous avons gardé la même même architecture que celle du sujet. Nous avons simplement ré-écrit les fonctions qui calculent la valeur objectif et la valeur de la capacité. \\\n",
"Notre vecteur de décision $x$ est tel que $x\\in\\{-1,0,1\\}^n$ avec $n$ le nombre d'objets disponibles. $1$ et $0$ représente, respectivement, un objet non-pris ou non-pris. La valeur $-1$ représente un objet ou la décision n'a pas encore été faite.\n",
"Dans la fonction `Objetive`, si la valeur est a $-1$, on fait comme-ci elle était à $1$ pourcalculer une borne supérieur. Dans la fonction `Constraints` les $-1$ sont concidéré comme des $0$ pour avoir une borne inférieur de notre problème. \\\n",
"<br>\n",
"Pour l'exploration et la création de noeud, nous faisons une exploration des noeuds avec le plus de $1$ en premier. \\\n",
"Lorsque nous arrivons sur un noeud, nous l'enlevons de la pile des noeuds. Nous calculons ensuite si il est \"trivial\" ou si il dépasse déjà l'une des bornes ou si il est divisible. Dans le cas ou il est \"trivial\", nous calculons sa valeur et remplaçons la meilleure valeur si nécessaire. Dans le cas ou il dépasse une borne, nous l'abandonnons. Et enfin, si il est séparable, nous le séparons en deux en ajoutant la pile des noeuds les deux sous noeuds. \\\n",
"Exemple : $[(0,-1,-1)]$ -> $[(0,0,-1) ; (0,1,-1)]$\n",
"\n",
"## Justification de nos résultats\n",
"\n",
"Notre algorithme trouve bien les solutions idéales (comme indiqué dans le nom du fichier). Pour le test `uncorrelated_span/knapPI_11_20_1000_1_-1428` Nous avons trouvé la valeur optimale qui est de `1428` en `2131` exploration de noeuds la ou un algorithme classique de parcours de l'ensemble des noeuds aurait exploré `1048576` noeuds.\n",
"\n",
"## Analyse\n",
"\n",
"```\n",
"lfainsin@bonite:~/2A/RO/tp2$ time julia test.jl data/weakly_correlated/knapPI_2_50_1000_1_-1396.opb\n",
"---data/weakly_correlated/knapPI_2_50_1000_1_-1396.opb---\n",
"Capacity = 995\n",
"Number of objects = 50\n",
"Expected optimal value = 1396\n",
"Maximum number of nodes = 1125899906842624\n",
"\n",
"Node n°96: BestProfit = 825\n",
"Node n°169: BestProfit = 844\n",
"Node n°243: BestProfit = 919\n",
"Node n°297: BestProfit = 943\n",
"Node n°1126: BestProfit = 946\n",
"Node n°1224: BestProfit = 1030\n",
"Node n°1456: BestProfit = 1045\n",
"Node n°2960: BestProfit = 1105\n",
"Node n°3342: BestProfit = 1120\n",
"Node n°4596: BestProfit = 1126\n",
"Node n°6129: BestProfit = 1207\n",
"Node n°10462: BestProfit = 1212\n",
"Node n°24382: BestProfit = 1278\n",
"Node n°418695: BestProfit = 1288\n",
"Node n°422566: BestProfit = 1308\n",
"Node n°436804: BestProfit = 1329\n",
"Node n°443759: BestProfit = 1337\n",
"Node n°446051: BestProfit = 1352\n",
"Node n°916081: BestProfit = 1360\n",
"Node n°1044425: BestProfit = 1396\n",
"\n",
"--------------------------------------------------\n",
"Expected optimal value = 1396\n",
"Optimal value = 1396\n",
"Optimal x = [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]\n",
"Maximum number of nodes = 1125899906842624\n",
"Nodes explored = 3053865\n",
"\n",
"real 0m29,301s\n",
"user 0m29,372s\n",
"sys 0m0,809s\n",
"```\n",
"\n",
"```\n",
"lfainsin@bonite:~/2A/RO/tp2$ time julia test.jl data/weakly_correlated/knapPI_2_50_1000_1_-1396.opb\n",
"---data/weakly_correlated/knapPI_2_50_1000_1_-1396.opb---\n",
"Capacity = 995\n",
"Number of objects = 50\n",
"Expected optimal value = 1396\n",
"Maximum number of nodes = 1125899906842624\n",
"\n",
"Node n°93: BestProfit = 487\n",
"Node n°175: BestProfit = 626\n",
"Node n°293: BestProfit = 705\n",
"Node n°544: BestProfit = 810\n",
"Node n°1671: BestProfit = 815\n",
"Node n°1871: BestProfit = 836\n",
"Node n°2019: BestProfit = 872\n",
"Node n°2074: BestProfit = 886\n",
"Node n°3204: BestProfit = 918\n",
"Node n°4406: BestProfit = 950\n",
"Node n°4708: BestProfit = 952\n",
"Node n°4770: BestProfit = 978\n",
"Node n°8898: BestProfit = 990\n",
"Node n°9214: BestProfit = 1049\n",
"Node n°18160: BestProfit = 1059\n",
"Node n°18616: BestProfit = 1095\n",
"Node n°25906: BestProfit = 1099\n",
"Node n°27015: BestProfit = 1104\n",
"Node n°27130: BestProfit = 1119\n",
"Node n°27585: BestProfit = 1121\n",
"Node n°28076: BestProfit = 1125\n",
"Node n°43768: BestProfit = 1132\n",
"Node n°44203: BestProfit = 1134\n",
"Node n°59004: BestProfit = 1142\n",
"Node n°59465: BestProfit = 1144\n",
"Node n°59964: BestProfit = 1148\n",
"Node n°65923: BestProfit = 1154\n",
"Node n°66110: BestProfit = 1156\n",
"Node n°71779: BestProfit = 1186\n",
"Node n°71992: BestProfit = 1188\n",
"Node n°73054: BestProfit = 1190\n",
"Node n°73127: BestProfit = 1197\n",
"Node n°73146: BestProfit = 1241\n",
"Node n°152150: BestProfit = 1249\n",
"Node n°154060: BestProfit = 1251\n",
"Node n°179062: BestProfit = 1260\n",
"Node n°181638: BestProfit = 1261\n",
"Node n°181907: BestProfit = 1281\n",
"Node n°192060: BestProfit = 1298\n",
"Node n°202348: BestProfit = 1330\n",
"Node n°203862: BestProfit = 1341\n",
"Node n°206773: BestProfit = 1351\n",
"Node n°399253: BestProfit = 1365\n",
"Node n°619338: BestProfit = 1375\n",
"Node n°619695: BestProfit = 1377\n",
"Node n°842654: BestProfit = 1394\n",
"Node n°844341: BestProfit = 1396\n",
"\n",
"--------------------------------------------------\n",
"Expected optimal value = 1396\n",
"Optimal value = 1396\n",
"Optimal x = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1]\n",
"Maximum number of nodes = 1125899906842624\n",
"Nodes explored = 846447\n",
"\n",
"real 0m4,348s\n",
"user 0m4,480s\n",
"sys 0m0,747s\n",
"```\n",
"\n",
"Nous avaons réalisé les calcules de deux manières différentes : \\\n",
"La première fois, nous mettions a jour les coordonnées de $x$ dans l'ordre des indices. \\\n",
"La deuxième fois, nous avons d'abbord trié les vecteurs `weight` et `price` par leur rapport $prix / poids$. Cela revient a mettre a jour les coordonnées de $x$ dans l'ordre du meilleur rapport $prix / poids$. (NB : le vecteur résultat n'est pas ré-ordonné comme l'était les `price` et `weight` initialement) \\\n",
"<br>\n",
"Pour le fichier `weakly_correlated/knapPI_2_50_1000_1_-1396`, nous avons comparé les résultats :\n",
"| Valeurs | Sans tri | Avec tri |\n",
"| :- | :- | :- |\n",
"| Optimal value | 1396 | 1396 |\n",
"| user | 29.372s | 4.480s |\n",
"| Nodes explored | 3053865 | 846447 |\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": []
2021-11-26 13:51:01 +00:00
}
],
"metadata": {
"kernelspec": {
2021-12-09 07:25:20 +00:00
"display_name": "Julia 1.7.0",
2021-11-26 13:51:01 +00:00
"language": "julia",
2021-12-09 07:25:20 +00:00
"name": "julia-1.7"
2021-11-26 13:51:01 +00:00
},
"language_info": {
"file_extension": ".jl",
"mimetype": "application/julia",
"name": "julia",
2021-12-09 07:25:20 +00:00
"version": "1.7.0"
2021-11-26 13:51:01 +00:00
}
},
"nbformat": 4,
"nbformat_minor": 4
}