diff --git a/dist/microbitMore.mjs b/dist/microbitMore.mjs index 7ad7084..f7342c8 100644 --- a/dist/microbitMore.mjs +++ b/dist/microbitMore.mjs @@ -8268,12 +8268,16 @@ const img$2 = "data:image/svg+xml,%3c%3fxml version='1.0' encoding='UTF-8' stand const img$3 = "data:image/svg+xml,%3c%3fxml version='1.0' encoding='UTF-8' standalone='no'%3f%3e%3csvg xmlns:serif='http://www.serif.com/' xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:cc='http://creativecommons.org/ns%23' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23' xmlns:svg='http://www.w3.org/2000/svg' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' id='svg10630' style='fill-rule:evenodd%3bclip-rule:evenodd%3bstroke-linecap:round%3bstroke-linejoin:round%3b' xml:space='preserve' version='1.1' viewBox='0 0 40 40' height='40px' width='40px'%3e%3cmetadata id='metadata10634'%3e%3crdf:RDF%3e%3ccc:Work rdf:about=''%3e%3cdc:format%3eimage/svg%2bxml%3c/dc:format%3e%3cdc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage' /%3e%3cdc:title%3e%3c/dc:title%3e%3c/cc:Work%3e%3c/rdf:RDF%3e%3c/metadata%3e%3cdefs id='defs10628'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAACIAAAAcCAYAAAAEN20fAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA1ElEQVRIie3XsU7DMBRG4c%2bmFaIDLOyt1Pd/JCTYkRADQahVzVAjRa6dgSHJ4CN5SG6u/xM7QxzguD9ssEM0LxcML2%2bv55AlnhFmlvgj4T26rsRSEnL2Lpp/O2rENUhgHauBLnJLFynpIiVdpKSLlHSRki5SslqR1HjuMlFL/6ilPGdVJOGj0pjwjXMj7CePGid8NWQ%2bx/c3RfGp0hDwoP2Dfd8Igm3OqPU%2bji/GIgF3jQmnvqXQCJqq3WRF7beZkxQxWFYmYQhw3B%2b2ljloJdcj5%2bkXPe8rjWdIHOUAAAAASUVORK5CYII=' height='28px' width='34px' id='_Image1' /%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAK0lEQVQImWNUllfQYWBgEGZABW%2bZsAgyMDAwCDNhEWRgYGBgIE/iLRbxtwD55QOaOR9NWAAAAABJRU5ErkJggg==' height='6px' width='6px' id='_Image2' /%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAJ0lEQVQImS3GsQkAIBAEsPiWP4SC%2b493pWBjqoyzdqOR%2bpnoQnCRBzu7BHNrioXgAAAAAElFTkSuQmCC' height='3px' width='3px' id='_Image3' /%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAABkAAAAYCAYAAAAPtVbGAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACb0lEQVRIiY2Wa27aQBSFP4N5uUlTpVXVNXYHWUF20EVWLYFAMMZm3B8%2bB18bkGppNPbMuffMfY4zwvPr9TXTa8b1095Yu4v7%2bfLSDkBB%2bURrnjMJtUAK79l/4JLJ8nCCCTAFco1pED6HYZJpGBHXaGCiTFaYYA4sNeZab4EaqDQnrc%2bAheZM6yfgqHESabIlmcBL4BH4DBRaSyI4SPisAy2FWYi0FuY9xCYht9j0mYS%2bAN80LwUugT3wIZJc2AdgJR1HYCPC6LZkksmI5LvGo/ZLYCeiRiQP2l/pIDu5uBG%2blAeySJIHd30FfgDPWq%2bCJSb5JKwVr2XBDngTZmISx8SBLxSTZ1mzDKc7BJJCVuRyFSIopMdZd4lJtMYJ4JMWUuDMceAXGkjmQ3KzaMXYkpjKHrlO5b0JfQrPpbDVAaJcLFJiMY5biour1ndNn/tT%2bgqHvkhv6RmQ%2bHF%2bN3JPkpKS6zpZ6f0kvFvK4Ikksfc0EjzQB3zH7ewq6F0WiS5k%2bQ2CswRKOt82wJYuRbdy2wx4osvAJ%2bkpCa0kEuU3CCq5xYV3BP4Cv%2bkquqIL%2bl6EjVznnlWNiaIl0YJ3nXYuV/0RyVqYOX1CJLrY1JKLFg0scRzcPt60lotkLWs2gSTRZdBZcbFbd9JziU8kqbW5VSxKusw5am0jBY6J75WarigTXWJsJVuPSVwPB/ouupcSZ9lewsY6lkdZ5ve98LVdFmNS099wJ/rLyOlcaXbF%2b3BlcLsvN19wLQzv%2bHj9uj34AA33r1/3PwLG%2bDS%2b41OYJwzby60fCad8PcIOfiQImwSLrtZtNnR/HwF3Fxt/if4BFBM38JLMEaoAAAAASUVORK5CYII=' height='24px' width='25px' id='_Image4' /%3e%3cradialGradient id='_Radial2' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(1217.72%2c-59.7505%2c12.9632%2c284.312%2c552.955%2c1154.68)'%3e%3cstop offset='0' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop2206' /%3e%3cstop offset='1' style='stop-color:rgb(211%2c177%2c44)%3bstop-opacity:1' id='stop2208' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial3' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(1217.72%2c-59.7505%2c12.9632%2c284.312%2c552.955%2c1154.68)'%3e%3cstop offset='0' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop2211' /%3e%3cstop offset='1' style='stop-color:rgb(211%2c177%2c44)%3bstop-opacity:1' id='stop2213' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial4' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(466.809%2c-22.0906%2c4.9694%2c105.114%2c-471.791%2c488.167)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c204%2c0)%3bstop-opacity:1' id='stop2216' /%3e%3cstop offset='1' style='stop-color:rgb(200%2c171%2c55)%3bstop-opacity:0' id='stop2218' /%3e%3c/radialGradient%3e%3clinearGradient id='_Linear5' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(0.968404%2c-222.261%2c222.261%2c0.968404%2c275.27%2c1681.54)'%3e%3cstop offset='0' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop2221' /%3e%3cstop offset='1' style='stop-color:rgb(211%2c177%2c44)%3bstop-opacity:1' id='stop2223' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear6' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-43.5934%2c39.4616%2c-39.4616%2c-43.5934%2c1032.84%2c-2481.1)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop2226' /%3e%3cstop offset='1' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop2228' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear13' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(0.968404%2c-222.261%2c222.261%2c0.968404%2c-130.62%2c1681.54)'%3e%3cstop offset='0' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop2261' /%3e%3cstop offset='1' style='stop-color:rgb(211%2c177%2c44)%3bstop-opacity:1' id='stop2263' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear14' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-43.5934%2c39.4616%2c-39.4616%2c-43.5934%2c626.948%2c-2481.1)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop2266' /%3e%3cstop offset='1' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop2268' /%3e%3c/linearGradient%3e%3cclipPath id='_clip15'%3e%3cpath id='path23949' d='m 101.275%2c1080.28 v 0 c 0%2c7.91 6.416%2c14.97 16.079%2c14.97 9.664%2c0 16.08%2c-6.77 16.08%2c-14.97 v 0 -13.32 0 c 0%2c-7.91 -6.416%2c-14.96 -16.08%2c-14.96 -9.956%2c0 -16.079%2c6.76 -16.079%2c14.96 l 0.489%2c0.51 c 0%2c0 -0.489%2c-0.51 -0.489%2c-0.51 z m 0.978%2c0 v -13.32 0 c 0%2c-7.67 5.782%2c-13.95 15.101%2c-13.95 9.046%2c0 15.102%2c6.55 15.102%2c13.95 l 0.489%2c0.51 c 0%2c0 -0.489%2c-0.51 -0.489%2c-0.51 l 0.002%2c13.38 -0.002%2c-0.05 c -10e-4%2c7.67 -6.057%2c13.94 -15.102%2c13.94 -9.045%2c0 -15.101%2c-6.55 -15.101%2c-13.95 z m 8.376%2c0 v 0 c 0%2c3.68 2.462%2c7.03 6.442%2c7.03 3.973%2c0 6.725%2c-3.36 6.725%2c-7.03 v 0 -13.32 0 c 0%2c-1.98 -0.619%2c-3.73 -1.763%2c-4.99 -1.146%2c-1.26 -2.823%2c-2.04 -4.962%2c-2.04 -3.98%2c0 -6.442%2c3.36 -6.442%2c7.03 l 0.489%2c0.51 c 0%2c0 -0.489%2c-0.51 -0.489%2c-0.51 z m 12.189%2c0 v 0 c 0%2c3.14 -2.35%2c6.02 -5.747%2c6.02 -3.391%2c0 -5.464%2c-2.89 -5.464%2c-6.02 v 0 -13.32 0 c 0%2c-3.13 2.073%2c-6.01 5.464%2c-6.01 1.829%2c0 3.27%2c0.64 4.25%2c1.72 0.983%2c1.08 1.497%2c2.59 1.497%2c4.29 l 0.489%2c0.51 -0.489%2c-0.51 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip17'%3e%3cpath id='path23955' d='m 386.929%2c1059.93 h -0.278 c -0.634%2c0 -0.005%2c1.02 -0.005%2c1.02 l -0.49%2c-0.51 v 6.52 c 0%2c0 0.49%2c0.51 0.49%2c0.51 h 8.014 c 0%2c0 0%2c26.93 0%2c26.93 h 10.617 v -41.05 l -0.49%2c0.51 c 0%2c0 0.625%2c-1.01 -0.021%2c-1.01 h -8.198 c -0.651%2c0 -10e-4%2c1.01 -10e-4%2c1.01 h -0.489 v -0.51 c 0%2c1.8 -0.229%2c3.22 -1.006%2c4.27 -0.571%2c0.77 -1.438%2c1.33 -2.697%2c1.71 -1.347%2c0.41 -3.123%2c0.6 -5.446%2c0.6 z m 17.369%2c33.45 h -8.659 v -26.42 l -0.489%2c0.51 c 0%2c0 0.648%2c-1.02 -0.002%2c-1.02 h -8.013 v -5.5 c 4.857%2c-0.03 7.42%2c-0.96 8.714%2c-2.71 0.817%2c-1.11 1.151%2c-2.56 1.2%2c-4.38 0%2c0 7.249%2c0 7.249%2c0 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip19'%3e%3cpath id='path23961' d='m 722.835%2c1094.4 c 0%2c0 0.489%2c-0.03 0.489%2c-0.51 v -7.65 c 0%2c-0.32 -0.222%2c0.02 -0.367%2c0.27 0.143%2c-0.3 0.306%2c-0.78 -0.143%2c-0.78 h -16.766 c 0.092%2c-1.45 0.615%2c-2.51 1.963%2c-3.75 1.072%2c-0.98 2.635%2c-2.08 4.864%2c-3.53 2.16%2c-1.15 4.886%2c-2.81 7.078%2c-5.03 2.253%2c-2.29 3.938%2c-5.18 3.938%2c-8.73 0%2c-8.82 -6.73%2c-12.69 -14.379%2c-12.69 -4.824%2c0 -8.547%2c1.47 -11.068%2c3.89 -2.544%2c2.43 -3.878%2c5.82 -3.878%2c9.65 v 0.51 h 10.333 v -0.51 c 0%2c-1.95 0.498%2c-3.33 1.345%2c-4.21 0.832%2c-0.86 1.988%2c-1.23 3.268%2c-1.23 1.146%2c0 2.169%2c0.3 2.901%2c0.97 0.723%2c0.66 1.145%2c1.67 1.145%2c3.06 0%2c1.82 -0.868%2c3.19 -2.273%2c4.43 -1.504%2c1.33 -3.605%2c2.51 -5.983%2c3.91 l -0.007%2c0.01 c -3.19%2c2.03 -5.931%2c3.99 -7.921%2c7.14 -1.986%2c3.14 -3.23%2c7.47 -3.375%2c14.26 l -0.011%2c0.52 z m -0.49%2c-7.66 v 6.64 h -27.353 c 0.187%2c-6.23 1.341%2c-10.27 3.201%2c-13.21 1.907%2c-3.02 4.549%2c-4.88 7.6%2c-6.82 v 0 c 2.437%2c-1.43 4.585%2c-2.66 6.127%2c-4.02 1.642%2c-1.45 2.617%2c-3.06 2.617%2c-5.2 0%2c-1.74 -0.57%2c-2.99 -1.477%2c-3.82 -0.898%2c-0.82 -2.143%2c-1.23 -3.548%2c-1.23 -1.555%2c0 -2.95%2c0.48 -3.961%2c1.53 -0.92%2c0.96 -1.533%2c2.4 -1.62%2c4.43 h -8.378 c 0.111%2c-3.33 1.321%2c-6.27 3.554%2c-8.41 2.368%2c-2.26 5.875%2c-3.62 10.405%2c-3.62 7.091%2c0 13.4%2c3.5 13.4%2c11.68 0%2c3.26 -1.575%2c5.9 -3.644%2c8 -2.124%2c2.16 -4.773%2c3.76 -6.862%2c4.88 l -0.036%2c0.02 c -5.916%2c3.84 -7.316%2c5.39 -7.316%2c8.65 v 0.5 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip21'%3e%3cpath id='path23965' d='m 999.985%2c1065.77 h -10.333 v -0.51 c 0%2c-3.54 1.114%2c-6.92 3.546%2c-9.43 2.413%2c-2.49 6.136%2c-4.12 11.402%2c-4.12 7.65%2c0 14.66%2c3.9 14.66%2c11.85 0%2c4.24 -2.36%2c7.53 -5.18%2c9.06 v 0.02 c 3.32%2c1.65 5.75%2c4.81 5.75%2c9.91 0%2c7.93 -7%2c12.7 -15.23%2c12.7 -5.108%2c0 -9.114%2c-1.55 -11.85%2c-4.18 -2.647%2c-2.54 -4.115%2c-6.09 -4.225%2c-10.28 h 0.483 c 0%2c0 -0.648%2c-1.01 0.003%2c-1.01 h 9.066 c 0.65%2c0 0.002%2c1.01 0.002%2c1.01 l 0.489%2c-0.51 c 0%2c2.12 0.578%2c3.78 1.602%2c4.9 1.01%2c1.11 2.45%2c1.68 4.15%2c1.68 3.08%2c0 4.89%2c-2.3 4.89%2c-4.88 0%2c-1.55 -0.37%2c-2.84 -1.24%2c-3.75 -0.88%2c-0.91 -2.26%2c-1.41 -4.22%2c-1.41 h -3.69 c 0%2c0 -0.486%2c-0.03 -0.486%2c-0.51 v -7.36 l 0.486%2c0.5 c 0%2c0 -0.641%2c-1.01 0.01%2c-1.01 h 3.61 c 0.07%2c0 0.12%2c0.01 0.16%2c0.03 l -0.01%2c-0.03 c 1.9%2c-0.02 3.12%2c-0.43 3.85%2c-1.23 0.74%2c-0.8 0.96%2c-1.96 0.96%2c-3.37 0%2c-1.38 -0.42%2c-2.39 -1.14%2c-3.05 -0.73%2c-0.67 -1.76%2c-0.98 -2.9%2c-0.98 -1.45%2c0 -2.48%2c0.31 -3.2%2c0.92 -1.09%2c0.93 -1.415%2c2.5 -1.415%2c4.53 z m 3.765%2c10.04 c -0.01%2c0 -0.03%2c0 -0.04%2c0 h -3.16 v -6.36 h 3.2 c 2.31%2c0 3.75%2c-0.57 4.64%2c-1.54 0.89%2c-0.97 1.23%2c-2.36 1.23%2c-4.07 0%2c-1.73 -0.57%2c-2.99 -1.47%2c-3.81 -0.9%2c-0.83 -2.15%2c-1.23 -3.55%2c-1.23 -1.73%2c0 -2.96%2c0.42 -3.82%2c1.15 -1.192%2c1.01 -1.699%2c2.66 -1.765%2c4.8 h -8.376 c 0.1%2c-3.08 1.121%2c-6.01 3.249%2c-8.2 2.264%2c-2.33 5.77%2c-3.82 10.712%2c-3.82 7.09%2c0 13.68%2c3.47 13.68%2c10.83 0%2c4.29 -2.67%2c7.52 -5.62%2c8.59 l -1.28%2c0.47 1.27%2c0.49 c 3.51%2c1.34 6.2%2c4.31 6.2%2c9.44 0%2c7.38 -6.6%2c11.68 -14.25%2c11.68 -4.817%2c0 -8.605%2c-1.42 -11.185%2c-3.9 -2.455%2c-2.36 -3.803%2c-5.66 -3.911%2c-9.54 h 8.096 c 0.091%2c2.18 0.77%2c3.89 1.859%2c5.09 1.191%2c1.3 2.871%2c2 4.861%2c2 3.71%2c0 5.87%2c-2.8 5.87%2c-5.9 0%2c-1.85 -0.48%2c-3.38 -1.52%2c-4.46 -1.04%2c-1.07 -2.63%2c-1.71 -4.92%2c-1.71 z m -15.225%2c4.98 c -0.004%2c-0.17 -0.006%2c-0.34 -0.006%2c-0.51 v 0.51 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip23'%3e%3cpath id='path23967' d='m 1020.98%2c1053.86 14.46%2c40.54 h 9.47 l 14.57%2c-40.87 -0.46%2c0.33 c 0%2c0 0.62%2c-1.01 -0.02%2c-1.01 h -10.18 c -0.65%2c0 0%2c1.01 0%2c1.01 h -0.67 l 0.2%2c-0.66 -8.32%2c27.11 c 0%2c0 -8.32%2c-27.11 -8.32%2c-27.11 l -0.47%2c0.66 c 0%2c0 0.62%2c-1.01 -0.02%2c-1.01 h -9.9 c -0.65%2c0 0%2c1.01 0%2c1.01 z m 15.14%2c39.52 -14.1%2c-39.52 c 0%2c0 8.87%2c0 8.87%2c0 0%2c0 9.14%2c29.8 9.14%2c29.8 l 9.15%2c-29.8 c 0%2c0 9.14%2c0 9.14%2c0 l -14.09%2c39.52 z m -15.14%2c-39.52 -0.12%2c-0.33 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip25'%3e%3cpath id='path23973' d='m 1264.7%2c1067.18 h 10.85 l -0.04%2c-0.54 c -0.58%2c-7.87 -8.12%2c-14.64 -19.19%2c-14.64 -13.64%2c0 -21.75%2c10.45 -21.75%2c21.76 0%2c11.61 7.82%2c21.77 21.75%2c21.77 11.74%2c0 18.66%2c-6.23 20.52%2c-15.6 0%2c0.01 0.97%2c0.01 1.93%2c0.01 h 1.92 0.02 c 0.1%2c-0.01 0.47%2c-0.09 0.47%2c-0.51 v -7.08 c 0%2c-0.48 -0.49%2c0.5 -0.49%2c0.5 v -1.01 h -20.97 v 1.01 c 0%2c0 -0.49%2c-0.5 -0.49%2c-0.5 v 7.08 c 0%2c0.48 0.49%2c0.51 0.49%2c0.51 h 6.5 c -0.76%2c3.75 -3.94%2c6.64 -9.06%2c6.64 -3.27%2c0 -5.84%2c-0.95 -7.75%2c-2.54 -2.87%2c-2.38 -4.23%2c-6.18 -4.23%2c-10.28 0%2c-6.53 3.79%2c-12.81 11.14%2c-12.81 4.53%2c0 7.77%2c2.89 8.3%2c5.82 z m 9.78%2c-1.01 h -8.99 c -0.81%2c-3.16 -4.29%2c-6.24 -9.17%2c-6.24 -7.96%2c0 -12.12%2c6.76 -12.12%2c13.83 0%2c4.42 1.5%2c8.5 4.6%2c11.07 2.06%2c1.72 4.83%2c2.76 8.36%2c2.76 5.97%2c0 9.53%2c-3.61 10.13%2c-8.09 l -0.49%2c0.44 c 0%2c0 0.63%2c-1.01 -0.02%2c-1.01 h -6.57 v -6.08 h 19.99 v 6.08 h -3.7 c -0.64%2c0 -0.06%2c1.01 -0.06%2c1.01 h -0.59 l 0.11%2c-0.6 c -1.66%2c9.12 -8.31%2c15.18 -19.64%2c15.18 -13.29%2c0 -20.78%2c-9.68 -20.78%2c-20.76 0%2c-10.79 7.76%2c-20.75 20.78%2c-20.75 10.2%2c0 17.31%2c5.97 18.16%2c13.16 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip27'%3e%3cpath id='path23979' d='m 1307.42%2c1053.86 v 23.97 l -13.83%2c-24.73 -0.36%2c0.64 c 0.14%2c-0.27 0.42%2c-0.89 -0.09%2c-0.89 h -9.89 c -0.65%2c0 -0.01%2c1.01 -0.01%2c1.01 h -0.48 v 40.54 h 10.33 v -24.72 c 0%2c0 13.97%2c24.72 13.97%2c24.72 h 10.69 v -41.05 l -0.49%2c0.51 c 0%2c0 0.62%2c-1.01 -0.02%2c-1.01 h -9.33 c -0.65%2c0 0%2c1.01 0%2c1.01 z m -23.69%2c39.52 v -39.52 c 0%2c0 9.15%2c0 9.15%2c0 0%2c0 14.6%2c26.11 14.6%2c26.11 l 0.91%2c1.63 v -27.74 c 0%2c0 8.38%2c0 8.38%2c0 0%2c0 0%2c33.25 0%2c39.52 h -9.15 l -15.51%2c-27.44 v 27.44 z m -0.97%2c-39.52 c 0%2c0 0%2c-0.51 0%2c-0.51 z m 24.66%2c0 v -0.51 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip29'%3e%3cpath id='path23981' d='m 1324.42%2c1094.68 h 15.52 0.16 c 13.83%2c-0.08 21.59%2c-10.22 21.59%2c-20.92 0%2c-10.73 -7.82%2c-20.91 -21.75%2c-20.91 v 0.28 c -0.02%2c0 -0.03%2c0 -0.04%2c0 h -14.98 c -0.65%2c0 -0.01%2c1.01 -0.01%2c1.01 h -0.49 v -0.5 z m 15.95%2c-40.81 c 13.01%2c0.21 20.34%2c9.77 20.34%2c19.89 0%2c10.24 -7.49%2c19.91 -20.77%2c19.91 v 0 c -0.02%2c0 -0.03%2c0 -0.04%2c0 h -14.5 v -39.53 c 0%2c0 14.54%2c0 14.54%2c0 0%2c0 0.31%2c-0.02 0.43%2c-0.27 z m -6.31%2c7.93 v 24.38 h 5.59 l 0.19%2c-0.01 c 7.85%2c-0.09 12.21%2c-6.25 12.21%2c-12.69 0%2c-6.49 -4.72%2c-12.7 -12.4%2c-12.7 v 0 h -5.03 c -0.63%2c0 -0.07%2c1.02 -0.07%2c1.02 z m 5.59%2c23.36 h -4.61 v -23.36 h 4.61 c 7.07%2c0 11.42%2c5.7 11.42%2c11.68 0%2c5.98 -4.08%2c11.68 -11.42%2c11.68 z' /%3e%3c/clipPath%3e%3cclipPath id='_clip31'%3e%3cpath id='path24303' d='M 41.797%2c1012.94 H -0.979 v 55.44 c 0%2c30.98 17.776%2c57.96 41.302%2c72.31 l 1.474%2c0.9 z m -40.818%2c2.03 H 39.84 c 0%2c0 0%2c123.04 0%2c123.04 C 17.615%2c1123.8 0.979%2c1097.97 0.979%2c1068.38 Z' /%3e%3c/clipPath%3e%3cclipPath id='_clip33'%3e%3cpath id='path24305' d='m 1369.86%2c1012.94 v 128.36 l 1.47%2c-0.9 c 23.53%2c-14.34 41.3%2c-41.32 41.3%2c-72.02 0%2c0 0%2c-55.44 0%2c-55.44 z m 1.95%2c124.79 v -122.76 c 0%2c0 38.86%2c0 38.86%2c0 0%2c0 0%2c53.41 0%2c53.41 0%2c29.32 -16.63%2c55.14 -38.86%2c69.36 z' /%3e%3c/clipPath%3e%3clinearGradient id='_Linear35' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-0.630291%2c37.1875%2c-37.1875%2c-0.630291%2c-419.105%2c418.619)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c255%2c0)%3bstop-opacity:0' id='stop2281' /%3e%3cstop offset='0.55' style='stop-color:rgb(255%2c221%2c85)%3bstop-opacity:1' id='stop2283' /%3e%3cstop offset='1' style='stop-color:rgb(255%2c221%2c85)%3bstop-opacity:0' id='stop2285' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear36' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c419.105)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c255%2c0)%3bstop-opacity:0' id='stop2288' /%3e%3cstop offset='0.55' style='stop-color:rgb(255%2c221%2c85)%3bstop-opacity:1' id='stop2290' /%3e%3cstop offset='1' style='stop-color:rgb(255%2c221%2c85)%3bstop-opacity:0' id='stop2292' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear42' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)'%3e%3cstop offset='0' style='stop-color:rgb(128%2c128%2c128)%3bstop-opacity:1' id='stop2330' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2332' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear44' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)'%3e%3cstop offset='0' style='stop-color:rgb(128%2c128%2c128)%3bstop-opacity:1' id='stop2336' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2338' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear45' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)'%3e%3cstop offset='0' style='stop-color:rgb(128%2c128%2c128)%3bstop-opacity:1' id='stop2341' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2343' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear46' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)'%3e%3cstop offset='0' style='stop-color:rgb(128%2c128%2c128)%3bstop-opacity:1' id='stop2346' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2348' /%3e%3c/linearGradient%3e%3cradialGradient id='_Radial47' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2351' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2353' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial48' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2356' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2358' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2360' /%3e%3c/radialGradient%3e%3clinearGradient id='_Linear50' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)'%3e%3cstop offset='0' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:1' id='stop2364' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2366' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear51' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)'%3e%3cstop offset='0' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:1' id='stop2369' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2371' /%3e%3c/linearGradient%3e%3cradialGradient id='_Radial57' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2395' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2397' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial58' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2400' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2402' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2404' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial65' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2437' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2439' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial66' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2442' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2444' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2446' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial73' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2479' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2481' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial74' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2484' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2486' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2488' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial81' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2521' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2523' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial82' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2526' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2528' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2530' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial89' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2563' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2565' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial90' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2568' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2570' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2572' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial97' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2605' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2607' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial98' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2610' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2612' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2614' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial105' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2647' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2649' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial106' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2652' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2654' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2656' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial113' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2689' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2691' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial114' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2694' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2696' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2698' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial121' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2731' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2733' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial122' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2736' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2738' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2740' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial129' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2773' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2775' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial130' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2778' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2780' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2782' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial137' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2815' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2817' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial138' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2820' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2822' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2824' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial145' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2857' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2859' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial146' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2862' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2864' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2866' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial153' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2899' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2901' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial154' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2904' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2906' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2908' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial161' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2941' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2943' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial162' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2946' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2948' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2950' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial169' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop2983' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop2985' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial170' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop2988' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop2990' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop2992' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial177' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3025' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3027' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial178' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3030' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3032' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3034' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial185' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3067' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3069' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial186' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3072' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3074' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3076' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial193' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3109' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3111' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial194' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3114' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3116' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3118' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial201' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3151' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3153' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial202' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3156' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3158' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3160' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial209' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3193' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3195' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial210' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3198' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3200' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3202' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial217' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3235' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3237' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial218' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3240' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3242' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3244' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial225' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3277' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3279' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial226' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3282' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3284' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3286' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial233' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3319' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3321' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial234' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3324' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3326' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3328' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial241' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-13.7525%2c-13.3081%2c12.5963%2c-13.205%2c-800.638%2c-1853.57)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3361' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3363' /%3e%3c/radialGradient%3e%3cradialGradient id='_Radial242' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-31.4592%2c4.35394e-6%2c-3.02828e-6%2c-26.6266%2c688.739%2c-1858.25)'%3e%3cstop offset='0' style='stop-color:white%3bstop-opacity:0.7' id='stop3366' /%3e%3cstop offset='0.69' style='stop-color:rgb(173%2c173%2c173)%3bstop-opacity:0.42' id='stop3368' /%3e%3cstop offset='1' style='stop-color:rgb(51%2c51%2c51)%3bstop-opacity:0' id='stop3370' /%3e%3c/radialGradient%3e%3clinearGradient id='_Linear245' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)'%3e%3cstop offset='0' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop3383' /%3e%3cstop offset='1' style='stop-color:rgb(211%2c177%2c44)%3bstop-opacity:1' id='stop3385' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear246' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop3388' /%3e%3cstop offset='1' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop3390' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear283' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c526.308)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c255%2c0)%3bstop-opacity:0' id='stop3573' /%3e%3cstop offset='0.55' style='stop-color:rgb(255%2c221%2c85)%3bstop-opacity:1' id='stop3575' /%3e%3cstop offset='1' style='stop-color:rgb(255%2c221%2c85)%3bstop-opacity:0' id='stop3577' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear284' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-4.57863%2c-113.553%2c113.553%2c-4.57863%2c69.9172%2c120.356)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop3580' /%3e%3cstop offset='1' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop3582' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear285' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(18.0628%2c19.1844%2c-19.1844%2c18.0628%2c81.7664%2c33.3235)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop3585' /%3e%3cstop offset='1' style='stop-color:rgb(254%2c211%2c42)%3bstop-opacity:1' id='stop3587' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear287' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(15.4065%2c25.6776%2c-25.6776%2c15.4065%2c29.9975%2c31.8478)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop3595' /%3e%3cstop offset='1' style='stop-color:rgb(254%2c211%2c42)%3bstop-opacity:1' id='stop3597' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear288' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-9.0058%2c-103.813%2c103.813%2c-9.0058%2c69.9172%2c120.356)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop3600' /%3e%3cstop offset='1' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop3602' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear289' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(102.194%2c27.7436%2c-27.7436%2c102.194%2c14.6841%2c38.9312)'%3e%3cstop offset='0' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop3605' /%3e%3cstop offset='1' style='stop-color:rgb(211%2c177%2c44)%3bstop-opacity:1' id='stop3607' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear290' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-2.64645%2c-65.6335%2c65.6335%2c-2.64645%2c361.17%2c163.798)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop3610' /%3e%3cstop offset='1' style='stop-color:rgb(212%2c170%2c0)%3bstop-opacity:1' id='stop3612' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear291' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(10.4403%2c11.0886%2c-11.0886%2c10.4403%2c368.019%2c113.493)'%3e%3cstop offset='0' style='stop-color:rgb(255%2c230%2c128)%3bstop-opacity:1' id='stop3615' /%3e%3cstop offset='1' style='stop-color:rgb(254%2c211%2c42)%3bstop-opacity:1' id='stop3617' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear292' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(-0.0351496%2c-1.47321%2c1.47321%2c-0.0351496%2c627.388%2c244.72)'%3e%3cstop offset='0' style='stop-color:rgb(153%2c153%2c153)%3bstop-opacity:1' id='stop3620' /%3e%3cstop offset='1' style='stop-color:rgb(102%2c102%2c102)%3bstop-opacity:1' id='stop3622' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear293' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3625' /%3e%3cstop offset='1' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:0' id='stop3627' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear297' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(0%2c-1.6071%2c1.6071%2c0%2c278.781%2c-654.943)'%3e%3cstop offset='0' style='stop-color:rgb(204%2c204%2c204)%3bstop-opacity:1' id='stop3645' /%3e%3cstop offset='1' style='stop-color:rgb(153%2c153%2c153)%3bstop-opacity:1' id='stop3647' /%3e%3c/linearGradient%3e%3clinearGradient id='_Linear298' x1='0' y1='0' x2='1' y2='0' gradientUnits='userSpaceOnUse' gradientTransform='matrix(52.7025%2c39.7776%2c-39.7776%2c52.7025%2c248.074%2c612.028)'%3e%3cstop offset='0' style='stop-color:rgb(128%2c128%2c128)%3bstop-opacity:1' id='stop3650' /%3e%3cstop offset='1' style='stop-color:rgb(140%2c140%2c140)%3bstop-opacity:1' id='stop3652' /%3e%3c/linearGradient%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0.968404%2c-222.261%2c222.261%2c0.968404%2c275.27%2c1681.54)' gradientUnits='userSpaceOnUse' id='linearGradient25256' xlink:href='%23_Linear5' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-43.5934%2c39.4616%2c-39.4616%2c-43.5934%2c1032.84%2c-2481.1)' gradientUnits='userSpaceOnUse' id='linearGradient25258' xlink:href='%23_Linear6' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0.968404%2c-222.261%2c222.261%2c0.968404%2c275.27%2c1681.54)' gradientUnits='userSpaceOnUse' id='linearGradient25260' xlink:href='%23_Linear5' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-43.5934%2c39.4616%2c-39.4616%2c-43.5934%2c1032.84%2c-2481.1)' gradientUnits='userSpaceOnUse' id='linearGradient25262' xlink:href='%23_Linear6' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0.968404%2c-222.261%2c222.261%2c0.968404%2c275.27%2c1681.54)' gradientUnits='userSpaceOnUse' id='linearGradient25264' xlink:href='%23_Linear5' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-43.5934%2c39.4616%2c-39.4616%2c-43.5934%2c1032.84%2c-2481.1)' gradientUnits='userSpaceOnUse' id='linearGradient25266' xlink:href='%23_Linear6' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0.968404%2c-222.261%2c222.261%2c0.968404%2c275.27%2c1681.54)' gradientUnits='userSpaceOnUse' id='linearGradient25268' xlink:href='%23_Linear5' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-43.5934%2c39.4616%2c-39.4616%2c-43.5934%2c1032.84%2c-2481.1)' gradientUnits='userSpaceOnUse' id='linearGradient25270' xlink:href='%23_Linear6' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c419.105)' gradientUnits='userSpaceOnUse' id='linearGradient25272' xlink:href='%23_Linear36' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c419.105)' gradientUnits='userSpaceOnUse' id='linearGradient25274' xlink:href='%23_Linear36' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c419.105)' gradientUnits='userSpaceOnUse' id='linearGradient25276' xlink:href='%23_Linear36' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c419.105)' gradientUnits='userSpaceOnUse' id='linearGradient25278' xlink:href='%23_Linear36' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c419.105)' gradientUnits='userSpaceOnUse' id='linearGradient25280' xlink:href='%23_Linear36' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(37.1875%2c0.630291%2c-0.630291%2c37.1875%2c418.619%2c419.105)' gradientUnits='userSpaceOnUse' id='linearGradient25282' xlink:href='%23_Linear36' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25284' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25286' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25288' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25290' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25292' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25294' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25296' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25298' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25300' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25302' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25304' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25306' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25308' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25310' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25312' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25314' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25316' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25318' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25320' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25322' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25324' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25326' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25328' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25330' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25332' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25334' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25336' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25338' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25340' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25342' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25344' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25346' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25348' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25350' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25352' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25354' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25356' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25358' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25360' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25362' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25364' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25366' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25368' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25370' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25372' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25374' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25376' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25378' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25380' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25382' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25384' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25386' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25388' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25390' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25392' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25394' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25396' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25398' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25400' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25402' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25404' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25406' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25408' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25410' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25412' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25414' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25416' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25418' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25420' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25422' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25424' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25426' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25428' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25430' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25432' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25434' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25436' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25438' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25440' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25442' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25444' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25446' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25448' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25450' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25452' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25454' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25456' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25458' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25460' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25462' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25464' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25466' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25468' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25470' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25472' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25474' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25476' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25478' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25480' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25482' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25484' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25486' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25488' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25490' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25492' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25494' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25496' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25498' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25500' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25502' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25504' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25506' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25508' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25510' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25512' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25514' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25516' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25518' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25520' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25522' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25524' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25526' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25528' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25530' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25532' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25534' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25536' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25538' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25540' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25542' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25544' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25546' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25548' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25550' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25552' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25554' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25556' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25558' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25560' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25562' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25564' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25566' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25568' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25570' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(127.547%2c33.716%2c-33.716%2c127.547%2c679.481%2c1846.4)' gradientUnits='userSpaceOnUse' id='linearGradient25572' xlink:href='%23_Linear42' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-25.8869%2c0%2c0%2c-25.8869%2c701.405%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25574' xlink:href='%23_Linear44' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.6377%2c0%2c0%2c-28.6377%2c701.334%2c1863.49)' gradientUnits='userSpaceOnUse' id='linearGradient25576' xlink:href='%23_Linear45' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-28.867%2c0%2c0%2c-28.867%2c-787.593%2c-1850.9)' gradientUnits='userSpaceOnUse' id='linearGradient25578' xlink:href='%23_Linear46' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c698.248%2c1857.21)' gradientUnits='userSpaceOnUse' id='linearGradient25580' xlink:href='%23_Linear50' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-15.2653%2c0%2c0%2c-15.2653%2c-791.141%2c-1857.01)' gradientUnits='userSpaceOnUse' id='linearGradient25582' xlink:href='%23_Linear51' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25584' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25586' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25588' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25590' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25592' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25594' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25596' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25598' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25600' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25602' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25604' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25606' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25608' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25610' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25612' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25614' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25616' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25618' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25620' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25622' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25624' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25626' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25628' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25630' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25632' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25634' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25636' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25638' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25640' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25642' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25644' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25646' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25648' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25650' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25652' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25654' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-51.6668%2c51.6668%2c0%2c-606.286%2c486.755)' gradientUnits='userSpaceOnUse' id='linearGradient25656' xlink:href='%23_Linear245' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(10.4409%2c11.5341%2c-11.5341%2c10.4409%2c-614.713%2c432.795)' gradientUnits='userSpaceOnUse' id='linearGradient25658' xlink:href='%23_Linear246' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-4.57863%2c-113.553%2c113.553%2c-4.57863%2c69.9172%2c120.356)' gradientUnits='userSpaceOnUse' id='linearGradient25660' xlink:href='%23_Linear284' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-4.57863%2c-113.553%2c113.553%2c-4.57863%2c69.9172%2c120.356)' gradientUnits='userSpaceOnUse' id='linearGradient25662' xlink:href='%23_Linear284' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-0.0351496%2c-1.47321%2c1.47321%2c-0.0351496%2c627.388%2c244.72)' gradientUnits='userSpaceOnUse' id='linearGradient25664' xlink:href='%23_Linear292' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25666' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25668' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25670' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25672' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-1.6071%2c1.6071%2c0%2c278.781%2c-654.943)' gradientUnits='userSpaceOnUse' id='linearGradient25674' xlink:href='%23_Linear297' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(52.7025%2c39.7776%2c-39.7776%2c52.7025%2c248.074%2c612.028)' gradientUnits='userSpaceOnUse' id='linearGradient25676' xlink:href='%23_Linear298' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(-0.0351496%2c-1.47321%2c1.47321%2c-0.0351496%2c627.388%2c244.72)' gradientUnits='userSpaceOnUse' id='linearGradient25678' xlink:href='%23_Linear292' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25680' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25682' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25684' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c4.12243%2c-4.12243%2c0%2c1386.36%2c717.021)' gradientUnits='userSpaceOnUse' id='linearGradient25686' xlink:href='%23_Linear293' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(0%2c-1.6071%2c1.6071%2c0%2c278.781%2c-654.943)' gradientUnits='userSpaceOnUse' id='linearGradient25688' xlink:href='%23_Linear297' /%3e%3clinearGradient y2='0' x2='1' y1='0' x1='0' gradientTransform='matrix(52.7025%2c39.7776%2c-39.7776%2c52.7025%2c248.074%2c612.028)' gradientUnits='userSpaceOnUse' id='linearGradient25690' xlink:href='%23_Linear298' /%3e%3c/defs%3e%3cg id='g26688'%3e%3cg transform='translate(32.09044%2c-0.45238915)' id='g27657'%3e%3cg style='clip-rule:evenodd%3bfill-rule:evenodd' transform='matrix(0.152098%2c0%2c0%2c0.152098%2c-51.419792%2c-5.0184928)' id='g2198'%3e%3cg id='path21916-2' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c132.547%2c66.888)'%3e%3cpath d='m 57.183%2c19.519 c -19.125%2c0 -34.664%2c14.987 -34.664%2c33.432 v 358.628 c 0%2c15.17 10.515%2c27.993 24.888%2c32.071 0.147%2c-0.225 0.278%2c-0.46 0.375%2c-0.713 1.37%2c-3.899 5.065%2c-6.685 9.444%2c-6.685 h 17.676 c 4.378%2c0 8.161%2c2.786 9.532%2c6.685 0.342%2c0.899 1.011%2c1.636 1.858%2c2.074 h 67.016 c 0.859%2c-0.438 1.542%2c-1.175 1.885%2c-2.074 1.37%2c-3.899 5.065%2c-6.685 9.444%2c-6.685 h 17.675 c 4.378%2c0 8.162%2c2.786 9.533%2c6.685 0.342%2c0.898 1.008%2c1.635 1.854%2c2.074 h 78.361 c 1.058%2c-0.392 1.915%2c-1.212 2.313%2c-2.256 1.37%2c-3.899 5.065%2c-6.684 9.443%2c-6.684 h 17.675 c 4.378%2c0 8.163%2c2.786 9.533%2c6.684 0.398%2c1.044 1.235%2c1.864 2.281%2c2.256 h 79.667 c 0.859%2c-0.438 1.541%2c-1.175 1.884%2c-2.074 1.37%2c-3.899 5.065%2c-6.685 9.444%2c-6.685 h 17.675 c 4.378%2c0 8.162%2c2.786 9.533%2c6.685 0.342%2c0.898 1.008%2c1.635 1.854%2c2.074 h 66.623 c 0.859%2c-0.438 1.542%2c-1.175 1.885%2c-2.074 1.37%2c-3.899 5.065%2c-6.685 9.444%2c-6.685 h 17.675 c 4.378%2c0 8.162%2c2.786 9.533%2c6.685 0.093%2c0.243 0.217%2c0.47 0.354%2c0.688 14.326%2c-4.106 24.796%2c-16.908 24.796%2c-32.046 V 52.951 c 0%2c-18.445 -15.431%2c-33.432 -34.556%2c-33.432 z M 38.166%2c226.081 c 2.934%2c0 5.217%2c2.305 5.217%2c5.03 0%2c2.83 -2.283%2c5.032 -5.217%2c5.032 -2.933%2c0 -5.214%2c-2.307 -5.214%2c-5.032 0%2c-2.829 2.389%2c-5.03 5.214%2c-5.03 z m 512.684%2c0 c 2.934%2c0 5.216%2c2.305 5.216%2c5.03 0.109%2c2.83 -2.282%2c5.032 -5.216%2c5.032 -2.934%2c0 -5.216%2c-2.307 -5.216%2c-5.032 0%2c-2.829 2.391%2c-5.03 5.216%2c-5.03 z M 66.416%2c355.141 c 4.121%2c0.063 8.212%2c1.346 11.622%2c3.668 11.618%2c7.315 12.309%2c25.875 1.273%2c34.039 -10.421%2c8.929 -28.363%2c4.112 -32.892%2c-8.848 -5.475%2c-12.609 4.489%2c-28.362 18.232%2c-28.811 0.588%2c-0.041 1.176%2c-0.057 1.765%2c-0.048 z m 107.685%2c0.694 c 4.121%2c0.068 8.201%2c1.343 11.615%2c3.667 11.612%2c7.314 12.316%2c25.88 1.273%2c34.037 -10.421%2c8.944 -28.365%2c4.111 -32.898%2c-8.846 -5.459%2c-12.616 4.498%2c-28.354 18.242%2c-28.812 0.589%2c-0.04 1.179%2c-0.055 1.768%2c-0.046 z m 119.464%2c0 c 4.121%2c0.068 8.2%2c1.343 11.615%2c3.667 11.613%2c7.315 12.314%2c25.878 1.273%2c34.037 -10.421%2c8.943 -28.365%2c4.112 -32.896%2c-8.846 -5.465%2c-12.618 4.497%2c-28.355 18.241%2c-28.812 0.589%2c-0.04 1.178%2c-0.055 1.767%2c-0.046 z m 120.268%2c0 c 4.121%2c0.068 8.2%2c1.343 11.615%2c3.667 11.613%2c7.315 12.314%2c25.878 1.273%2c34.037 -10.421%2c8.944 -28.365%2c4.111 -32.898%2c-8.846 -5.461%2c-12.618 4.499%2c-28.353 18.243%2c-28.812 0.589%2c-0.04 1.178%2c-0.055 1.767%2c-0.046 z m 106.066%2c0.806 c 4.121%2c0.063 8.211%2c1.348 11.621%2c3.67 11.617%2c7.314 12.309%2c25.873 1.273%2c34.037 -10.421%2c8.929 -28.363%2c4.114 -32.892%2c-8.847 -5.476%2c-12.608 4.489%2c-28.363 18.232%2c-28.812 0.588%2c-0.041 1.178%2c-0.057 1.766%2c-0.048 z' style='fill:%231a1a1a%3bfill-rule:nonzero' id='path864' /%3e%3c/g%3e%3cg transform='matrix(0%2c0.436995%2c-0.436995%2c0%2c441.095%2c48.646)' id='g1994'%3e%3cg id='g15278'%3e%3cg id='g15018'%3e%3cg id='path21916' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 216.125%2c73.773 c -72.284%2c0 -131.014%2c56.644 -131.014%2c126.357 v 1355.44 c 0%2c57.34 39.743%2c105.8 94.064%2c121.22 0.556%2c-0.85 1.052%2c-1.74 1.417%2c-2.7 5.179%2c-14.73 19.144%2c-25.26 35.694%2c-25.26 h 66.808 c 16.547%2c0 30.845%2c10.53 36.025%2c25.26 1.296%2c3.4 3.823%2c6.18 7.026%2c7.84 H 579.43 c 3.247%2c-1.65 5.83%2c-4.44 7.126%2c-7.84 5.178%2c-14.73 19.143%2c-25.26 35.693%2c-25.26 h 66.802 c 16.548%2c0 30.851%2c10.53 36.031%2c25.26 1.295%2c3.4 3.812%2c6.18 7.01%2c7.84 h 296.168 c 4%2c-1.48 7.24%2c-4.58 8.74%2c-8.53 5.18%2c-14.73 19.14%2c-25.26 35.69%2c-25.26 h 66.8 c 16.55%2c0 30.86%2c10.53 36.04%2c25.26 1.5%2c3.95 4.66%2c7.05 8.62%2c8.53 h 301.1 c 3.25%2c-1.66 5.82%2c-4.44 7.12%2c-7.84 5.18%2c-14.73 19.14%2c-25.26 35.69%2c-25.26 h 66.81 c 16.54%2c0 30.85%2c10.53 36.03%2c25.26 1.29%2c3.4 3.81%2c6.18 7%2c7.84 h 251.81 c 3.24%2c-1.65 5.83%2c-4.44 7.12%2c-7.84 5.18%2c-14.73 19.15%2c-25.26 35.7%2c-25.26 h 66.8 c 16.55%2c0 30.85%2c10.53 36.03%2c25.26 0.35%2c0.92 0.82%2c1.78 1.34%2c2.6 54.14%2c-15.52 93.71%2c-63.9 93.71%2c-121.12 V 200.13 c 0%2c-69.713 -58.32%2c-126.357 -130.6%2c-126.357 z M 144.251%2c854.48 c 11.089%2c0 19.716%2c8.713 19.716%2c19.012 0%2c10.694 -8.627%2c19.017 -19.716%2c19.017 -11.089%2c0 -19.709%2c-8.719 -19.709%2c-19.017 0%2c-10.695 9.031%2c-19.012 19.709%2c-19.012 z m 1937.699%2c0 c 11.09%2c0 19.72%2c8.713 19.72%2c19.012 0.41%2c10.694 -8.63%2c19.017 -19.72%2c19.017 -11.09%2c0 -19.71%2c-8.719 -19.71%2c-19.017 0%2c-10.695 9.04%2c-19.012 19.71%2c-19.012 z M 251.021%2c1342.27 c 15.575%2c0.23 31.037%2c5.08 43.926%2c13.86 43.912%2c27.64 46.523%2c97.79 4.811%2c128.65 -39.388%2c33.75 -107.2%2c15.54 -124.314%2c-33.44 -20.694%2c-47.66 16.964%2c-107.2 68.906%2c-108.89 2.222%2c-0.16 4.446%2c-0.22 6.671%2c-0.18 z m 406.999%2c2.62 c 15.576%2c0.25 30.994%2c5.07 43.898%2c13.86 43.89%2c27.64 46.55%2c97.81 4.811%2c128.64 -39.386%2c33.81 -107.205%2c15.54 -124.337%2c-33.43 -20.632%2c-47.68 16.999%2c-107.17 68.945%2c-108.9 2.225%2c-0.15 4.458%2c-0.21 6.683%2c-0.17 z m 451.52%2c0 c 15.57%2c0.25 30.99%2c5.07 43.89%2c13.86 43.9%2c27.65 46.55%2c97.8 4.82%2c128.64 -39.39%2c33.8 -107.21%2c15.54 -124.34%2c-33.43 -20.65%2c-47.69 17%2c-107.17 68.95%2c-108.9 2.23%2c-0.15 4.45%2c-0.21 6.68%2c-0.17 z m 454.55%2c0 c 15.58%2c0.25 31%2c5.07 43.9%2c13.86 43.9%2c27.65 46.55%2c97.8 4.81%2c128.64 -39.38%2c33.81 -107.2%2c15.54 -124.33%2c-33.43 -20.65%2c-47.69 17%2c-107.16 68.95%2c-108.9 2.22%2c-0.15 4.45%2c-0.21 6.67%2c-0.17 z m 400.88%2c3.04 c 15.58%2c0.24 31.04%2c5.1 43.92%2c13.87 43.91%2c27.65 46.53%2c97.79 4.82%2c128.65 -39.39%2c33.75 -107.2%2c15.55 -124.32%2c-33.44 -20.7%2c-47.65 16.97%2c-107.2 68.91%2c-108.89 2.22%2c-0.16 4.45%2c-0.22 6.67%2c-0.19 z' style='fill:%231a1a1a%3bfill-rule:nonzero' id='path867' /%3e%3c/g%3e%3cg id='circle9997' transform='rotate(-90)'%3e%3ccircle cx='-639.56403' cy='418.59601' r='20.357' style='fill:none%3bstroke:black%3bstroke-width:0.85px' id='circle870' /%3e%3c/g%3e%3cg id='circle9999' transform='rotate(-90)'%3e%3ccircle cx='-531.88599' cy='419.293' r='20.357' style='fill:none%3bstroke:black%3bstroke-width:0.85px' id='circle873' /%3e%3c/g%3e%3cg id='circle10001' transform='rotate(-90)'%3e%3ccircle cx='-412.42099' cy='419.293' r='20.357' style='fill:none%3bstroke:black%3bstroke-width:0.85px' id='circle876' /%3e%3c/g%3e%3cg id='circle10003' transform='rotate(-90)'%3e%3ccircle cx='-292.15302' cy='419.293' r='20.357' style='fill:none%3bstroke:black%3bstroke-width:0.85px' id='circle879' /%3e%3c/g%3e%3cg id='circle10005' transform='rotate(-90)'%3e%3ccircle cx='-186.082' cy='420.09601' r='20.357' style='fill:none%3bstroke:black%3bstroke-width:0.85px' id='circle882' /%3e%3c/g%3e%3cpath id='path21922' d='m 436.136%2c683.764 h 20.122 c 11.318%2c0 21.17%2c-6.737 26.41%2c-15.647 h -46.532 z' style='fill:%23c8ab37%3bfill-rule:nonzero' /%3e%3cpath id='path21924' d='m 482.563%2c158.259 c -5.24%2c-8.91 -15.091%2c-15.648 -26.305%2c-15.648 h -20.122 v 15.648 z' style='fill:%23c8ab37%3bfill-rule:nonzero' /%3e%3cg id='rect21926' transform='rotate(-90)'%3e%3crect x='-611.28497' y='435.08801' width='9.9969997' height='51.667' style='fill:%23c8ab37' id='rect887' /%3e%3c/g%3e%3cg id='path21962' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 655.584%2c1330.6 c -52.57%2c0 -90.771%2c40.79 -94.878%2c91.49 v 259.84 h 18.724 c 3.247%2c-1.65 5.83%2c-4.44 7.126%2c-7.84 5.178%2c-14.73 19.143%2c-25.26 35.693%2c-25.26 h 66.802 c 16.548%2c0 30.851%2c10.53 36.031%2c25.26 1.295%2c3.4 3.812%2c6.18 7.01%2c7.84 h 18.364 v -259.84 c 0%2c-50.3 -42.302%2c-91.49 -94.872%2c-91.49 z m 0.819%2c16.63 c 43.946%2c0 79.265%2c34.46 79.265%2c76.44 0%2c42.39 -35.319%2c76.45 -79.265%2c76.45 -43.945%2c0 -79.265%2c-34.06 -79.265%2c-76.45 0%2c-42.38 35.32%2c-76.44 79.265%2c-76.44 z' style='fill:%23c8ab37%3bfill-rule:nonzero' id='path890' /%3e%3c/g%3e%3cg id='path21964' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 1106.95%2c1330.6 c -52.57%2c0 -90.77%2c40.79 -94.88%2c91.49 v 259.84 h 18.05 c 3.25%2c-1.65 5.83%2c-4.44 7.13%2c-7.84 5.18%2c-14.73 19.14%2c-25.26 35.69%2c-25.26 h 66.8 c 16.55%2c0 30.85%2c10.53 36.03%2c25.26 1.3%2c3.4 3.82%2c6.18 7.01%2c7.84 h 19.04 v -259.84 c 0%2c-50.3 -42.3%2c-91.49 -94.87%2c-91.49 z m 1.64%2c16.63 c 43.94%2c0 79.27%2c34.46 79.27%2c76.44 0%2c42.39 -35.33%2c76.45 -79.27%2c76.45 -43.95%2c0 -79.27%2c-34.06 -79.27%2c-76.45 0%2c-42.38 35.32%2c-76.44 79.27%2c-76.44 z' style='fill:%23c8ab37%3bfill-rule:nonzero' id='path893' /%3e%3c/g%3e%3cg id='path21966' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 1562.42%2c1330.6 c -52.57%2c0 -90.77%2c40.79 -94.88%2c91.49 v 259.84 h 17.7 c 3.25%2c-1.65 5.83%2c-4.44 7.13%2c-7.84 5.18%2c-14.73 19.14%2c-25.26 35.69%2c-25.26 h 66.81 c 16.54%2c0 30.85%2c10.53 36.03%2c25.26 1.29%2c3.4 3.81%2c6.18 7%2c7.84 h 19.39 v -259.84 c 0%2c-50.3 -42.3%2c-91.49 -94.87%2c-91.49 z m 0.41%2c16.63 c 43.94%2c0 79.26%2c34.46 79.26%2c76.44 0%2c42.39 -35.32%2c76.45 -79.26%2c76.45 -43.95%2c0 -79.27%2c-34.06 -79.27%2c-76.45 0%2c-42.38 35.32%2c-76.44 79.27%2c-76.44 z' style='fill:%23c8ab37%3bfill-rule:nonzero' id='path896' /%3e%3c/g%3e%3cg id='path21968' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 1965.31%2c1331.78 c -53.39%2c0 -96.92%2c41.99 -96.92%2c93.48 v 256.67 h 21.32 c 3.24%2c-1.65 5.83%2c-4.44 7.12%2c-7.84 5.18%2c-14.73 19.15%2c-25.26 35.7%2c-25.26 h 66.8 c 16.55%2c0 30.85%2c10.53 36.03%2c25.26 0.66%2c1.73 1.66%2c3.27 2.87%2c4.61 8%2c-1.81 15.96%2c-4.32 24.01%2c-7.46 v -245.59 c 0%2c-52.28 -43.54%2c-93.87 -96.93%2c-93.87 z m -0.82%2c18.62 c 43.95%2c0 79.27%2c34.46 79.27%2c76.45 0%2c41.98 -35.73%2c76.44 -79.27%2c76.44 -43.94%2c0 -79.26%2c-34.06 -79.26%2c-76.44 0%2c-42.39 35.32%2c-76.45 79.26%2c-76.45 z' style='fill:%23c8ab37%3bfill-rule:nonzero' id='path899' /%3e%3c/g%3e%3cg id='g23709' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cpath id='path23711' d='m 0%2c1013.95 v 54.43 c 0%2c30.61 17.575%2c57.26 40.819%2c71.43 v -125.86 z' style='fill:url(%23_Radial2)%3bfill-rule:nonzero%3bstroke:%23d4aa00%3bstroke-width:1.99px' /%3e%3cpath id='path23713' d='m 1370.84%2c1139.53 c 23.24%2c-14.18 40.81%2c-40.82 40.81%2c-71.15 v -54.43 h -40.81 z' style='fill:url(%23_Radial3)%3bfill-rule:nonzero%3bstroke:%23d4aa00%3bstroke-width:1.99px' /%3e%3c/g%3e%3cg id='rect23715' transform='rotate(-90)'%3e%3crect x='-611.28497' y='435.08801' width='9.9969997' height='51.667' style='fill:url(%23_Radial4)%3bstroke:%23d4aa00%3bstroke-width:0.75px' id='rect905' /%3e%3c/g%3e%3cg id='path23751' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 655.584%2c1330.6 c -52.57%2c0 -90.771%2c40.79 -94.878%2c91.49 v 259.84 h 18.724 c 3.247%2c-1.65 5.83%2c-4.44 7.126%2c-7.84 5.178%2c-14.73 19.143%2c-25.26 35.693%2c-25.26 h 66.802 c 16.548%2c0 30.851%2c10.53 36.031%2c25.26 1.296%2c3.4 3.818%2c6.18 7.021%2c7.84 h 18.353 v -259.84 c 0%2c-50.3 -42.302%2c-91.49 -94.872%2c-91.49 z m 0.819%2c16.63 c 43.946%2c0 79.265%2c34.46 79.265%2c76.44 0%2c42.39 -35.319%2c76.45 -79.265%2c76.45 -43.945%2c0 -79.265%2c-34.06 -79.265%2c-76.45 0%2c-42.38 35.32%2c-76.44 79.265%2c-76.44 z' style='fill:url(%23linearGradient25256)%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25258)%3bstroke-width:3.21px' id='path908' /%3e%3c/g%3e%3cg id='path23753' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 1106.95%2c1330.6 c -52.57%2c0 -90.77%2c40.79 -94.88%2c91.49 v 259.84 h 18.05 c 3.25%2c-1.66 5.83%2c-4.44 7.13%2c-7.84 5.18%2c-14.73 19.14%2c-25.26 35.69%2c-25.26 h 66.8 c 16.55%2c0 30.85%2c10.53 36.03%2c25.26 1.3%2c3.4 3.82%2c6.18 7.03%2c7.84 h 19.02 v -259.84 c 0%2c-50.3 -42.3%2c-91.49 -94.87%2c-91.49 z m 1.64%2c16.63 c 43.94%2c0 79.27%2c34.46 79.27%2c76.44 0%2c42.39 -35.33%2c76.45 -79.27%2c76.45 -43.95%2c0 -79.27%2c-34.06 -79.27%2c-76.45 0%2c-42.38 35.32%2c-76.44 79.27%2c-76.44 z' style='fill:url(%23linearGradient25260)%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25262)%3bstroke-width:3.21px' id='path911' /%3e%3c/g%3e%3cg id='path23755' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 1562.42%2c1330.6 c -52.57%2c0 -90.77%2c40.79 -94.88%2c91.49 v 259.84 h 17.7 c 0.04%2c-0.02 0.07%2c-0.05 0.11%2c-0.07 0.71%2c-0.37 1.39%2c-0.79 2.03%2c-1.27 0.15%2c-0.11 0.3%2c-0.24 0.45%2c-0.36 0.5%2c-0.4 0.98%2c-0.84 1.42%2c-1.31 0.17%2c-0.17 0.34%2c-0.35 0.5%2c-0.53 0.4%2c-0.46 0.76%2c-0.95 1.1%2c-1.45 0.14%2c-0.21 0.28%2c-0.4 0.41%2c-0.61 0.43%2c-0.71 0.81%2c-1.45 1.11%2c-2.24 5.18%2c-14.73 19.14%2c-25.26 35.69%2c-25.26 h 66.81 c 14.47%2c0 27.23%2c8.06 33.67%2c19.95 0.92%2c1.69 1.71%2c3.47 2.36%2c5.31 0.3%2c0.8 0.69%2c1.56 1.12%2c2.28 0.1%2c0.16 0.21%2c0.31 0.32%2c0.47 0.35%2c0.55 0.73%2c1.07 1.16%2c1.56 0.15%2c0.18 0.31%2c0.35 0.47%2c0.52 0.45%2c0.48 0.93%2c0.93 1.44%2c1.34 0.13%2c0.1 0.25%2c0.21 0.39%2c0.31 0.67%2c0.51 1.37%2c0.97 2.12%2c1.36 h 19.37 v -259.84 c 0%2c-50.3 -42.3%2c-91.49 -94.87%2c-91.49 z m 0.41%2c16.63 c 43.94%2c0 79.26%2c34.46 79.26%2c76.44 0%2c42.39 -35.32%2c76.45 -79.26%2c76.45 -43.95%2c0 -79.27%2c-34.06 -79.27%2c-76.45 0%2c-42.38 35.32%2c-76.44 79.27%2c-76.44 z' style='fill:url(%23linearGradient25264)%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25266)%3bstroke-width:3.21px' id='path914' /%3e%3c/g%3e%3cg id='path23757' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 1965.31%2c1331.78 c -53.39%2c0 -96.92%2c41.99 -96.92%2c93.48 v 256.67 h 21.32 c 3.24%2c-1.65 5.83%2c-4.44 7.12%2c-7.84 5.18%2c-14.73 19.15%2c-25.26 35.7%2c-25.26 h 66.8 c 16.55%2c0 30.85%2c10.53 36.03%2c25.26 0.66%2c1.73 1.66%2c3.27 2.87%2c4.61 8%2c-1.81 15.96%2c-4.32 24.01%2c-7.46 v -245.59 c 0%2c-52.28 -43.54%2c-93.87 -96.93%2c-93.87 z m -0.82%2c18.62 c 43.95%2c0 79.27%2c34.46 79.27%2c76.45 0%2c41.98 -35.73%2c76.44 -79.27%2c76.44 -43.94%2c0 -79.26%2c-34.06 -79.26%2c-76.44 0%2c-42.39 35.32%2c-76.45 79.26%2c-76.45 z' style='fill:url(%23linearGradient25268)%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25270)%3bstroke-width:3.21px' id='path917' /%3e%3c/g%3e%3cg id='path10804' transform='matrix(0%2c-0.264583%2c0.264583%2c0%2c41.7441%2c706.067)'%3e%3cpath d='m 249.687%2c1330.59 c -52.57%2c0 -90.765%2c40.8 -94.872%2c91.5 v 245.13 c 7.697%2c3.94 15.869%2c7.12 24.377%2c9.54 0.548%2c-0.84 1.039%2c-1.72 1.4%2c-2.67 5.179%2c-14.73 19.144%2c-25.26 35.694%2c-25.26 h 66.808 c 16.547%2c0 30.845%2c10.53 36.025%2c25.26 1.296%2c3.4 3.823%2c6.18 7.026%2c7.84 h 18.414 v -259.84 c 0%2c-50.3 -42.302%2c-91.5 -94.872%2c-91.5 z m 1.334%2c11.68 c 15.575%2c0.23 31.037%2c5.08 43.926%2c13.86 19.82%2c12.48 31.197%2c33.62 33.911%2c55.89 0.605%2c3.81 0.919%2c7.7 0.919%2c11.65 0%2c9.7 -1.867%2c18.95 -5.243%2c27.46 -4.781%2c13.12 -13.013%2c24.95 -24.776%2c33.65 -39.388%2c33.75 -107.2%2c15.54 -124.314%2c-33.44 -20.694%2c-47.66 16.964%2c-107.2 68.906%2c-108.89 2.222%2c-0.16 4.446%2c-0.22 6.671%2c-0.18 z' style='fill:url(%23_Linear13)%3bfill-rule:nonzero%3bstroke:url(%23_Linear14)%3bstroke-width:3.21px' id='path920' /%3e%3c/g%3e%3cg id='g21980' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g21982'%3e%3cpath id='path21984' d='m 101.764%2c1066.96 c 0%2c-7.94 5.953%2c-14.46 15.59%2c-14.46 9.355%2c0 15.591%2c6.81 15.591%2c14.46 v 13.32 c 0%2c7.94 -6.236%2c14.46 -15.591%2c14.46 -9.354%2c0 -15.59%2c-6.8 -15.59%2c-14.46 z m 21.543%2c0 c 0%2c-3.68 -2.268%2c-6.52 -6.236%2c-6.52 -3.685%2c0 -5.953%2c3.12 -5.953%2c6.52 v 13.32 c 0%2c3.4 2.268%2c6.52 5.953%2c6.52 3.685%2c0 6.236%2c-3.12 6.236%2c-6.52 z' style='fill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g21986' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g21988'%3e%3cpath id='path21990' d='m 386.929%2c1060.44 c 7.937%2c0 9.638%2c-2.27 9.638%2c-7.09 h 8.22 v 40.54 h -9.637 v -26.93 h -8.504 v -6.52 z' style='fill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g21992' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g21994'%3e%3cpath id='path21996' d='m 705.543%2c1072.91 c 4.819%2c-2.83 8.504%2c-4.82 8.504%2c-8.78 0%2c-3.12 -1.984%2c-4.54 -4.535%2c-4.54 -2.835%2c0 -5.103%2c1.7 -5.103%2c5.95 h -9.354 c 0%2c-7.37 5.102%2c-13.04 14.457%2c-13.04 7.37%2c0 13.89%2c3.69 13.89%2c12.19 0%2c6.81 -6.52%2c11.06 -10.772%2c13.33 -5.669%2c3.68 -7.087%2c5.1 -7.087%2c8.22 h 17.292 v 7.65 h -28.347 c 0.284%2c-13.32 4.819%2c-17.01 11.055%2c-20.98 z' style='fill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g22134' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cpath id='path22136' d='m 998.079%2c1080.28 c 0%2c4.54 2.551%2c7.09 6.241%2c7.09 3.4%2c0 5.38%2c-2.55 5.38%2c-5.39 0%2c-3.4 -1.7%2c-5.66 -5.95%2c-5.66 h -3.69 v -7.38 h 3.69 c 4.25%2c0 5.38%2c-1.98 5.38%2c-5.1 0%2c-3.12 -1.98%2c-4.53 -4.53%2c-4.53 -3.97%2c0 -5.104%2c2.27 -5.104%2c5.95 h -9.354 c 0%2c-6.8 4.252%2c-13.04 14.458%2c-13.04 7.37%2c0 14.17%2c3.69 14.17%2c11.34 0%2c4.53 -2.83%2c7.94 -5.95%2c9.07 3.68%2c1.42 6.52%2c4.53 6.52%2c9.92 0%2c7.65 -6.81%2c12.19 -14.74%2c12.19 -9.923%2c0 -15.592%2c-5.95 -15.592%2c-14.46 z' style='fill-rule:nonzero' /%3e%3cpath id='path22138' d='m 1044.57%2c1093.89 h -8.79 l -14.46%2c-40.54 h 9.92 l 8.79%2c28.63 8.79%2c-28.63 h 10.2 z' style='fill-rule:nonzero' /%3e%3c/g%3e%3cg id='g22140' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g22142'%3e%3cpath id='path22144' d='m 1259.72%2c1072.35 h 20.97 v 7.08 h -4.25 c -1.7%2c9.36 -8.5%2c15.59 -20.12%2c15.59 -13.61%2c0 -21.26%2c-9.92 -21.26%2c-21.26 0%2c-11.05 7.93%2c-21.26 21.26%2c-21.26 10.77%2c0 18.14%2c6.52 18.7%2c14.18 h -9.92 c -0.56%2c-3.12 -3.97%2c-6.24 -8.78%2c-6.24 -7.66%2c0 -11.63%2c6.52 -11.63%2c13.32 0%2c7.09 3.97%2c13.33 12.47%2c13.33 5.68%2c0 9.08%2c-3.41 9.64%2c-7.66 h -7.08 z' style='fill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g22146' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g22148'%3e%3cpath id='path22150' d='m 1307.91%2c1079.72 v -26.37 h 9.35 v 40.54 h -9.92 l -14.74%2c-26.08 v 26.08 h -9.36 v -40.54 h 9.92 z' style='fill-rule:nonzero' /%3e%3cpath id='path22152' d='m 1339.94%2c1053.35 c 13.6%2c0 21.26%2c9.93 21.26%2c20.41 0%2c10.49 -7.66%2c20.41 -21.26%2c20.41 h -15.03 v -40.53 h 15.03 z m -5.39%2c7.94 v 24.38 h 5.1 c 7.66%2c0 11.91%2c-5.95 11.91%2c-12.19 0%2c-6.24 -4.54%2c-12.19 -11.91%2c-12.19 z' style='fill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g23793' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g23795'%3e%3cpath id='path23797' d='m 101.764%2c1066.96 c 0%2c-7.94 5.953%2c-14.46 15.59%2c-14.46 9.355%2c0 15.591%2c6.81 15.591%2c14.46 v 13.32 c 0%2c7.94 -6.236%2c14.46 -15.591%2c14.46 -9.354%2c0 -15.59%2c-6.8 -15.59%2c-14.46 z m 21.543%2c0 c 0%2c-3.68 -2.268%2c-6.52 -6.236%2c-6.52 -3.685%2c0 -5.953%2c3.12 -5.953%2c6.52 v 13.32 c 0%2c3.4 2.268%2c6.52 5.953%2c6.52 3.685%2c0 6.236%2c-3.12 6.236%2c-6.52 z' style='fill:none%3bfill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g23799' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g23801'%3e%3cpath id='path23803' d='m 386.929%2c1060.44 c 7.937%2c0 9.638%2c-2.27 9.638%2c-7.09 h 8.22 v 40.54 h -9.637 v -26.93 h -8.504 v -6.52 z' style='fill:none%3bfill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g23805' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g23807'%3e%3cpath id='path23809' d='m 705.543%2c1072.91 c 4.819%2c-2.83 8.504%2c-4.82 8.504%2c-8.78 0%2c-3.12 -1.984%2c-4.54 -4.535%2c-4.54 -2.835%2c0 -5.103%2c1.7 -5.103%2c5.95 h -9.354 c 0%2c-7.37 5.102%2c-13.04 14.457%2c-13.04 7.37%2c0 13.89%2c3.69 13.89%2c12.19 0%2c6.81 -6.52%2c11.06 -10.772%2c13.33 -5.669%2c3.68 -7.087%2c5.1 -7.087%2c8.22 h 17.292 v 7.65 h -28.347 c 0.284%2c-13.32 4.819%2c-17.01 11.055%2c-20.98 z' style='fill:none%3bfill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g23811' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cpath id='path23813' d='m 998.079%2c1080.28 c 0%2c4.54 2.551%2c7.09 6.241%2c7.09 3.4%2c0 5.38%2c-2.55 5.38%2c-5.39 0%2c-3.4 -1.7%2c-5.66 -5.95%2c-5.66 h -3.69 v -7.38 h 3.69 c 4.25%2c0 5.38%2c-1.98 5.38%2c-5.1 0%2c-3.12 -1.98%2c-4.53 -4.53%2c-4.53 -3.97%2c0 -5.104%2c2.27 -5.104%2c5.95 h -9.354 c 0%2c-6.8 4.252%2c-13.04 14.458%2c-13.04 7.37%2c0 14.17%2c3.69 14.17%2c11.34 0%2c4.53 -2.83%2c7.94 -5.95%2c9.07 3.68%2c1.42 6.52%2c4.53 6.52%2c9.92 0%2c7.65 -6.81%2c12.19 -14.74%2c12.19 -9.923%2c0 -15.592%2c-5.95 -15.592%2c-14.46 z' style='fill:none%3bfill-rule:nonzero' /%3e%3cpath id='path23815' d='m 1044.57%2c1093.89 h -8.79 l -14.46%2c-40.54 h 9.92 l 8.79%2c28.63 8.79%2c-28.63 h 10.2 z' style='fill:none%3bfill-rule:nonzero' /%3e%3c/g%3e%3cg id='g23817' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g23819'%3e%3cpath id='path23821' d='m 1259.72%2c1072.35 h 20.97 v 7.08 h -4.25 c -1.7%2c9.36 -8.5%2c15.59 -20.12%2c15.59 -13.61%2c0 -21.26%2c-9.92 -21.26%2c-21.26 0%2c-11.05 7.93%2c-21.26 21.26%2c-21.26 10.77%2c0 18.14%2c6.52 18.7%2c14.18 h -9.92 c -0.56%2c-3.12 -3.97%2c-6.24 -8.78%2c-6.24 -7.66%2c0 -11.63%2c6.52 -11.63%2c13.32 0%2c7.09 3.97%2c13.33 12.47%2c13.33 5.68%2c0 9.08%2c-3.41 9.64%2c-7.66 h -7.08 z' style='fill:none%3bfill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g23823' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.2635%2c683.764)'%3e%3cg id='g23825'%3e%3cpath id='path23827' d='m 1307.91%2c1079.72 v -26.37 h 9.35 v 40.54 h -9.92 l -14.74%2c-26.08 v 26.08 h -9.36 v -40.54 h 9.92 z' style='fill:none%3bfill-rule:nonzero' /%3e%3cpath id='path23829' d='m 1339.94%2c1053.35 c 13.6%2c0 21.26%2c9.93 21.26%2c20.41 0%2c10.49 -7.66%2c20.41 -21.26%2c20.41 h -15.03 v -40.53 h 15.03 z m -5.39%2c7.94 v 24.38 h 5.1 c 7.66%2c0 11.91%2c-5.95 11.91%2c-12.19 0%2c-6.24 -4.54%2c-12.19 -11.91%2c-12.19 z' style='fill:none%3bfill-rule:nonzero' /%3e%3c/g%3e%3c/g%3e%3cg id='g23945' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.3097%2c683.718)'%3e%3cclipPath id='clipPath12211'%3e%3cpath id='path12209' d='m 101.275%2c1080.28 v 0 c 0%2c7.91 6.416%2c14.97 16.079%2c14.97 9.664%2c0 16.08%2c-6.77 16.08%2c-14.97 v 0 -13.32 0 c 0%2c-7.91 -6.416%2c-14.96 -16.08%2c-14.96 -9.956%2c0 -16.079%2c6.76 -16.079%2c14.96 l 0.489%2c0.51 c 0%2c0 -0.489%2c-0.51 -0.489%2c-0.51 z m 0.978%2c0 v -13.32 0 c 0%2c-7.67 5.782%2c-13.95 15.101%2c-13.95 9.046%2c0 15.102%2c6.55 15.102%2c13.95 l 0.489%2c0.51 c 0%2c0 -0.489%2c-0.51 -0.489%2c-0.51 l 0.002%2c13.38 -0.002%2c-0.05 c -10e-4%2c7.67 -6.057%2c13.94 -15.102%2c13.94 -9.045%2c0 -15.101%2c-6.55 -15.101%2c-13.95 z m 8.376%2c0 v 0 c 0%2c3.68 2.462%2c7.03 6.442%2c7.03 3.973%2c0 6.725%2c-3.36 6.725%2c-7.03 v 0 -13.32 0 c 0%2c-1.98 -0.619%2c-3.73 -1.763%2c-4.99 -1.146%2c-1.26 -2.823%2c-2.04 -4.962%2c-2.04 -3.98%2c0 -6.442%2c3.36 -6.442%2c7.03 l 0.489%2c0.51 c 0%2c0 -0.489%2c-0.51 -0.489%2c-0.51 z m 12.189%2c0 v 0 c 0%2c3.14 -2.35%2c6.02 -5.747%2c6.02 -3.391%2c0 -5.464%2c-2.89 -5.464%2c-6.02 v 0 -13.32 0 c 0%2c-3.13 2.073%2c-6.01 5.464%2c-6.01 1.829%2c0 3.27%2c0.64 4.25%2c1.72 0.983%2c1.08 1.497%2c2.59 1.497%2c4.29 l 0.489%2c0.51 -0.489%2c-0.51 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip15)' id='g967'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.2957%2c-258.836)' id='g965'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWP4fzf0ERMDA4MmABe7Az/lVEqYAAAAAElFTkSuQmCC' height='1.062822' width='0.81941301' id='use963' style='clip-rule:evenodd%3bfill-rule:evenodd' x='4.6010036' y='32.211479' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='g23951' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.3375%2c683.607)'%3e%3cclipPath id='clipPath12219'%3e%3cpath id='path12217' d='m 386.929%2c1059.93 h -0.278 c -0.634%2c0 -0.005%2c1.02 -0.005%2c1.02 l -0.49%2c-0.51 v 6.52 c 0%2c0 0.49%2c0.51 0.49%2c0.51 h 8.014 c 0%2c0 0%2c26.93 0%2c26.93 h 10.617 v -41.05 l -0.49%2c0.51 c 0%2c0 0.625%2c-1.01 -0.021%2c-1.01 h -8.198 c -0.651%2c0 -10e-4%2c1.01 -10e-4%2c1.01 h -0.489 v -0.51 c 0%2c1.8 -0.229%2c3.22 -1.006%2c4.27 -0.571%2c0.77 -1.438%2c1.33 -2.697%2c1.71 -1.347%2c0.41 -3.123%2c0.6 -5.446%2c0.6 z m 17.369%2c33.45 h -8.659 v -26.42 l -0.489%2c0.51 c 0%2c0 0.648%2c-1.02 -0.002%2c-1.02 h -8.013 v -5.5 c 4.857%2c-0.03 7.42%2c-0.96 8.714%2c-2.71 0.817%2c-1.11 1.151%2c-2.56 1.2%2c-4.38 0%2c0 7.249%2c0 7.249%2c0 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip17)' id='g976'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.5865%2c-258.911)' id='g974'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWP4fzf0BwAIOgMqEtez4AAAAABJRU5ErkJggg==' height='0.51051301' width='0.487176' id='use972' style='clip-rule:evenodd%3bfill-rule:evenodd' x='11.86712' y='32.234303' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='g23957' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.4211%2c683.607)'%3e%3cclipPath id='clipPath12227'%3e%3cpath id='path12225' d='m 722.835%2c1094.4 c 0%2c0 0.489%2c-0.03 0.489%2c-0.51 v -7.65 c 0%2c-0.32 -0.222%2c0.02 -0.367%2c0.27 0.143%2c-0.3 0.306%2c-0.78 -0.143%2c-0.78 h -16.766 c 0.092%2c-1.45 0.615%2c-2.51 1.963%2c-3.75 1.072%2c-0.98 2.635%2c-2.08 4.864%2c-3.53 2.16%2c-1.15 4.886%2c-2.81 7.078%2c-5.03 2.253%2c-2.29 3.938%2c-5.18 3.938%2c-8.73 0%2c-8.82 -6.73%2c-12.69 -14.379%2c-12.69 -4.824%2c0 -8.547%2c1.47 -11.068%2c3.89 -2.544%2c2.43 -3.878%2c5.82 -3.878%2c9.65 v 0.51 h 10.333 v -0.51 c 0%2c-1.95 0.498%2c-3.33 1.345%2c-4.21 0.832%2c-0.86 1.988%2c-1.23 3.268%2c-1.23 1.146%2c0 2.169%2c0.3 2.901%2c0.97 0.723%2c0.66 1.145%2c1.67 1.145%2c3.06 0%2c1.82 -0.868%2c3.19 -2.273%2c4.43 -1.504%2c1.33 -3.605%2c2.51 -5.983%2c3.91 l -0.007%2c0.01 c -3.19%2c2.03 -5.931%2c3.99 -7.921%2c7.14 -1.986%2c3.14 -3.23%2c7.47 -3.375%2c14.26 l -0.011%2c0.52 z m -0.49%2c-7.66 v 6.64 h -27.353 c 0.187%2c-6.23 1.341%2c-10.27 3.201%2c-13.21 1.907%2c-3.02 4.549%2c-4.88 7.6%2c-6.82 v 0 c 2.437%2c-1.43 4.585%2c-2.66 6.127%2c-4.02 1.642%2c-1.45 2.617%2c-3.06 2.617%2c-5.2 0%2c-1.74 -0.57%2c-2.99 -1.477%2c-3.82 -0.898%2c-0.82 -2.143%2c-1.23 -3.548%2c-1.23 -1.555%2c0 -2.95%2c0.48 -3.961%2c1.53 -0.92%2c0.96 -1.533%2c2.4 -1.62%2c4.43 h -8.378 c 0.111%2c-3.33 1.321%2c-6.27 3.554%2c-8.41 2.368%2c-2.26 5.875%2c-3.62 10.405%2c-3.62 7.091%2c0 13.4%2c3.5 13.4%2c11.68 0%2c3.26 -1.575%2c5.9 -3.644%2c8 -2.124%2c2.16 -4.773%2c3.76 -6.862%2c4.88 l -0.036%2c0.02 c -5.916%2c3.84 -7.316%2c5.39 -7.316%2c8.65 v 0.5 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip19)' id='g985'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.5865%2c-259.137)' id='g983'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWP4/8DvFQAIJwMYdsKk%2bwAAAABJRU5ErkJggg==' height='0.520962' width='0.76191002' id='use981' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.710613' y='32.218895' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='g23963' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.3884%2c683.718)'%3e%3cclipPath id='clipPath12235'%3e%3cpath id='path12233' d='m 999.985%2c1065.77 h -10.333 v -0.51 c 0%2c-3.54 1.114%2c-6.92 3.546%2c-9.43 2.413%2c-2.49 6.136%2c-4.12 11.402%2c-4.12 7.65%2c0 14.66%2c3.9 14.66%2c11.85 0%2c4.24 -2.36%2c7.53 -5.18%2c9.06 v 0.02 c 3.32%2c1.65 5.75%2c4.81 5.75%2c9.91 0%2c7.93 -7%2c12.7 -15.23%2c12.7 -5.108%2c0 -9.114%2c-1.55 -11.85%2c-4.18 -2.647%2c-2.54 -4.115%2c-6.09 -4.225%2c-10.28 h 0.483 c 0%2c0 -0.648%2c-1.01 0.003%2c-1.01 h 9.066 c 0.65%2c0 0.002%2c1.01 0.002%2c1.01 l 0.489%2c-0.51 c 0%2c2.12 0.578%2c3.78 1.602%2c4.9 1.01%2c1.11 2.45%2c1.68 4.15%2c1.68 3.08%2c0 4.89%2c-2.3 4.89%2c-4.88 0%2c-1.55 -0.37%2c-2.84 -1.24%2c-3.75 -0.88%2c-0.91 -2.26%2c-1.41 -4.22%2c-1.41 h -3.69 c 0%2c0 -0.486%2c-0.03 -0.486%2c-0.51 v -7.36 l 0.486%2c0.5 c 0%2c0 -0.641%2c-1.01 0.01%2c-1.01 h 3.61 c 0.07%2c0 0.12%2c0.01 0.16%2c0.03 l -0.01%2c-0.03 c 1.9%2c-0.02 3.12%2c-0.43 3.85%2c-1.23 0.74%2c-0.8 0.96%2c-1.96 0.96%2c-3.37 0%2c-1.38 -0.42%2c-2.39 -1.14%2c-3.05 -0.73%2c-0.67 -1.76%2c-0.98 -2.9%2c-0.98 -1.45%2c0 -2.48%2c0.31 -3.2%2c0.92 -1.09%2c0.93 -1.415%2c2.5 -1.415%2c4.53 z m 3.765%2c10.04 c -0.01%2c0 -0.03%2c0 -0.04%2c0 h -3.16 v -6.36 h 3.2 c 2.31%2c0 3.75%2c-0.57 4.64%2c-1.54 0.89%2c-0.97 1.23%2c-2.36 1.23%2c-4.07 0%2c-1.73 -0.57%2c-2.99 -1.47%2c-3.81 -0.9%2c-0.83 -2.15%2c-1.23 -3.55%2c-1.23 -1.73%2c0 -2.96%2c0.42 -3.82%2c1.15 -1.192%2c1.01 -1.699%2c2.66 -1.765%2c4.8 h -8.376 c 0.1%2c-3.08 1.121%2c-6.01 3.249%2c-8.2 2.264%2c-2.33 5.77%2c-3.82 10.712%2c-3.82 7.09%2c0 13.68%2c3.47 13.68%2c10.83 0%2c4.29 -2.67%2c7.52 -5.62%2c8.59 l -1.28%2c0.47 1.27%2c0.49 c 3.51%2c1.34 6.2%2c4.31 6.2%2c9.44 0%2c7.38 -6.6%2c11.68 -14.25%2c11.68 -4.817%2c0 -8.605%2c-1.42 -11.185%2c-3.9 -2.455%2c-2.36 -3.803%2c-5.66 -3.911%2c-9.54 h 8.096 c 0.091%2c2.18 0.77%2c3.89 1.859%2c5.09 1.191%2c1.3 2.871%2c2 4.861%2c2 3.71%2c0 5.87%2c-2.8 5.87%2c-5.9 0%2c-1.85 -0.48%2c-3.38 -1.52%2c-4.46 -1.04%2c-1.07 -2.63%2c-1.71 -4.92%2c-1.71 z m -15.225%2c4.98 c -0.004%2c-0.17 -0.006%2c-0.34 -0.006%2c-0.51 v 0.51 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip21)' id='g994'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.2957%2c-259.049)' id='g992'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWP4/8jzFhPDb55AABqQBF8lzPRmAAAAAElFTkSuQmCC' height='1.069786' width='0.79774499' id='use990' style='clip-rule:evenodd%3bfill-rule:evenodd' x='27.207092' y='32.209652' /%3e%3c/g%3e%3c/g%3e%3cclipPath id='clipPath12242'%3e%3cpath id='path12240' d='m 1020.98%2c1053.86 14.46%2c40.54 h 9.47 l 14.57%2c-40.87 -0.46%2c0.33 c 0%2c0 0.62%2c-1.01 -0.02%2c-1.01 h -10.18 c -0.65%2c0 0%2c1.01 0%2c1.01 h -0.67 l 0.2%2c-0.66 -8.32%2c27.11 c 0%2c0 -8.32%2c-27.11 -8.32%2c-27.11 l -0.47%2c0.66 c 0%2c0 0.62%2c-1.01 -0.02%2c-1.01 h -9.9 c -0.65%2c0 0%2c1.01 0%2c1.01 z m 15.14%2c39.52 -14.1%2c-39.52 c 0%2c0 8.87%2c0 8.87%2c0 0%2c0 9.14%2c29.8 9.14%2c29.8 l 9.15%2c-29.8 c 0%2c0 9.14%2c0 9.14%2c0 l -14.09%2c39.52 z m -15.14%2c-39.52 -0.12%2c-0.33 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip23)' id='g1002'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.2957%2c-259.049)' id='g1000'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWP4fzd0MwAH9QLl1Xoz4gAAAABJRU5ErkJggg==' height='0.51051301' width='0.98398298' id='use998' style='clip-rule:evenodd%3bfill-rule:evenodd' x='28.031708' y='32.237873' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='g23969' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.3097%2c683.718)'%3e%3cclipPath id='clipPath12250'%3e%3cpath id='path12248' d='m 1264.7%2c1067.18 h 10.85 l -0.04%2c-0.54 c -0.58%2c-7.87 -8.12%2c-14.64 -19.19%2c-14.64 -13.64%2c0 -21.75%2c10.45 -21.75%2c21.76 0%2c11.61 7.82%2c21.77 21.75%2c21.77 11.74%2c0 18.66%2c-6.23 20.52%2c-15.6 0%2c0.01 0.97%2c0.01 1.93%2c0.01 h 1.92 0.02 c 0.1%2c-0.01 0.47%2c-0.09 0.47%2c-0.51 v -7.08 c 0%2c-0.48 -0.49%2c0.5 -0.49%2c0.5 v -1.01 h -20.97 v 1.01 c 0%2c0 -0.49%2c-0.5 -0.49%2c-0.5 v 7.08 c 0%2c0.48 0.49%2c0.51 0.49%2c0.51 h 6.5 c -0.76%2c3.75 -3.94%2c6.64 -9.06%2c6.64 -3.27%2c0 -5.84%2c-0.95 -7.75%2c-2.54 -2.87%2c-2.38 -4.23%2c-6.18 -4.23%2c-10.28 0%2c-6.53 3.79%2c-12.81 11.14%2c-12.81 4.53%2c0 7.77%2c2.89 8.3%2c5.82 z m 9.78%2c-1.01 h -8.99 c -0.81%2c-3.16 -4.29%2c-6.24 -9.17%2c-6.24 -7.96%2c0 -12.12%2c6.76 -12.12%2c13.83 0%2c4.42 1.5%2c8.5 4.6%2c11.07 2.06%2c1.72 4.83%2c2.76 8.36%2c2.76 5.97%2c0 9.53%2c-3.61 10.13%2c-8.09 l -0.49%2c0.44 c 0%2c0 0.63%2c-1.01 -0.02%2c-1.01 h -6.57 v -6.08 h 19.99 v 6.08 h -3.7 c -0.64%2c0 -0.06%2c1.01 -0.06%2c1.01 h -0.59 l 0.11%2c-0.6 c -1.66%2c9.12 -8.31%2c15.18 -19.64%2c15.18 -13.29%2c0 -20.78%2c-9.68 -20.78%2c-20.76 0%2c-10.79 7.76%2c-20.75 20.78%2c-20.75 10.2%2c0 17.31%2c5.97 18.16%2c13.16 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip25)' id='g1011'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.2957%2c-258.836)' id='g1009'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAGklEQVQImWP8fzf0MQMDw0YWBgaGfAYGho0AOjIE613%2bb3MAAAAASUVORK5CYII=' height='1.069786' width='1.187762' id='use1007' style='clip-rule:evenodd%3bfill-rule:evenodd' x='33.476479' y='32.211792' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='g23975' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.3097%2c683.718)'%3e%3cg id='g23977'%3e%3cclipPath id='clipPath12258'%3e%3cpath id='path12256' d='m 1307.42%2c1053.86 v 23.97 l -13.83%2c-24.73 -0.36%2c0.64 c 0.14%2c-0.27 0.42%2c-0.89 -0.09%2c-0.89 h -9.89 c -0.65%2c0 -0.01%2c1.01 -0.01%2c1.01 h -0.48 v 40.54 h 10.33 v -24.72 c 0%2c0 13.97%2c24.72 13.97%2c24.72 h 10.69 v -41.05 l -0.49%2c0.51 c 0%2c0 0.62%2c-1.01 -0.02%2c-1.01 h -9.33 c -0.65%2c0 0%2c1.01 0%2c1.01 z m -23.69%2c39.52 v -39.52 c 0%2c0 9.15%2c0 9.15%2c0 0%2c0 14.6%2c26.11 14.6%2c26.11 l 0.91%2c1.63 v -27.74 c 0%2c0 8.38%2c0 8.38%2c0 0%2c0 0%2c33.25 0%2c39.52 h -9.15 l -15.51%2c-27.44 v 27.44 z m -0.97%2c-39.52 c 0%2c0 0%2c-0.51 0%2c-0.51 z m 24.66%2c0 v -0.51 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip27)' id='g1020'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.2957%2c-258.836)' id='g1018'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWP4fzd0HxMDA4MbABcAAzg4bp5fAAAAAElFTkSuQmCC' height='1.021026' width='0.89163798' id='use1016' style='clip-rule:evenodd%3bfill-rule:evenodd' x='34.704334' y='32.232262' /%3e%3c/g%3e%3c/g%3e%3cclipPath id='clipPath12265'%3e%3cpath id='path12263' d='m 1324.42%2c1094.68 h 15.52 0.16 c 13.83%2c-0.08 21.59%2c-10.22 21.59%2c-20.92 0%2c-10.73 -7.82%2c-20.91 -21.75%2c-20.91 v 0.28 c -0.02%2c0 -0.03%2c0 -0.04%2c0 h -14.98 c -0.65%2c0 -0.01%2c1.01 -0.01%2c1.01 h -0.49 v -0.5 z m 15.95%2c-40.81 c 13.01%2c0.21 20.34%2c9.77 20.34%2c19.89 0%2c10.24 -7.49%2c19.91 -20.77%2c19.91 v 0 c -0.02%2c0 -0.03%2c0 -0.04%2c0 h -14.5 v -39.53 c 0%2c0 14.54%2c0 14.54%2c0 0%2c0 0.31%2c-0.02 0.43%2c-0.27 z m -6.31%2c7.93 v 24.38 h 5.59 l 0.19%2c-0.01 c 7.85%2c-0.09 12.21%2c-6.25 12.21%2c-12.69 0%2c-6.49 -4.72%2c-12.7 -12.4%2c-12.7 v 0 h -5.03 c -0.63%2c0 -0.07%2c1.02 -0.07%2c1.02 z m 5.59%2c23.36 h -4.61 v -23.36 h 4.61 c 7.07%2c0 11.42%2c5.7 11.42%2c11.68 0%2c5.98 -4.08%2c11.68 -11.42%2c11.68 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip29)' id='g1028'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-79.2957%2c-258.836)' id='g1026'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWP4fzd0EgAH1ALEbGzZ%2bAAAAABJRU5ErkJggg==' height='0.51399601' width='0.94941801' id='use1024' style='clip-rule:evenodd%3bfill-rule:evenodd' x='35.766476' y='32.232689' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='g24301' transform='matrix(0%2c-0.383347%2c0.369714%2c0%2c61.4481%2c684.025)'%3e%3cclipPath id='clipPath12274'%3e%3cpath id='path12272' d='M 41.797%2c1012.94 H -0.979 v 55.44 c 0%2c30.98 17.776%2c57.96 41.302%2c72.31 l 1.474%2c0.9 z m -40.818%2c2.03 H 39.84 c 0%2c0 0%2c123.04 0%2c123.04 C 17.615%2c1123.8 0.979%2c1097.97 0.979%2c1068.38 Z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip31)' id='g1038'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-78.4944%2c-259.211)' id='g1036'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAIAAAABCAYAAAD0In%2bKAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEUlEQVQImWP8fzd0OgMDAxMAEwgCzMND/w0AAAAASUVORK5CYII=' height='0.79032201' width='1.0899121' id='use1034' style='clip-rule:evenodd%3bfill-rule:evenodd' x='1.9749206' y='31.261187' /%3e%3c/g%3e%3c/g%3e%3cclipPath id='clipPath12281'%3e%3cpath id='path12279' d='m 1369.86%2c1012.94 v 128.36 l 1.47%2c-0.9 c 23.53%2c-14.34 41.3%2c-41.32 41.3%2c-72.02 0%2c0 0%2c-55.44 0%2c-55.44 z m 1.95%2c124.79 v -122.76 c 0%2c0 38.86%2c0 38.86%2c0 0%2c0 0%2c53.41 0%2c53.41 0%2c29.32 -16.63%2c55.14 -38.86%2c69.36 z' /%3e%3c/clipPath%3e%3cg clip-path='url(%23_clip33)' id='g1046'%3e%3cg transform='matrix(39.2472%2c0%2c0%2c40.6944%2c-78.4944%2c-259.211)' id='g1044'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAGklEQVQImWP8/8D/DQPD//8sDH/ZShgYGJgATwAGl0b3dTYAAAAASUVORK5CYII=' height='1.57716' width='1.0899121' id='use1042' style='clip-rule:evenodd%3bfill-rule:evenodd' x='36.903332' y='31.260887' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='rect24307' transform='rotate(-90)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:none%3bstroke:url(%23_Linear35)%3bstroke-width:0.75px' id='rect1049' /%3e%3c/g%3e%3cpath id='path24343' d='m 393.981%2c532.872 c 0%2c13.909 10.795%2c24.015 24.209%2c25.102 h 68.75 V 507.77 h -68.75 c -13.309%2c0 -24.209%2c11.193 -24.209%2c25.102 z m 44.855%2c-0.217 c 0%2c11.627 -9.013%2c20.972 -20.227%2c20.972 -11.213%2c0 -20.226%2c-9.345 -20.226%2c-20.972 0%2c-11.628 9.118%2c-20.973 20.226%2c-20.973 11.214%2c0 20.227%2c9.345 20.227%2c20.973 z' style='fill:none%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25272)%3bstroke-width:0.75px' /%3e%3cpath id='path24345' d='m 393.981%2c413.449 c 0%2c13.909 10.795%2c24.015 24.209%2c25.102 h 68.75 v -50.204 h -68.75 c -13.309%2c0 -24.209%2c11.193 -24.209%2c25.102 z m 44.855%2c-0.435 c 0%2c11.627 -9.013%2c20.973 -20.227%2c20.973 -11.213%2c0 -20.226%2c-9.346 -20.226%2c-20.973 0%2c-11.627 9.118%2c-20.972 20.226%2c-20.972 11.214%2c0 20.227%2c9.345 20.227%2c20.972 z' style='fill:none%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25274)%3bstroke-width:0.75px' /%3e%3cpath id='path24347' d='m 393.981%2c292.939 c 0%2c13.909 10.795%2c24.015 24.209%2c25.102 h 68.75 v -50.204 h -68.75 c -13.309%2c0 -24.209%2c11.193 -24.209%2c25.102 z m 44.855%2c-0.108 c 0%2c11.627 -9.013%2c20.972 -20.227%2c20.972 -11.213%2c0 -20.226%2c-9.345 -20.226%2c-20.972 0%2c-11.628 9.118%2c-20.973 20.226%2c-20.973 11.214%2c0 20.227%2c9.345 20.227%2c20.973 z' style='fill:none%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25276)%3bstroke-width:0.75px' /%3e%3cpath id='path24349' d='m 394.296%2c186.338 c 0%2c14.127 11.109%2c25.645 24.733%2c25.645 h 67.911 v -37.598 c 0%2c-4.672 -1.048%2c-9.128 -2.83%2c-13.692 h -64.976 c -13.834%2c0 -24.838%2c11.519 -24.838%2c25.645 z m 45.378%2c0.218 c 0%2c11.627 -9.012%2c20.972 -20.226%2c20.972 -11.214%2c0 -20.227%2c-9.345 -20.227%2c-20.972 0%2c-11.627 9.118%2c-20.973 20.227%2c-20.973 11.109%2c0 20.226%2c9.454 20.226%2c20.973 z' style='fill:none%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25278)%3bstroke-width:0.75px' /%3e%3cpath id='path10768' d='m 393.981%2c532.872 c 0%2c13.909 10.795%2c24.015 24.209%2c25.102 h 68.75 V 507.77 h -68.75 c -13.309%2c0 -24.209%2c11.193 -24.209%2c25.102 z m 44.855%2c-0.217 c 0%2c11.627 -9.013%2c20.972 -20.227%2c20.972 -11.213%2c0 -20.226%2c-9.345 -20.226%2c-20.972 0%2c-11.628 9.118%2c-20.973 20.226%2c-20.973 11.214%2c0 20.227%2c9.345 20.227%2c20.973 z' style='fill:none%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25280)%3bstroke-width:0.75px' /%3e%3cpath id='path10772' d='m 393.981%2c532.872 c 0%2c13.909 10.795%2c24.015 24.209%2c25.102 h 68.75 V 507.77 h -68.75 c -13.309%2c0 -24.209%2c11.193 -24.209%2c25.102 z m 44.855%2c-0.217 c 0%2c11.627 -9.013%2c20.972 -20.227%2c20.972 -11.213%2c0 -20.226%2c-9.345 -20.226%2c-20.972 0%2c-11.628 9.118%2c-20.973 20.226%2c-20.973 11.214%2c0 20.227%2c9.345 20.227%2c20.973 z' style='fill:none%3bfill-rule:nonzero%3bstroke:url(%23linearGradient25282)%3bstroke-width:0.75px' /%3e%3cg id='UnlitLEDs' transform='matrix(1%2c0%2c0%2c-1%2c0%2c824.355)'%3e%3cg id='use8780' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c93.6113%2c57.7841)'%3e%3cg id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1058' /%3e%3c/g%3e%3cg id='g7931'%3e%3crect id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25284)' /%3e%3cg id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-881.178%2c361.12)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1062' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.112083' y='15.211102' /%3e%3c/g%3e%3crect id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25286)' /%3e%3crect id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25288)' /%3e%3cg id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25290)' id='rect1067' /%3e%3c/g%3e%3crect id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial47)' id='rect1071' /%3e%3c/g%3e%3cg id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial48)' id='rect1074' /%3e%3c/g%3e%3cg id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c361.12)' id='g1079'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1077' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3crect id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25292)' /%3e%3cg id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25294)' id='rect1083' /%3e%3c/g%3e%3cg id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c361.12)' id='g1088'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1086' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8782' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c93.6113%2c100.11)'%3e%3cg id='rect79291' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1093' /%3e%3c/g%3e%3cg id='g79311' serif:id='g7931'%3e%3crect id='rect84821' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25296)' /%3e%3cg id='rect84841' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-881.178%2c69.7306)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1097' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.925478' y='15.211102' /%3e%3c/g%3e%3crect id='rect84861' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25298)' /%3e%3crect id='rect84881' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25300)' /%3e%3cg id='rect84901' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25302)' id='rect1102' /%3e%3c/g%3e%3crect id='rect84921' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84941' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial57)' id='rect1106' /%3e%3c/g%3e%3cg id='rect84961' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial58)' id='rect1109' /%3e%3c/g%3e%3cg id='rect84981' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c69.7306)' id='g1114'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1112' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85001' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25304)' /%3e%3cg id='rect85021' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25306)' id='rect1118' /%3e%3c/g%3e%3cg id='rect85041' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c69.7306)' id='g1123'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1121' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8784' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c93.6112%2c142.437)'%3e%3cg id='rect79292' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1128' /%3e%3c/g%3e%3cg id='g79312' serif:id='g7931'%3e%3crect id='rect84822' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25308)' /%3e%3cg id='rect84842' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-881.178%2c-221.659)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1132' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.738871' y='15.211102' /%3e%3c/g%3e%3crect id='rect84862' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25310)' /%3e%3crect id='rect84882' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25312)' /%3e%3cg id='rect84902' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25314)' id='rect1137' /%3e%3c/g%3e%3crect id='rect84922' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84942' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial65)' id='rect1141' /%3e%3c/g%3e%3cg id='rect84962' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial66)' id='rect1144' /%3e%3c/g%3e%3cg id='rect84982' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c-221.659)' id='g1149'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1147' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85002' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25316)' /%3e%3cg id='rect85022' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25318)' id='rect1153' /%3e%3c/g%3e%3cg id='rect85042' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c-221.659)' id='g1158'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1156' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8786' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c93.6112%2c184.763)'%3e%3cg id='rect79293' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1163' /%3e%3c/g%3e%3cg id='g79313' serif:id='g7931'%3e%3crect id='rect84823' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25320)' /%3e%3cg id='rect84843' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-881.178%2c-513.049)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1167' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.552265' y='15.211102' /%3e%3c/g%3e%3crect id='rect84863' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25322)' /%3e%3crect id='rect84883' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25324)' /%3e%3cg id='rect84903' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25326)' id='rect1172' /%3e%3c/g%3e%3crect id='rect84923' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84943' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial73)' id='rect1176' /%3e%3c/g%3e%3cg id='rect84963' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial74)' id='rect1179' /%3e%3c/g%3e%3cg id='rect84983' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c-513.049)' id='g1184'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1182' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85003' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25328)' /%3e%3cg id='rect85023' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25330)' id='rect1188' /%3e%3c/g%3e%3cg id='rect85043' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c-513.049)' id='g1193'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1191' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8788' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c93.6112%2c227.089)'%3e%3cg id='rect79294' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1198' /%3e%3c/g%3e%3cg id='g79314' serif:id='g7931'%3e%3crect id='rect84824' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25332)' /%3e%3cg id='rect84844' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-881.178%2c-804.439)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1202' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.365662' y='15.211102' /%3e%3c/g%3e%3crect id='rect84864' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25334)' /%3e%3crect id='rect84884' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25336)' /%3e%3cg id='rect84904' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25338)' id='rect1207' /%3e%3c/g%3e%3crect id='rect84924' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84944' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial81)' id='rect1211' /%3e%3c/g%3e%3cg id='rect84964' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial82)' id='rect1214' /%3e%3c/g%3e%3cg id='rect84984' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c-804.439)' id='g1219'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1217' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85004' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25340)' /%3e%3cg id='rect85024' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25342)' id='rect1223' /%3e%3c/g%3e%3cg id='rect85044' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c881.178%2c-804.439)' id='g1228'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1226' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='15.164053' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8790' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c134.233%2c57.7841)'%3e%3cg id='rect79295' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1233' /%3e%3c/g%3e%3cg id='g79315' serif:id='g7931'%3e%3crect id='rect84825' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25344)' /%3e%3cg id='rect84845' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1160.83%2c361.12)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1237' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.112083' y='17.910547' /%3e%3c/g%3e%3crect id='rect84865' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25346)' /%3e%3crect id='rect84885' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25348)' /%3e%3cg id='rect84905' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25350)' id='rect1242' /%3e%3c/g%3e%3crect id='rect84925' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84945' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial89)' id='rect1246' /%3e%3c/g%3e%3cg id='rect84965' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial90)' id='rect1249' /%3e%3c/g%3e%3cg id='rect84985' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c361.12)' id='g1254'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1252' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85005' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25352)' /%3e%3cg id='rect85025' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25354)' id='rect1258' /%3e%3c/g%3e%3cg id='rect85045' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c361.12)' id='g1263'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1261' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8792' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c134.233%2c100.11)'%3e%3cg id='rect79296' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1268' /%3e%3c/g%3e%3cg id='g79316' serif:id='g7931'%3e%3crect id='rect84826' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25356)' /%3e%3cg id='rect84846' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1160.83%2c69.7306)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1272' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.925478' y='17.910547' /%3e%3c/g%3e%3crect id='rect84866' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25358)' /%3e%3crect id='rect84886' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25360)' /%3e%3cg id='rect84906' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25362)' id='rect1277' /%3e%3c/g%3e%3crect id='rect84926' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84946' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial97)' id='rect1281' /%3e%3c/g%3e%3cg id='rect84966' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial98)' id='rect1284' /%3e%3c/g%3e%3cg id='rect84986' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c69.7306)' id='g1289'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1287' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85006' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25364)' /%3e%3cg id='rect85026' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25366)' id='rect1293' /%3e%3c/g%3e%3cg id='rect85046' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c69.7306)' id='g1298'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1296' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8794' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c134.233%2c142.437)'%3e%3cg id='rect79297' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1303' /%3e%3c/g%3e%3cg id='g79317' serif:id='g7931'%3e%3crect id='rect84827' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25368)' /%3e%3cg id='rect84847' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1160.83%2c-221.659)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1307' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.738871' y='17.910547' /%3e%3c/g%3e%3crect id='rect84867' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25370)' /%3e%3crect id='rect84887' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25372)' /%3e%3cg id='rect84907' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25374)' id='rect1312' /%3e%3c/g%3e%3crect id='rect84927' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84947' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial105)' id='rect1316' /%3e%3c/g%3e%3cg id='rect84967' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial106)' id='rect1319' /%3e%3c/g%3e%3cg id='rect84987' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c-221.659)' id='g1324'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1322' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85007' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25376)' /%3e%3cg id='rect85027' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25378)' id='rect1328' /%3e%3c/g%3e%3cg id='rect85047' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c-221.659)' id='g1333'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1331' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8796' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c134.233%2c184.763)'%3e%3cg id='rect79298' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1338' /%3e%3c/g%3e%3cg id='g79318' serif:id='g7931'%3e%3crect id='rect84828' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25380)' /%3e%3cg id='rect84848' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1160.83%2c-513.049)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1342' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.552265' y='17.910547' /%3e%3c/g%3e%3crect id='rect84868' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25382)' /%3e%3crect id='rect84888' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25384)' /%3e%3cg id='rect84908' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25386)' id='rect1347' /%3e%3c/g%3e%3crect id='rect84928' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84948' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial113)' id='rect1351' /%3e%3c/g%3e%3cg id='rect84968' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial114)' id='rect1354' /%3e%3c/g%3e%3cg id='rect84988' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c-513.049)' id='g1359'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1357' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85008' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25388)' /%3e%3cg id='rect85028' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25390)' id='rect1363' /%3e%3c/g%3e%3cg id='rect85048' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c-513.049)' id='g1368'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1366' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8798' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c134.233%2c227.089)'%3e%3cg id='rect79299' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1373' /%3e%3c/g%3e%3cg id='g79319' serif:id='g7931'%3e%3crect id='rect84829' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25392)' /%3e%3cg id='rect84849' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1160.83%2c-804.439)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1377' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.365662' y='17.910547' /%3e%3c/g%3e%3crect id='rect84869' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25394)' /%3e%3crect id='rect84889' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25396)' /%3e%3cg id='rect84909' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25398)' id='rect1382' /%3e%3c/g%3e%3crect id='rect84929' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect84949' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial121)' id='rect1386' /%3e%3c/g%3e%3cg id='rect84969' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial122)' id='rect1389' /%3e%3c/g%3e%3cg id='rect84989' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c-804.439)' id='g1394'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1392' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3crect id='rect85009' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25400)' /%3e%3cg id='rect85029' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25402)' id='rect1398' /%3e%3c/g%3e%3cg id='rect85049' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1160.83%2c-804.439)' id='g1403'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1401' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='17.864134' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8800' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c174.855%2c57.7841)'%3e%3cg id='rect792910' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1408' /%3e%3c/g%3e%3cg id='g793110' serif:id='g7931'%3e%3crect id='rect848210' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25404)' /%3e%3cg id='rect848410' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1440.49%2c361.12)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1412' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.112083' y='20.610931' /%3e%3c/g%3e%3crect id='rect848610' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25406)' /%3e%3crect id='rect848810' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25408)' /%3e%3cg id='rect849010' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25410)' id='rect1417' /%3e%3c/g%3e%3crect id='rect849210' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849410' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial129)' id='rect1421' /%3e%3c/g%3e%3cg id='rect849610' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial130)' id='rect1424' /%3e%3c/g%3e%3cg id='rect849810' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c361.12)' id='g1429'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1427' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850010' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25412)' /%3e%3cg id='rect850210' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25414)' id='rect1433' /%3e%3c/g%3e%3cg id='rect850410' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c361.12)' id='g1438'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1436' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8802' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c174.855%2c100.11)'%3e%3cg id='rect792911' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1443' /%3e%3c/g%3e%3cg id='g793111' serif:id='g7931'%3e%3crect id='rect848211' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25416)' /%3e%3cg id='rect848411' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1440.49%2c69.7306)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1447' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.925478' y='20.610931' /%3e%3c/g%3e%3crect id='rect848611' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25418)' /%3e%3crect id='rect848811' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25420)' /%3e%3cg id='rect849011' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25422)' id='rect1452' /%3e%3c/g%3e%3crect id='rect849211' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849411' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial137)' id='rect1456' /%3e%3c/g%3e%3cg id='rect849611' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial138)' id='rect1459' /%3e%3c/g%3e%3cg id='rect849811' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c69.7306)' id='g1464'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1462' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850011' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25424)' /%3e%3cg id='rect850211' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25426)' id='rect1468' /%3e%3c/g%3e%3cg id='rect850411' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c69.7306)' id='g1473'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1471' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8804' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c174.855%2c142.437)'%3e%3cg id='rect792912' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1478' /%3e%3c/g%3e%3cg id='g793112' serif:id='g7931'%3e%3crect id='rect848212' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25428)' /%3e%3cg id='rect848412' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1440.49%2c-221.659)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1482' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.738871' y='20.610931' /%3e%3c/g%3e%3crect id='rect848612' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25430)' /%3e%3crect id='rect848812' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25432)' /%3e%3cg id='rect849012' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25434)' id='rect1487' /%3e%3c/g%3e%3crect id='rect849212' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849412' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial145)' id='rect1491' /%3e%3c/g%3e%3cg id='rect849612' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial146)' id='rect1494' /%3e%3c/g%3e%3cg id='rect849812' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c-221.659)' id='g1499'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1497' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850012' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25436)' /%3e%3cg id='rect850212' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25438)' id='rect1503' /%3e%3c/g%3e%3cg id='rect850412' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c-221.659)' id='g1508'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1506' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8806' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c174.855%2c184.763)'%3e%3cg id='rect792913' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1513' /%3e%3c/g%3e%3cg id='g793113' serif:id='g7931'%3e%3crect id='rect848213' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25440)' /%3e%3cg id='rect848413' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1440.49%2c-513.049)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1517' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.552265' y='20.610931' /%3e%3c/g%3e%3crect id='rect848613' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25442)' /%3e%3crect id='rect848813' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25444)' /%3e%3cg id='rect849013' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25446)' id='rect1522' /%3e%3c/g%3e%3crect id='rect849213' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849413' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial153)' id='rect1526' /%3e%3c/g%3e%3cg id='rect849613' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial154)' id='rect1529' /%3e%3c/g%3e%3cg id='rect849813' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c-513.049)' id='g1534'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1532' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850013' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25448)' /%3e%3cg id='rect850213' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25450)' id='rect1538' /%3e%3c/g%3e%3cg id='rect850413' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c-513.049)' id='g1543'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1541' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8808' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c174.855%2c227.089)'%3e%3cg id='rect792914' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1548' /%3e%3c/g%3e%3cg id='g793114' serif:id='g7931'%3e%3crect id='rect848214' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25452)' /%3e%3cg id='rect848414' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1440.49%2c-804.439)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1552' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.365662' y='20.610931' /%3e%3c/g%3e%3crect id='rect848614' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25454)' /%3e%3crect id='rect848814' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25456)' /%3e%3cg id='rect849014' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25458)' id='rect1557' /%3e%3c/g%3e%3crect id='rect849214' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849414' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial161)' id='rect1561' /%3e%3c/g%3e%3cg id='rect849614' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial162)' id='rect1564' /%3e%3c/g%3e%3cg id='rect849814' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c-804.439)' id='g1569'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1567' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850014' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25460)' /%3e%3cg id='rect850214' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25462)' id='rect1573' /%3e%3c/g%3e%3cg id='rect850414' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1440.49%2c-804.439)' id='g1578'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1576' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='20.564217' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8810' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c215.477%2c57.7841)'%3e%3cg id='rect792915' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1583' /%3e%3c/g%3e%3cg id='g793115' serif:id='g7931'%3e%3crect id='rect848215' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25464)' /%3e%3cg id='rect848415' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1720.15%2c361.12)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1587' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.112083' y='23.311316' /%3e%3c/g%3e%3crect id='rect848615' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25466)' /%3e%3crect id='rect848815' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25468)' /%3e%3cg id='rect849015' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25470)' id='rect1592' /%3e%3c/g%3e%3crect id='rect849215' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849415' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial169)' id='rect1596' /%3e%3c/g%3e%3cg id='rect849615' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial170)' id='rect1599' /%3e%3c/g%3e%3cg id='rect849815' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c361.12)' id='g1604'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1602' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850015' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25472)' /%3e%3cg id='rect850215' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25474)' id='rect1608' /%3e%3c/g%3e%3cg id='rect850415' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c361.12)' id='g1613'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1611' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8812' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c215.477%2c100.11)'%3e%3cg id='rect792916' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1618' /%3e%3c/g%3e%3cg id='g793116' serif:id='g7931'%3e%3crect id='rect848216' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25476)' /%3e%3cg id='rect848416' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1720.15%2c69.7306)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1622' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.925478' y='23.311316' /%3e%3c/g%3e%3crect id='rect848616' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25478)' /%3e%3crect id='rect848816' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25480)' /%3e%3cg id='rect849016' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25482)' id='rect1627' /%3e%3c/g%3e%3crect id='rect849216' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849416' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial177)' id='rect1631' /%3e%3c/g%3e%3cg id='rect849616' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial178)' id='rect1634' /%3e%3c/g%3e%3cg id='rect849816' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c69.7306)' id='g1639'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1637' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850016' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25484)' /%3e%3cg id='rect850216' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25486)' id='rect1643' /%3e%3c/g%3e%3cg id='rect850416' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c69.7306)' id='g1648'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1646' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8814' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c215.477%2c142.437)'%3e%3cg id='rect792917' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1653' /%3e%3c/g%3e%3cg id='g793117' serif:id='g7931'%3e%3crect id='rect848217' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25488)' /%3e%3cg id='rect848417' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1720.15%2c-221.659)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1657' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.738871' y='23.311316' /%3e%3c/g%3e%3crect id='rect848617' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25490)' /%3e%3crect id='rect848817' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25492)' /%3e%3cg id='rect849017' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25494)' id='rect1662' /%3e%3c/g%3e%3crect id='rect849217' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849417' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial185)' id='rect1666' /%3e%3c/g%3e%3cg id='rect849617' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial186)' id='rect1669' /%3e%3c/g%3e%3cg id='rect849817' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c-221.659)' id='g1674'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1672' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850017' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25496)' /%3e%3cg id='rect850217' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25498)' id='rect1678' /%3e%3c/g%3e%3cg id='rect850417' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c-221.659)' id='g1683'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1681' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8816' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c215.477%2c184.763)'%3e%3cg id='rect792918' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1688' /%3e%3c/g%3e%3cg id='g793118' serif:id='g7931'%3e%3crect id='rect848218' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25500)' /%3e%3cg id='rect848418' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1720.15%2c-513.049)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1692' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.552265' y='23.311316' /%3e%3c/g%3e%3crect id='rect848618' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25502)' /%3e%3crect id='rect848818' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25504)' /%3e%3cg id='rect849018' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25506)' id='rect1697' /%3e%3c/g%3e%3crect id='rect849218' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849418' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial193)' id='rect1701' /%3e%3c/g%3e%3cg id='rect849618' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial194)' id='rect1704' /%3e%3c/g%3e%3cg id='rect849818' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c-513.049)' id='g1709'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1707' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850018' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25508)' /%3e%3cg id='rect850218' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25510)' id='rect1713' /%3e%3c/g%3e%3cg id='rect850418' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c-513.049)' id='g1718'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1716' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8818' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c215.477%2c227.089)'%3e%3cg id='rect792919' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1723' /%3e%3c/g%3e%3cg id='g793119' serif:id='g7931'%3e%3crect id='rect848219' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25512)' /%3e%3cg id='rect848419' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1720.15%2c-804.439)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1727' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.365662' y='23.311316' /%3e%3c/g%3e%3crect id='rect848619' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25514)' /%3e%3crect id='rect848819' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25516)' /%3e%3cg id='rect849019' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25518)' id='rect1732' /%3e%3c/g%3e%3crect id='rect849219' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849419' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial201)' id='rect1736' /%3e%3c/g%3e%3cg id='rect849619' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial202)' id='rect1739' /%3e%3c/g%3e%3cg id='rect849819' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c-804.439)' id='g1744'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1742' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850019' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25520)' /%3e%3cg id='rect850219' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25522)' id='rect1748' /%3e%3c/g%3e%3cg id='rect850419' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1720.15%2c-804.439)' id='g1753'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1751' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='23.264301' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8820' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c256.099%2c57.7841)'%3e%3cg id='rect792920' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1758' /%3e%3c/g%3e%3cg id='g793120' serif:id='g7931'%3e%3crect id='rect848220' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25524)' /%3e%3cg id='rect848420' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1999.8%2c361.12)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1762' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.112083' y='26.010761' /%3e%3c/g%3e%3crect id='rect848620' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25526)' /%3e%3crect id='rect848820' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25528)' /%3e%3cg id='rect849020' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25530)' id='rect1767' /%3e%3c/g%3e%3crect id='rect849220' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849420' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial209)' id='rect1771' /%3e%3c/g%3e%3cg id='rect849620' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial210)' id='rect1774' /%3e%3c/g%3e%3cg id='rect849820' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c361.12)' id='g1779'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1777' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850020' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25532)' /%3e%3cg id='rect850220' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25534)' id='rect1783' /%3e%3c/g%3e%3cg id='rect850420' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c361.12)' id='g1788'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1786' style='clip-rule:evenodd%3bfill-rule:evenodd' x='14.072208' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8822' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c256.099%2c100.11)'%3e%3cg id='rect792921' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1793' /%3e%3c/g%3e%3cg id='g793121' serif:id='g7931'%3e%3crect id='rect848221' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25536)' /%3e%3cg id='rect848421' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1999.8%2c69.7305)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1797' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.925478' y='26.010761' /%3e%3c/g%3e%3crect id='rect848621' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25538)' /%3e%3crect id='rect848821' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25540)' /%3e%3cg id='rect849021' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25542)' id='rect1802' /%3e%3c/g%3e%3crect id='rect849221' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849421' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial217)' id='rect1806' /%3e%3c/g%3e%3cg id='rect849621' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial218)' id='rect1809' /%3e%3c/g%3e%3cg id='rect849821' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c69.7305)' id='g1814'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1812' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850021' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25544)' /%3e%3cg id='rect850221' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25546)' id='rect1818' /%3e%3c/g%3e%3cg id='rect850421' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c69.7305)' id='g1823'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1821' style='clip-rule:evenodd%3bfill-rule:evenodd' x='16.885616' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8824' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c256.099%2c142.437)'%3e%3cg id='rect792922' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1828' /%3e%3c/g%3e%3cg id='g793122' serif:id='g7931'%3e%3crect id='rect848222' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25548)' /%3e%3cg id='rect848422' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1999.8%2c-221.659)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1832' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.738871' y='26.010761' /%3e%3c/g%3e%3crect id='rect848622' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25550)' /%3e%3crect id='rect848822' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25552)' /%3e%3cg id='rect849022' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25554)' id='rect1837' /%3e%3c/g%3e%3crect id='rect849222' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849422' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial225)' id='rect1841' /%3e%3c/g%3e%3cg id='rect849622' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial226)' id='rect1844' /%3e%3c/g%3e%3cg id='rect849822' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c-221.659)' id='g1849'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1847' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850022' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25556)' /%3e%3cg id='rect850222' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25558)' id='rect1853' /%3e%3c/g%3e%3cg id='rect850422' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c-221.659)' id='g1858'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1856' style='clip-rule:evenodd%3bfill-rule:evenodd' x='19.699022' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8826' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c256.099%2c184.763)'%3e%3cg id='rect792923' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1863' /%3e%3c/g%3e%3cg id='g793123' serif:id='g7931'%3e%3crect id='rect848223' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25560)' /%3e%3cg id='rect848423' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1999.8%2c-513.049)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1867' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.552265' y='26.010761' /%3e%3c/g%3e%3crect id='rect848623' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25562)' /%3e%3crect id='rect848823' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25564)' /%3e%3cg id='rect849023' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25566)' id='rect1872' /%3e%3c/g%3e%3crect id='rect849223' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849423' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial233)' id='rect1876' /%3e%3c/g%3e%3cg id='rect849623' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial234)' id='rect1879' /%3e%3c/g%3e%3cg id='rect849823' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c-513.049)' id='g1884'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1882' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850023' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25568)' /%3e%3cg id='rect850223' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25570)' id='rect1888' /%3e%3c/g%3e%3cg id='rect850423' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c-513.049)' id='g1893'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1891' style='clip-rule:evenodd%3bfill-rule:evenodd' x='22.511688' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8828' transform='matrix(0.145257%2c0%2c0%2c0.145257%2c256.099%2c227.089)'%3e%3cg id='rect792924' serif:id='rect7929' transform='rotate(-90)'%3e%3crect x='-1992.48' y='610.61401' width='270.97198' height='268.11899' style='fill:none' id='rect1898' /%3e%3c/g%3e%3cg id='g793124' serif:id='g7931'%3e%3crect id='rect848224' serif:id='rect8482' x='671.44202' y='1831.95' width='144.14999' height='50.487' style='fill:url(%23linearGradient25572)' /%3e%3cg id='rect848424' serif:id='rect8484' transform='matrix(0%2c103.577%2c103.577%2c0%2c-1999.8%2c-804.439)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAADUlEQVQImWN4/vx5EgAIhgMYHHm7YgAAAABJRU5ErkJggg==' height='0.94221401' width='0.66338003' id='use1902' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.365662' y='26.010761' /%3e%3c/g%3e%3crect id='rect848624' serif:id='rect8486' x='671.44202' y='1831.95' width='30.625' height='50.487' style='fill:url(%23linearGradient25574)' /%3e%3crect id='rect848824' serif:id='rect8488' x='668.18799' y='1831.95' width='33.880001' height='50.487' style='fill:url(%23linearGradient25576)' /%3e%3cg id='rect849024' serif:id='rect8490' transform='scale(-1)'%3e%3crect x='-821.005' y='-1882.4301' width='34.151001' height='50.487' style='fill:url(%23linearGradient25578)' id='rect1907' /%3e%3c/g%3e%3crect id='rect849224' serif:id='rect8492' x='693.854' y='1823.8' width='101.239' height='67.091003' style='fill:%23cccccc%3bfill-opacity:0.5' /%3e%3cg id='rect849424' serif:id='rect8494' transform='scale(-1)'%3e%3crect x='-817.47998' y='-1875.3' width='22.535999' height='36.624001' style='fill:url(%23_Radial241)' id='rect1911' /%3e%3c/g%3e%3cg id='rect849624' serif:id='rect8496' transform='scale(1%2c-1)'%3e%3crect x='671.44202' y='-1879.72' width='23.027' height='45.117001' style='fill:url(%23_Radial242)' id='rect1914' /%3e%3c/g%3e%3cg id='rect849824' serif:id='rect8498' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c-804.439)' id='g1919'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWM4duxYMtO3b98YAR2dBZs6X3%2b/AAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1917' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3crect id='rect850024' serif:id='rect8500' x='681.98798' y='1831.79' width='12.629' height='50.644001' style='fill:url(%23linearGradient25580)' /%3e%3cg id='rect850224' serif:id='rect8502' transform='scale(-1)'%3e%3crect x='-807.401' y='-1882.4301' width='12.629' height='50.644001' style='fill:url(%23linearGradient25582)' id='rect1923' /%3e%3c/g%3e%3cg id='rect850424' serif:id='rect8504' transform='scale(-1%2c1)'%3e%3cg transform='matrix(0%2c103.577%2c-103.577%2c0%2c1999.8%2c-804.439)' id='g1928'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAEklEQVQImWN4d%2bZMEAMDAwM7ABZPAuBKZqceAAAAAElFTkSuQmCC' height='1.065752' width='0.73978603' id='use1926' style='clip-rule:evenodd%3bfill-rule:evenodd' x='25.325096' y='25.96385' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='rect8158' transform='rotate(-90)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25584)%3bstroke:url(%23linearGradient25586)%3bstroke-width:0.85px' id='rect1934' /%3e%3c/g%3e%3cg id='use8522' transform='rotate(-90)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25588)%3bstroke:url(%23linearGradient25590)%3bstroke-width:0.85px' id='rect1937' /%3e%3c/g%3e%3cg id='use8524' transform='rotate(-90%2c-6.67125%2c-6.67125)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25592)%3bstroke:url(%23linearGradient25594)%3bstroke-width:0.85px' id='rect1940' /%3e%3c/g%3e%3cg id='use8526' transform='rotate(-90%2c-13.34255%2c-13.34255)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25596)%3bstroke:url(%23linearGradient25598)%3bstroke-width:0.85px' id='rect1943' /%3e%3c/g%3e%3cg id='use8528' transform='rotate(-90%2c-20.0138%2c-20.0138)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25600)%3bstroke:url(%23linearGradient25602)%3bstroke-width:0.85px' id='rect1946' /%3e%3c/g%3e%3cg id='use8538' transform='rotate(-90%2c-53.37%2c-53.37)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25604)%3bstroke:url(%23linearGradient25606)%3bstroke-width:0.85px' id='rect1949' /%3e%3c/g%3e%3cg id='use8540' transform='rotate(-90%2c-60.0415%2c-60.0415)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25608)%3bstroke:url(%23linearGradient25610)%3bstroke-width:0.85px' id='rect1952' /%3e%3c/g%3e%3cg id='use8542' transform='rotate(-90%2c-66.7125%2c-66.7125)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25612)%3bstroke:url(%23linearGradient25614)%3bstroke-width:0.85px' id='rect1955' /%3e%3c/g%3e%3cg id='use8544' transform='rotate(-90%2c-73.384%2c-73.384)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25616)%3bstroke:url(%23linearGradient25618)%3bstroke-width:0.85px' id='rect1958' /%3e%3c/g%3e%3cg id='use8546' transform='rotate(-90%2c-80.0555%2c-80.0555)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25620)%3bstroke:url(%23linearGradient25622)%3bstroke-width:0.85px' id='rect1961' /%3e%3c/g%3e%3cg id='use8556' transform='rotate(-90%2c-113.4115%2c-113.4115)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25624)%3bstroke:url(%23linearGradient25626)%3bstroke-width:0.85px' id='rect1964' /%3e%3c/g%3e%3cg id='use8558' transform='rotate(-90%2c-120.083%2c-120.083)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25628)%3bstroke:url(%23linearGradient25630)%3bstroke-width:0.85px' id='rect1967' /%3e%3c/g%3e%3cg id='use8560' transform='rotate(-90%2c-126.754%2c-126.754)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25632)%3bstroke:url(%23linearGradient25634)%3bstroke-width:0.85px' id='rect1970' /%3e%3c/g%3e%3cg id='use8562' transform='rotate(-90%2c-133.4255%2c-133.4255)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25636)%3bstroke:url(%23linearGradient25638)%3bstroke-width:0.85px' id='rect1973' /%3e%3c/g%3e%3cg id='use8564' transform='rotate(-90%2c-140.0965%2c-140.0965)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25640)%3bstroke:url(%23linearGradient25642)%3bstroke-width:0.85px' id='rect1976' /%3e%3c/g%3e%3cg id='use8574' transform='rotate(-90%2c-173.453%2c-173.453)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25644)%3bstroke:url(%23linearGradient25646)%3bstroke-width:0.85px' id='rect1979' /%3e%3c/g%3e%3cg id='use8576' transform='rotate(-90%2c-180.1245%2c-180.1245)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25648)%3bstroke:url(%23linearGradient25650)%3bstroke-width:0.85px' id='rect1982' /%3e%3c/g%3e%3cg id='use8578' transform='rotate(-90%2c-186.7955%2c-186.7955)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25652)%3bstroke:url(%23linearGradient25654)%3bstroke-width:0.85px' id='rect1985' /%3e%3c/g%3e%3cg id='use8580' transform='rotate(-90%2c-193.467%2c-193.467)'%3e%3crect x='-611.54602' y='435.27301' width='9.9969997' height='51.667' style='fill:url(%23linearGradient25656)%3bstroke:url(%23linearGradient25658)%3bstroke-width:0.85px' id='rect1988' /%3e%3c/g%3e%3cpath id='path10810' d='m 393.981%2c640.074 c 0%2c13.91 10.795%2c24.015 24.209%2c25.102 h 68.75 v -50.203 h -68.75 c -13.309%2c0 -24.209%2c11.192 -24.209%2c25.101 z m 44.855%2c-0.217 c 0%2c11.627 -9.013%2c20.972 -20.227%2c20.972 -11.213%2c0 -20.226%2c-9.345 -20.226%2c-20.972 0%2c-11.627 9.118%2c-20.972 20.226%2c-20.972 11.214%2c0 20.227%2c9.345 20.227%2c20.972 z' style='fill:none%3bfill-rule:nonzero%3bstroke:url(%23_Linear283)%3bstroke-width:0.75px' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg transform='matrix(0.306725%2c0%2c0%2c0.306725%2c241.12%2c96.1271)' id='g2002'%3e%3cg id='g8120'%3e%3cg id='g8134'%3e%3cg id='g8136'%3e%3cpath id='path8144' d='m 92.126%2c51.024 c 4.252%2c0 7.37%2c-3.402 7.37%2c-7.37 0%2c-3.969 -3.402%2c-7.371 -7.37%2c-7.371 -4.252%2c0 -7.37%2c3.402 -7.37%2c7.371 0%2c3.968 3.401%2c7.37 7.37%2c7.37' style='fill:url(%23linearGradient25660)%3bfill-rule:nonzero%3bstroke:url(%23_Linear285)%3bstroke-width:0.67px' /%3e%3cpath id='path8152' d='m 37.701%2c36.283 c -4.252%2c0 -7.37%2c3.402 -7.37%2c7.371 0%2c3.968 3.401%2c7.37 7.37%2c7.37 3.968%2c0 7.37%2c-3.402 7.37%2c-7.37 0%2c-3.969 -3.402%2c-7.371 -7.37%2c-7.371' style='fill:url(%23linearGradient25662)%3bfill-rule:nonzero%3bstroke:url(%23_Linear287)%3bstroke-width:0.67px' /%3e%3cpath id='path8160' d='m 37.701%2c21.543 c -12.189%2c0 -22.11%2c9.922 -22.11%2c22.111 0%2c12.189 9.921%2c22.11 22.11%2c22.11 h 55.275 c 12.189%2c0 22.111%2c-9.921 22.111%2c-22.11 0%2c-12.189 -9.922%2c-22.111 -22.111%2c-22.111 H 37.701 M 92.976%2c80.504 H 37.701 C 17.291%2c80.504 0.85%2c64.063 0.85%2c43.654 0.85%2c23.244 17.291%2c6.803 37.701%2c6.803 h 55.275 c 20.41%2c0 36.851%2c16.441 36.851%2c36.851 0%2c20.409 -16.725%2c36.85 -36.851%2c36.85' style='fill:url(%23_Linear288)%3bfill-rule:nonzero%3bstroke:url(%23_Linear289)%3bstroke-width:0.67px' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='path8144-0' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c132.547%2c66.888)'%3e%3cpath d='m 374.007%2c115.204 c -2.458%2c0 -4.26%2c1.966 -4.26%2c4.26 0%2c2.294 1.966%2c4.26 4.26%2c4.26 2.457%2c0 4.26%2c-1.966 4.26%2c-4.26 0%2c-2.294 -1.966%2c-4.26 -4.26%2c-4.26 z m 0%2c0.494 c 2.066%2c0 3.766%2c1.7 3.766%2c3.766 0%2c2.066 -1.7%2c3.766 -3.766%2c3.766 -2.066%2c0 -3.766%2c-1.7 -3.766%2c-3.766 0%2c-2.066 1.7%2c-3.766 3.766%2c-3.766 z' style='fill:url(%23_Linear290)%3bfill-rule:nonzero%3bstroke:url(%23_Linear291)%3bstroke-width:0.39px' id='path2004' /%3e%3c/g%3e%3cg id='ButtonGroup' transform='matrix(0%2c0.436995%2c-0.436995%2c0%2c441.095%2c48.646)'%3e%3cg id='g8124'%3e%3cg id='rect22675' transform='scale(1%2c-1)'%3e%3crect x='244.752' y='-594.97803' width='59.563' height='2.2060001' style='fill:%23b3b3b3%3bfill-rule:nonzero' id='rect2007' /%3e%3c/g%3e%3cg id='rect22681' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='594.97803' y='304.315' width='59.563' height='3.01' style='fill:%23666666%3bfill-rule:nonzero' id='rect2010' /%3e%3c/g%3e%3cg id='rect22683' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='594.97699' y='242.54601' width='59.563' height='2.2060001' style='fill:url(%23linearGradient25664)' id='rect2013' /%3e%3c/g%3e%3cg id='g22713' transform='matrix(-0.352778%2c0%2c0%2c-0.352778%2c494.471%2c1134.63)'%3e%3cg id='rect22685' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1380.1' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25666)' id='rect2016' /%3e%3c/g%3e%3cg id='rect22687' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1499.36' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25668)' id='rect2019' /%3e%3c/g%3e%3c/g%3e%3cg id='g22717' transform='matrix(0.352778%2c0%2c0%2c0.352778%2c54.5172%2c114.411)'%3e%3cg id='rect22719' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1380.1' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25670)' id='rect2023' /%3e%3c/g%3e%3cg id='rect22721' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1499.36' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25672)' id='rect2026' /%3e%3c/g%3e%3c/g%3e%3cg id='rect22677' transform='scale(1%2c-1)'%3e%3crect x='244.752' y='-656.74701' width='59.563' height='2.2060001' style='fill:url(%23linearGradient25674)' id='rect2030' /%3e%3c/g%3e%3crect id='rect22851' x='244.752' y='594.97803' width='59.563' height='59.563' style='fill:url(%23linearGradient25676)' /%3e%3cg id='rect23001' transform='matrix(0%2c-15.0453%2c15.0453%2c0%2c-34.3857%2c714.116)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAiklEQVQYlY2QMQ7CQAwEZ537CLyAdPwgz84HkEIbJP4BOvtMcxdRppjGO7LWFsA8zwL%2bycG2bakuGFA6Q/JOG8OyLMu91np1d5PUzOy1rusDqIfk7peIuEXEZGYRER/gCfiQlJmWmVOHzJxGVkbBUkoAAdA3xZGNkq21XdJXkklqwLsXP3edzvzpBwatWNv7MzmlAAAAAElFTkSuQmCC' height='8.5113544' width='8.5113544' id='use2034' style='clip-rule:evenodd%3bfill-rule:evenodd' x='1.7041622' y='16.308701' /%3e%3c/g%3e%3ccircle id='path23011' cx='274.53299' cy='624.75897' r='16.266001' style='stroke:black%3bstroke-width:0.38px' /%3e%3cg id='circle23167' transform='matrix(0%2c-15.0453%2c15.0453%2c0%2c-34.3857%2c714.116)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5%2bAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAPElEQVQImS3HywnAMBBDwWfQaSuIcRvpv5pASliEyOfiuc2oqilpJaG7L0lats8kH/AoCbZftgEcwNy/f7B/F0jfw4LIAAAAAElFTkSuQmCC' height='3.51142' width='3.512284' id='use2038' style='clip-rule:evenodd%3bfill-rule:evenodd' x='4.1831303' y='18.777317' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='use8162' transform='matrix(0%2c0.436995%2c-0.436995%2c0%2c628.331%2c48.646)'%3e%3cg id='g81241' serif:id='g8124'%3e%3cg id='rect226751' serif:id='rect22675' transform='scale(1%2c-1)'%3e%3crect x='244.752' y='-594.97803' width='59.563' height='2.2060001' style='fill:%23b3b3b3%3bfill-rule:nonzero' id='rect2043' /%3e%3c/g%3e%3cg id='rect226811' serif:id='rect22681' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='594.97803' y='304.315' width='59.563' height='3.01' style='fill:%23666666%3bfill-rule:nonzero' id='rect2046' /%3e%3c/g%3e%3cg id='rect226831' serif:id='rect22683' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='594.97699' y='242.54601' width='59.563' height='2.2060001' style='fill:url(%23linearGradient25678)' id='rect2049' /%3e%3c/g%3e%3cg id='g227131' serif:id='g22713' transform='matrix(-0.352778%2c0%2c0%2c-0.352778%2c494.471%2c1134.63)'%3e%3cg id='rect226851' serif:id='rect22685' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1380.1' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25680)' id='rect2052' /%3e%3c/g%3e%3cg id='rect226871' serif:id='rect22687' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1499.36' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25682)' id='rect2055' /%3e%3c/g%3e%3c/g%3e%3cg id='g227171' serif:id='g22717' transform='matrix(0.352778%2c0%2c0%2c0.352778%2c54.5172%2c114.411)'%3e%3cg id='rect227191' serif:id='rect22719' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1380.1' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25684)' id='rect2059' /%3e%3c/g%3e%3cg id='rect227211' serif:id='rect22721' transform='matrix(0%2c1%2c1%2c0%2c0%2c0)'%3e%3crect x='1499.36' y='713.89502' width='12.507' height='6.2529998' style='fill:url(%23linearGradient25686)' id='rect2062' /%3e%3c/g%3e%3c/g%3e%3cg id='rect226771' serif:id='rect22677' transform='scale(1%2c-1)'%3e%3crect x='244.752' y='-656.74701' width='59.563' height='2.2060001' style='fill:url(%23linearGradient25688)' id='rect2066' /%3e%3c/g%3e%3crect id='rect228511' serif:id='rect22851' x='244.752' y='594.97803' width='59.563' height='59.563' style='fill:url(%23linearGradient25690)' /%3e%3cg id='rect230011' serif:id='rect23001' transform='matrix(0%2c-15.0453%2c15.0453%2c0%2c-34.3857%2c1142.58)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAiklEQVQYlY2QMQ7CQAwEZ537CLyAdPwgz84HkEIbJP4BOvtMcxdRppjGO7LWFsA8zwL%2bycG2bakuGFA6Q/JOG8OyLMu91np1d5PUzOy1rusDqIfk7peIuEXEZGYRER/gCfiQlJmWmVOHzJxGVkbBUkoAAdA3xZGNkq21XdJXkklqwLsXP3edzvzpBwatWNv7MzmlAAAAAElFTkSuQmCC' height='8.5113544' width='8.5113544' id='use2070' style='clip-rule:evenodd%3bfill-rule:evenodd' x='30.182207' y='16.308701' /%3e%3c/g%3e%3ccircle id='path230111' serif:id='path23011' cx='274.53299' cy='624.75897' r='16.266001' style='stroke:black%3bstroke-width:0.38px' /%3e%3cg id='circle231671' serif:id='circle23167' transform='matrix(0%2c-15.0453%2c15.0453%2c0%2c-34.3857%2c1142.58)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5%2bAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAPElEQVQImS3HywnAMBBDwWfQaSuIcRvpv5pASliEyOfiuc2oqilpJaG7L0lats8kH/AoCbZftgEcwNy/f7B/F0jfw4LIAAAAAElFTkSuQmCC' height='3.51142' width='3.512284' id='use2074' style='clip-rule:evenodd%3bfill-rule:evenodd' x='32.660728' y='18.777317' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg id='path9572' transform='matrix(0.115622%2c0%2c0%2c0.115622%2c132.547%2c66.888)'%3e%3cpath d='m 1482.03%2c388.551 c -6.22%2c0 -11.26%2c5.054 -11.26%2c11.272 v 21.349 c 0%2c6.226 5.04%2c11.266 11.26%2c11.266 6.22%2c0 11.27%2c-5.04 11.27%2c-11.266 v -21.349 c 0%2c-6.218 -5.05%2c-11.272 -11.27%2c-11.272 z m -24.73%2c36.369 c 0%2c11.58 8.54%2c20.577 19.26%2c22.987 v 5.819 h -12.36 v 9.047 h 36.11 v -9.047 h -12.39 v -5.819 c 10.73%2c-2.406 19.3%2c-11.405 19.3%2c-22.987 h -8.16 c 0%2c8.882 -7.65%2c15.508 -16.81%2c15.508 -9.17%2c0 -16.8%2c-6.628 -16.8%2c-15.508 z' style='fill:%234d4d4d' id='path2079' /%3e%3c/g%3e%3cg id='g13238' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c140.743%2c-12.1436)'%3e%3cg id='g13240' transform='matrix(0.383347%2c0%2c0%2c0.369714%2c3.54692%2c200.372)'%3e%3cpath id='polygon13242' d='M 491.244%2c0 H 326.551 v 160.724 z' style='fill:%23ffcc00%3bfill-rule:nonzero' /%3e%3cpath id='path13244' d='M 324.283%2c0 H 73.984 C 34.866%2c5.953 0.567%2c37.701 0.567%2c78.52 v 237.826 z' style='fill:%23ffcc00%3bfill-rule:nonzero' /%3e%3cpath id='polygon13246' d='M 574.583%2c0 H 490.961 V 79.087 Z' style='fill:%23ffcc00%3bfill-rule:nonzero' /%3e%3c/g%3e%3cg id='path13248' transform='matrix(0.264583%2c0%2c0%2c0.264583%2c2.90403%2c200.372)'%3e%3cpath d='m 225.853%2c960.142 c 0%2c0 -121.57%2c116.848 -130.195%2c125.558 h 130.195 z m -43.948%2c56.248 h 12.733 l 21.36%2c56.64 H 201.21 l -2.464%2c-6.73 h -20.944 l -2.464%2c6.73 H 160.96 Z m 6.571%2c16.23 -7.391%2c23.37 h 14.373 z' style='fill:%23ffcc00%3bfill-rule:nonzero' id='path2086' /%3e%3c/g%3e%3cg id='path13250' transform='matrix(0.264583%2c0%2c0%2c0.264583%2c2.90403%2c200.372)'%3e%3cpath d='M 1836.22%2c526.021 V 651.98 l 130.19%2c-125.959 z m 11.91%2c11.881 h 24.23 c 16.02%2c0 19.31%2c9.505 19.31%2c15.446 0%2c7.13 -5.76%2c11.485 -10.27%2c12.673 3.69%2c0 10.68%2c4.358 10.68%2c13.072 0%2c5.941 -3.29%2c15.845 -19.31%2c15.845 h -24.64 z m 13.55%2c9.899 v 13.47 h 8.22 c 6.57%2c0 8.21%2c-3.96 8.21%2c-6.732 0%2c-2.377 -1.23%2c-6.738 -8.21%2c-6.738 z m 0%2c22.577 v 14.262 h 8.63 c 6.57%2c0 8.21%2c-3.962 8.21%2c-7.131 0%2c-2.772 -1.64%2c-7.131 -8.21%2c-7.131 z' style='fill:%23ffcc00%3bfill-rule:nonzero' id='path2089' /%3e%3c/g%3e%3cg id='g13252' /%3e%3c/g%3e%3cg id='use14815' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c75.4179)'%3e%3cg id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-95.6492)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2094' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='10.411164' /%3e%3c/g%3e%3c/g%3e%3cg id='use14817' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c93.244)'%3e%3cg id='rect106591' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2098' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use14819' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c111.07)'%3e%3cg id='rect106592' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-177.234)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2102' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='15.832946' /%3e%3c/g%3e%3c/g%3e%3cg id='use14821' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c128.896)'%3e%3cg id='rect106593' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-218.026)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2106' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='18.544315' /%3e%3c/g%3e%3c/g%3e%3cg id='use14823' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c146.722)'%3e%3cg id='rect106594' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-258.819)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2110' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='21.255688' /%3e%3c/g%3e%3c/g%3e%3cg id='use14827' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c160.535%2c93.244)'%3e%3cg id='rect106595' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-72.0963%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2114' style='clip-rule:evenodd%3bfill-rule:evenodd' x='12.295686' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use14839' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c179.058%2c111.07)'%3e%3cg id='rect106596' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-114.484%2c-177.234)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2118' style='clip-rule:evenodd%3bfill-rule:evenodd' x='15.11231' y='15.832946' /%3e%3c/g%3e%3c/g%3e%3cg id='use14847' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c197.582%2c93.244)'%3e%3cg id='rect106597' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-156.871%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2122' style='clip-rule:evenodd%3bfill-rule:evenodd' x='17.929928' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use14855' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c75.4179)'%3e%3cg id='rect106598' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-95.6492)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2126' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='10.411164' /%3e%3c/g%3e%3c/g%3e%3cg id='use14857' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c93.244)'%3e%3cg id='rect106599' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2130' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use14859' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c111.07)'%3e%3cg id='rect1065910' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-177.234)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2134' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='15.832946' /%3e%3c/g%3e%3c/g%3e%3cg id='use14861' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c128.896)'%3e%3cg id='rect1065911' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-218.026)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2138' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='18.544315' /%3e%3c/g%3e%3c/g%3e%3cg id='use14863' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c146.722)'%3e%3cg id='rect1065912' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-258.819)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2142' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='21.255688' /%3e%3c/g%3e%3c/g%3e%3cg id='use148151' serif:id='use14815' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c75.4179)'%3e%3cg id='rect1065913' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-95.6492)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2146' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='10.411164' /%3e%3c/g%3e%3c/g%3e%3cg id='use148171' serif:id='use14817' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c93.244)'%3e%3cg id='rect1065914' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2150' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use148191' serif:id='use14819' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c111.07)'%3e%3cg id='rect1065915' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-177.234)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2154' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='15.832946' /%3e%3c/g%3e%3c/g%3e%3cg id='use148211' serif:id='use14821' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c128.896)'%3e%3cg id='rect1065916' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-218.026)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2158' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='18.544315' /%3e%3c/g%3e%3c/g%3e%3cg id='use148231' serif:id='use14823' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c142.012%2c146.722)'%3e%3cg id='rect1065917' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-29.7087%2c-258.819)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2162' style='clip-rule:evenodd%3bfill-rule:evenodd' x='9.4780693' y='21.255688' /%3e%3c/g%3e%3c/g%3e%3cg id='use148271' serif:id='use14827' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c160.535%2c93.244)'%3e%3cg id='rect1065918' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-72.0963%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2166' style='clip-rule:evenodd%3bfill-rule:evenodd' x='12.295686' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use148391' serif:id='use14839' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c179.058%2c111.07)'%3e%3cg id='rect1065919' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-114.484%2c-177.234)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2170' style='clip-rule:evenodd%3bfill-rule:evenodd' x='15.11231' y='15.832946' /%3e%3c/g%3e%3c/g%3e%3cg id='use148471' serif:id='use14847' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c197.582%2c93.244)'%3e%3cg id='rect1065920' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-156.871%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2174' style='clip-rule:evenodd%3bfill-rule:evenodd' x='17.929928' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use148551' serif:id='use14855' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c75.4179)'%3e%3cg id='rect1065921' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-95.6492)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2178' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='10.411164' /%3e%3c/g%3e%3c/g%3e%3cg id='use148571' serif:id='use14857' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c93.244)'%3e%3cg id='rect1065922' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-136.442)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2182' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='13.121575' /%3e%3c/g%3e%3c/g%3e%3cg id='use148591' serif:id='use14859' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c111.07)'%3e%3cg id='rect1065923' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-177.234)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2186' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='15.832946' /%3e%3c/g%3e%3c/g%3e%3cg id='use148611' serif:id='use14861' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c128.896)'%3e%3cg id='rect1065924' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-218.026)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2190' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='18.544315' /%3e%3c/g%3e%3c/g%3e%3cg id='use148631' serif:id='use14863' transform='matrix(0.436995%2c0%2c0%2c0.436995%2c216.105%2c146.722)'%3e%3cg id='rect1065925' serif:id='rect10659' transform='matrix(15.0453%2c0%2c0%2c15.0453%2c-199.259%2c-258.819)'%3e%3cimage xlink:href='data:image/png%3bbase64%2ciVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAYAAABGbhwYAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAn0lEQVQYlY2RSw7CMAxEn1OnoRKI%2bx8TgVSapDYLnIoFEngzkj3%2bzFiIcBC%2bhIAHHqQUtYE2UMD1g5QApZQJgG3bgR6DTBnEZcmInMh5BmCaKu5P1rUBrse6lGZUz6heInendwN2YB8TIWehlAJc35fZRs5DoCihitYc9w3VWxArvfswZaw2zCqtPYAajRX3OtTLH6otLPrPx%2bMbvz7zAm0BSQhMosjCAAAAAElFTkSuQmCC' height='10.546349' width='9.9246798' id='use2194' style='clip-rule:evenodd%3bfill-rule:evenodd' x='20.747543' y='21.255688' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cg style='clip-rule:evenodd%3bfill-rule:evenodd' transform='matrix(1.09495%2c0%2c0%2c1.11645%2c-33.850523%2c-1.7099932)' id='g2202'%3e%3cpath d='m 15.11%2c25.5 v -10 l 5.11%2c5 5.11%2c-5 v 10' style='fill:none%3bstroke:red%3bstroke-width:2.06px%3bstroke-linecap:round%3bstroke-linejoin:round%3bstroke-miterlimit:1.5%3bstroke-opacity:0.67' id='path2200' /%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e"; +var version$1 = 'v2-0.2.2'; var translationMap = { + 'en': { + 'gui.extension.microbitMore.description': "Play with all functions of micro:bit. (".concat(version$1, ")") + }, 'ja': { - 'gui.extension.microbitMore.description': 'micro:bitのすべての機能で遊ぶ。' + 'gui.extension.microbitMore.description': "micro:bit\u306E\u3059\u3079\u3066\u306E\u6A5F\u80FD\u3067\u904A\u3076\u3002 (".concat(version$1, ")") }, 'ja-Hira': { - 'gui.extension.microbitMore.description': 'マイクロビットのすべてのきのうであそぶ。' + 'gui.extension.microbitMore.description': "\u30DE\u30A4\u30AF\u30ED\u30D3\u30C3\u30C8\u306E\u3059\u3079\u3066\u306E\u304D\u306E\u3046\u3067\u3042\u305D\u3076\u3002 (".concat(version$1, ")") } }; var entry = { @@ -9053,29 +9057,353 @@ var JSONRPC = /*#__PURE__*/function () { } } }, { - key: "_handleRequest", - value: function _handleRequest(json) { - var _this2 = this; - - var method = json.method, - params = json.params, - id = json.id; - var rawResult = this.didReceiveCall(method, params); - - if (id) { - Promise.resolve(rawResult).then(function (result) { - _this2._sendResponse(id, result); - }, function (error) { - _this2._sendResponse(id, null, error); - }); + key: "_handleRequest", + value: function _handleRequest(json) { + var _this2 = this; + + var method = json.method, + params = json.params, + id = json.id; + var rawResult = this.didReceiveCall(method, params); + + if (id) { + Promise.resolve(rawResult).then(function (result) { + _this2._sendResponse(id, result); + }, function (error) { + _this2._sendResponse(id, null, error); + }); + } + } + }]); + + return JSONRPC; +}(); + +var jsonrpc = JSONRPC; + +var BLE = /*#__PURE__*/function (_JSONRPC) { + _inherits(BLE, _JSONRPC); + + var _super = _createSuper(BLE); + + /** + * A BLE peripheral socket object. It handles connecting, over web sockets, to + * BLE peripherals, and reading and writing data to them. + * @param {Runtime} runtime - the Runtime for sending/receiving GUI update events. + * @param {string} extensionId - the id of the extension using this socket. + * @param {object} peripheralOptions - the list of options for peripheral discovery. + * @param {object} connectCallback - a callback for connection. + * @param {object} resetCallback - a callback for resetting extension state. + */ + function BLE(runtime, extensionId, peripheralOptions, connectCallback) { + var _this; + + var resetCallback = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null; + + _classCallCheck(this, BLE); + + _this = _super.call(this); + _this._socket = runtime.getScratchLinkSocket('BLE'); + + _this._socket.setOnOpen(_this.requestPeripheral.bind(_assertThisInitialized(_this))); + + _this._socket.setOnClose(_this.handleDisconnectError.bind(_assertThisInitialized(_this))); + + _this._socket.setOnError(_this._handleRequestError.bind(_assertThisInitialized(_this))); + + _this._socket.setHandleMessage(_this._handleMessage.bind(_assertThisInitialized(_this))); + + _this._sendMessage = _this._socket.sendMessage.bind(_this._socket); + _this._availablePeripherals = {}; + _this._connectCallback = connectCallback; + _this._connected = false; + _this._characteristicDidChangeCallback = null; + _this._resetCallback = resetCallback; + _this._discoverTimeoutID = null; + _this._extensionId = extensionId; + _this._peripheralOptions = peripheralOptions; + _this._runtime = runtime; + + _this._socket.open(); + + return _this; + } + /** + * Request connection to the peripheral. + * If the web socket is not yet open, request when the socket promise resolves. + */ + + + _createClass(BLE, [{ + key: "requestPeripheral", + value: function requestPeripheral() { + var _this2 = this; + + this._availablePeripherals = {}; + + if (this._discoverTimeoutID) { + window.clearTimeout(this._discoverTimeoutID); + } + + this._discoverTimeoutID = window.setTimeout(this._handleDiscoverTimeout.bind(this), 15000); + this.sendRemoteRequest('discover', this._peripheralOptions).catch(function (e) { + _this2._handleRequestError(e); + }); + } + /** + * Try connecting to the input peripheral id, and then call the connect + * callback if connection is successful. + * @param {number} id - the id of the peripheral to connect to + */ + + }, { + key: "connectPeripheral", + value: function connectPeripheral(id) { + var _this3 = this; + + this.sendRemoteRequest('connect', { + peripheralId: id + }).then(function () { + _this3._connected = true; + + _this3._runtime.emit(_this3._runtime.constructor.PERIPHERAL_CONNECTED); + + _this3._connectCallback(); + }).catch(function (e) { + _this3._handleRequestError(e); + }); + } + /** + * Close the websocket. + */ + + }, { + key: "disconnect", + value: function disconnect() { + if (this._connected) { + this._connected = false; + } + + if (this._socket.isOpen()) { + this._socket.close(); + } + + if (this._discoverTimeoutID) { + window.clearTimeout(this._discoverTimeoutID); + } // Sets connection status icon to orange + + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED); + } + /** + * @return {bool} whether the peripheral is connected. + */ + + }, { + key: "isConnected", + value: function isConnected() { + return this._connected; + } + /** + * Start receiving notifications from the specified ble service. + * @param {number} serviceId - the ble service to read. + * @param {number} characteristicId - the ble characteristic to get notifications from. + * @param {object} onCharacteristicChanged - callback for characteristic change notifications. + * @return {Promise} - a promise from the remote startNotifications request. + */ + + }, { + key: "startNotifications", + value: function startNotifications(serviceId, characteristicId) { + var _this4 = this; + + var onCharacteristicChanged = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + var params = { + serviceId: serviceId, + characteristicId: characteristicId + }; + this._characteristicDidChangeCallback = onCharacteristicChanged; + return this.sendRemoteRequest('startNotifications', params).catch(function (e) { + _this4.handleDisconnectError(e); + }); + } + /** + * Read from the specified ble service. + * @param {number} serviceId - the ble service to read. + * @param {number} characteristicId - the ble characteristic to read. + * @param {boolean} optStartNotifications - whether to start receiving characteristic change notifications. + * @param {object} onCharacteristicChanged - callback for characteristic change notifications. + * @return {Promise} - a promise from the remote read request. + */ + + }, { + key: "read", + value: function read(serviceId, characteristicId) { + var _this5 = this; + + var optStartNotifications = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var onCharacteristicChanged = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + var params = { + serviceId: serviceId, + characteristicId: characteristicId + }; + + if (optStartNotifications) { + params.startNotifications = true; + } + + if (onCharacteristicChanged) { + this._characteristicDidChangeCallback = onCharacteristicChanged; + } + + return this.sendRemoteRequest('read', params).catch(function (e) { + _this5.handleDisconnectError(e); + }); + } + /** + * Write data to the specified ble service. + * @param {number} serviceId - the ble service to write. + * @param {number} characteristicId - the ble characteristic to write. + * @param {string} message - the message to send. + * @param {string} encoding - the message encoding type. + * @param {boolean} withResponse - if true, resolve after peripheral's response. + * @return {Promise} - a promise from the remote send request. + */ + + }, { + key: "write", + value: function write(serviceId, characteristicId, message) { + var _this6 = this; + + var encoding = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + var withResponse = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null; + var params = { + serviceId: serviceId, + characteristicId: characteristicId, + message: message + }; + + if (encoding) { + params.encoding = encoding; + } + + if (withResponse !== null) { + params.withResponse = withResponse; + } + + return this.sendRemoteRequest('write', params).catch(function (e) { + _this6.handleDisconnectError(e); + }); + } + /** + * Handle a received call from the socket. + * @param {string} method - a received method label. + * @param {object} params - a received list of parameters. + * @return {object} - optional return value. + */ + + }, { + key: "didReceiveCall", + value: function didReceiveCall(method, params) { + switch (method) { + case 'didDiscoverPeripheral': + this._availablePeripherals[params.peripheralId] = params; + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_LIST_UPDATE, this._availablePeripherals); + + if (this._discoverTimeoutID) { + window.clearTimeout(this._discoverTimeoutID); + } + + break; + + case 'userDidPickPeripheral': + this._availablePeripherals[params.peripheralId] = params; + + this._runtime.emit(this._runtime.constructor.USER_PICKED_PERIPHERAL, this._availablePeripherals); + + if (this._discoverTimeoutID) { + window.clearTimeout(this._discoverTimeoutID); + } + + break; + + case 'userDidNotPickPeripheral': + this._runtime.emit(this._runtime.constructor.PERIPHERAL_SCAN_TIMEOUT); + + if (this._discoverTimeoutID) { + window.clearTimeout(this._discoverTimeoutID); + } + + break; + + case 'characteristicDidChange': + if (this._characteristicDidChangeCallback) { + this._characteristicDidChangeCallback(params.message); + } + + break; + + case 'ping': + return 42; + } + } + /** + * Handle an error resulting from losing connection to a peripheral. + * + * This could be due to: + * - battery depletion + * - going out of bluetooth range + * - being powered down + * + * Disconnect the socket, and if the extension using this socket has a + * reset callback, call it. Finally, emit an error to the runtime. + */ + + }, { + key: "handleDisconnectError", + value: function handleDisconnectError() + /* e */ + { + // log.error(`BLE error: ${JSON.stringify(e)}`); + if (!this._connected) return; + this.disconnect(); + + if (this._resetCallback) { + this._resetCallback(); + } + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_CONNECTION_LOST_ERROR, { + message: "Scratch lost connection to", + extensionId: this._extensionId + }); + } + }, { + key: "_handleRequestError", + value: function _handleRequestError() + /* e */ + { + // log.error(`BLE error: ${JSON.stringify(e)}`); + this._runtime.emit(this._runtime.constructor.PERIPHERAL_REQUEST_ERROR, { + message: "Scratch lost connection to", + extensionId: this._extensionId + }); + } + }, { + key: "_handleDiscoverTimeout", + value: function _handleDiscoverTimeout() { + if (this._discoverTimeoutID) { + window.clearTimeout(this._discoverTimeoutID); } + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_SCAN_TIMEOUT); } }]); - return JSONRPC; -}(); + return BLE; +}(jsonrpc); -var jsonrpc = JSONRPC; +var ble = BLE; var lookup = []; var revLookup = []; @@ -12043,121 +12371,263 @@ var WebBLE = /*#__PURE__*/function () { return WebBLE; }(); -var bleWeb = WebBLE; +var webBle = WebBLE; -var BLE = /*#__PURE__*/function (_JSONRPC) { - _inherits(BLE, _JSONRPC); +/** + * Characteristic ID on serial-port. + */ - var _super = _createSuper(BLE); +var SERIAL_CH_ID = { + '0b500100-607f-4151-9091-7d008d6ffc5c': 0x0100, + '0b500101-607f-4151-9091-7d008d6ffc5c': 0x0101, + '0b500102-607f-4151-9091-7d008d6ffc5c': 0x0102, + '0b500110-607f-4151-9091-7d008d6ffc5c': 0x0110, + '0b500111-607f-4151-9091-7d008d6ffc5c': 0x0111, + '0b500120-607f-4151-9091-7d008d6ffc5c': 0x0120, + '0b500121-607f-4151-9091-7d008d6ffc5c': 0x0121, + '0b500122-607f-4151-9091-7d008d6ffc5c': 0x0122, + '0b500130-607f-4151-9091-7d008d6ffc5c': 0x0130 +}; +/** + * Start Frame Delimiter + */ + +var SFD = 0xFF; +/** + * Request type in data frame. + */ + +var ChRequest = { + READ: 0x01, + WRITE: 0x10, + WRITE_RESPONSE: 0x11, + NOTIFY_STOP: 0x20, + NOTIFY_START: 0x21 +}; +/** + * Response type in data frame. + */ + +var ChResponse = { + READ: 0x01, + WRITE_RESPONSE: 0x11, + NOTIFY: 0x21 +}; +/** + * Class to communicate with device via USB serial-port using Web Serial API. + */ +var WebSerial = /*#__PURE__*/function () { /** - * A BLE peripheral socket object. It handles connecting, over web sockets, to + * A BLE peripheral object. It handles connecting, over Web Bluetooth API, to * BLE peripherals, and reading and writing data to them. * @param {Runtime} runtime - the Runtime for sending/receiving GUI update events. - * @param {string} extensionId - the id of the extension using this socket. + * @param {string} extensionId - the id of the extension using this object. * @param {object} peripheralOptions - the list of options for peripheral discovery. - * @param {object} connectCallback - a callback for connection. - * @param {object} resetCallback - a callback for resetting extension state. + * @param {function} connectCallback - a callback for connection. + * @param {function} resetCallback - a callback for resetting extension state. */ - function BLE(runtime, extensionId, peripheralOptions, connectCallback) { - var _this; - + function WebSerial(runtime, extensionId, peripheralOptions, connectCallback) { var resetCallback = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null; - _classCallCheck(this, BLE); - - _this = _super.call(this); - _this._socket = runtime.getScratchLinkSocket('BLE'); - - _this._socket.setOnOpen(_this.requestPeripheral.bind(_assertThisInitialized(_this))); - - _this._socket.setOnClose(_this.handleDisconnectError.bind(_assertThisInitialized(_this))); - - _this._socket.setOnError(_this._handleRequestError.bind(_assertThisInitialized(_this))); - - _this._socket.setHandleMessage(_this._handleMessage.bind(_assertThisInitialized(_this))); + _classCallCheck(this, WebSerial); - _this._sendMessage = _this._socket.sendMessage.bind(_this._socket); - _this._availablePeripherals = {}; - _this._connectCallback = connectCallback; - _this._connected = false; - _this._characteristicDidChangeCallback = null; - _this._resetCallback = resetCallback; - _this._discoverTimeoutID = null; - _this._extensionId = extensionId; - _this._peripheralOptions = peripheralOptions; - _this._runtime = runtime; + /** + * Remote device which have been connected. + * @type {SerialPort} + */ + this._port = null; + this._connectCallback = connectCallback; + this.state = 'init'; + this._resetCallback = resetCallback; + this._extensionId = extensionId; + this._peripheralOptions = peripheralOptions; + this._serialOptions = { + baudRate: 115200 + }; + this._runtime = runtime; + this.receivingInterval = 10; + /** + * Store of received type and value for each characteristics. + * @type {Object.>} - { ch: { type: value }}. + */ - _this._socket.open(); + this.chValues = {}; + /** + * Notification callbacks. + * @type {Object.} - { ch: callback } + */ - return _this; + this.notifyListeners = {}; + this.requestPeripheral(); } /** * Request connection to the peripheral. - * If the web socket is not yet open, request when the socket promise resolves. + * Request user to choose a device, and then connect it automatically. + * @return {Promise} - a Promise which will resolved when a port was selected. */ - _createClass(BLE, [{ + _createClass(WebSerial, [{ key: "requestPeripheral", value: function requestPeripheral() { - var _this2 = this; + var _this = this; - this._availablePeripherals = {}; + var promise = Promise.resolve(); - if (this._discoverTimeoutID) { - window.clearTimeout(this._discoverTimeoutID); + if (this.isConnected()) { + promise = promise.then(function () { + return _this.disconnect(); + }); } - this._discoverTimeoutID = window.setTimeout(this._handleDiscoverTimeout.bind(this), 15000); - this.sendRemoteRequest('discover', this._peripheralOptions).catch(function (e) { - _this2._handleRequestError(e); + return promise.then(function () { + navigator.serial.requestPort(_this._peripheralOptions).then(function (port) { + _this._port = port; + + _this._runtime.connectPeripheral(_this._extensionId, null); + }).catch(function (e) { + _this._handleRequestError(e); + }); }); } /** - * Try connecting to the input peripheral id, and then call the connect - * callback if connection is successful. - * @param {number} id - the id of the peripheral to connect to + * Try connecting to the serial port of the device, and then call the connect + * callback when connection is successful. */ }, { key: "connectPeripheral", - value: function connectPeripheral(id) { - var _this3 = this; + value: function connectPeripheral() + /* id */ + { + var _this2 = this; - this.sendRemoteRequest('connect', { - peripheralId: id - }).then(function () { - _this3._connected = true; + if (!this._port) { + throw new Error('device is not chosen'); + } - _this3._runtime.emit(_this3._runtime.constructor.PERIPHERAL_CONNECTED); + var ChValueTransformer = /*#__PURE__*/function () { + function ChValueTransformer() { + _classCallCheck(this, ChValueTransformer); - _this3._connectCallback(); - }).catch(function (e) { - _this3._handleRequestError(e); + // A container for holding stream data until a new frame. + this.chunks = []; + } + + _createClass(ChValueTransformer, [{ + key: "transform", + value: function transform(chunk, controller) { + // Append new chunks to existing chunks. + this.chunks = this.chunks.concat(Array.from(chunk)); // Split chunks into {ch: {type: value}. + // Skip until SFD occurred + + var frameStart = this.chunks.findIndex(function (element) { + return element === SFD; + }); + + if (frameStart === -1) { + this.chunks = []; + return; + } + + this.chunks = this.chunks.slice(frameStart); // Read header + + if (this.chunks.length < 5) { + return; + } + + var type = this.chunks[1]; + + if (type > ChResponse.NOTIFY) { + this.chunks = []; // remove all until SFD + valid type + + return; + } + + var ch = this.chunks[2] << 8 | this.chunks[3]; + var valueLength = this.chunks[4]; + + if (this.chunks.length < 5 + valueLength) { + return; + } + + this.chunks.splice(0, 5); // remove before value + + var value = this.chunks.splice(0, valueLength); + controller.enqueue({ + ch: ch, + data: { + type: type, + value: value + } + }); + } + }, { + key: "flush", + value: function flush(controller) { + // When the stream is closed, delete any remaining chunks. + controller.terminate(); + } + }]); + + return ChValueTransformer; + }(); + + this._port.open(this._serialOptions).then(function () { + log.log("SerialPort: open"); + _this2.state = 'open'; + _this2.writer = _this2._port.writable.getWriter(); // eslint-disable-next-line no-undef + + var chValueTransformStream = new TransformStream(new ChValueTransformer()); + _this2.readableStreamClosed = _this2._port.readable.pipeTo(chValueTransformStream.writable); + _this2.reader = chValueTransformStream.readable.getReader(); + + _this2._port.addEventListener('disconnect', function (event) { + _this2.onDisconnected(event); + }); + + _this2._runtime.emit(_this2._runtime.constructor.PERIPHERAL_CONNECTED); + + _this2._connectCallback(); + + _this2.startReceiving(); }); } /** - * Close the websocket. + * Disconnect from the device and clean up. + * Then emit the connection state by the runtime. + * @return {Promise} - a Promise which will resolve when the port was disconnected. */ }, { key: "disconnect", value: function disconnect() { - if (this._connected) { - this._connected = false; - } + var _this3 = this; - if (this._socket.isOpen()) { - this._socket.close(); - } + if (this.state !== 'open') return Promise.resolve(); + this.state = 'closing'; + this.stopReceiving(); + return this.reader.cancel().then(function () { + return _this3.readableStreamClosed.catch(function () { + /* Ignore the error */ + }); + }).then(function () { + _this3.writer.close(); - if (this._discoverTimeoutID) { - window.clearTimeout(this._discoverTimeoutID); - } // Sets connection status icon to orange + _this3.writer.releaseLock(); + return _this3.write.closed; + }).then(function () { + _this3._port.close(); - this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED); + _this3.state = 'close'; + _this3.reader = null; + _this3.writer = null; + _this3._port = null; + + _this3._runtime.emit(_this3._runtime.constructor.PERIPHERAL_DISCONNECTED); + }); } /** * @return {bool} whether the peripheral is connected. @@ -12166,29 +12636,154 @@ var BLE = /*#__PURE__*/function (_JSONRPC) { }, { key: "isConnected", value: function isConnected() { - return this._connected; + return this.state === 'open'; } /** - * Start receiving notifications from the specified ble service. - * @param {number} serviceId - the ble service to read. + * Receive data and process it. + * @returns {Promise} - a Promise which will resolve when read next data + */ + + }, { + key: "receiveData", + value: function receiveData() { + var _this4 = this; + + return this.reader.read().then(function (result) { + var value = result.value, + done = result.done; + + if (done) { + _this4.reader.releaseLock(); + } + + if (value) { + var data = value.data; + var ch = value.ch; + + if (!_this4.chValues[ch]) { + _this4.chValues[ch] = {}; + } + + _this4.chValues[ch][data.type] = data.value; + + if (data.type === ChResponse.NOTIFY) { + if (ch in _this4.notifyListeners) { + _this4.notifyListeners[ch](base64Util.arrayBufferToBase64(data.value)); + } + } // log.debug({ch: ch, type: data.type, value: data.value}); + + } + }); + } + /** + * Start data receiving process. + */ + + }, { + key: "startReceiving", + value: function startReceiving() { + var _this5 = this; + + this.dataReceiving = window.setTimeout(function () { + if (_this5.state !== 'open') return; + + _this5.receiveData().catch(function (err) { + log.error(err); + }).finally(function () { + // start again + _this5.startReceiving(); + }); + }, this.receivingInterval); + } + /** + * Stop data receiving process. + */ + + }, { + key: "stopReceiving", + value: function stopReceiving() { + clearTimeout(this.dataReceiving); + this.dataReceiving = null; + } + /** + * Send data to the device. + * @param {Uint8Array} data - data to send + * @returns {Promise} - a Promise which will resolve write process was done + */ + + }, { + key: "sendData", + value: function sendData(data) { + var _this6 = this; + + return this.writer.ready.then(function () { + return _this6.writer.write(data); + }); + } + /** + * Start receiving notifications from the device. + * @param {number} _serviceId - the ble service to read. (ignore it for serial-port) * @param {number} characteristicId - the ble characteristic to get notifications from. - * @param {object} onCharacteristicChanged - callback for characteristic change notifications. - * @return {Promise} - a promise from the remote startNotifications request. + * @param {function?} onCharacteristicChanged - callback for characteristic change notifications + * like function(base64message). + * @return {Promise} - a Promise which will resolve when requested start notification. */ - }, { - key: "startNotifications", - value: function startNotifications(serviceId, characteristicId) { - var _this4 = this; + }, { + key: "startNotifications", + value: function startNotifications(_serviceId, characteristicId) { + var onCharacteristicChanged = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + // Connected device will start necessary notifications automatically on serial-port. + this.notifyListeners[SERIAL_CH_ID[characteristicId]] = onCharacteristicChanged; + return Promise.resolve(); + } + }, { + key: "readCh", + value: function readCh(ch) { + var _this7 = this; + + if (this.state !== 'open') { + return Promise.reject('port is not opened'); + } + + return new Promise(function (resolve) { + var dataFrame = new Uint8Array(4); + dataFrame[0] = SFD; + dataFrame[1] = ChRequest.READ; + dataFrame[2] = ch >> 8; + dataFrame[3] = ch & 0xff; + + if (_this7.chValues[ch]) { + _this7.chValues[ch][ChResponse.READ] = null; + } + + var chRetrieveCounter = 20; + + _this7.sendData(dataFrame).then(function () { + var checkInterval = 10; + + var check = function check() { + var received = _this7.chValues[ch]; + + if (received && received[ChResponse.READ]) { + return resolve({ + message: base64Util.arrayBufferToBase64(received[ChResponse.READ]) + }); + } + + chRetrieveCounter--; + + if (chRetrieveCounter === 0) { + return resolve(null); + } + + setTimeout(function () { + check(); + }, checkInterval); + }; - var onCharacteristicChanged = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; - var params = { - serviceId: serviceId, - characteristicId: characteristicId - }; - this._characteristicDidChangeCallback = onCharacteristicChanged; - return this.sendRemoteRequest('startNotifications', params).catch(function (e) { - _this4.handleDisconnectError(e); + check(); + }); }); } /** @@ -12196,32 +12791,123 @@ var BLE = /*#__PURE__*/function (_JSONRPC) { * @param {number} serviceId - the ble service to read. * @param {number} characteristicId - the ble characteristic to read. * @param {boolean} optStartNotifications - whether to start receiving characteristic change notifications. - * @param {object} onCharacteristicChanged - callback for characteristic change notifications. - * @return {Promise} - a promise from the remote read request. + * @param {function} onCharacteristicChanged - callback for characteristic change notifications + * like function(base64message). + * @return {Promise} - a Promise from the remote read request which resolve {message: base64string}. */ }, { key: "read", value: function read(serviceId, characteristicId) { - var _this5 = this; + var _this8 = this; var optStartNotifications = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var onCharacteristicChanged = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; - var params = { - serviceId: serviceId, - characteristicId: characteristicId - }; + var ch = SERIAL_CH_ID[characteristicId]; + var constantUpdatingCh = [0x0101, + /* State */ + 0x0102 + /* Motion */ + ]; + + if (constantUpdatingCh.includes(ch)) { + // Return already received values because rapid repeating requests will make the port freeze. + if (!this.chValues[ch]) { + return Promise.resolve(null); + } - if (optStartNotifications) { - params.startNotifications = true; + return Promise.resolve({ + message: base64Util.arrayBufferToBase64(this.chValues[ch][ChResponse.READ]) + }); } - if (onCharacteristicChanged) { - this._characteristicDidChangeCallback = onCharacteristicChanged; + var readRetry = function readRetry(count) { + return new Promise(function (resolve, reject) { + if (count < 0) { + reject("no response"); + log.error("ch: ".concat(ch, " dose not response")); + return; + } + + _this8.readCh(ch).then(function (result) { + if (result) { + if (optStartNotifications) { + _this8.startNotifications(serviceId, characteristicId, onCharacteristicChanged).then(function () { + return resolve(result); + }); + + return; + } + + resolve(result); + return; + } + + resolve(readRetry(--count)); + return; + }); + }); + }; + + return readRetry(3); + } + /** + * Write value on the characteristic. + * @param {number} ch - characteristic to write + * @param {Uint8Array} value - value to write + * @param {boolean} withResponse - whether request response or not + * @returns {Promise} - a Promise which will resolve true when success to write + */ + + }, { + key: "writeCh", + value: function writeCh(ch, value, withResponse) { + var _this9 = this; + + if (this.state !== 'open') { + return Promise.reject('port is not opened'); } - return this.sendRemoteRequest('read', params).catch(function (e) { - _this5.handleDisconnectError(e); + return new Promise(function (resolve) { + var header = new Uint8Array(5); + header[0] = SFD; + header[1] = withResponse ? ChRequest.WRITE_RESPONSE : ChRequest.WRITE; + header[2] = ch >> 8; + header[3] = ch & 0xff; + header[4] = value.length; + var dataFrame = new Uint8Array([].concat(_toConsumableArray(header), _toConsumableArray(value))); + + if (withResponse) { + var chRetrieveCounter = 10; + + _this9.sendData(dataFrame).then(function () { + var checkInterval = 10; + + var check = function check() { + var received = _this9.chValues[ch]; + + if (received && received[ChResponse.WRITE_RESPONSE]) { + return resolve(received[ChResponse.WRITE_RESPONSE][0] === 1); + } + + chRetrieveCounter--; + + if (chRetrieveCounter === 0) { + return resolve(false); + } + + setTimeout(function () { + check(); + }, checkInterval); + }; + + check(); + }); + } else { + _this9.sendData(dataFrame).then(function () { + return resolve(true); + }); + } }); } /** @@ -12230,87 +12916,48 @@ var BLE = /*#__PURE__*/function (_JSONRPC) { * @param {number} characteristicId - the ble characteristic to write. * @param {string} message - the message to send. * @param {string} encoding - the message encoding type. - * @param {boolean} withResponse - if true, resolve after peripheral's response. - * @return {Promise} - a promise from the remote send request. + * @param {boolean} withResponse - if true, resolve after peripheral's response. Always true for serial port. + * @return {Promise} - a Promise which will resolve true when success to write or reject with 'no response' */ + // eslint-disable-next-line no-unused-vars }, { key: "write", value: function write(serviceId, characteristicId, message) { - var _this6 = this; + var _this10 = this; var encoding = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; var withResponse = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null; - var params = { - serviceId: serviceId, - characteristicId: characteristicId, - message: message - }; + withResponse = true; // "response" is always required for noise tolerance on serial-port. - if (encoding) { - params.encoding = encoding; - } + var value = encoding === 'base64' ? base64Util.base64ToUint8Array(message) : message; + var ch = SERIAL_CH_ID[characteristicId]; - if (withResponse !== null) { - params.withResponse = withResponse; + if (this.chValues[ch]) { + this.chValues[ch][ChResponse.WRITE_RESPONSE] = null; } - return this.sendRemoteRequest('write', params).catch(function (e) { - _this6.handleDisconnectError(e); - }); - } - /** - * Handle a received call from the socket. - * @param {string} method - a received method label. - * @param {object} params - a received list of parameters. - * @return {object} - optional return value. - */ - - }, { - key: "didReceiveCall", - value: function didReceiveCall(method, params) { - switch (method) { - case 'didDiscoverPeripheral': - this._availablePeripherals[params.peripheralId] = params; - - this._runtime.emit(this._runtime.constructor.PERIPHERAL_LIST_UPDATE, this._availablePeripherals); - - if (this._discoverTimeoutID) { - window.clearTimeout(this._discoverTimeoutID); - } - - break; - - case 'userDidPickPeripheral': - this._availablePeripherals[params.peripheralId] = params; - - this._runtime.emit(this._runtime.constructor.USER_PICKED_PERIPHERAL, this._availablePeripherals); - - if (this._discoverTimeoutID) { - window.clearTimeout(this._discoverTimeoutID); - } - - break; - - case 'userDidNotPickPeripheral': - this._runtime.emit(this._runtime.constructor.PERIPHERAL_SCAN_TIMEOUT); - - if (this._discoverTimeoutID) { - window.clearTimeout(this._discoverTimeoutID); + var writeRetry = function writeRetry(count) { + return new Promise(function (resolve, reject) { + if (count < 0) { + reject("no response"); + log.error("write ch: ".concat(ch, " dose not response")); + return; } - break; - - case 'characteristicDidChange': - if (this._characteristicDidChangeCallback) { - this._characteristicDidChangeCallback(params.message); - } + _this10.writeCh(ch, value, withResponse).then(function (result) { + if (result) { + resolve(result); + return; + } - break; + resolve(writeRetry(--count)); + return; + }); + }); + }; - case 'ping': - return 42; - } + return writeRetry(3); } /** * Handle an error resulting from losing connection to a peripheral. @@ -12320,7 +12967,7 @@ var BLE = /*#__PURE__*/function (_JSONRPC) { * - going out of bluetooth range * - being powered down * - * Disconnect the socket, and if the extension using this socket has a + * Disconnect the device, and if the extension using this object has a * reset callback, call it. Finally, emit an error to the runtime. */ @@ -12329,17 +12976,18 @@ var BLE = /*#__PURE__*/function (_JSONRPC) { value: function handleDisconnectError() /* e */ { - // log.error(`BLE error: ${JSON.stringify(e)}`); - if (!this._connected) return; - this.disconnect(); + var _this11 = this; - if (this._resetCallback) { - this._resetCallback(); - } + if (this.state !== 'open') return; + this.disconnect().then(function () { + if (_this11._resetCallback) { + _this11._resetCallback(); + } - this._runtime.emit(this._runtime.constructor.PERIPHERAL_CONNECTION_LOST_ERROR, { - message: "Scratch lost connection to", - extensionId: this._extensionId + _this11._runtime.emit(_this11._runtime.constructor.PERIPHERAL_CONNECTION_LOST_ERROR, { + message: "Scratch lost connection to", + extensionId: _this11._extensionId + }); }); } }, { @@ -12353,21 +13001,23 @@ var BLE = /*#__PURE__*/function (_JSONRPC) { extensionId: this._extensionId }); } - }, { - key: "_handleDiscoverTimeout", - value: function _handleDiscoverTimeout() { - if (this._discoverTimeoutID) { - window.clearTimeout(this._discoverTimeoutID); - } + /** + * Called when disconnected by the device. + */ - this._runtime.emit(this._runtime.constructor.PERIPHERAL_SCAN_TIMEOUT); + }, { + key: "onDisconnected", + value: function onDisconnected() + /* event */ + { + this.handleDisconnectError(new Error('device disconnected')); } }]); - return BLE; -}(jsonrpc); + return WebSerial; +}(); -var ble = navigator.bluetooth ? bleWeb : BLE; +var webSerial = WebSerial; var formatMessageParse = createCommonjsModule(function (module, exports) { /*:: @@ -15963,6 +16613,127 @@ var MbitMore = /*#__PURE__*/function () { return this.magneticForce[axis]; } + }, { + key: "scanBLE", + value: function scanBLE() { + var connectorClass = 'bluetooth' in navigator ? webBle : ble; + this._ble = new connectorClass(this.runtime, this._extensionId, { + filters: [{ + namePrefix: 'BBC micro:bit' + }, { + services: [MM_SERVICE.ID] + }] + }, this._onConnect, this.reset); + } + }, { + key: "scanSerial", + value: function scanSerial() { + this._ble = new webSerial(this.runtime, this._extensionId, { + filters: [{ + usbVendorId: 0x0d28, + usbProductId: 0x0204 + }] + }, this._onConnect, this.reset); + } + }, { + key: "selectCommunicationRoute", + value: function selectCommunicationRoute() { + var _this7 = this; + + var selectDialog = document.createElement('dialog'); + selectDialog.style.padding = '0px'; + var dialogFace = document.createElement('div'); + dialogFace.style.padding = '16px'; + selectDialog.appendChild(dialogFace); + var label = document.createTextNode(formatMessage$2({ + id: 'mbitMore.selectCommunicationRoute.connectWith', + default: 'Connect with', + description: 'label of select communication route dialog for microbit more extension' + })); + dialogFace.appendChild(label); // Dialog form + + var selectForm = document.createElement('form'); + selectForm.setAttribute('method', 'dialog'); + selectForm.style.margin = '8px'; + dialogFace.appendChild(selectForm); // API select + + var apiSelect = document.createElement('select'); + apiSelect.setAttribute('id', 'api'); + selectForm.appendChild(apiSelect); // BLE option + + var bleOption = document.createElement('option'); + bleOption.setAttribute('value', 'ble'); + bleOption.textContent = formatMessage$2({ + id: 'mbitMore.selectCommunicationRoute.bluetooth', + default: 'Bluetooth', + description: 'bluetooth button on select communication route dialog for microbit more extension' + }); + apiSelect.appendChild(bleOption); // USB option + + var usbOption = document.createElement('option'); + usbOption.setAttribute('value', 'usb'); + usbOption.textContent = formatMessage$2({ + id: 'mbitMore.selectCommunicationRoute.usb', + default: 'USB', + description: 'usb button on select communication route dialog for microbit more extension' + }); + apiSelect.appendChild(usbOption); // Cancel button + + var cancelButton = document.createElement('button'); + cancelButton.textContent = formatMessage$2({ + id: 'mbitMore.selectCommunicationRoute.cancel', + default: 'cancel', + description: 'cancel button on select communication route dialog for microbit more extension' + }); + cancelButton.style.margin = '8px'; + dialogFace.appendChild(cancelButton); // OK button + + var confirmButton = document.createElement('button'); + confirmButton.textContent = formatMessage$2({ + id: 'mbitMore.selectCommunicationRoute.connect', + default: 'connect', + description: 'connect button on select communication route dialog for microbit more extension' + }); + confirmButton.style.margin = '8px'; + dialogFace.appendChild(confirmButton); // Add onClick action + + var selectProcess = function selectProcess() { + if (apiSelect.value === 'ble') { + _this7.scanBLE(); + } + + if (apiSelect.value === 'usb') { + _this7.scanSerial(); + } + + document.body.removeChild(selectDialog); + }; + + cancelButton.onclick = function () { + document.body.removeChild(selectDialog); + + _this7.runtime.emit(_this7.runtime.constructor.PERIPHERAL_REQUEST_ERROR, { + message: "Scan was canceled by user", + extensionId: _this7._extensionId + }); + }; + + confirmButton.onclick = selectProcess; + selectDialog.addEventListener('keydown', function (e) { + if (e.code === 'Enter') { + selectProcess(); + } + }); // When click outside of the dialog + // selectDialog.onclick = e => { + // if (!e.target.closest('div')) { + // e.target.close(); + // selectProcess(); + // } + // }; + + document.body.appendChild(selectDialog); + selectDialog.showModal(); + } /** * Called by the runtime when user wants to scan for a peripheral. */ @@ -15975,13 +16746,12 @@ var MbitMore = /*#__PURE__*/function () { } this.bleBusy = true; - this._ble = new ble(this.runtime, this._extensionId, { - filters: [{ - namePrefix: 'BBC micro:bit' - }, { - services: [MM_SERVICE.ID] - }] - }, this._onConnect, this.reset); + + if ('serial' in navigator) { + this.selectCommunicationRoute(); + } else { + this.scanBLE(); + } } /** * Called by the runtime when user wants to connect to a certain peripheral. @@ -16048,11 +16818,11 @@ var MbitMore = /*#__PURE__*/function () { }, { key: "sendCommand", value: function sendCommand(command) { - var _this7 = this; + var _this8 = this; var data = base64Util.uint8ArrayToBase64(new Uint8Array([command.id].concat(_toConsumableArray(command.message)))); return new Promise(function (resolve) { - _this7._ble.write(MM_SERVICE.ID, MM_SERVICE.COMMAND_CH, data, 'base64', false); + _this8._ble.write(MM_SERVICE.ID, MM_SERVICE.COMMAND_CH, data, 'base64', false); setTimeout(function () { return resolve(); @@ -16069,7 +16839,7 @@ var MbitMore = /*#__PURE__*/function () { }, { key: "sendCommandSet", value: function sendCommandSet(commands, util) { - var _this8 = this; + var _this9 = this; if (!this.isConnected()) return Promise.resolve(); @@ -16080,7 +16850,7 @@ var MbitMore = /*#__PURE__*/function () { util.yield(); // re-try this call after a while. } else { setTimeout(function () { - return _this8.sendCommandSet(commands, util); + return _this9.sendCommandSet(commands, util); }, 1); } @@ -16090,21 +16860,21 @@ var MbitMore = /*#__PURE__*/function () { this.bleBusy = true; // Clear busy and BLE access waiting flag when the scratch-link does not respond. this.bleBusyTimeoutID = window.setTimeout(function () { - _this8.bleBusy = false; - _this8.bleAccessWaiting = false; + _this9.bleBusy = false; + _this9.bleAccessWaiting = false; }, 1000); return new Promise(function (resolve) { commands.reduce(function (acc, cur, i) { var sendPromise = acc.then(function () { - return _this8.sendCommand(cur); + return _this9.sendCommand(cur); }); if (i === commands.length - 1) { // the last command sendPromise.then(function () { - _this8.bleBusy = false; - _this8.bleAccessWaiting = false; - window.clearTimeout(_this8.bleBusyTimeoutID); + _this9.bleBusy = false; + _this9.bleAccessWaiting = false; + window.clearTimeout(_this9.bleBusyTimeoutID); resolve(); }); } @@ -16121,33 +16891,39 @@ var MbitMore = /*#__PURE__*/function () { }, { key: "_onConnect", value: function _onConnect() { - var _this9 = this; + var _this10 = this; this._ble.read(MM_SERVICE.ID, MM_SERVICE.COMMAND_CH, false).then(function (result) { + if (!result) { + throw new Error('Config is not readable'); + } + var data = base64Util.base64ToUint8Array(result.message); var dataView = new DataView(data.buffer, 0); - _this9.hardware = dataView.getUint8(0); - _this9.protocol = dataView.getUint8(1); + _this10.hardware = dataView.getUint8(0); + _this10.protocol = dataView.getUint8(1); - _this9._ble.startNotifications(MM_SERVICE.ID, MM_SERVICE.ACTION_EVENT_CH, _this9.onNotify); + _this10._ble.startNotifications(MM_SERVICE.ID, MM_SERVICE.ACTION_EVENT_CH, _this10.onNotify); - _this9._ble.startNotifications(MM_SERVICE.ID, MM_SERVICE.PIN_EVENT_CH, _this9.onNotify); + _this10._ble.startNotifications(MM_SERVICE.ID, MM_SERVICE.PIN_EVENT_CH, _this10.onNotify); - if (_this9.hardware === MbitMoreHardwareVersion.MICROBIT_V1) { - _this9.microbitUpdateInterval = 100; // milli-seconds + if (_this10.hardware === MbitMoreHardwareVersion.MICROBIT_V1) { + _this10.microbitUpdateInterval = 100; // milli-seconds } else { - _this9._ble.startNotifications(MM_SERVICE.ID, MM_SERVICE.MESSAGE_CH, _this9.onNotify); + _this10._ble.startNotifications(MM_SERVICE.ID, MM_SERVICE.MESSAGE_CH, _this10.onNotify); - _this9.microbitUpdateInterval = 50; // milli-seconds + _this10.microbitUpdateInterval = 50; // milli-seconds } - _this9.initConfig(); + _this10.initConfig(); - _this9.bleBusy = false; + _this10.bleBusy = false; - _this9.startUpdater(); + _this10.startUpdater(); - _this9.resetConnectionTimeout(); + _this10.resetConnectionTimeout(); + }).catch(function () { + return _this10._ble.handleDisconnectError(); }); } /** @@ -16218,11 +16994,11 @@ var MbitMore = /*#__PURE__*/function () { }, { key: "resetConnectionTimeout", value: function resetConnectionTimeout() { - var _this10 = this; + var _this11 = this; if (this._timeoutID) window.clearTimeout(this._timeoutID); this._timeoutID = window.setTimeout(function () { - return _this10._ble.handleDisconnectError(BLEDataStoppedError); + return _this11._ble.handleDisconnectError(BLEDataStoppedError); }, BLETimeout); } /** @@ -16288,7 +17064,7 @@ var MbitMore = /*#__PURE__*/function () { }, { key: "configTouchPin", value: function configTouchPin(pinIndex, util) { - var _this11 = this; + var _this12 = this; if (!this.isConnected()) { return Promise.resolve(); @@ -16305,7 +17081,7 @@ var MbitMore = /*#__PURE__*/function () { if (sendPromise) { return sendPromise.then(function () { - _this11.config.pinMode[pinIndex] = MbitMorePinMode.TOUCH; + _this12.config.pinMode[pinIndex] = MbitMorePinMode.TOUCH; }); } @@ -16620,8 +17396,8 @@ var MbitMoreBlocks = /*#__PURE__*/function () { // // These events are not in use because they are unstable in coal-microbit-v2. // { // text: formatMessage({ - // id: 'mbitMore.buttonEventMenu.pressed', - // default: 'pressed', + // id: 'mbitMore.buttonEventMenu.hold', + // default: 'hold', // description: 'label for button hold event' // }), // value: MbitMoreButtonEventName.HOLD @@ -16700,24 +17476,24 @@ var MbitMoreBlocks = /*#__PURE__*/function () { // // These events are not in use because they are unstable in coal-microbit-v2. // { // text: formatMessage({ - // id: 'mbitMore.touchEventMenu.pressed', - // default: 'pressed', + // id: 'mbitMore.touchEventMenu.hold', + // default: 'hold', // description: 'label for hold event in touch' // }), // value: MbitMoreButtonEventName.HOLD // }, // { // text: formatMessage({ - // id: 'mbitMore.touchEventMenu.longClick', - // default: 'long click', + // id: 'mbitMore.touchEventMenu.longTapped', + // default: 'long tapped', // description: 'label for long click event in touch' // }), // value: MbitMoreButtonEventName.LONG_CLICK // }, // { // text: formatMessage({ - // id: 'mbitMore.touchEventMenu.doubleClick', - // default: 'double click', + // id: 'mbitMore.touchEventMenu.doubleTapped', + // default: 'double tapped', // description: 'label for double click event in touch' // }), // value: MbitMoreButtonEventName.DOUBLE_CLICK @@ -17588,7 +18364,7 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "updatePrevButtonEvents", value: function updatePrevButtonEvents() { - var _this12 = this; + var _this13 = this; this.prevButtonEvents = {}; Object.entries(this._peripheral.buttonEvents).forEach(function (_ref) { @@ -17596,13 +18372,13 @@ var MbitMoreBlocks = /*#__PURE__*/function () { componentID = _ref2[0], events = _ref2[1]; - _this12.prevButtonEvents[componentID] = {}; + _this13.prevButtonEvents[componentID] = {}; Object.entries(events).forEach(function (_ref3) { var _ref4 = _slicedToArray(_ref3, 2), eventName = _ref4[0], timestamp = _ref4[1]; - _this12.prevButtonEvents[componentID][eventName] = timestamp; + _this13.prevButtonEvents[componentID][eventName] = timestamp; }); }); } @@ -17617,13 +18393,13 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "whenButtonEvent", value: function whenButtonEvent(args) { - var _this13 = this; + var _this14 = this; if (!this.updateLastButtonEventTimer) { this.updateLastButtonEventTimer = setTimeout(function () { - _this13.updatePrevButtonEvents(); + _this14.updatePrevButtonEvents(); - _this13.updateLastButtonEventTimer = null; + _this14.updateLastButtonEventTimer = null; }, this.runtime.currentStepTime); } @@ -17708,7 +18484,7 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "updatePrevGestureEvents", value: function updatePrevGestureEvents() { - var _this14 = this; + var _this15 = this; this.prevGestureEvents = {}; Object.entries(this._peripheral.gestureEvents).forEach(function (_ref5) { @@ -17716,7 +18492,7 @@ var MbitMoreBlocks = /*#__PURE__*/function () { gestureName = _ref6[0], timestamp = _ref6[1]; - _this14.prevGestureEvents[gestureName] = timestamp; + _this15.prevGestureEvents[gestureName] = timestamp; }); } /** @@ -17729,13 +18505,13 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "whenGesture", value: function whenGesture(args) { - var _this15 = this; + var _this16 = this; if (!this.updateLastGestureEventTimer) { this.updateLastGestureEventTimer = setTimeout(function () { - _this15.updatePrevGestureEvents(); + _this16.updatePrevGestureEvents(); - _this15.updateLastGestureEventTimer = null; + _this16.updateLastGestureEventTimer = null; }, this.runtime.currentStepTime); } @@ -17819,7 +18595,10 @@ var MbitMoreBlocks = /*#__PURE__*/function () { var delay = parseInt(args.DELAY, 10); delay = isNaN(delay) ? 120 : delay; // Use default delay if NaN. - if (text.length > 0) this._peripheral.displayText(text, delay, util); + var resultPromise = this._peripheral.displayText(text, delay, util); + + if (!resultPromise) return; // This thread was yielded. + var yieldDelay = delay * (6 * text.length + 6); return new Promise(function (resolve) { setTimeout(function () { @@ -17886,11 +18665,15 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "getSoundLevel", value: function getSoundLevel(args, util) { - var _this16 = this; + var _this17 = this; + + var resultPromise = this._peripheral.configMic(true, util); - return this._peripheral.configMic(true, util).then(function (micState) { + if (!resultPromise) return; // This thread was yielded. + + return resultPromise.then(function (micState) { if (micState) { - return _this16._peripheral.readSoundLevel(); + return Math.round(_this17._peripheral.readSoundLevel() * 1000 / 255) / 10; } return 0; @@ -18150,7 +18933,7 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "updatePrevPinEvents", value: function updatePrevPinEvents() { - var _this17 = this; + var _this18 = this; this.prevPinEvents = {}; Object.entries(this._peripheral._pinEvents).forEach(function (_ref7) { @@ -18158,19 +18941,19 @@ var MbitMoreBlocks = /*#__PURE__*/function () { pinIndex = _ref8[0], events = _ref8[1]; - _this17.prevPinEvents[pinIndex] = {}; + _this18.prevPinEvents[pinIndex] = {}; Object.entries(events).forEach(function (_ref9) { var _ref10 = _slicedToArray(_ref9, 2), eventID = _ref10[0], eventData = _ref10[1]; - _this17.prevPinEvents[pinIndex][eventID] = {}; + _this18.prevPinEvents[pinIndex][eventID] = {}; Object.entries(eventData).forEach(function (_ref11) { var _ref12 = _slicedToArray(_ref11, 2), key = _ref12[0], value = _ref12[1]; - _this17.prevPinEvents[pinIndex][eventID][key] = value; + _this18.prevPinEvents[pinIndex][eventID][key] = value; }); }); }); @@ -18202,13 +18985,13 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "whenPinEvent", value: function whenPinEvent(args) { - var _this18 = this; + var _this19 = this; if (!this.updateLastPinEventTimer) { this.updateLastPinEventTimer = setTimeout(function () { - _this18.updatePrevPinEvents(); + _this19.updatePrevPinEvents(); - _this18.updateLastPinEventTimer = null; + _this19.updateLastPinEventTimer = null; }, this.runtime.currentStepTime); } @@ -18241,7 +19024,7 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "updatePrevReceivedData", value: function updatePrevReceivedData() { - var _this19 = this; + var _this20 = this; this.prevReceivedData = {}; Object.entries(this._peripheral.receivedData).forEach(function (_ref13) { @@ -18249,13 +19032,13 @@ var MbitMoreBlocks = /*#__PURE__*/function () { label = _ref14[0], contentObject = _ref14[1]; - _this19.prevReceivedData[label] = {}; + _this20.prevReceivedData[label] = {}; Object.entries(contentObject).forEach(function (_ref15) { var _ref16 = _slicedToArray(_ref15, 2), key = _ref16[0], value = _ref16[1]; - _this19.prevReceivedData[label][key] = value; + _this20.prevReceivedData[label][key] = value; }); }); } @@ -18284,13 +19067,13 @@ var MbitMoreBlocks = /*#__PURE__*/function () { }, { key: "whenDataReceived", value: function whenDataReceived(args) { - var _this20 = this; + var _this21 = this; if (!this.updateLastDataTimer) { this.updateLastDataTimer = setTimeout(function () { - _this20.updatePrevReceivedData(); + _this21.updatePrevReceivedData(); - _this20.updateLastDataTimer = null; + _this21.updateLastDataTimer = null; }, this.runtime.currentStepTime); } @@ -18340,20 +19123,22 @@ var extensionTranslations = { 'mbitMore.whenButtonEvent': 'ボタン [NAME] が [EVENT] とき', 'mbitMore.buttonIDMenu.a': 'A', 'mbitMore.buttonIDMenu.b': 'B', - 'mbitMore.buttonEventMenu.down': '下がった', - 'mbitMore.buttonEventMenu.pressed': '押された', - 'mbitMore.buttonEventMenu.up': '上がった', + 'mbitMore.buttonEventMenu.down': '押された', + 'mbitMore.buttonEventMenu.hold': '長押しされた', + 'mbitMore.buttonEventMenu.up': '離された', 'mbitMore.buttonEventMenu.click': 'クリックされた', - 'mbitMore.buttonEventMenu.longClick': '長くクリックされた', + 'mbitMore.buttonEventMenu.longClick': 'ロングクリックされた', 'mbitMore.buttonEventMenu.doubleClick': 'ダブルクリックされた', - 'mbitMore.isButtonPressed': 'ボタン [NAME] が押された', + 'mbitMore.isButtonPressed': 'ボタン [NAME] が押されている', 'mbitMore.whenTouchEvent': 'ピン [NAME] が [EVENT] とき', - 'mbitMore.isPinTouched': 'ピン [NAME] が触れられた', + 'mbitMore.isPinTouched': 'ピン [NAME] がタッチされた', 'mbitMore.touchIDMenu.logo': 'ロゴ', - 'mbitMore.touchEventMenu.touched': '触れられた', - 'mbitMore.touchEventMenu.pressed': '押された', - 'mbitMore.touchEventMenu.released': '放された', + 'mbitMore.touchEventMenu.touched': 'タッチされた', + 'mbitMore.touchEventMenu.hold': '長押しされた', + 'mbitMore.touchEventMenu.released': '離された', 'mbitMore.touchEventMenu.tapped': 'タップされた', + 'mbitMore.touchEventMenu.longTapped': 'ロングタップされた', + 'mbitMore.touchEventMenu.doubleTapped': 'ダブルタップされた', 'mbitMore.whenGesture': '[GESTURE] とき', 'mbitMore.gesturesMenu.tiltUp': '上へ傾いた', 'mbitMore.gesturesMenu.tiltDown': '下へ傾いた', @@ -18414,26 +19199,33 @@ var extensionTranslations = { 'mbitMore.sendData': 'micro:bit へデータ [DATA] にラベル [LABEL] を付けて送る', 'mbitMore.connectionStateMenu.connected': 'つながった', 'mbitMore.connectionStateMenu.disconnected': '切れた', - 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき' + 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき', + 'mbitMore.selectCommunicationRoute.connectWith': 'つなぎ方', + 'mbitMore.selectCommunicationRoute.bluetooth': 'Bluetooth', + 'mbitMore.selectCommunicationRoute.usb': 'USB', + 'mbitMore.selectCommunicationRoute.connect': 'つなぐ', + 'mbitMore.selectCommunicationRoute.cancel': 'やめる' }, 'ja-Hira': { 'mbitMore.whenButtonEvent': '[NAME] ボタンが [EVENT] とき', 'mbitMore.buttonIDMenu.a': 'A', 'mbitMore.buttonIDMenu.b': 'B', - 'mbitMore.buttonEventMenu.down': 'さがった', - 'mbitMore.buttonEventMenu.hold': 'おされた', - 'mbitMore.buttonEventMenu.up': 'あがった', + 'mbitMore.buttonEventMenu.down': 'おされた', + 'mbitMore.buttonEventMenu.hold': 'ながおしされた', + 'mbitMore.buttonEventMenu.up': 'はなされた', 'mbitMore.buttonEventMenu.click': 'クリックされた', - 'mbitMore.buttonEventMenu.longClick': 'ながくクリックされた', + 'mbitMore.buttonEventMenu.longClick': 'ロングクリックされた', 'mbitMore.buttonEventMenu.doubleClick': 'ダブルクリックされた', - 'mbitMore.isButtonPressed': '[NAME] ボタンがおされた', + 'mbitMore.isButtonPressed': '[NAME] ボタンがおされている', 'mbitMore.whenTouchEvent': 'ピン [NAME] が [EVENT] とき', - 'mbitMore.isPinTouched': 'ピン [NAME] がふれられた', + 'mbitMore.isPinTouched': 'ピン [NAME] がタッチされた', 'mbitMore.touchIDMenu.logo': 'ロゴ', - 'mbitMore.touchEventMenu.touched': 'ふれられた', - 'mbitMore.touchEventMenu.pressed': 'おされた', + 'mbitMore.touchEventMenu.touched': 'タッチされた', + 'mbitMore.touchEventMenu.hold': 'ながおしされた', 'mbitMore.touchEventMenu.released': 'はなされた', 'mbitMore.touchEventMenu.tapped': 'タップされた', + 'mbitMore.touchEventMenu.longTapped': 'ロングタップされた', + 'mbitMore.touchEventMenu.doubleTapped': 'ダブルタップされた', 'mbitMore.whenGesture': '[GESTURE] とき', 'mbitMore.gesturesMenu.tiltUp': 'うえへかたむいた', 'mbitMore.gesturesMenu.tiltDown': 'したへかたむいた', @@ -18494,7 +19286,12 @@ var extensionTranslations = { 'mbitMore.sendData': 'micro:bit へデータ [DATA] にラベル [LABEL] をつけておくる', 'mbitMore.connectionStateMenu.connected': 'つながった', 'mbitMore.connectionStateMenu.disconnected': 'きれた', - 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき' + 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき', + 'mbitMore.selectCommunicationRoute.connectWith': 'つなぎかた', + 'mbitMore.selectCommunicationRoute.bluetooth': 'むせん', + 'mbitMore.selectCommunicationRoute.usb': 'ゆうせん', + 'mbitMore.selectCommunicationRoute.connect': 'つなぐ', + 'mbitMore.selectCommunicationRoute.cancel': 'やめる' }, 'pt-br': { 'mbitMore.lightLevel': 'Intensidade da Luz', diff --git a/src/block/index.js b/src/block/index.js index d3ef10f..5b66045 100644 --- a/src/block/index.js +++ b/src/block/index.js @@ -5,6 +5,9 @@ const cast = require('../../util/cast'); const BLE = require('../../io/ble'); const Base64Util = require('../../util/base64-util'); +const WebBLE = require('./web-ble'); +const WebSerial = require('./web-serial'); + /** * Formatter which is used for translating. @@ -999,6 +1002,127 @@ class MbitMore { return this.magneticForce[axis]; } + scanBLE () { + const connectorClass = ('bluetooth' in navigator) ? WebBLE : BLE; + this._ble = new connectorClass( + this.runtime, + this._extensionId, + { + filters: [ + {namePrefix: 'BBC micro:bit'}, + {services: [MM_SERVICE.ID]} + ] + }, + this._onConnect, + this.reset + ); + } + + scanSerial () { + this._ble = new WebSerial( + this.runtime, + this._extensionId, + { + filters: [ + {usbVendorId: 0x0d28, usbProductId: 0x0204} + ] + }, + this._onConnect, + this.reset + ); + } + + selectCommunicationRoute () { + const selectDialog = document.createElement('dialog'); + selectDialog.style.padding = '0px'; + const dialogFace = document.createElement('div'); + dialogFace.style.padding = '16px'; + selectDialog.appendChild(dialogFace); + const label = document.createTextNode(formatMessage({ + id: 'mbitMore.selectCommunicationRoute.connectWith', + default: 'Connect with', + description: 'label of select communication route dialog for microbit more extension' + })); + dialogFace.appendChild(label); + // Dialog form + const selectForm = document.createElement('form'); + selectForm.setAttribute('method', 'dialog'); + selectForm.style.margin = '8px'; + dialogFace.appendChild(selectForm); + // API select + const apiSelect = document.createElement('select'); + apiSelect.setAttribute('id', 'api'); + selectForm.appendChild(apiSelect); + // BLE option + const bleOption = document.createElement('option'); + bleOption.setAttribute('value', 'ble'); + bleOption.textContent = formatMessage({ + id: 'mbitMore.selectCommunicationRoute.bluetooth', + default: 'Bluetooth', + description: 'bluetooth button on select communication route dialog for microbit more extension' + }); + apiSelect.appendChild(bleOption); + // USB option + const usbOption = document.createElement('option'); + usbOption.setAttribute('value', 'usb'); + usbOption.textContent = formatMessage({ + id: 'mbitMore.selectCommunicationRoute.usb', + default: 'USB', + description: 'usb button on select communication route dialog for microbit more extension' + }); + apiSelect.appendChild(usbOption); + // Cancel button + const cancelButton = document.createElement('button'); + cancelButton.textContent = formatMessage({ + id: 'mbitMore.selectCommunicationRoute.cancel', + default: 'cancel', + description: 'cancel button on select communication route dialog for microbit more extension' + }); + cancelButton.style.margin = '8px'; + dialogFace.appendChild(cancelButton); + // OK button + const confirmButton = document.createElement('button'); + confirmButton.textContent = formatMessage({ + id: 'mbitMore.selectCommunicationRoute.connect', + default: 'connect', + description: 'connect button on select communication route dialog for microbit more extension' + }); + confirmButton.style.margin = '8px'; + dialogFace.appendChild(confirmButton); + // Add onClick action + const selectProcess = () => { + if (apiSelect.value === 'ble') { + this.scanBLE(); + } + if (apiSelect.value === 'usb') { + this.scanSerial(); + } + document.body.removeChild(selectDialog); + }; + cancelButton.onclick = () => { + document.body.removeChild(selectDialog); + this.runtime.emit(this.runtime.constructor.PERIPHERAL_REQUEST_ERROR, { + message: `Scan was canceled by user`, + extensionId: this._extensionId + }); + }; + confirmButton.onclick = selectProcess; + selectDialog.addEventListener('keydown', e => { + if (e.code === 'Enter') { + selectProcess(); + } + }); + // When click outside of the dialog + // selectDialog.onclick = e => { + // if (!e.target.closest('div')) { + // e.target.close(); + // selectProcess(); + // } + // }; + document.body.appendChild(selectDialog); + selectDialog.showModal(); + } + /** * Called by the runtime when user wants to scan for a peripheral. */ @@ -1007,12 +1131,11 @@ class MbitMore { this._ble.disconnect(); } this.bleBusy = true; - this._ble = new BLE(this.runtime, this._extensionId, { - filters: [ - {namePrefix: 'BBC micro:bit'}, - {services: [MM_SERVICE.ID]} - ] - }, this._onConnect, this.reset); + if ('serial' in navigator) { + this.selectCommunicationRoute(); + } else { + this.scanBLE(); + } } /** @@ -1137,6 +1260,9 @@ class MbitMore { MM_SERVICE.COMMAND_CH, false) .then(result => { + if (!result) { + throw new Error('Config is not readable'); + } const data = Base64Util.base64ToUint8Array(result.message); const dataView = new DataView(data.buffer, 0); this.hardware = dataView.getUint8(0); @@ -1162,7 +1288,8 @@ class MbitMore { this.bleBusy = false; this.startUpdater(); this.resetConnectionTimeout(); - }); + }) + .catch(() => this._ble.handleDisconnectError()); } /** @@ -3294,7 +3421,12 @@ const extensionTranslations = { 'mbitMore.sendData': 'micro:bit へデータ [DATA] にラベル [LABEL] を付けて送る', 'mbitMore.connectionStateMenu.connected': 'つながった', 'mbitMore.connectionStateMenu.disconnected': '切れた', - 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき' + 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき', + 'mbitMore.selectCommunicationRoute.connectWith': 'つなぎ方', + 'mbitMore.selectCommunicationRoute.bluetooth': 'Bluetooth', + 'mbitMore.selectCommunicationRoute.usb': 'USB', + 'mbitMore.selectCommunicationRoute.connect': 'つなぐ', + 'mbitMore.selectCommunicationRoute.cancel': 'やめる' }, 'ja-Hira': { 'mbitMore.whenButtonEvent': '[NAME] ボタンが [EVENT] とき', @@ -3376,7 +3508,12 @@ const extensionTranslations = { 'mbitMore.sendData': 'micro:bit へデータ [DATA] にラベル [LABEL] をつけておくる', 'mbitMore.connectionStateMenu.connected': 'つながった', 'mbitMore.connectionStateMenu.disconnected': 'きれた', - 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき' + 'mbitMore.whenConnectionChanged': 'micro:bit と[STATE]とき', + 'mbitMore.selectCommunicationRoute.connectWith': 'つなぎかた', + 'mbitMore.selectCommunicationRoute.bluetooth': 'むせん', + 'mbitMore.selectCommunicationRoute.usb': 'ゆうせん', + 'mbitMore.selectCommunicationRoute.connect': 'つなぐ', + 'mbitMore.selectCommunicationRoute.cancel': 'やめる' }, 'pt-br': { 'mbitMore.lightLevel': 'Intensidade da Luz', diff --git a/src/block/web-ble.js b/src/block/web-ble.js new file mode 100644 index 0000000..6bb02e1 --- /dev/null +++ b/src/block/web-ble.js @@ -0,0 +1,215 @@ +const Base64Util = require('../../util/base64-util'); +const log = require('../../util/log'); + +class WebBLE { + + /** + * A BLE peripheral object. It handles connecting, over Web Bluetooth API, to + * BLE peripherals, and reading and writing data to them. + * @param {Runtime} runtime - the Runtime for sending/receiving GUI update events. + * @param {string} extensionId - the id of the extension using this object. + * @param {object} peripheralOptions - the list of options for peripheral discovery. + * @param {object} connectCallback - a callback for connection. + * @param {object} resetCallback - a callback for resetting extension state. + */ + constructor (runtime, extensionId, peripheralOptions, connectCallback, resetCallback = null) { + /** + * Remote device which have been connected. + * @type {BluetoothDevice} + */ + this._device = null; + + /** + * Remote GATT server + * @type {BluetoothRemoteGATTServer} + */ + this._server = null; + + this._connectCallback = connectCallback; + this._disconnected = true; + this._characteristicDidChangeCallback = null; + this._resetCallback = resetCallback; + this._extensionId = extensionId; + this._peripheralOptions = peripheralOptions; + this._runtime = runtime; + + this.requestPeripheral(); + } + + /** + * Request connection to the peripheral. + * Request user to choose a device, and then connect it automatically. + */ + requestPeripheral () { + if (this._server) { + this.disconnect(); + } + navigator.bluetooth.requestDevice(this._peripheralOptions) + .then(device => { + this._device = device; + log.debug(`device=${this._device.name}`); + this._runtime.connectPeripheral(this._extensionId, this._device.id); + }) + .catch(e => { + this._handleRequestError(e); + }); + } + + /** + * Try connecting to the GATT server of the device, and then call the connect + * callback when connection is successful. + */ + connectPeripheral (/* id */) { + if (!this._device) { + throw new Error('device is not chosen'); + } + this._device.gatt.connect() + .then(gattServer => { + log.debug(`GATTServer is connected`); + this._server = gattServer; + this._runtime.emit(this._runtime.constructor.PERIPHERAL_CONNECTED); + this._disconnected = false; + this._connectCallback(); + this._device.addEventListener('gattserverdisconnected', + event => { + this.onDisconnected(event); + }); + }); + } + + /** + * Disconnect from the device and clean up. + * Then emit the connection state by the runtime. + */ + disconnect () { + if (!this._server) return; + this._server.disconnect(); + this._disconnected = true; + this._server = null; + this._device = null; + this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED); + } + + /** + * @return {bool} whether the peripheral is connected. + */ + isConnected () { + if (!this._server) return false; + return this._server.connected; + } + + /** + * Start receiving notifications from the specified ble service. + * @param {number} serviceId - the ble service to read. + * @param {number} characteristicId - the ble characteristic to get notifications from. + * @param {object} onCharacteristicChanged - callback for characteristic change notifications + * like function(base64message). + * @return {Promise} - a promise from the remote startNotifications request. + */ + startNotifications (serviceId, characteristicId, onCharacteristicChanged = null) { + return this._server.getPrimaryService(serviceId) + .then(service => service.getCharacteristic(characteristicId)) + .then(characteristic => { + characteristic.addEventListener('characteristicvaluechanged', + event => { + const dataView = event.target.value; + onCharacteristicChanged(Base64Util.arrayBufferToBase64(dataView.buffer)); + }); + characteristic.startNotifications(); + }); + } + + /** + * Read from the specified ble service. + * @param {number} serviceId - the ble service to read. + * @param {number} characteristicId - the ble characteristic to read. + * @param {boolean} optStartNotifications - whether to start receiving characteristic change notifications. + * @param {object} onCharacteristicChanged - callback for characteristic change notifications + * like function(base64message). + * @return {Promise} - a promise from the remote read request which resolve {message: base64string}. + */ + read (serviceId, characteristicId, optStartNotifications = false, onCharacteristicChanged = null) { + return this._server.getPrimaryService(serviceId) + .then(service => service.getCharacteristic(characteristicId)) + .then(characteristic => { + if (optStartNotifications) { + this.startNotifications(serviceId, characteristicId, onCharacteristicChanged); + } + return characteristic.readValue(); + }) + .then(dataView => ({ + message: Base64Util.arrayBufferToBase64(dataView.buffer) + })); + } + + /** + * Write data to the specified ble service. + * @param {number} serviceId - the ble service to write. + * @param {number} characteristicId - the ble characteristic to write. + * @param {string} message - the message to send. + * @param {string} encoding - the message encoding type. + * @param {boolean} withResponse - if true, resolve after peripheral's response. + * @return {Promise} - a promise from the remote send request. + */ + // eslint-disable-next-line no-unused-vars + write (serviceId, characteristicId, message, encoding = null, withResponse = null) { + const value = encoding === 'base64' ? Base64Util.base64ToUint8Array(message) : message; + return this._server.getPrimaryService(serviceId) + .then(service => service.getCharacteristic(characteristicId)) + .then(characteristic => { + if (withResponse && characteristic.writeValueWithResponse) { + return characteristic.writeValueWithResponse(value); + } + if (characteristic.writeValueWithoutResponse) { + return characteristic.writeValueWithoutResponse(value); + } + return characteristic.writeValue(value); + }); + } + + /** + * Handle an error resulting from losing connection to a peripheral. + * + * This could be due to: + * - battery depletion + * - going out of bluetooth range + * - being powered down + * + * Disconnect the device, and if the extension using this object has a + * reset callback, call it. Finally, emit an error to the runtime. + */ + handleDisconnectError (/* e */) { + // log.error(`BLE error: ${JSON.stringify(e)}`); + + if (this._disconnected) return; + + this.disconnect(); + + if (this._resetCallback) { + this._resetCallback(); + } + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_CONNECTION_LOST_ERROR, { + message: `Scratch lost connection to`, + extensionId: this._extensionId + }); + } + + _handleRequestError (/* e */) { + // log.error(`BLE error: ${JSON.stringify(e)}`); + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_REQUEST_ERROR, { + message: `Scratch lost connection to`, + extensionId: this._extensionId + }); + } + + /** + * Called when disconnected by the device. + */ + onDisconnected (/* event */) { + this.handleDisconnectError(new Error('device disconnected')); + } +} + +module.exports = WebBLE; diff --git a/src/block/web-serial.js b/src/block/web-serial.js new file mode 100644 index 0000000..f321842 --- /dev/null +++ b/src/block/web-serial.js @@ -0,0 +1,502 @@ +const Base64Util = require('../../util/base64-util'); +const log = require('../../util/log'); + +/** + * Characteristic ID on serial-port. + */ +const SERIAL_CH_ID = { + '0b500100-607f-4151-9091-7d008d6ffc5c': 0x0100, + '0b500101-607f-4151-9091-7d008d6ffc5c': 0x0101, + '0b500102-607f-4151-9091-7d008d6ffc5c': 0x0102, + '0b500110-607f-4151-9091-7d008d6ffc5c': 0x0110, + '0b500111-607f-4151-9091-7d008d6ffc5c': 0x0111, + '0b500120-607f-4151-9091-7d008d6ffc5c': 0x0120, + '0b500121-607f-4151-9091-7d008d6ffc5c': 0x0121, + '0b500122-607f-4151-9091-7d008d6ffc5c': 0x0122, + '0b500130-607f-4151-9091-7d008d6ffc5c': 0x0130 +}; + +/** + * Start Frame Delimiter + */ +const SFD = 0xFF; + +/** + * Request type in data frame. + */ +const ChRequest = { + READ: 0x01, + WRITE: 0x10, + WRITE_RESPONSE: 0x11, + NOTIFY_STOP: 0x20, + NOTIFY_START: 0x21 +}; + +/** + * Response type in data frame. + */ +const ChResponse = { + READ: 0x01, + WRITE_RESPONSE: 0x11, + NOTIFY: 0x21 +}; + +/** + * Class to communicate with device via USB serial-port using Web Serial API. + */ +class WebSerial { + + /** + * A BLE peripheral object. It handles connecting, over Web Bluetooth API, to + * BLE peripherals, and reading and writing data to them. + * @param {Runtime} runtime - the Runtime for sending/receiving GUI update events. + * @param {string} extensionId - the id of the extension using this object. + * @param {object} peripheralOptions - the list of options for peripheral discovery. + * @param {function} connectCallback - a callback for connection. + * @param {function} resetCallback - a callback for resetting extension state. + */ + constructor (runtime, extensionId, peripheralOptions, connectCallback, resetCallback = null) { + /** + * Remote device which have been connected. + * @type {SerialPort} + */ + this._port = null; + + this._connectCallback = connectCallback; + this.state = 'init'; + this._resetCallback = resetCallback; + this._extensionId = extensionId; + this._peripheralOptions = peripheralOptions; + this._serialOptions = { + baudRate: 115200 + }; + this._runtime = runtime; + this.receivingInterval = 10; + + /** + * Store of received type and value for each characteristics. + * @type {Object.>} - { ch: { type: value }}. + */ + this.chValues = {}; + + /** + * Notification callbacks. + * @type {Object.} - { ch: callback } + */ + this.notifyListeners = {}; + + this.requestPeripheral(); + } + + /** + * Request connection to the peripheral. + * Request user to choose a device, and then connect it automatically. + * @return {Promise} - a Promise which will resolved when a port was selected. + */ + requestPeripheral () { + let promise = Promise.resolve(); + if (this.isConnected()) { + promise = promise.then(() => this.disconnect()); + } + return promise.then(() => { + navigator.serial.requestPort(this._peripheralOptions) + .then(port => { + this._port = port; + this._runtime.connectPeripheral(this._extensionId, null); + }) + .catch(e => { + this._handleRequestError(e); + }); + }); + } + + /** + * Try connecting to the serial port of the device, and then call the connect + * callback when connection is successful. + */ + connectPeripheral (/* id */) { + if (!this._port) { + throw new Error('device is not chosen'); + } + class ChValueTransformer { + constructor () { + // A container for holding stream data until a new frame. + this.chunks = []; + } + + transform (chunk, controller) { + // Append new chunks to existing chunks. + this.chunks = this.chunks.concat(Array.from(chunk)); + // Split chunks into {ch: {type: value}. + // Skip until SFD occurred + const frameStart = this.chunks.findIndex(element => element === SFD); + if (frameStart === -1) { + this.chunks = []; + return; + } + this.chunks = this.chunks.slice(frameStart); + // Read header + if (this.chunks.length < 5) { + return; + } + const type = this.chunks[1]; + if (type > ChResponse.NOTIFY) { + this.chunks = []; // remove all until SFD + valid type + return; + } + const ch = (this.chunks[2] << 8) | this.chunks[3]; + const valueLength = this.chunks[4]; + if (this.chunks.length < (5 + valueLength)) { + return; + } + this.chunks.splice(0, 5); // remove before value + const value = this.chunks.splice(0, valueLength); + controller.enqueue({ch: ch, data: {type: type, value: value}}); + } + + flush (controller) { + // When the stream is closed, delete any remaining chunks. + controller.terminate(); + } + } + this._port.open(this._serialOptions) + .then(() => { + log.log(`SerialPort: open`); + this.state = 'open'; + this.writer = this._port.writable.getWriter(); + // eslint-disable-next-line no-undef + const chValueTransformStream = new TransformStream(new ChValueTransformer()); + this.readableStreamClosed = this._port.readable.pipeTo(chValueTransformStream.writable); + this.reader = chValueTransformStream.readable.getReader(); + this._port.addEventListener('disconnect', + event => { + this.onDisconnected(event); + }); + this._runtime.emit(this._runtime.constructor.PERIPHERAL_CONNECTED); + this._connectCallback(); + this.startReceiving(); + }); + } + + /** + * Disconnect from the device and clean up. + * Then emit the connection state by the runtime. + * @return {Promise} - a Promise which will resolve when the port was disconnected. + */ + disconnect () { + if (this.state !== 'open') return Promise.resolve(); + this.state = 'closing'; + this.stopReceiving(); + return this.reader.cancel() + .then(() => this.readableStreamClosed.catch(() => { /* Ignore the error */ })) + .then(() => { + this.writer.close(); + this.writer.releaseLock(); + return this.write.closed; + }) + .then(() => { + this._port.close(); + this.state = 'close'; + this.reader = null; + this.writer = null; + this._port = null; + this._runtime.emit(this._runtime.constructor.PERIPHERAL_DISCONNECTED); + }); + } + + /** + * @return {bool} whether the peripheral is connected. + */ + isConnected () { + return this.state === 'open'; + } + + /** + * Receive data and process it. + * @returns {Promise} - a Promise which will resolve when read next data + */ + receiveData () { + return this.reader.read() + .then(result => { + const {value, done} = result; + if (done) { + this.reader.releaseLock(); + } + if (value) { + const data = value.data; + const ch = value.ch; + if (!this.chValues[ch]) { + this.chValues[ch] = {}; + } + this.chValues[ch][data.type] = data.value; + if (data.type === ChResponse.NOTIFY) { + if (ch in this.notifyListeners) { + this.notifyListeners[ch](Base64Util.arrayBufferToBase64(data.value)); + } + } + // log.debug({ch: ch, type: data.type, value: data.value}); + } + }); + } + + /** + * Start data receiving process. + */ + startReceiving () { + this.dataReceiving = window.setTimeout(() => { + if (this.state !== 'open') return; + this.receiveData() + .catch(err => { + log.error(err); + }) + .finally(() => { + // start again + this.startReceiving(); + }); + }, this.receivingInterval); + } + + /** + * Stop data receiving process. + */ + stopReceiving () { + clearTimeout(this.dataReceiving); + this.dataReceiving = null; + } + + /** + * Send data to the device. + * @param {Uint8Array} data - data to send + * @returns {Promise} - a Promise which will resolve write process was done + */ + sendData (data) { + return this.writer.ready + .then(() => this.writer.write(data)); + } + + /** + * Start receiving notifications from the device. + * @param {number} _serviceId - the ble service to read. (ignore it for serial-port) + * @param {number} characteristicId - the ble characteristic to get notifications from. + * @param {function?} onCharacteristicChanged - callback for characteristic change notifications + * like function(base64message). + * @return {Promise} - a Promise which will resolve when requested start notification. + */ + startNotifications (_serviceId, characteristicId, onCharacteristicChanged = null) { + // Connected device will start necessary notifications automatically on serial-port. + this.notifyListeners[SERIAL_CH_ID[characteristicId]] = onCharacteristicChanged; + return Promise.resolve(); + } + + readCh (ch) { + if (this.state !== 'open') { + return Promise.reject('port is not opened'); + } + return new Promise(resolve => { + const dataFrame = new Uint8Array(4); + dataFrame[0] = SFD; + dataFrame[1] = ChRequest.READ; + dataFrame[2] = ch >> 8; + dataFrame[3] = ch & 0xff; + if (this.chValues[ch]) { + this.chValues[ch][ChResponse.READ] = null; + } + let chRetrieveCounter = 20; + this.sendData(dataFrame) + .then(() => { + const checkInterval = 10; + const check = () => { + const received = this.chValues[ch]; + if (received && received[ChResponse.READ]) { + return resolve({ + message: Base64Util.arrayBufferToBase64(received[ChResponse.READ]) + }); + } + chRetrieveCounter--; + if (chRetrieveCounter === 0) { + return resolve(null); + } + setTimeout(() => { + check(); + }, checkInterval); + }; + check(); + }); + }); + } + + /** + * Read from the specified ble service. + * @param {number} serviceId - the ble service to read. + * @param {number} characteristicId - the ble characteristic to read. + * @param {boolean} optStartNotifications - whether to start receiving characteristic change notifications. + * @param {function} onCharacteristicChanged - callback for characteristic change notifications + * like function(base64message). + * @return {Promise} - a Promise from the remote read request which resolve {message: base64string}. + */ + read (serviceId, characteristicId, optStartNotifications = false, onCharacteristicChanged = null) { + const ch = SERIAL_CH_ID[characteristicId]; + const constantUpdatingCh = [ + 0x0101, /* State */ + 0x0102 /* Motion */ + ]; + if (constantUpdatingCh.includes(ch)) { + // Return already received values because rapid repeating requests will make the port freeze. + if (!this.chValues[ch]) { + return Promise.resolve(null); + } + return Promise.resolve({ + message: Base64Util.arrayBufferToBase64(this.chValues[ch][ChResponse.READ]) + }); + } + const readRetry = count => new Promise((resolve, reject) => { + if (count < 0) { + reject(`no response`); + log.error(`ch: ${ch} dose not response`); + return; + } + this.readCh(ch) + .then(result => { + if (result) { + if (optStartNotifications) { + this.startNotifications(serviceId, characteristicId, onCharacteristicChanged) + .then(() => resolve(result)); + return; + } + resolve(result); + return; + } + resolve(readRetry(--count)); + return; + }); + }); + return readRetry(3); + } + + /** + * Write value on the characteristic. + * @param {number} ch - characteristic to write + * @param {Uint8Array} value - value to write + * @param {boolean} withResponse - whether request response or not + * @returns {Promise} - a Promise which will resolve true when success to write + */ + writeCh (ch, value, withResponse) { + if (this.state !== 'open') { + return Promise.reject('port is not opened'); + } + return new Promise(resolve => { + const header = new Uint8Array(5); + header[0] = SFD; + header[1] = withResponse ? ChRequest.WRITE_RESPONSE : ChRequest.WRITE; + header[2] = ch >> 8; + header[3] = ch & 0xff; + header[4] = value.length; + const dataFrame = new Uint8Array([...header, ...value]); + if (withResponse) { + let chRetrieveCounter = 10; + this.sendData(dataFrame) + .then(() => { + const checkInterval = 10; + const check = () => { + const received = this.chValues[ch]; + if (received && (received[ChResponse.WRITE_RESPONSE])) { + return resolve(received[ChResponse.WRITE_RESPONSE][0] === 1); + } + chRetrieveCounter--; + if (chRetrieveCounter === 0) { + return resolve(false); + } + setTimeout(() => { + check(); + }, checkInterval); + }; + check(); + }); + } else { + this.sendData(dataFrame) + .then(() => resolve(true)); + } + }); + } + + /** + * Write data to the specified ble service. + * @param {number} serviceId - the ble service to write. + * @param {number} characteristicId - the ble characteristic to write. + * @param {string} message - the message to send. + * @param {string} encoding - the message encoding type. + * @param {boolean} withResponse - if true, resolve after peripheral's response. Always true for serial port. + * @return {Promise} - a Promise which will resolve true when success to write or reject with 'no response' + */ + // eslint-disable-next-line no-unused-vars + write (serviceId, characteristicId, message, encoding = null, withResponse = null) { + withResponse = true; // "response" is always required for noise tolerance on serial-port. + const value = (encoding === 'base64') ? Base64Util.base64ToUint8Array(message) : message; + const ch = SERIAL_CH_ID[characteristicId]; + if (this.chValues[ch]) { + this.chValues[ch][ChResponse.WRITE_RESPONSE] = null; + } + const writeRetry = count => new Promise((resolve, reject) => { + if (count < 0) { + reject(`no response`); + log.error(`write ch: ${ch} dose not response`); + return; + } + this.writeCh(ch, value, withResponse) + .then(result => { + if (result) { + resolve(result); + return; + } + resolve(writeRetry(--count)); + return; + }); + }); + return writeRetry(3); + } + + /** + * Handle an error resulting from losing connection to a peripheral. + * + * This could be due to: + * - battery depletion + * - going out of bluetooth range + * - being powered down + * + * Disconnect the device, and if the extension using this object has a + * reset callback, call it. Finally, emit an error to the runtime. + */ + handleDisconnectError (/* e */) { + if (this.state !== 'open') return; + + this.disconnect() + .then(() => { + if (this._resetCallback) { + this._resetCallback(); + } + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_CONNECTION_LOST_ERROR, { + message: `Scratch lost connection to`, + extensionId: this._extensionId + }); + }); + } + + _handleRequestError (/* e */) { + // log.error(`BLE error: ${JSON.stringify(e)}`); + + this._runtime.emit(this._runtime.constructor.PERIPHERAL_REQUEST_ERROR, { + message: `Scratch lost connection to`, + extensionId: this._extensionId + }); + } + + /** + * Called when disconnected by the device. + */ + onDisconnected (/* event */) { + this.handleDisconnectError(new Error('device disconnected')); + } +} + +module.exports = WebSerial;