Commit 3db27198 authored by Jochen Schulz's avatar Jochen Schulz
Browse files

updated newton to repa in examples

parent ff87a474
......@@ -33,6 +33,7 @@ A lecture to teach Haskell in a 2 weeks block lab course.
* [27 inverse](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/27 inverse.ipynb)
* [28 minsurf](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/28 minsurf.ipynb)
* [Untitled](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/Untitled.ipynb)
* [Untitled1](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/Untitled1.ipynb)
* [shortest path](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/shortest path.ipynb)
## viewing of the notebooks
......
# vim:ft=todo
TODO 2016-03-17 notebook-convertierungen ! lhs <-> ipynb
LECTURE:
26 continous optimization (minimierung: russel? siam -probleme )
TODO 2016-03-18 26 continous optimization (minimierung: russel? siam -probleme )
projektionsverfahren (russell) sudoku-solver (bfgs fertig machen
erklaerungen fuer die verfahren
algorithm formel-technisch und heuristisch erklaeren die ich auch vorstelle
exercise 26
exercise inverse
xx diskrete optimierung (lintim) shortest path implementation !
TODO 2016-03-18 xx diskrete optimierung (lintim) shortest path implementation !
und smith waterman
volterra intergralgleichungen (numeric differentiation)
DONE 2016-03-18 rewrite newton example with repa
CLOSED: 2016-03-20 23:06:21
:LOGBOOK:
DONE: 2016-03-20 23:06:21
WAITING: 2016-03-20 23:06:21
TODO 2014-09-04 Musterloesungen erstellen
13, 14 missing some code
rewrite rsa in 17
19 needs Musterloesungen
loesung problem 22.2
loesung 21.4
loesung 23.1 23.3
loesung 24.2
loesung 25.3
ex19 parallel arrays: rsa neu erstellen
ex20p5 jacobi solver
ex21p3 centralized differences + noise
ex22p4 auf cg umstellen (siam problem 20000)
ex24p3 solution missing
ex24 mandelbrot-irgendwas
ex24 change to endtime?
ex26p2 fehlt?
ex27 inverse: weitere aufgaben?
(-fft cg) aufgabe erstellen
-exercise 24: mandelbrot-irgendwas
TODO 2015-08-14 change <img> to ihaskell-builtin types (because nb-viewer isnt working with this)
TODO 2015-08-27 evtl. recursion reduzieren (bzw. performance diskussion spaeter)
TODO 2016-03-17 lecture 13,14 some possible rewrites
TODO erklärung zu performance und polymorphie
ALLGEMEIN:
algorithm formel-technisch und heuristisch erklaeren die ich auch vorstelle
14: erklaerung fuer fmap = bind mathematisch genau hinschreiben
ORGANISATION:
TODO 2014-09-04 evtl. eigenes Modul erstellen? oder noch andere mit implementieren?
TODO 2014-08-07 edgar onea kontaktieren https://sites.google.com/site/edgaroneagerman/
TODO 2015-08-25 make exercise 5 indepentend from map
higher order functions und higher order tools vor rekursion machen
IDEEN:
WAITING 2015-07-23 parallel and concurrent, cloudhaskell
:LOGBOOK:
WAITING: 2015-07-23 11:08:18
xx lube: finite elements (schwache formulierung) heat equation (hmatrix)
xx+1 *differentialgeometrie -> henrik (laplace weak implementieren) (hmatrix)
......@@ -48,36 +56,14 @@ xx+1 *differentialgeometrie -> henrik (laplace weak implementieren) (hmatrix)
xx *inverse probleme: intergralgleichungen,
xx *gerlind plonka waveleti bildverarbeitung
volterra intergralgleichungen (numeric differentiation) (schon in ex27?)
?? pde> meshless methods (heat equation, euler equation?
TODO 2015-09-01 data analysis testen (fehlen auf jeden fall pakete)
TODO 2015-08-05 allgemein: interpolation/fitting
TODO 2014-08-21 immutable/mutable
WAITING 2015-07-23 diagrams
:LOGBOOK:
WAITING: 2015-07-23 11:08:17
WAITING 2015-07-23 parallel and concurrent
:LOGBOOK:
WAITING: 2015-07-23 11:08:18
CANCELLED 2015-07-23 cloudhaskell
CLOSED: 2015-09-04 19:00:20
:LOGBOOK:
CANCELLED: 2015-09-04 19:00:20
DONE: 2015-09-04 19:00:15
WAITING: 2015-07-23 11:08:19
mehr heuristische erklaerungen warum und wie etwas funktioniert.
---
TODO erklärung zu performance und polymorphie
WAITING 2014-08-08 algebraische typen detaillierter
:LOGBOOK:
WAITING: 2015-07-02 17:28:15
......@@ -86,11 +72,6 @@ WAITING 2014-09-01 (spline-interpolation? , (siehe auch mapy))
:LOGBOOK:
WAITING: 2015-07-02 17:28:14
WAITING 2014-08-08 Beweise ?
:LOGBOOK:
WAITING: 2015-07-02 17:28:13
(zum Beispiel Korrektheitsbeweis, Beweise über Programmeigenschaften) sind dank mathematischer Basis (unter anderem Lambda-Kalkül) uneingeschränkt durchführbar.
WAITING 2014-08-15 primitiv Rekursiv einfuehren?
:LOGBOOK:
WAITING: 2015-06-12 12:28:24
......@@ -98,17 +79,15 @@ WAITING 2014-08-15 primitiv Rekursiv einfuehren?
WAITING 2014-07-29 headmay : http://hackage.haskell.org/package/safe-0.3/docs/Safe.html
:LOGBOOK:
WAITING: 2015-06-12 12:28:11
WAITING 2014-08-05 (Lambda Kalkuel einfuehren)
:LOGBOOK:
WAITING: 2015-06-12 12:28:12
WAITING 2014-08-08 (Kategorientheorie?)
:LOGBOOK:
WAITING: 2015-06-12 12:28:13
ORGANISATION:
TODO 2014-09-04 evtl. eigenes Modul erstellen? oder noch andere mit implementieren?
TODO 2014-08-07 edgar onea kontaktieren https://sites.google.com/site/edgaroneagerman/
WAITING 2014-08-08 Beweise ?
:LOGBOOK:
WAITING: 2015-07-02 17:28:13
(zum Beispiel Korrektheitsbeweis, Beweise über Programmeigenschaften) sind dank mathematischer Basis (unter anderem Lambda-Kalkül) uneingeschränkt durchführbar.
......@@ -225,3 +225,51 @@ DONE 2015-06-26 install profiling libraries
DONE: 2015-08-27 19:56:38
WAITING: 2015-08-25 20:25:23
DONE 2015-08-14 change <img> to ihaskell-builtin types (because nb-viewer isnt working with this)
CLOSED: 2016-03-17 12:18:08
:LOGBOOK:
DONE: 2016-03-17 12:18:08
WAITING: 2016-03-17 12:18:07
DONE 2015-08-27 evtl. recursion reduzieren (bzw. performance diskussion spaeter)
CLOSED: 2016-03-17 12:18:15
:LOGBOOK:
DONE: 2016-03-17 12:18:15
WAITING: 2016-03-17 12:18:14
14: erklaerung fuer fmap = bind mathematisch genau hinschreiben
DONE 2015-07-23 diagrams
CLOSED: 2016-03-17 13:15:51
:LOGBOOK:
DONE: 2016-03-17 13:15:51
WAITING: 2015-07-23 11:08:17
CANCELLED 2015-07-23 cloudhaskell
CLOSED: 2015-09-04 19:00:20
:LOGBOOK:
CANCELLED: 2015-09-04 19:00:20
DONE: 2015-09-04 19:00:15
WAITING: 2015-07-23 11:08:19
DONE 2016-03-17 18 saving charts kaputt?
CLOSED: 2016-03-18 15:40:31
:LOGBOOK:
DONE: 2016-03-18 15:40:31
WAITING: 2016-03-18 15:40:31
DONE 2016-03-18 19: threadscope und geschwindigkeit?
CLOSED: 2016-03-18 14:35:47
:LOGBOOK:
DONE: 2016-03-18 14:35:47
WAITING: 2016-03-18 14:35:47
DONE 2015-08-25 make exercise 5 indepentend from map
CLOSED: 2016-03-18 15:08:55
:LOGBOOK:
DONE: 2016-03-18 15:08:55
WAITING: 2016-03-18 15:08:55
......@@ -3,14 +3,10 @@ compile with
ghc -Odph -rtsopts -threaded -fno-liberate-case -funfolding-use-threshold1000 -funfolding-keeness-factor1000 -fllvm -optlo-O3 -eventlog newton.hs
run with (N is the number of threa2015-08-12)
run with (N is the number of threads)
./newton +RTS -s -N2 -l
visualize
../../vis.py -x xmat.txt -y ymat.txt -z zmat.txt -t image
and show what the threads are doing
threadscope newton.eventlog
......@@ -18,11 +14,14 @@ and show what the threads are doing
\begin{code}
{-# Language BangPatterns #-}
import Numeric.Container
import Data.Complex
import Data.Array.Repa as R
import Data.List (genericLength)
import Data.Packed.Repa
import Numeric.LinearAlgebra.Helpers
import Data.Array.Repa.IO.BMP (writeImageToBMP)
import Data.Array.Repa.Algorithms.ColorRamp
import Data.Array.Repa.Algorithms.Pixel
import Control.Monad.Identity (runIdentity)
newton :: (Complex Double -> Complex Double) -> Complex Double-> [(Complex Double,Complex Double)]
newton f xn = (f xn,xn) : newton f (fn xn)
......@@ -36,7 +35,7 @@ nm !g = ((\x -> (phase . last $ x, genericLength x) ) . snd . unzip . takeWhile
n = 1000 -- size of the domain
coord = linspace n (-0.9,0.9::Double) --coordinates in one dimension
-- get complex values in a grid
m = fromFunction (Z :. n :. n) (\(Z :. x :. y) -> coord @> x :+ coord @> y )
m = fromFunction (Z :. n :. n) (\(Z :. x :. y) -> coord ! (ix1 x) :+ coord ! (ix1 y) )
main = do
......@@ -44,17 +43,20 @@ main = do
let coordm = computeUnboxedS m
-- solution of newton iteration for every startvalue
let nv = R.map (nm) coordm
let nv = R.map nm coordm
solm <- computeUnboxedP nv
let phasem = R.map fst solm
saveMatrix "zmatphase.txt" "%f" (repaToMatrix $ copyS $ phasem)
-- number of iterations for every startvalue
let numitm = R.map snd solm
saveMatrix "zmat.txt" "%f" (repaToMatrix $ copyS $ numitm)
let xmat = copyS $ R.map (realPart) coordm
let ymat = copyS $ R.map (imagPart) coordm
saveMatrix "xmat.txt" "%f" (repaToMatrix xmat)
saveMatrix "ymat.txt" "%f" (repaToMatrix ymat)
(writeImageToBMP "../../images/newton_konvergenz2.bmp" . runIdentity . computeP)
$ R.map ( rgb8OfDouble. rampColorHotToCold 0 5 . (+2.5) ) phasem
(writeImageToBMP "../../images/newton_conv_sol2.bmp" . runIdentity . computeP)
$ R.map ( rgb8OfDouble. rampColorHotToCold 0 100) numitm
print "finish"
\end{code}
This image diff could not be displayed because it is too large. You can view the blob instead.
%% Cell type:markdown id: tags:
## Minimization
%% Cell type:code id: tags:
``` haskell
import Numeric.LinearAlgebra.Helpers
```
%% Cell type:markdown id: tags:
**minimize** <br /> Simplex algorithm (does not need a derivative).
```haskell
minimize
:: MinimizeMethod -- minimize method
-> Double -- desired precision of the solution (size test)
-> Int -- maximum number of iterations allowed
-> [Double] -- sizes of the initial search box
-> ([Double] -> Double) -- function to minimize
-> [Double] -- starting point
-> ([Double], Mat Double) -- solution vector and optimization path
```
```haskell
data MinimizeMethod = NMSimplex
| NMSimplex2
```
%% Cell type:code id: tags:
``` haskell
f [x,y] = 10*(x-1)^2 + 20*(y-2)^2 + 30
minimize NMSimplex2 1E-2 30 [1,1] f [5,7]
```
%%%% Output: display_data
%% Cell type:markdown id: tags:
Andere Verfahren wie Broyden-Fletcher-Goldfarb-Shanno (BFGS) in `minimizeD` (mit Ableitung)
other algorithms e.g. Broyden-Fletcher-Goldfarb-Shanno (BFGS) can be found in `minimizeD` (uses derivative)
## Finding roots
%% Cell type:markdown id: tags:
**root** <br /> non-linear, multidimensional root finding (no derivative needed).
```haskell
root
:: RootMethod -- Methode
-> Double -- maximum residual
-> Int -- maximum number of iterations allowed
-> ([Double] -> [Double]) -- function to minimize
-> [Double] -- starting point
-> ([Double], Mat Double) -- solution vector and optimization path
```
```haskell
data RootMethod = Hybrids
| Hybrid
| DNewton
| Broyden
```
%% Cell type:code id: tags:
``` haskell
(sol,path) = root Hybrid 1E-7 30 (\[x] -> [x^2 -1]) [-10]
path
sol
```
%%%% Output: display_data
%%%% Output: display_data
%% Cell type:markdown id: tags:
## Newton-method
%% Cell type:code id: tags:
``` haskell
newton :: (Fractional a, Floating a ) => (a -> a) -> a -> [(a,a)]
newton f xn = (f xn,xn) : newton f (fn xn)
where fn xn = let h = 1e-11 in xn - f xn/((f (xn+h) - f xn)/h)
```
%% Cell type:code id: tags:
``` haskell
unzip $ takeWhile (\(y,_) -> abs y >1e-16) $ newton cos (1::Double)
import Graphics.Rendering.Chart.Easy hiding (Matrix, Vector, scale)
import Graphics.Rendering.Chart.Backend.Cairo
(f,_) = unzip $ take 10 $ newton cos (1::Double)
toRenderable $ do
layout_title .= "Solution"
setColors [opaque blue, opaque red]
plot ( line "f" [ zip [0..] (map LogValue f) ] )
plot ( points "points" ( zip [0..] (map LogValue f) ) )
```
%%%% Output: display_data
%%%% Output: display_data
![](data:image/png;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iNDUwcHQiIGhlaWdodD0iMzAwcHQiIHZpZXdCb3g9IjAgMCA0NTAgMzAwIiB2ZXJzaW9uPSIxLjEiPgo8ZGVmcz4KPGc+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtMCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMC43NSAyLjY1NjI1IEwgMC43NSAtMTAuNTc4MTI1IEwgOC4yNSAtMTAuNTc4MTI1IEwgOC4yNSAyLjY1NjI1IFogTSAxLjU5Mzc1IDEuODEyNSBMIDcuNDA2MjUgMS44MTI1IEwgNy40MDYyNSAtOS43MzQzNzUgTCAxLjU5Mzc1IC05LjczNDM3NSBaIE0gMS41OTM3NSAxLjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTEiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDguOTg0Mzc1IC0xMC41OTM3NSBMIDguOTg0Mzc1IC04LjI4MTI1IEMgOC4zOTA2MjUgLTguNTM5MDYyIDcuODA0Njg4IC04LjczODI4MSA3LjIzNDM3NSAtOC44NzUgQyA2LjY2MDE1NiAtOS4wMTk1MzEgNi4xMTcxODggLTkuMDkzNzUgNS42MDkzNzUgLTkuMDkzNzUgQyA0LjkyOTY4OCAtOS4wOTM3NSA0LjQyOTY4OCAtOSA0LjEwOTM3NSAtOC44MTI1IEMgMy43OTY4NzUgLTguNjI1IDMuNjQwNjI1IC04LjMzNTkzOCAzLjY0MDYyNSAtNy45NTMxMjUgQyAzLjY0MDYyNSAtNy42NDg0MzggMy43NDIxODggLTcuNDE0MDYyIDMuOTUzMTI1IC03LjI1IEMgNC4xNzE4NzUgLTcuMDkzNzUgNC41NjY0MDYgLTYuOTU3MDMxIDUuMTQwNjI1IC02Ljg0Mzc1IEwgNi4zNDM3NSAtNi41OTM3NSBDIDcuNTYyNSAtNi4zNTE1NjIgOC40MjU3ODEgLTUuOTg0Mzc1IDguOTM3NSAtNS40ODQzNzUgQyA5LjQ0NTMxMiAtNC45ODQzNzUgOS43MDMxMjUgLTQuMjczNDM4IDkuNzAzMTI1IC0zLjM1OTM3NSBDIDkuNzAzMTI1IC0yLjE0ODQzOCA5LjM0Mzc1IC0xLjI1IDguNjI1IC0wLjY1NjI1IEMgNy45MTQwNjIgLTAuMDcwMzEyNSA2LjgyODEyNSAwLjIxODc1IDUuMzU5Mzc1IDAuMjE4NzUgQyA0LjY2MDE1NiAwLjIxODc1IDMuOTYwOTM4IDAuMTQ4NDM4IDMuMjY1NjI1IDAuMDE1NjI1IEMgMi41NjY0MDYgLTAuMTE3MTg4IDEuODY3MTg4IC0wLjMxNjQwNiAxLjE3MTg3NSAtMC41NzgxMjUgTCAxLjE3MTg3NSAtMi45NTMxMjUgQyAxLjg2NzE4OCAtMi41NzgxMjUgMi41MzkwNjIgLTIuMjk2ODc1IDMuMTg3NSAtMi4xMDkzNzUgQyAzLjg0Mzc1IC0xLjkyMTg3NSA0LjQ3MjY1NiAtMS44MjgxMjUgNS4wNzgxMjUgLTEuODI4MTI1IEMgNS42OTE0MDYgLTEuODI4MTI1IDYuMTYwMTU2IC0xLjkyOTY4OCA2LjQ4NDM3NSAtMi4xNDA2MjUgQyA2LjgxNjQwNiAtMi4zNDc2NTYgNi45ODQzNzUgLTIuNjQwNjI1IDYuOTg0Mzc1IC0zLjAxNTYyNSBDIDYuOTg0Mzc1IC0zLjM1OTM3NSA2Ljg3NSAtMy42MjUgNi42NTYyNSAtMy44MTI1IEMgNi40Mzc1IC00IDUuOTkyMTg4IC00LjE2NDA2MiA1LjMyODEyNSAtNC4zMTI1IEwgNC4yMzQzNzUgLTQuNTQ2ODc1IEMgMy4xNDA2MjUgLTQuNzg1MTU2IDIuMzM1OTM4IC01LjE2MDE1NiAxLjgyODEyNSAtNS42NzE4NzUgQyAxLjMyODEyNSAtNi4xNzk2ODggMS4wNzgxMjUgLTYuODY3MTg4IDEuMDc4MTI1IC03LjczNDM3NSBDIDEuMDc4MTI1IC04LjgyODEyNSAxLjQyNTc4MSAtOS42NjQwNjIgMi4xMjUgLTEwLjI1IEMgMi44MzIwMzEgLTEwLjg0Mzc1IDMuODQzNzUgLTExLjE0MDYyNSA1LjE1NjI1IC0xMS4xNDA2MjUgQyA1Ljc1NzgxMiAtMTEuMTQwNjI1IDYuMzc4OTA2IC0xMS4wOTM3NSA3LjAxNTYyNSAtMTEgQyA3LjY0ODQzOCAtMTAuOTA2MjUgOC4zMDQ2ODggLTEwLjc2OTUzMSA4Ljk4NDM3NSAtMTAuNTkzNzUgWiBNIDguOTg0Mzc1IC0xMC41OTM3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtMiI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNS4xNTYyNSAtNi41MzEyNSBDIDQuNTgyMDMxIC02LjUzMTI1IDQuMTQwNjI1IC02LjMyMDMxMiAzLjgyODEyNSAtNS45MDYyNSBDIDMuNTIzNDM4IC01LjQ4ODI4MSAzLjM3NSAtNC44ODI4MTIgMy4zNzUgLTQuMDkzNzUgQyAzLjM3NSAtMy4zMTI1IDMuNTIzNDM4IC0yLjcwNzAzMSAzLjgyODEyNSAtMi4yODEyNSBDIDQuMTQwNjI1IC0xLjg2MzI4MSA0LjU4MjAzMSAtMS42NTYyNSA1LjE1NjI1IC0xLjY1NjI1IEMgNS43MjY1NjIgLTEuNjU2MjUgNi4xNjQwNjIgLTEuODYzMjgxIDYuNDY4NzUgLTIuMjgxMjUgQyA2Ljc2OTUzMSAtMi43MDcwMzEgNi45MjE4NzUgLTMuMzEyNSA2LjkyMTg3NSAtNC4wOTM3NSBDIDYuOTIxODc1IC00Ljg4MjgxMiA2Ljc2OTUzMSAtNS40ODgyODEgNi40Njg3NSAtNS45MDYyNSBDIDYuMTY0MDYyIC02LjMyMDMxMiA1LjcyNjU2MiAtNi41MzEyNSA1LjE1NjI1IC02LjUzMTI1IFogTSA1LjE1NjI1IC04LjQwNjI1IEMgNi41NzAzMTIgLTguNDA2MjUgNy42NzU3ODEgLTguMDE5NTMxIDguNDY4NzUgLTcuMjUgQyA5LjI1NzgxMiAtNi40ODgyODEgOS42NTYyNSAtNS40Mzc1IDkuNjU2MjUgLTQuMDkzNzUgQyA5LjY1NjI1IC0yLjc1IDkuMjU3ODEyIC0xLjY5MTQwNiA4LjQ2ODc1IC0wLjkyMTg3NSBDIDcuNjc1NzgxIC0wLjE2MDE1NiA2LjU3MDMxMiAwLjIxODc1IDUuMTU2MjUgMC4yMTg3NSBDIDMuNzUgMC4yMTg3NSAyLjY0NDUzMSAtMC4xNjAxNTYgMS44NDM3NSAtMC45MjE4NzUgQyAxLjAzOTA2MiAtMS42OTE0MDYgMC42NDA2MjUgLTIuNzUgMC42NDA2MjUgLTQuMDkzNzUgQyAwLjY0MDYyNSAtNS40Mzc1IDEuMDM5MDYyIC02LjQ4ODI4MSAxLjg0Mzc1IC03LjI1IEMgMi42NDQ1MzEgLTguMDE5NTMxIDMuNzUgLTguNDA2MjUgNS4xNTYyNSAtOC40MDYyNSBaIE0gNS4xNTYyNSAtOC40MDYyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtMyI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMS4yNjU2MjUgLTExLjM5MDYyNSBMIDMuODc1IC0xMS4zOTA2MjUgTCAzLjg3NSAwIEwgMS4yNjU2MjUgMCBaIE0gMS4yNjU2MjUgLTExLjM5MDYyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtNCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMS4xNzE4NzUgLTMuMTg3NSBMIDEuMTcxODc1IC04LjIwMzEyNSBMIDMuODEyNSAtOC4yMDMxMjUgTCAzLjgxMjUgLTcuMzkwNjI1IEMgMy44MTI1IC02Ljk0MTQwNiAzLjgwNDY4OCAtNi4zNzg5MDYgMy43OTY4NzUgLTUuNzAzMTI1IEMgMy43OTY4NzUgLTUuMDM1MTU2IDMuNzk2ODc1IC00LjU4NTkzOCAzLjc5Njg3NSAtNC4zNTkzNzUgQyAzLjc5Njg3NSAtMy43MDMxMjUgMy44MTI1IC0zLjIyNjU2MiAzLjg0Mzc1IC0yLjkzNzUgQyAzLjg3NSAtMi42NDQ1MzEgMy45Mjk2ODggLTIuNDM3NSA0LjAxNTYyNSAtMi4zMTI1IEMgNC4xMjg5MDYgLTIuMTMyODEyIDQuMjY5NTMxIC0yIDQuNDM3NSAtMS45MDYyNSBDIDQuNjEzMjgxIC0xLjgxMjUgNC44MTY0MDYgLTEuNzY1NjI1IDUuMDQ2ODc1IC0xLjc2NTYyNSBDIDUuNTg1OTM4IC0xLjc2NTYyNSA2LjAxNTYyNSAtMS45NzI2NTYgNi4zMjgxMjUgLTIuMzkwNjI1IEMgNi42NDA2MjUgLTIuODE2NDA2IDYuNzk2ODc1IC0zLjQwNjI1IDYuNzk2ODc1IC00LjE1NjI1IEwgNi43OTY4NzUgLTguMjAzMTI1IEwgOS40MjE4NzUgLTguMjAzMTI1IEwgOS40MjE4NzUgMCBMIDYuNzk2ODc1IDAgTCA2Ljc5Njg3NSAtMS4xODc1IEMgNi4zOTg0MzggLTAuNzA3MDMxIDUuOTc2NTYyIC0wLjM1MTU2MiA1LjUzMTI1IC0wLjEyNSBDIDUuMDkzNzUgMC4xMDE1NjIgNC42MDkzNzUgMC4yMTg3NSA0LjA3ODEyNSAwLjIxODc1IEMgMy4xMjg5MDYgMC4yMTg3NSAyLjQwNjI1IC0wLjA3MDMxMjUgMS45MDYyNSAtMC42NTYyNSBDIDEuNDE0MDYyIC0xLjIzODI4MSAxLjE3MTg3NSAtMi4wODIwMzEgMS4xNzE4NzUgLTMuMTg3NSBaIE0gMS4xNzE4NzUgLTMuMTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtNSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNC4xMjUgLTEwLjUzMTI1IEwgNC4xMjUgLTguMjAzMTI1IEwgNi44MjgxMjUgLTguMjAzMTI1IEwgNi44MjgxMjUgLTYuMzI4MTI1IEwgNC4xMjUgLTYuMzI4MTI1IEwgNC4xMjUgLTIuODQzNzUgQyA0LjEyNSAtMi40Njg3NSA0LjE5NTMxMiAtMi4yMTA5MzggNC4zNDM3NSAtMi4wNzgxMjUgQyA0LjUgLTEuOTQxNDA2IDQuODAwNzgxIC0xLjg3NSA1LjI1IC0xLjg3NSBMIDYuNTkzNzUgLTEuODc1IEwgNi41OTM3NSAwIEwgNC4zNDM3NSAwIEMgMy4zMTI1IDAgMi41NzgxMjUgLTAuMjEwOTM4IDIuMTQwNjI1IC0wLjY0MDYyNSBDIDEuNzEwOTM4IC0xLjA3ODEyNSAxLjUgLTEuODEyNSAxLjUgLTIuODQzNzUgTCAxLjUgLTYuMzI4MTI1IEwgMC4yMDMxMjUgLTYuMzI4MTI1IEwgMC4yMDMxMjUgLTguMjAzMTI1IEwgMS41IC04LjIwMzEyNSBMIDEuNSAtMTAuNTMxMjUgWiBNIDQuMTI1IC0xMC41MzEyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtNiI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMS4yNjU2MjUgLTguMjAzMTI1IEwgMy44NzUgLTguMjAzMTI1IEwgMy44NzUgMCBMIDEuMjY1NjI1IDAgWiBNIDEuMjY1NjI1IC0xMS4zOTA2MjUgTCAzLjg3NSAtMTEuMzkwNjI1IEwgMy44NzUgLTkuMjY1NjI1IEwgMS4yNjU2MjUgLTkuMjY1NjI1IFogTSAxLjI2NTYyNSAtMTEuMzkwNjI1ICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMC03Ij4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA5LjUgLTUgTCA5LjUgMCBMIDYuODc1IDAgTCA2Ljg3NSAtMy44MjgxMjUgQyA2Ljg3NSAtNC41MzUxNTYgNi44NTkzNzUgLTUuMDE5NTMxIDYuODI4MTI1IC01LjI4MTI1IEMgNi43OTY4NzUgLTUuNTUwNzgxIDYuNzM4MjgxIC01Ljc1IDYuNjU2MjUgLTUuODc1IEMgNi41NTA3ODEgLTYuMDUwNzgxIDYuNDEwMTU2IC02LjE4NzUgNi4yMzQzNzUgLTYuMjgxMjUgQyA2LjA2NjQwNiAtNi4zNzUgNS44NjcxODggLTYuNDIxODc1IDUuNjQwNjI1IC02LjQyMTg3NSBDIDUuMDg1OTM4IC02LjQyMTg3NSA0LjY1NjI1IC02LjIwNzAzMSA0LjM0Mzc1IC01Ljc4MTI1IEMgNC4wMzEyNSAtNS4zNjMyODEgMy44NzUgLTQuNzgxMjUgMy44NzUgLTQuMDMxMjUgTCAzLjg3NSAwIEwgMS4yNjU2MjUgMCBMIDEuMjY1NjI1IC04LjIwMzEyNSBMIDMuODc1IC04LjIwMzEyNSBMIDMuODc1IC03IEMgNC4yNjk1MzEgLTcuNDc2NTYyIDQuNjkxNDA2IC03LjgzMjAzMSA1LjE0MDYyNSAtOC4wNjI1IEMgNS41ODU5MzggLTguMjg5MDYyIDYuMDc4MTI1IC04LjQwNjI1IDYuNjA5Mzc1IC04LjQwNjI1IEMgNy41NTQ2ODggLTguNDA2MjUgOC4yNzM0MzggLTguMTEzMjgxIDguNzY1NjI1IC03LjUzMTI1IEMgOS4yNTM5MDYgLTYuOTQ1MzEyIDkuNSAtNi4xMDE1NjIgOS41IC01IFogTSA5LjUgLTUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTAiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDAuNSAxLjc2NTYyNSBMIDAuNSAtNy4wNDY4NzUgTCA1LjUgLTcuMDQ2ODc1IEwgNS41IDEuNzY1NjI1IFogTSAxLjA2MjUgMS4yMTg3NSBMIDQuOTM3NSAxLjIxODc1IEwgNC45Mzc1IC02LjQ4NDM3NSBMIDEuMDYyNSAtNi40ODQzNzUgWiBNIDEuMDYyNSAxLjIxODc1ICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMS0xIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSAzLjE3MTg3NSAtNi42NDA2MjUgQyAyLjY3MTg3NSAtNi42NDA2MjUgMi4yODkwNjIgLTYuMzkwNjI1IDIuMDMxMjUgLTUuODkwNjI1IEMgMS43ODEyNSAtNS4zOTA2MjUgMS42NTYyNSAtNC42NDA2MjUgMS42NTYyNSAtMy42NDA2MjUgQyAxLjY1NjI1IC0yLjY0MDYyNSAxLjc4MTI1IC0xLjg5MDYyNSAyLjAzMTI1IC0xLjM5MDYyNSBDIDIuMjg5MDYyIC0wLjg5MDYyNSAyLjY3MTg3NSAtMC42NDA2MjUgMy4xNzE4NzUgLTAuNjQwNjI1IEMgMy42OTE0MDYgLTAuNjQwNjI1IDQuMDc4MTI1IC0wLjg5MDYyNSA0LjMyODEyNSAtMS4zOTA2MjUgQyA0LjU4NTkzOCAtMS44OTA2MjUgNC43MTg3NSAtMi42NDA2MjUgNC43MTg3NSAtMy42NDA2MjUgQyA0LjcxODc1IC00LjY0MDYyNSA0LjU4NTkzOCAtNS4zOTA2MjUgNC4zMjgxMjUgLTUuODkwNjI1IEMgNC4wNzgxMjUgLTYuMzkwNjI1IDMuNjkxNDA2IC02LjY0MDYyNSAzLjE3MTg3NSAtNi42NDA2MjUgWiBNIDMuMTcxODc1IC03LjQyMTg3NSBDIDMuOTkyMTg4IC03LjQyMTg3NSA0LjYxNzE4OCAtNy4wOTc2NTYgNS4wNDY4NzUgLTYuNDUzMTI1IEMgNS40ODQzNzUgLTUuODA0Njg4IDUuNzAzMTI1IC00Ljg2NzE4OCA1LjcwMzEyNSAtMy42NDA2MjUgQyA1LjcwMzEyNSAtMi40MTAxNTYgNS40ODQzNzUgLTEuNDcyNjU2IDUuMDQ2ODc1IC0wLjgyODEyNSBDIDQuNjE3MTg4IC0wLjE3OTY4OCAzLjk5MjE4OCAwLjE0MDYyNSAzLjE3MTg3NSAwLjE0MDYyNSBDIDIuMzU5Mzc1IDAuMTQwNjI1IDEuNzM0Mzc1IC0wLjE3OTY4OCAxLjI5Njg3NSAtMC44MjgxMjUgQyAwLjg2NzE4OCAtMS40NzI2NTYgMC42NTYyNSAtMi40MTAxNTYgMC42NTYyNSAtMy42NDA2MjUgQyAwLjY1NjI1IC00Ljg2NzE4OCAwLjg2NzE4OCAtNS44MDQ2ODggMS4yOTY4NzUgLTYuNDUzMTI1IEMgMS43MzQzNzUgLTcuMDk3NjU2IDIuMzU5Mzc1IC03LjQyMTg3NSAzLjE3MTg3NSAtNy40MjE4NzUgWiBNIDMuMTcxODc1IC03LjQyMTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtMiI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMS4wNjI1IC0xLjIzNDM3NSBMIDIuMDkzNzUgLTEuMjM0Mzc1IEwgMi4wOTM3NSAwIEwgMS4wNjI1IDAgWiBNIDEuMDYyNSAtMS4yMzQzNzUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTMiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDEuMjM0Mzc1IC0wLjgyODEyNSBMIDIuODU5Mzc1IC0wLjgyODEyNSBMIDIuODU5Mzc1IC02LjM5MDYyNSBMIDEuMDkzNzUgLTYuMDQ2ODc1IEwgMS4wOTM3NSAtNi45Mzc1IEwgMi44NDM3NSAtNy4yOTY4NzUgTCAzLjgyODEyNSAtNy4yOTY4NzUgTCAzLjgyODEyNSAtMC44MjgxMjUgTCA1LjQzNzUgLTAuODI4MTI1IEwgNS40Mzc1IDAgTCAxLjIzNDM3NSAwIFogTSAxLjIzNDM3NSAtMC44MjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTQiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDEuOTIxODc1IC0wLjgyODEyNSBMIDUuMzU5Mzc1IC0wLjgyODEyNSBMIDUuMzU5Mzc1IDAgTCAwLjczNDM3NSAwIEwgMC43MzQzNzUgLTAuODI4MTI1IEMgMS4xMDkzNzUgLTEuMjEwOTM4IDEuNjE3MTg4IC0xLjczNDM3NSAyLjI2NTYyNSAtMi4zOTA2MjUgQyAyLjkxMDE1NiAtMy4wNDY4NzUgMy4zMTY0MDYgLTMuNDY4NzUgMy40ODQzNzUgLTMuNjU2MjUgQyAzLjc5Njg3NSAtNC4wMDc4MTIgNC4wMTU2MjUgLTQuMzA0Njg4IDQuMTQwNjI1IC00LjU0Njg3NSBDIDQuMjY1NjI1IC00Ljc5Njg3NSA0LjMyODEyNSAtNS4wMzkwNjIgNC4zMjgxMjUgLTUuMjgxMjUgQyA0LjMyODEyNSAtNS42NjQwNjIgNC4xOTE0MDYgLTUuOTc2NTYyIDMuOTIxODc1IC02LjIxODc1IEMgMy42NDg0MzggLTYuNDY4NzUgMy4yOTY4NzUgLTYuNTkzNzUgMi44NTkzNzUgLTYuNTkzNzUgQyAyLjU0Njg3NSAtNi41OTM3NSAyLjIxODc1IC02LjUzNTE1NiAxLjg3NSAtNi40MjE4NzUgQyAxLjUzOTA2MiAtNi4zMTY0MDYgMS4xNzU3ODEgLTYuMTU2MjUgMC43ODEyNSAtNS45Mzc1IEwgMC43ODEyNSAtNi45Mzc1IEMgMS4xNzU3ODEgLTcuMDkzNzUgMS41NDY4NzUgLTcuMjEwOTM4IDEuODkwNjI1IC03LjI5Njg3NSBDIDIuMjM0Mzc1IC03LjM3ODkwNiAyLjU1MDc4MSAtNy40MjE4NzUgMi44NDM3NSAtNy40MjE4NzUgQyAzLjU5Mzc1IC03LjQyMTg3NSA0LjE5MTQwNiAtNy4yMzQzNzUgNC42NDA2MjUgLTYuODU5Mzc1IEMgNS4wOTc2NTYgLTYuNDg0Mzc1IDUuMzI4MTI1IC01Ljk3NjU2MiA1LjMyODEyNSAtNS4zNDM3NSBDIDUuMzI4MTI1IC01LjAzOTA2MiA1LjI2OTUzMSAtNC43NTM5MDYgNS4xNTYyNSAtNC40ODQzNzUgQyA1LjAzOTA2MiAtNC4yMjI2NTYgNC44MzU5MzggLTMuOTEwMTU2IDQuNTQ2ODc1IC0zLjU0Njg3NSBDIDQuNDYwOTM4IC0zLjQ1MzEyNSA0LjIwMzEyNSAtMy4xNzU3ODEgMy43NjU2MjUgLTIuNzE4NzUgQyAzLjMyODEyNSAtMi4yNjk1MzEgMi43MTA5MzggLTEuNjQwNjI1IDEuOTIxODc1IC0wLjgyODEyNSBaIE0gMS45MjE4NzUgLTAuODI4MTI1ICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMS01Ij4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSAzLjc4MTI1IC02LjQzNzUgTCAxLjI5Njg3NSAtMi41NDY4NzUgTCAzLjc4MTI1IC0yLjU0Njg3NSBaIE0gMy41MTU2MjUgLTcuMjk2ODc1IEwgNC43NjU2MjUgLTcuMjk2ODc1IEwgNC43NjU2MjUgLTIuNTQ2ODc1IEwgNS43OTY4NzUgLTIuNTQ2ODc1IEwgNS43OTY4NzUgLTEuNzE4NzUgTCA0Ljc2NTYyNSAtMS43MTg3NSBMIDQuNzY1NjI1IDAgTCAzLjc4MTI1IDAgTCAzLjc4MTI1IC0xLjcxODc1IEwgMC40ODQzNzUgLTEuNzE4NzUgTCAwLjQ4NDM3NSAtMi42NzE4NzUgWiBNIDMuNTE1NjI1IC03LjI5Njg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtNiI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMy4yOTY4NzUgLTQuMDMxMjUgQyAyLjg1OTM3NSAtNC4wMzEyNSAyLjUwNzgxMiAtMy44Nzg5MDYgMi4yNSAtMy41NzgxMjUgQyAxLjk4ODI4MSAtMy4yNzM0MzggMS44NTkzNzUgLTIuODYzMjgxIDEuODU5Mzc1IC0yLjM0Mzc1IEMgMS44NTkzNzUgLTEuODEyNSAxLjk4ODI4MSAtMS4zOTQ1MzEgMi4yNSAtMS4wOTM3NSBDIDIuNTA3ODEyIC0wLjc4OTA2MiAyLjg1OTM3NSAtMC42NDA2MjUgMy4yOTY4NzUgLTAuNjQwNjI1IEMgMy43NDIxODggLTAuNjQwNjI1IDQuMDkzNzUgLTAuNzg5MDYyIDQuMzQzNzUgLTEuMDkzNzUgQyA0LjYwMTU2MiAtMS4zOTQ1MzEgNC43MzQzNzUgLTEuODEyNSA0LjczNDM3NSAtMi4zNDM3NSBDIDQuNzM0Mzc1IC0yLjg2MzI4MSA0LjYwMTU2MiAtMy4yNzM0MzggNC4zNDM3NSAtMy41NzgxMjUgQyA0LjA5Mzc1IC0zLjg3ODkwNiAzLjc0MjE4OCAtNC4wMzEyNSAzLjI5Njg3NSAtNC4wMzEyNSBaIE0gNS4yNjU2MjUgLTcuMTI1IEwgNS4yNjU2MjUgLTYuMjM0Mzc1IEMgNS4wMTU2MjUgLTYuMzQ3NjU2IDQuNzU3ODEyIC02LjQzNzUgNC41IC02LjUgQyA0LjI1IC02LjU2MjUgNC4wMDM5MDYgLTYuNTkzNzUgMy43NjU2MjUgLTYuNTkzNzUgQyAzLjEwOTM3NSAtNi41OTM3NSAyLjYwOTM3NSAtNi4zNzUgMi4yNjU2MjUgLTUuOTM3NSBDIDEuOTIxODc1IC01LjUgMS43MjY1NjIgLTQuODMyMDMxIDEuNjg3NSAtMy45Mzc1IEMgMS44NzUgLTQuMjE4NzUgMi4xMTMyODEgLTQuNDI5Njg4IDIuNDA2MjUgLTQuNTc4MTI1IEMgMi42OTUzMTIgLTQuNzM0Mzc1IDMuMDE1NjI1IC00LjgxMjUgMy4zNTkzNzUgLTQuODEyNSBDIDQuMDg1OTM4IC00LjgxMjUgNC42NjQwNjIgLTQuNTg1OTM4IDUuMDkzNzUgLTQuMTQwNjI1IEMgNS41MTk1MzEgLTMuNzAzMTI1IDUuNzM0Mzc1IC0zLjEwMTU2MiA1LjczNDM3NSAtMi4zNDM3NSBDIDUuNzM0Mzc1IC0xLjU5Mzc1IDUuNTA3ODEyIC0wLjk4ODI4MSA1LjA2MjUgLTAuNTMxMjUgQyA0LjYyNSAtMC4wODIwMzEyIDQuMDM1MTU2IDAuMTQwNjI1IDMuMjk2ODc1IDAuMTQwNjI1IEMgMi40NTMxMjUgMC4xNDA2MjUgMS44MDQ2ODggLTAuMTc5Njg4IDEuMzU5Mzc1IC0wLjgyODEyNSBDIDAuOTIxODc1IC0xLjQ3MjY1NiAwLjcwMzEyNSAtMi40MTAxNTYgMC43MDMxMjUgLTMuNjQwNjI1IEMgMC43MDMxMjUgLTQuNzg1MTU2IDAuOTcyNjU2IC01LjcwMzEyNSAxLjUxNTYyNSAtNi4zOTA2MjUgQyAyLjA2NjQwNiAtNy4wNzgxMjUgMi44MDA3ODEgLTcuNDIxODc1IDMuNzE4NzUgLTcuNDIxODc1IEMgMy45Njg3NSAtNy40MjE4NzUgNC4yMTg3NSAtNy4zOTQ1MzEgNC40Njg3NSAtNy4zNDM3NSBDIDQuNzE4NzUgLTcuMzAwNzgxIDQuOTg0Mzc1IC03LjIyNjU2MiA1LjI2NTYyNSAtNy4xMjUgWiBNIDUuMjY1NjI1IC03LjEyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtNyI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMy4xNzE4NzUgLTMuNDY4NzUgQyAyLjcwMzEyNSAtMy40Njg3NSAyLjMzMjAzMSAtMy4zMzU5MzggMi4wNjI1IC0zLjA3ODEyNSBDIDEuODAwNzgxIC0yLjgyODEyNSAxLjY3MTg3NSAtMi40ODQzNzUgMS42NzE4NzUgLTIuMDQ2ODc1IEMgMS42NzE4NzUgLTEuNjA5Mzc1IDEuODAwNzgxIC0xLjI2NTYyNSAyLjA2MjUgLTEuMDE1NjI1IEMgMi4zMzIwMzEgLTAuNzY1NjI1IDIuNzAzMTI1IC0wLjY0MDYyNSAzLjE3MTg3NSAtMC42NDA2MjUgQyAzLjY0MDYyNSAtMC42NDA2MjUgNC4wMDc4MTIgLTAuNzY1NjI1IDQuMjgxMjUgLTEuMDE1NjI1IEMgNC41NTA3ODEgLTEuMjY1NjI1IDQuNjg3NSAtMS42MDkzNzUgNC42ODc1IC0yLjA0Njg3NSBDIDQuNjg3NSAtMi40ODQzNzUgNC41NTA3ODEgLTIuODI4MTI1IDQuMjgxMjUgLTMuMDc4MTI1IEMgNC4wMTk1MzEgLTMuMzM1OTM4IDMuNjQ4NDM4IC0zLjQ2ODc1IDMuMTcxODc1IC0zLjQ2ODc1IFogTSAyLjE4NzUgLTMuODc1IEMgMS43Njk1MzEgLTMuOTc2NTYyIDEuNDQxNDA2IC00LjE3NTc4MSAxLjIwMzEyNSAtNC40Njg3NSBDIDAuOTYwOTM4IC00Ljc1NzgxMiAwLjg0Mzc1IC01LjExMzI4MSAwLjg0Mzc1IC01LjUzMTI1IEMgMC44NDM3NSAtNi4xMTMyODEgMS4wNTA3ODEgLTYuNTcwMzEyIDEuNDY4NzUgLTYuOTA2MjUgQyAxLjg4MjgxMiAtNy4yNSAyLjQ1MzEyNSAtNy40MjE4NzUgMy4xNzE4NzUgLTcuNDIxODc1IEMgMy44OTg0MzggLTcuNDIxODc1IDQuNDcyNjU2IC03LjI1IDQuODkwNjI1IC02LjkwNjI1IEMgNS4zMDQ2ODggLTYuNTcwMzEyIDUuNTE1NjI1IC02LjExMzI4MSA1LjUxNTYyNSAtNS41MzEyNSBDIDUuNTE1NjI1IC01LjExMzI4MSA1LjM5NDUzMSAtNC43NTc4MTIgNS4xNTYyNSAtNC40Njg3NSBDIDQuOTE0MDYyIC00LjE3NTc4MSA0LjU4NTkzOCAtMy45NzY1NjIgNC4xNzE4NzUgLTMuODc1IEMgNC42NDg0MzggLTMuNzY5NTMxIDUuMDE5NTMxIC0zLjU1NDY4OCA1LjI4MTI1IC0zLjIzNDM3NSBDIDUuNTM5MDYyIC0yLjkxMDE1NiA1LjY3MTg3NSAtMi41MTU2MjUgNS42NzE4NzUgLTIuMDQ2ODc1IEMgNS42NzE4NzUgLTEuMzM1OTM4IDUuNDU3MDMxIC0wLjc5Njg3NSA1LjAzMTI1IC0wLjQyMTg3NSBDIDQuNjAxNTYyIC0wLjA0Njg3NSAzLjk4NDM3NSAwLjE0MDYyNSAzLjE3MTg3NSAwLjE0MDYyNSBDIDIuMzY3MTg4IDAuMTQwNjI1IDEuNzUgLTAuMDQ2ODc1IDEuMzEyNSAtMC40MjE4NzUgQyAwLjg4MjgxMiAtMC43OTY4NzUgMC42NzE4NzUgLTEuMzM1OTM4IDAuNjcxODc1IC0yLjA0Njg3NSBDIDAuNjcxODc1IC0yLjUxNTYyNSAwLjgwNDY4OCAtMi45MTAxNTYgMS4wNzgxMjUgLTMuMjM0Mzc1IEMgMS4zNDc2NTYgLTMuNTU0Njg4IDEuNzE4NzUgLTMuNzY5NTMxIDIuMTg3NSAtMy44NzUgWiBNIDEuODI4MTI1IC01LjQzNzUgQyAxLjgyODEyNSAtNS4wNjI1IDEuOTQ1MzEyIC00Ljc2NTYyNSAyLjE4NzUgLTQuNTQ2ODc1IEMgMi40MjU3ODEgLTQuMzM1OTM4IDIuNzUzOTA2IC00LjIzNDM3NSAzLjE3MTg3NSAtNC4yMzQzNzUgQyAzLjU5NzY1NiAtNC4yMzQzNzUgMy45Mjk2ODggLTQuMzM1OTM4IDQuMTcxODc1IC00LjU0Njg3NSBDIDQuNDEwMTU2IC00Ljc2NTYyNSA0LjUzMTI1IC01LjA2MjUgNC41MzEyNSAtNS40Mzc1IEMgNC41MzEyNSAtNS44MTI1IDQuNDEwMTU2IC02LjEwMTU2MiA0LjE3MTg3NSAtNi4zMTI1IEMgMy45Mjk2ODggLTYuNTMxMjUgMy41OTc2NTYgLTYuNjQwNjI1IDMuMTcxODc1IC02LjY0MDYyNSBDIDIuNzUzOTA2IC02LjY0MDYyNSAyLjQyNTc4MSAtNi41MzEyNSAyLjE4NzUgLTYuMzEyNSBDIDEuOTQ1MzEyIC02LjEwMTU2MiAxLjgyODEyNSAtNS44MTI1IDEuODI4MTI1IC01LjQzNzUgWiBNIDEuODI4MTI1IC01LjQzNzUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTgiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDMuNzE4NzUgLTcuNTkzNzUgTCAzLjcxODc1IC02Ljg0Mzc1IEwgMi44NTkzNzUgLTYuODQzNzUgQyAyLjUzNTE1NiAtNi44NDM3NSAyLjMxMjUgLTYuNzczNDM4IDIuMTg3NSAtNi42NDA2MjUgQyAyLjA2MjUgLTYuNTE1NjI1IDIgLTYuMjg1MTU2IDIgLTUuOTUzMTI1IEwgMiAtNS40Njg3NSBMIDMuNDY4NzUgLTUuNDY4NzUgTCAzLjQ2ODc1IC00Ljc2NTYyNSBMIDIgLTQuNzY1NjI1IEwgMiAwIEwgMS4wOTM3NSAwIEwgMS4wOTM3NSAtNC43NjU2MjUgTCAwLjIzNDM3NSAtNC43NjU2MjUgTCAwLjIzNDM3NSAtNS40Njg3NSBMIDEuMDkzNzUgLTUuNDY4NzUgTCAxLjA5Mzc1IC01Ljg0Mzc1IEMgMS4wOTM3NSAtNi40NTcwMzEgMS4yMzQzNzUgLTYuODk4NDM4IDEuNTE1NjI1IC03LjE3MTg3NSBDIDEuNzk2ODc1IC03LjQ1MzEyNSAyLjI0MjE4OCAtNy41OTM3NSAyLjg1OTM3NSAtNy41OTM3NSBaIE0gMy43MTg3NSAtNy41OTM3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtOSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMS44MTI1IC0wLjgyODEyNSBMIDEuODEyNSAyLjA3ODEyNSBMIDAuOTA2MjUgMi4wNzgxMjUgTCAwLjkwNjI1IC01LjQ2ODc1IEwgMS44MTI1IC01LjQ2ODc1IEwgMS44MTI1IC00LjY0MDYyNSBDIDIgLTQuOTYwOTM4IDIuMjM0Mzc1IC01LjIwMzEyNSAyLjUxNTYyNSAtNS4zNTkzNzUgQyAyLjgwNDY4OCAtNS41MTU2MjUgMy4xNTYyNSAtNS41OTM3NSAzLjU2MjUgLTUuNTkzNzUgQyA0LjIyNjU2MiAtNS41OTM3NSA0Ljc2NTYyNSAtNS4zMjgxMjUgNS4xNzE4NzUgLTQuNzk2ODc1IEMgNS41ODU5MzggLTQuMjczNDM4IDUuNzk2ODc1IC0zLjU4NTkzOCA1Ljc5Njg3NSAtMi43MzQzNzUgQyA1Ljc5Njg3NSAtMS44NjcxODggNS41ODU5MzggLTEuMTcxODc1IDUuMTcxODc1IC0wLjY0MDYyNSBDIDQuNzY1NjI1IC0wLjExNzE4OCA0LjIyNjU2MiAwLjE0MDYyNSAzLjU2MjUgMC4xNDA2MjUgQyAzLjE1NjI1IDAuMTQwNjI1IDIuODA0Njg4IDAuMDYyNSAyLjUxNTYyNSAtMC4wOTM3NSBDIDIuMjM0Mzc1IC0wLjI1IDIgLTAuNDkyMTg4IDEuODEyNSAtMC44MjgxMjUgWiBNIDQuODc1IC0yLjczNDM3NSBDIDQuODc1IC0zLjM5MDYyNSA0LjczNDM3NSAtMy45MDYyNSA0LjQ1MzEyNSAtNC4yODEyNSBDIDQuMTc5Njg4IC00LjY1NjI1IDMuODEyNSAtNC44NDM3NSAzLjM0Mzc1IC00Ljg0Mzc1IEMgMi44NjMyODEgLTQuODQzNzUgMi40ODgyODEgLTQuNjU2MjUgMi4yMTg3NSAtNC4yODEyNSBDIDEuOTQ1MzEyIC0zLjkwNjI1IDEuODEyNSAtMy4zOTA2MjUgMS44MTI1IC0yLjczNDM3NSBDIDEuODEyNSAtMi4wNjY0MDYgMS45NDUzMTIgLTEuNTQ2ODc1IDIuMjE4NzUgLTEuMTcxODc1IEMgMi40ODgyODEgLTAuNzk2ODc1IDIuODYzMjgxIC0wLjYwOTM3NSAzLjM0Mzc1IC0wLjYwOTM3NSBDIDMuODEyNSAtMC42MDkzNzUgNC4xNzk2ODggLTAuNzk2ODc1IDQuNDUzMTI1IC0xLjE3MTg3NSBDIDQuNzM0Mzc1IC0xLjU0Njg3NSA0Ljg3NSAtMi4wNjY0MDYgNC44NzUgLTIuNzM0Mzc1IFogTSA0Ljg3NSAtMi43MzQzNzUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTEwIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSAzLjA2MjUgLTQuODQzNzUgQyAyLjU4MjAzMSAtNC44NDM3NSAyLjIwMzEyNSAtNC42NTYyNSAxLjkyMTg3NSAtNC4yODEyNSBDIDEuNjQwNjI1IC0zLjkwNjI1IDEuNSAtMy4zOTA2MjUgMS41IC0yLjczNDM3NSBDIDEuNSAtMi4wNzgxMjUgMS42MzI4MTIgLTEuNTYyNSAxLjkwNjI1IC0xLjE4NzUgQyAyLjE4NzUgLTAuODEyNSAyLjU3MDMxMiAtMC42MjUgMy4wNjI1IC0wLjYyNSBDIDMuNTM5MDYyIC0wLjYyNSAzLjkyMTg3NSAtMC44MTI1IDQuMjAzMTI1IC0xLjE4NzUgQyA0LjQ4NDM3NSAtMS41NjI1IDQuNjI1IC0yLjA3ODEyNSA0LjYyNSAtMi43MzQzNzUgQyA0LjYyNSAtMy4zNzg5MDYgNC40ODQzNzUgLTMuODkwNjI1IDQuMjAzMTI1IC00LjI2NTYyNSBDIDMuOTIxODc1IC00LjY0ODQzOCAzLjUzOTA2MiAtNC44NDM3NSAzLjA2MjUgLTQuODQzNzUgWiBNIDMuMDYyNSAtNS41OTM3NSBDIDMuODQzNzUgLTUuNTkzNzUgNC40NTcwMzEgLTUuMzM1OTM4IDQuOTA2MjUgLTQuODI4MTI1IEMgNS4zNTE1NjIgLTQuMzI4MTI1IDUuNTc4MTI1IC0zLjYyODkwNiA1LjU3ODEyNSAtMi43MzQzNzUgQyA1LjU3ODEyNSAtMS44MzU5MzggNS4zNTE1NjIgLTEuMTMyODEyIDQuOTA2MjUgLTAuNjI1IEMgNC40NTcwMzEgLTAuMTEzMjgxIDMuODQzNzUgMC4xNDA2MjUgMy4wNjI1IDAuMTQwNjI1IEMgMi4yODEyNSAwLjE0MDYyNSAxLjY2NDA2MiAtMC4xMTMyODEgMS4yMTg3NSAtMC42MjUgQyAwLjc2OTUzMSAtMS4xMzI4MTIgMC41NDY4NzUgLTEuODM1OTM4IDAuNTQ2ODc1IC0yLjczNDM3NSBDIDAuNTQ2ODc1IC0zLjYyODkwNiAwLjc2OTUzMSAtNC4zMjgxMjUgMS4yMTg3NSAtNC44MjgxMjUgQyAxLjY2NDA2MiAtNS4zMzU5MzggMi4yODEyNSAtNS41OTM3NSAzLjA2MjUgLTUuNTkzNzUgWiBNIDMuMDYyNSAtNS41OTM3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtMTEiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDAuOTM3NSAtNS40Njg3NSBMIDEuODQzNzUgLTUuNDY4NzUgTCAxLjg0Mzc1IDAgTCAwLjkzNzUgMCBaIE0gMC45Mzc1IC03LjU5Mzc1IEwgMS44NDM3NSAtNy41OTM3NSBMIDEuODQzNzUgLTYuNDUzMTI1IEwgMC45Mzc1IC02LjQ1MzEyNSBaIE0gMC45Mzc1IC03LjU5Mzc1ICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMS0xMiI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNS40ODQzNzUgLTMuMjk2ODc1IEwgNS40ODQzNzUgMCBMIDQuNTkzNzUgMCBMIDQuNTkzNzUgLTMuMjY1NjI1IEMgNC41OTM3NSAtMy43ODUxNTYgNC40ODgyODEgLTQuMTcxODc1IDQuMjgxMjUgLTQuNDIxODc1IEMgNC4wODIwMzEgLTQuNjc5Njg4IDMuNzgxMjUgLTQuODEyNSAzLjM3NSAtNC44MTI1IEMgMi44OTQ1MzEgLTQuODEyNSAyLjUxNTYyNSAtNC42NTYyNSAyLjIzNDM3NSAtNC4zNDM3NSBDIDEuOTUzMTI1IC00LjAzOTA2MiAxLjgxMjUgLTMuNjI1IDEuODEyNSAtMy4wOTM3NSBMIDEuODEyNSAwIEwgMC45MDYyNSAwIEwgMC45MDYyNSAtNS40Njg3NSBMIDEuODEyNSAtNS40Njg3NSBMIDEuODEyNSAtNC42MjUgQyAyLjAzMTI1IC00Ljk0NTMxMiAyLjI4NTE1NiAtNS4xODc1IDIuNTc4MTI1IC01LjM0Mzc1IEMgMi44NjcxODggLTUuNTA3ODEyIDMuMjAzMTI1IC01LjU5Mzc1IDMuNTc4MTI1IC01LjU5Mzc1IEMgNC4yMDMxMjUgLTUuNTkzNzUgNC42NzU3ODEgLTUuMzk4NDM4IDUgLTUuMDE1NjI1IEMgNS4zMjAzMTIgLTQuNjI4OTA2IDUuNDg0Mzc1IC00LjA1NDY4OCA1LjQ4NDM3NSAtMy4yOTY4NzUgWiBNIDUuNDg0Mzc1IC0zLjI5Njg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtMTMiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDEuODI4MTI1IC03LjAxNTYyNSBMIDEuODI4MTI1IC01LjQ2ODc1IEwgMy42ODc1IC01LjQ2ODc1IEwgMy42ODc1IC00Ljc2NTYyNSBMIDEuODI4MTI1IC00Ljc2NTYyNSBMIDEuODI4MTI1IC0xLjc5Njg3NSBDIDEuODI4MTI1IC0xLjM1OTM3NSAxLjg5MDYyNSAtMS4wNzAzMTIgMi4wMTU2MjUgLTAuOTM3NSBDIDIuMTQwNjI1IC0wLjgxMjUgMi4zOTA2MjUgLTAuNzUgMi43NjU2MjUgLTAuNzUgTCAzLjY4NzUgLTAuNzUgTCAzLjY4NzUgMCBMIDIuNzY1NjI1IDAgQyAyLjA2NjQwNiAwIDEuNTgyMDMxIC0wLjEyODkwNiAxLjMxMjUgLTAuMzkwNjI1IEMgMS4wNTA3ODEgLTAuNjQ4NDM4IDAuOTIxODc1IC0xLjExNzE4OCAwLjkyMTg3NSAtMS43OTY4NzUgTCAwLjkyMTg3NSAtNC43NjU2MjUgTCAwLjI2NTYyNSAtNC43NjU2MjUgTCAwLjI2NTYyNSAtNS40Njg3NSBMIDAuOTIxODc1IC01LjQ2ODc1IEwgMC45MjE4NzUgLTcuMDE1NjI1IFogTSAxLjgyODEyNSAtNy4wMTU2MjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTE0Ij4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA0LjQyMTg3NSAtNS4zMTI1IEwgNC40MjE4NzUgLTQuNDUzMTI1IEMgNC4xNzE4NzUgLTQuNTg1OTM4IDMuOTEwMTU2IC00LjY4NzUgMy42NDA2MjUgLTQuNzUgQyAzLjM2NzE4OCAtNC44MTI1IDMuMDgyMDMxIC00Ljg0Mzc1IDIuNzgxMjUgLTQuODQzNzUgQyAyLjM0Mzc1IC00Ljg0Mzc1IDIuMDA3ODEyIC00Ljc3MzQzOCAxLjc4MTI1IC00LjY0MDYyNSBDIDEuNTYyNSAtNC41MDM5MDYgMS40NTMxMjUgLTQuMzAwNzgxIDEuNDUzMTI1IC00LjAzMTI1IEMgMS40NTMxMjUgLTMuODIwMzEyIDEuNTMxMjUgLTMuNjU2MjUgMS42ODc1IC0zLjUzMTI1IEMgMS44NDM3NSAtMy40MTQwNjIgMi4xNjQwNjIgLTMuMzA0Njg4IDIuNjU2MjUgLTMuMjAzMTI1IEwgMi45NTMxMjUgLTMuMTI1IEMgMy41OTc2NTYgLTIuOTg4MjgxIDQuMDUwNzgxIC0yLjc5Njg3NSA0LjMxMjUgLTIuNTQ2ODc1IEMgNC41ODIwMzEgLTIuMjk2ODc1IDQuNzE4NzUgLTEuOTUzMTI1IDQuNzE4NzUgLTEuNTE1NjI1IEMgNC43MTg3NSAtMS4wMDM5MDYgNC41MTU2MjUgLTAuNTk3NjU2IDQuMTA5Mzc1IC0wLjI5Njg3NSBDIDMuNzEwOTM4IC0wLjAwMzkwNjI1IDMuMTY0MDYyIDAuMTQwNjI1IDIuNDY4NzUgMC4xNDA2MjUgQyAyLjE2NDA2MiAwLjE0MDYyNSAxLjg1MTU2MiAwLjEwOTM3NSAxLjUzMTI1IDAuMDQ2ODc1IEMgMS4yMTg3NSAtMC4wMDM5MDYyNSAwLjg5MDYyNSAtMC4wODU5Mzc1IDAuNTQ2ODc1IC0wLjIwMzEyNSBMIDAuNTQ2ODc1IC0xLjEyNSBDIDAuODc4OTA2IC0wLjk1NzAzMSAxLjIwMzEyNSAtMC44MjgxMjUgMS41MTU2MjUgLTAuNzM0Mzc1IEMgMS44MzU5MzggLTAuNjQ4NDM4IDIuMTYwMTU2IC0wLjYwOTM3NSAyLjQ4NDM3NSAtMC42MDkzNzUgQyAyLjg5ODQzOCAtMC42MDkzNzUgMy4yMjI2NTYgLTAuNjc5Njg4IDMuNDUzMTI1IC0wLjgyODEyNSBDIDMuNjc5Njg4IC0wLjk3MjY1NiAzLjc5Njg3NSAtMS4xNzU3ODEgMy43OTY4NzUgLTEuNDM3NSBDIDMuNzk2ODc1IC0xLjY4NzUgMy43MTA5MzggLTEuODc1IDMuNTQ2ODc1IC0yIEMgMy4zOTA2MjUgLTIuMTMyODEyIDMuMDMxMjUgLTIuMjU3ODEyIDIuNDY4NzUgLTIuMzc1IEwgMi4xNTYyNSAtMi40NTMxMjUgQyAxLjYwMTU2MiAtMi41NjY0MDYgMS4yMDMxMjUgLTIuNzQyMTg4IDAuOTUzMTI1IC0yLjk4NDM3NSBDIDAuNzAzMTI1IC0zLjIzNDM3NSAwLjU3ODEyNSAtMy41NjY0MDYgMC41NzgxMjUgLTMuOTg0Mzc1IEMgMC41NzgxMjUgLTQuNTAzOTA2IDAuNzU3ODEyIC00Ljg5ODQzOCAxLjEyNSAtNS4xNzE4NzUgQyAxLjQ4ODI4MSAtNS40NTMxMjUgMi4wMDc4MTIgLTUuNTkzNzUgMi42ODc1IC01LjU5Mzc1IEMgMy4wMDc4MTIgLTUuNTkzNzUgMy4zMTY0MDYgLTUuNTY2NDA2IDMuNjA5Mzc1IC01LjUxNTYyNSBDIDMuOTEwMTU2IC01LjQ3MjY1NiA0LjE3OTY4OCAtNS40MDYyNSA0LjQyMTg3NSAtNS4zMTI1IFogTSA0LjQyMTg3NSAtNS4zMTI1ICIvPgo8L3N5bWJvbD4KPC9nPgo8Y2xpcFBhdGggaWQ9ImNsaXAxIj4KICA8cGF0aCBkPSJNIDE1Ny4yMDcwMzEgMzguMjgxMjUgTCA0MDcgMzguMjgxMjUgTCA0MDcgMjA4IEwgMTU3LjIwNzAzMSAyMDggWiBNIDE1Ny4yMDcwMzEgMzguMjgxMjUgIi8+CjwvY2xpcFBhdGg+CjxjbGlwUGF0aCBpZD0iY2xpcDIiPgogIDxwYXRoIGQ9Ik0gMTU3LjIwNzAzMSAzOSBMIDE2MCAzOSBMIDE2MCA0NCBMIDE1Ny4yMDcwMzEgNDQgWiBNIDE1Ny4yMDcwMzEgMzkgIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPGcgaWQ9InN1cmZhY2UzNyI+CjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSI0NTAiIGhlaWdodD0iMzAwIiBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lOyIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjE5MC4wMTU2MjUiIHk9IjE4LjkyMTg3NSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0yIiB4PSIyMDAuODE4ODQ4IiB5PSIxOC45MjE4NzUiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMyIgeD0iMjExLjEyNDAyMyIgeT0iMTguOTIxODc1Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTQiIHg9IjIxNi4yNjU2MjUiIHk9IjE4LjkyMTg3NSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC01IiB4PSIyMjYuOTQ0MzM2IiB5PSIxOC45MjE4NzUiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMjM0LjExNDc0NiIgeT0iMTguOTIxODc1Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTIiIHg9IjIzOS4yNTYzNDgiIHk9IjE4LjkyMTg3NSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC03IiB4PSIyNDkuNTYxNTIzIiB5PSIxOC45MjE4NzUiLz4KPC9nPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoODIuNzQ1MDk4JSw4Mi43NDUwOTglLDgyLjc0NTA5OCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLWRhc2hhcnJheTo1LDU7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDAuMDAwOTc2NTYyIDAgTCAwLjAwMDk3NjU2MiAyMDguNDM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDgyLjc0NTA5OCUsODIuNzQ1MDk4JSw4Mi43NDUwOTglKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1kYXNoYXJyYXk6NSw1O3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSA1NS4yNjI2OTUgMCBMIDU1LjI2MjY5NSAyMDguNDM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDgyLjc0NTA5OCUsODIuNzQ1MDk4JSw4Mi43NDUwOTglKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1kYXNoYXJyYXk6NSw1O3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxMTAuNTI0NDE0IDAgTCAxMTAuNTI0NDE0IDIwOC40Mzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoODIuNzQ1MDk4JSw4Mi43NDUwOTglLDgyLjc0NTA5OCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLWRhc2hhcnJheTo1LDU7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE2NS43ODYxMzMgMCBMIDE2NS43ODYxMzMgMjA4LjQzNzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE1Ny4yMDYwNTUsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYig4Mi43NDUwOTglLDgyLjc0NTA5OCUsODIuNzQ1MDk4JSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtZGFzaGFycmF5OjUsNTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMjIxLjA0Nzg1MiAwIEwgMjIxLjA0Nzg1MiAyMDguNDM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDgyLjc0NTA5OCUsODIuNzQ1MDk4JSw4Mi43NDUwOTglKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1kYXNoYXJyYXk6NSw1O3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyNzYuMzA5NTcgMCBMIDI3Ni4zMDk1NyAyMDguNDM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDgyLjc0NTA5OCUsODIuNzQ1MDk4JSw4Mi43NDUwOTglKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1kYXNoYXJyYXk6NSw1O3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAwLjAwMDk3NjU2MiAyMDguNDM3NSBMIDI3Ni4zMDk1NyAyMDguNDM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDgyLjc0NTA5OCUsODIuNzQ1MDk4JSw4Mi43NDUwOTglKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1kYXNoYXJyYXk6NSw1O3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAwLjAwMDk3NjU2MiAxNTYuMzI4MTI1IEwgMjc2LjMwOTU3IDE1Ni4zMjgxMjUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE1Ny4yMDYwNTUsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYig4Mi43NDUwOTglLDgyLjc0NTA5OCUsODIuNzQ1MDk4JSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtZGFzaGFycmF5OjUsNTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMC4wMDA5NzY1NjIgMTA0LjIxODc1IEwgMjc2LjMwOTU3IDEwNC4yMTg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDgyLjc0NTA5OCUsODIuNzQ1MDk4JSw4Mi43NDUwOTglKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1kYXNoYXJyYXk6NSw1O3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAwLjAwMDk3NjU2MiA1Mi4xMDkzNzUgTCAyNzYuMzA5NTcgNTIuMTA5Mzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoODIuNzQ1MDk4JSw4Mi43NDUwOTglLDgyLjc0NTA5OCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLWRhc2hhcnJheTo1LDU7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDAuMDAwOTc2NTYyIDAgTCAyNzYuMzA5NTcgMCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwzOC4yODEyNSkiLz4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAxKSIgY2xpcC1ydWxlPSJub256ZXJvIj4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlOnJnYigwJSwwJSwxMDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAwLjAwMDk3NjU2MiAyLjc4NTE1NiBMIC0xNTcuMjA2MDU1IC0zOC4yODEyNSBMIDU1LjI2MjY5NSA0MC44MjQyMTkgTCA4Mi44OTE2MDIgMTE0Ljk1NzAzMSBMIDExMC41MjQ0MTQgMTY4Ljk2ODc1IEwgMjQ4LjY3Njc1OCAxNjguOTY4NzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE1Ny4yMDYwNTUsMzguMjgxMjUpIi8+CjwvZz4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAyKSIgY2xpcC1ydWxlPSJub256ZXJvIj4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMTU5LjIwNzAzMSA0MS4wNjY0MDYgQyAxNTkuMjA3MDMxIDQzLjczNDM3NSAxNTUuMjA3MDMxIDQzLjczNDM3NSAxNTUuMjA3MDMxIDQxLjA2NjQwNiBDIDE1NS4yMDcwMzEgMzguNDAyMzQ0IDE1OS4yMDcwMzEgMzguNDAyMzQ0IDE1OS4yMDcwMzEgNDEuMDY2NDA2ICIvPgo8L2c+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDIxNC40Njg3NSA3OS4xMDU0NjkgQyAyMTQuNDY4NzUgODEuNzczNDM4IDIxMC40Njg3NSA4MS43NzM0MzggMjEwLjQ2ODc1IDc5LjEwNTQ2OSBDIDIxMC40Njg3NSA3Ni40NDE0MDYgMjE0LjQ2ODc1IDc2LjQ0MTQwNiAyMTQuNDY4NzUgNzkuMTA1NDY5ICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDEwMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyNDIuMDk3NjU2IDE1My4yMzgyODEgQyAyNDIuMDk3NjU2IDE1NS45MDYyNSAyMzguMDk3NjU2IDE1NS45MDYyNSAyMzguMDk3NjU2IDE1My4yMzgyODEgQyAyMzguMDk3NjU2IDE1MC41NzQyMTkgMjQyLjA5NzY1NiAxNTAuNTc0MjE5IDI0Mi4wOTc2NTYgMTUzLjIzODI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjY5LjczMDQ2OSAyMDcuMjUgQyAyNjkuNzMwNDY5IDIwOS45MTc5NjkgMjY1LjczMDQ2OSAyMDkuOTE3OTY5IDI2NS43MzA0NjkgMjA3LjI1IEMgMjY1LjczMDQ2OSAyMDQuNTg1OTM4IDI2OS43MzA0NjkgMjA0LjU4NTkzOCAyNjkuNzMwNDY5IDIwNy4yNSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjk3LjM1OTM3NSAyMDcuMjUgQyAyOTcuMzU5Mzc1IDIwOS45MTc5NjkgMjkzLjM1OTM3NSAyMDkuOTE3OTY5IDI5My4zNTkzNzUgMjA3LjI1IEMgMjkzLjM1OTM3NSAyMDQuNTg1OTM4IDI5Ny4zNTkzNzUgMjA0LjU4NTkzOCAyOTcuMzU5Mzc1IDIwNy4yNSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzI0Ljk5MjE4OCAyMDcuMjUgQyAzMjQuOTkyMTg4IDIwOS45MTc5NjkgMzIwLjk5MjE4OCAyMDkuOTE3OTY5IDMyMC45OTIxODggMjA3LjI1IEMgMzIwLjk5MjE4OCAyMDQuNTg1OTM4IDMyNC45OTIxODggMjA0LjU4NTkzOCAzMjQuOTkyMTg4IDIwNy4yNSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzUyLjYyMTA5NCAyMDcuMjUgQyAzNTIuNjIxMDk0IDIwOS45MTc5NjkgMzQ4LjYyMTA5NCAyMDkuOTE3OTY5IDM0OC42MjEwOTQgMjA3LjI1IEMgMzQ4LjYyMTA5NCAyMDQuNTg1OTM4IDM1Mi42MjEwOTQgMjA0LjU4NTkzOCAzNTIuNjIxMDk0IDIwNy4yNSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzgwLjI1MzkwNiAyMDcuMjUgQyAzODAuMjUzOTA2IDIwOS45MTc5NjkgMzc2LjI1MzkwNiAyMDkuOTE3OTY5IDM3Ni4yNTM5MDYgMjA3LjI1IEMgMzc2LjI1MzkwNiAyMDQuNTg1OTM4IDM4MC4yNTM5MDYgMjA0LjU4NTkzOCAzODAuMjUzOTA2IDIwNy4yNSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gNDA3Ljg4MjgxMiAyMDcuMjUgQyA0MDcuODgyODEyIDIwOS45MTc5NjkgNDAzLjg4MjgxMiAyMDkuOTE3OTY5IDQwMy44ODI4MTIgMjA3LjI1IEMgNDAzLjg4MjgxMiAyMDQuNTg1OTM4IDQwNy44ODI4MTIgMjA0LjU4NTkzOCA0MDcuODgyODEyIDIwNy4yNSAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpzcXVhcmU7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMjA4LjQzNzUgTCAxNDcuMjA3MDMxIDAgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMjA4LjQzNzUgTCAxNDkuMjA3MDMxIDIwOC40Mzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDE5OC4wMTU2MjUgTCAxNDkuMjA3MDMxIDE5OC4wMTU2MjUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTk4LjAxNTYyNSBMIDE0OS4yMDcwMzEgMTk4LjAxNTYyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxODcuNTkzNzUgTCAxNDkuMjA3MDMxIDE4Ny41OTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxODcuNTkzNzUgTCAxNDkuMjA3MDMxIDE4Ny41OTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxNzcuMTcxODc1IEwgMTQ5LjIwNzAzMSAxNzcuMTcxODc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDE3Ny4xNzE4NzUgTCAxNDkuMjA3MDMxIDE3Ny4xNzE4NzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTY2Ljc1IEwgMTQ5LjIwNzAzMSAxNjYuNzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTY2Ljc1IEwgMTQ5LjIwNzAzMSAxNjYuNzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTU2LjMyODEyNSBMIDE0OS4yMDcwMzEgMTU2LjMyODEyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxNTYuMzI4MTI1IEwgMTQ5LjIwNzAzMSAxNTYuMzI4MTI1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDE0NS45MDYyNSBMIDE0OS4yMDcwMzEgMTQ1LjkwNjI1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDE0NS45MDYyNSBMIDE0OS4yMDcwMzEgMTQ1LjkwNjI1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDEzNS40ODQzNzUgTCAxNDkuMjA3MDMxIDEzNS40ODQzNzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTM1LjQ4NDM3NSBMIDE0OS4yMDcwMzEgMTM1LjQ4NDM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxMjUuMDYyNSBMIDE0OS4yMDcwMzEgMTI1LjA2MjUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTI1LjA2MjUgTCAxNDkuMjA3MDMxIDEyNS4wNjI1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDExNC42NDA2MjUgTCAxNDkuMjA3MDMxIDExNC42NDA2MjUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTE0LjY0MDYyNSBMIDE0OS4yMDcwMzEgMTE0LjY0MDYyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxMDQuMjE4NzUgTCAxNDkuMjA3MDMxIDEwNC4yMTg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxMDQuMjE4NzUgTCAxNDkuMjA3MDMxIDEwNC4yMTg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA5My43OTY4NzUgTCAxNDkuMjA3MDMxIDkzLjc5Njg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA5My43OTY4NzUgTCAxNDkuMjA3MDMxIDkzLjc5Njg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA4My4zNzUgTCAxNDkuMjA3MDMxIDgzLjM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA4My4zNzUgTCAxNDkuMjA3MDMxIDgzLjM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA3Mi45NTMxMjUgTCAxNDkuMjA3MDMxIDcyLjk1MzEyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA3Mi45NTMxMjUgTCAxNDkuMjA3MDMxIDcyLjk1MzEyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA2Mi41MzEyNSBMIDE0OS4yMDcwMzEgNjIuNTMxMjUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgNjIuNTMxMjUgTCAxNDkuMjA3MDMxIDYyLjUzMTI1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDUyLjEwOTM3NSBMIDE0OS4yMDcwMzEgNTIuMTA5Mzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDUyLjEwOTM3NSBMIDE0OS4yMDcwMzEgNTIuMTA5Mzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDQxLjY4NzUgTCAxNDkuMjA3MDMxIDQxLjY4NzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgNDEuNjg3NSBMIDE0OS4yMDcwMzEgNDEuNjg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAzMS4yNjU2MjUgTCAxNDkuMjA3MDMxIDMxLjI2NTYyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAzMS4yNjU2MjUgTCAxNDkuMjA3MDMxIDMxLjI2NTYyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAyMC44NDM3NSBMIDE0OS4yMDcwMzEgMjAuODQzNzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMjAuODQzNzUgTCAxNDkuMjA3MDMxIDIwLjg0Mzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDEwLjQyMTg3NSBMIDE0OS4yMDcwMzEgMTAuNDIxODc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDEwLjQyMTg3NSBMIDE0OS4yMDcwMzEgMTAuNDIxODc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNDcuMjA3MDMxIDAgTCAxNDkuMjA3MDMxIDAgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMCBMIDE0OS4yMDcwMzEgMCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAyMDguNDM3NSBMIDE1Mi4yMDcwMzEgMjA4LjQzNzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDEwLDM4LjI4MTI1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE0Ny4yMDcwMzEgMTU2LjMyODEyNSBMIDE1Mi4yMDcwMzEgMTU2LjMyODEyNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAxMDQuMjE4NzUgTCAxNTIuMjA3MDMxIDEwNC4yMTg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSA1Mi4xMDkzNzUgTCAxNTIuMjA3MDMxIDUyLjEwOTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMzguMjgxMjUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTQ3LjIwNzAzMSAwIEwgMTUyLjIwNzAzMSAwICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxMCwzOC4yODEyNSkiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMCIgeT0iMjUwLjQyOTY4OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxNi4zNjIzMDUiIHk9IjI1MC40Mjk2ODgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTkuNTQxMDE2IiB5PSIyNTAuNDI5Njg4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjI1LjkwMzMyIiB5PSIyNTAuNDI5Njg4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjMyLjI2NTYyNSIgeT0iMjUwLjQyOTY4OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzOC42Mjc5MyIgeT0iMjUwLjQyOTY4OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI0NC45OTAyMzQiIHk9IjI1MC40Mjk2ODgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iNTEuMzUyNTM5IiB5PSIyNTAuNDI5Njg4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjU3LjcxNDg0NCIgeT0iMjUwLjQyOTY4OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI2NC4wNzcxNDgiIHk9IjI1MC40Mjk2ODgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iNzAuNDM5NDUzIiB5PSIyNTAuNDI5Njg4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9Ijc2LjgwMTc1OCIgeT0iMjUwLjQyOTY4OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI4My4xNjQwNjIiIHk9IjI1MC40Mjk2ODgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iODkuNTI2MzY3IiB5PSIyNTAuNDI5Njg4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9Ijk1Ljg4ODY3MiIgeT0iMjUwLjQyOTY4OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMDIuMjUwOTc3IiB5PSIyNTAuNDI5Njg4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEwOC42MTMyODEiIHk9IjI1MC40Mjk2ODgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTE0Ljk3NTU4NiIgeT0iMjUwLjQyOTY4OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMjEuMzM3ODkxIiB5PSIyNTAuNDI5Njg4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEyNy43MDAxOTUiIHk9IjI1MC40Mjk2ODgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTM0LjA2MjUiIHk9IjI1MC40Mjk2ODgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMyIgeD0iMTQwLjQyNDgwNSIgeT0iMjUwLjQyOTY4OCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iNDEuODEyNSIgeT0iMTk4LjMyMDMxMiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI0OC4xNzQ4MDUiIHk9IjE5OC4zMjAzMTIiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iNTEuMzUzNTE2IiB5PSIxOTguMzIwMzEyIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjU3LjcxNTgyIiB5PSIxOTguMzIwMzEyIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjY0LjA3ODEyNSIgeT0iMTk4LjMyMDMxMiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI3MC40NDA0MyIgeT0iMTk4LjMyMDMxMiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI3Ni44MDI3MzQiIHk9IjE5OC4zMjAzMTIiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iODMuMTY1MDM5IiB5PSIxOTguMzIwMzEyIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9Ijg5LjUyNzM0NCIgeT0iMTk4LjMyMDMxMiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI5NS44ODk2NDgiIHk9IjE5OC4zMjAzMTIiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTAyLjI1MTk1MyIgeT0iMTk4LjMyMDMxMiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMDguNjE0MjU4IiB5PSIxOTguMzIwMzEyIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjExNC45NzY1NjIiIHk9IjE5OC4zMjAzMTIiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTIxLjMzODg2NyIgeT0iMTk4LjMyMDMxMiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMjcuNzAxMTcyIiB5PSIxOTguMzIwMzEyIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEzNC4wNjM0NzciIHk9IjE5OC4zMjAzMTIiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMyIgeD0iMTQwLjQyNTc4MSIgeT0iMTk4LjMyMDMxMiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iNzMuNjI1IiB5PSIxNDYuMjEwOTM4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9Ijc5Ljk4NzMwNSIgeT0iMTQ2LjIxMDkzOCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI4My4xNjYwMTYiIHk9IjE0Ni4yMTA5MzgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iODkuNTI4MzIiIHk9IjE0Ni4yMTA5MzgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iOTUuODkwNjI1IiB5PSIxNDYuMjEwOTM4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEwMi4yNTI5MyIgeT0iMTQ2LjIxMDkzOCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMDguNjE1MjM0IiB5PSIxNDYuMjEwOTM4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjExNC45Nzc1MzkiIHk9IjE0Ni4yMTA5MzgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTIxLjMzOTg0NCIgeT0iMTQ2LjIxMDkzOCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMjcuNzAyMTQ4IiB5PSIxNDYuMjEwOTM4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEzNC4wNjQ0NTMiIHk9IjE0Ni4yMTA5MzgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMyIgeD0iMTQwLjQyNjc1OCIgeT0iMTQ2LjIxMDkzOCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTA1LjQzMzU5NCIgeT0iOTQuMTAxNTYyIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjExMS43OTU4OTgiIHk9Ijk0LjEwMTU2MiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMTQuOTc0NjA5IiB5PSI5NC4xMDE1NjIiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTIxLjMzNjkxNCIgeT0iOTQuMTAxNTYyIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEyNy42OTkyMTkiIHk9Ijk0LjEwMTU2MiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMzQuMDYxNTIzIiB5PSI5NC4xMDE1NjIiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMyIgeD0iMTQwLjQyMzgyOCIgeT0iOTQuMTAxNTYyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0zIiB4PSIxNDAuODYzMjgxIiB5PSI0MS45Mjk2ODgiLz4KPC9nPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOnNxdWFyZTtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMC4wMDA5NzY1NjIgMCBMIDI3Ni4zMDk1NyAwICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAwLjAwMDk3NjU2MiAwIEwgMC4wMDA5NzY1NjIgLTIgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE1Ny4yMDYwNTUsMjQ2LjcxODc1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDI3LjYyOTg4MyAwIEwgMjcuNjI5ODgzIC0yICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSA1NS4yNjI2OTUgMCBMIDU1LjI2MjY5NSAtMiAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwyNDYuNzE4NzUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gODIuODkxNjAyIDAgTCA4Mi44OTE2MDIgLTIgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE1Ny4yMDYwNTUsMjQ2LjcxODc1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDExMC41MjQ0MTQgMCBMIDExMC41MjQ0MTQgLTIgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE1Ny4yMDYwNTUsMjQ2LjcxODc1KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDEzOC4xNTMzMiAwIEwgMTM4LjE1MzMyIC0yICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNjUuNzg2MTMzIDAgTCAxNjUuNzg2MTMzIC0yICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxOTMuNDE1MDM5IDAgTCAxOTMuNDE1MDM5IC0yICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyMjEuMDQ3ODUyIDAgTCAyMjEuMDQ3ODUyIC0yICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyNDguNjc2NzU4IDAgTCAyNDguNjc2NzU4IC0yICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyNzYuMzA5NTcgMCBMIDI3Ni4zMDk1NyAtMiAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwyNDYuNzE4NzUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMC4wMDA5NzY1NjIgMCBMIDAuMDAwOTc2NTYyIC01ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwxNTcuMjA2MDU1LDI0Ni43MTg3NSkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSA1NS4yNjI2OTUgMCBMIDU1LjI2MjY5NSAtNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwyNDYuNzE4NzUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTEwLjUyNDQxNCAwIEwgMTEwLjUyNDQxNCAtNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwyNDYuNzE4NzUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTY1Ljc4NjEzMyAwIEwgMTY1Ljc4NjEzMyAtNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwyNDYuNzE4NzUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMjIxLjA0Nzg1MiAwIEwgMjIxLjA0Nzg1MiAtNSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTU3LjIwNjA1NSwyNDYuNzE4NzUpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMjc2LjMwOTU3IDAgTCAyNzYuMzA5NTcgLTUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE1Ny4yMDYwNTUsMjQ2LjcxODc1KSIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE1My42ODM1OTQiIHk9IjI2NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNCIgeD0iMjA5LjE1NjI1IiB5PSIyNjYiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTUiIHg9IjI2NC4wNzQyMTkiIHk9IjI2NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNiIgeD0iMzE5LjQ3NjU2MiIgeT0iMjY2Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS03IiB4PSIzNzQuNzUzOTA2IiB5PSIyNjYiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTMiIHg9IjQyNy4wMjczNDQiIHk9IjI2NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI0MzMuMzg5NjQ4IiB5PSIyNjYiLz4KPC9nPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2U6cmdiKDAlLDAlLDEwMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDAgNS44MjAzMTIgTCAyMCA1LjgyMDMxMiAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsMTAsMjc4LjM1OTM3NSkiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS04IiB4PSIzOC4yMzQzNzUiIHk9IjI4Ny42NDA2MjUiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDEwMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSA2NS43MTg3NSAyODQuMTc5Njg4IEMgNjUuNzE4NzUgMjg2Ljg0NzY1NiA2MS43MTg3NSAyODYuODQ3NjU2IDYxLjcxODc1IDI4NC4xNzk2ODggQyA2MS43MTg3NSAyODEuNTExNzE5IDY1LjcxODc1IDI4MS41MTE3MTkgNjUuNzE4NzUgMjg0LjE3OTY4OCAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gNzUuNzE4NzUgMjg0LjE3OTY4OCBDIDc1LjcxODc1IDI4Ni44NDc2NTYgNzEuNzE4NzUgMjg2Ljg0NzY1NiA3MS43MTg3NSAyODQuMTc5Njg4IEMgNzEuNzE4NzUgMjgxLjUxMTcxOSA3NS43MTg3NSAyODEuNTExNzE5IDc1LjcxODc1IDI4NC4xNzk2ODggIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDg1LjcxODc1IDI4NC4xNzk2ODggQyA4NS43MTg3NSAyODYuODQ3NjU2IDgxLjcxODc1IDI4Ni44NDc2NTYgODEuNzE4NzUgMjg0LjE3OTY4OCBDIDgxLjcxODc1IDI4MS41MTE3MTkgODUuNzE4NzUgMjgxLjUxMTcxOSA4NS43MTg3NSAyODQuMTc5Njg4ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTkiIHg9IjkxLjk1MzEyNSIgeT0iMjg3LjY0MDYyNSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xMCIgeD0iOTguMzAwNzgxIiB5PSIyODcuNjQwNjI1Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTExIiB4PSIxMDQuNDE4OTQ1IiB5PSIyODcuNjQwNjI1Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEyIiB4PSIxMDcuMTk3MjY2IiB5PSIyODcuNjQwNjI1Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEzIiB4PSIxMTMuNTM1MTU2IiB5PSIyODcuNjQwNjI1Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTE0IiB4PSIxMTcuNDU2MDU1IiB5PSIyODcuNjQwNjI1Ii8+CjwvZz4KPC9nPgo8L3N2Zz4K)
%% Cell type:code id: tags:
``` haskell
{-# LANGUAGE FlexibleContexts #-}
import Data.Complex
import Data.Array.Repa hiding (map)
import qualified Data.Array.Repa as Repa
n = 200 -- size of the domain
-- create matrix of the mesh (and newton iteration start values)
coord = linspace n (-0.9,0.9::Double)
m = computeS $ fromFunction (ix2 n n) f :: Mat (Complex Double)
where f (Z :. i :. j) = coord ! (ix1 i) :+ coord ! (ix1 j)
```
%% Cell type:code id: tags:
``` haskell
f x = x**3 - 1
nm = snd . unzip . takeWhile (\(y,_) -> magnitude y >1e-13) . newton f
-- solution of newton iteration for every startvalue
solm = Repa.map (last . nm ) m
phasem = computeS $ Repa.map phase solm :: Mat Double
-- number of iterations for every startvalue
numitm = computeS $ Repa.map (fromIntegral . length . nm ) m :: Mat Double
```
%% Cell type:code id: tags:
``` haskell
import Data.Array.Repa.IO.BMP (writeImageToBMP)
import Data.Array.Repa.Algorithms.ColorRamp
import Data.Array.Repa.Algorithms.Pixel
(writeImageToBMP "../images/newton_konvergenz2.bmp" . runIdentity . computeP)
$ Repa.map ( rgb8OfDouble. rampColorHotToCold 0 5 . (+2.5) ) phasem
(writeImageToBMP "../images/newton_conv_sol2.bmp" . runIdentity . computeP)
$ Repa.map ( rgb8OfDouble. rampColorHotToCold 0 100) numitm
```
%%%% Output: display_data
%% Cell type:markdown id: tags:
<img src="../images/newton_konvergenz2.bmp" width="300px"></img>
<img src="../images/newton_conv_sol2.bmp" width="300px"></img>
%% Cell type:code id: tags:
``` haskell
```
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment