From 9603bbbe97d9ef100577651449c6a9da73b4b09f Mon Sep 17 00:00:00 2001 From: sequoiap <36747422+sequoiap@users.noreply.github.com> Date: Wed, 10 Jan 2024 06:03:47 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20BYUCamac?= =?UTF-8?q?hoLab/Photonics-Bootcamp@5e068d8e8f1b345cc381aa503401181c229984?= =?UTF-8?q?cd=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1d889b31bb06cb578abde8e2253d043a/setup.sh | 18 - ...3427243d24344ab6485bbac35367c16829ea95.png | Bin 19073 -> 0 bytes ...779d993f56718e8dbb496bd91079fe9dc5430f.png | Bin 0 -> 58128 bytes ...18eb08f4cae62e6a4b0a95e4be1e379298b378.png | Bin 0 -> 18874 bytes ...a6dbcaa06a392087595b44af8ee3e6812387d5.png | Bin 18629 -> 0 bytes ...5f2b9f6184535efbd43c96489bc58f87d2e5c0.png | Bin 47080 -> 0 bytes ...9edec6dc7dbfabcadf0dd3dea898b99afe6fe2.png | Bin 0 -> 19361 bytes _sources/pages/git_and_github.md | 14 +- _sources/pages/glossary.md | 3 + _sources/pages/klayout.md | 13 + _sources/pages/mzi.ipynb | 698 ++++++++++++------ _sources/pages/setup.md | 43 +- _sources/pages/vscode.md | 2 +- genindex.html | 8 + objects.inv | Bin 1435 -> 1440 bytes pages/git_and_github.html | 14 +- pages/glossary.html | 2 + pages/klayout.html | 34 +- pages/mzi.html | 389 ++++++++-- pages/setup.html | 91 ++- pages/vscode.html | 2 +- searchindex.js | 2 +- 22 files changed, 961 insertions(+), 372 deletions(-) delete mode 100644 _downloads/1d889b31bb06cb578abde8e2253d043a/setup.sh delete mode 100644 _images/2617c9be4588c1a773558518893427243d24344ab6485bbac35367c16829ea95.png create mode 100644 _images/6a96f2438487b23bb76b90d9fd779d993f56718e8dbb496bd91079fe9dc5430f.png create mode 100644 _images/9a415e85d0c43a7a40bed466a818eb08f4cae62e6a4b0a95e4be1e379298b378.png delete mode 100644 _images/a220f3086fc5a316cfe8553831a6dbcaa06a392087595b44af8ee3e6812387d5.png delete mode 100644 _images/a9f4c8600d7499dc21fdcdccbf5f2b9f6184535efbd43c96489bc58f87d2e5c0.png create mode 100644 _images/d30d68ddd43e49e0882b36f1269edec6dc7dbfabcadf0dd3dea898b99afe6fe2.png diff --git a/_downloads/1d889b31bb06cb578abde8e2253d043a/setup.sh b/_downloads/1d889b31bb06cb578abde8e2253d043a/setup.sh deleted file mode 100644 index ffa5fa3..0000000 --- a/_downloads/1d889b31bb06cb578abde8e2253d043a/setup.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -# tput setaf 2 - -wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -sh ./Miniconda3-latest-Linux-x86_64.sh -b -eval "$(~/miniconda3/bin/conda shell.bash hook)" -conda init -conda create --name photonics python=3.10 -y -conda activate photonics -pip install gdsfactory[full,gmsh,tidy3d,devsim,meow,sax,database,femwell,ray] -gf install klayout-integration -pip install jaxlib -conda install -c conda-forge pymeep=*=mpi_mpich_* nlopt -y -conda install -c conda-forge slepc4py=*=complex* -y -pip install simphony sipann -wget https://www.klayout.org/downloads/Ubuntu-22/klayout_0.28.7-1_amd64.deb -sudo dpkg -i klayout_0.28.7-1_amd64.deb diff --git a/_images/2617c9be4588c1a773558518893427243d24344ab6485bbac35367c16829ea95.png b/_images/2617c9be4588c1a773558518893427243d24344ab6485bbac35367c16829ea95.png deleted file mode 100644 index 29709efb41e51927be35c90e146e798266835372..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19073 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 Nq^O+8S0Vj?{{(OdK`ND!h&4XkR z=jQw7n_07FX07=FYkmZ&iqmUKUKKiu%n*peYY13zP^ywp3WbeKWl zN7OV9PLKR8yYES781l1l8dNM=`nTq``B$#a`KybsF0A*pCd`cN^ttQg>b62xq0j_=Wlpr zWo5o;{4xactWTBxLcqgb&pHaX+}&P@9(5B-w6?t*Afgucz%(eSo7fXs@@BLdN+EQ8 zjziAf{p@w?2bBbtB4|dkxi3~xQISiNsZpZ~eMZ2oPwDe^XtpRLX3)=j;6=CJr}=Dt zMj+Nl!5=>?>P+G@Ghw=#Qlxt`70LCVq3^^)@o8f{ z_oi3DD=F#d5dA&f2~K|Q-}I|$a%N_|q5bADHa7N)nmJzkNw$`o^Iz%pMTLcsK3DJE zq5}ACNk#VacK=F~vJ_s6d()-H6L!Dm=S_yb2;nd@GlP$}r%K32q%KVL^z=OD|9m@a z>q=zTjr;g9sJ2!x&2!p#w%M~}?cyU{_y`D@a2jPFA2AlqjA(o);)(A8xLoepGb-+H z`~1dNh^ythScNFE)vPd@&Z9osioGK~LIUo5|LY^Ar|IIPUf&+oyc+G5zCFUPt*>AE zouJvfJ5`c*;M}~!f}Hfr^@U|3rFHaC6>y6w|uiGwJ@B^RM*x=oP+rjPZ z?EK!ol^8vd3^?i`KVePxAOgQXH!$eU1e2+KQR97NxnwJNT#)95O^b=v{O)evp<+W< zM`w*@bbqeK2XZ}(4I(b3VZ zR&yTkICl%~qel<~m}kTJk-f9y1Xj&WU0q$DZ;K-*lB0*q?U@+gw|@VI4-XHI*FX0= zx{n`t2LcJ?o6Aq1$Y>yUVC@v8gu}WzUfI|ji!8Xv70fs|I9x_YM>|&#qh;YnA_(O1 zH$JLy%P1*fwB7!70JG|Mb2d{wZWW>5yD=R8Q*m)s*@!OmANY3&ny1K-aR8(WLvzW<0KIm$Q-Iu;OB@XJK zgU|^G5SJK~$$ENv4hgBV5IeUVDegE#^#oD9ZXrB7J2PrWIHjBMA93oH%$_{7B6&!2%H(w1l21EfLB=N=v|wNgP`4(etU z7nQ))0x1L;_A4Mt6zuHSdt<1=1V$x^XH4Dk{(?ufyUNaH$j#05@O4`G{vHyd_bXQ= z!DZz;3N8ij*VINT{+E~#@C9nR`5~Caf{M?WmJEINb^ij|?9JkbprCtCzX)QrUk<-^ z85WvRK4g}dNzjCft@-2^6ezvJ#|#R`N9NQHWPWR04W-h0_AE+ZL=^S&=g)i%0muxq z_-1)EGJ_sZV2`?_1cc)_-odwO!l-$WBx|6SF%FQ5jLRMUyoL!s4 zsh|Q#D7^F9pQV5I9Pj4uSr>Aazx`>(`S#|pcY7@72&DgYFl9+2LekRDr<;htZaGHo z78W5PQl8dRA{sxqOxnBiIqe1qC#N3kWV6uUzhC;nJ1}@thq0u}kuwSsxA*l?9|~l> zH%6}A{{}v(tJ$&R;q|L6D+>iefQj~VdU|^2?d9bq8wW>F-}=sJ^YURI_)CU&2WP%V zgPav~JUsZ|k5TDPC5p?+4w$fS{H2kV6y!R~`C7Zkk&@QdN6ro3CLF*k$eEaY@$eIP zH6ripD}H+f3-BmL-}5a;lPL^lfTE3cMQo&6EO<<)7Zw(N&r3Fs-1w3FW-q;~aksd{ zLyQHv(O$Pdx>#_>2h$Tap(*{SqWxBUM06b&mr5A7#%5U7)s?TfxVX}Gj3Kw6V7;WG zEvRetiHZsqck?zwG^G$WsMAK3FHk`73NFa>Z=Rr3P*6ZlfHuhG?@=)Ie5XT(Gl6z2S6imzz{+E}dB3s~^Zc zd@`}JmE3ZF3<4bE7m{4lm+c_-*4X$VKHVSb&~dl((9lrlWsnxv1^D?9b`$w36;892 z@7q^`a1d!})Jyht$JW-?*I*-b@|ZTpZTVy|-GF_xsuV-nQ;?T;#LmusU8tRdxVzqx zPCu6dSiyg`(&Bo)&f#((f%QZ^zt7BW=g#k28n-pcDDZxRERAMe43$x++6s>hYzp2BZx0y(7%PhMjxBh zhG&Yovt-7{cl>e`ZUeyK+H=ONufpt`@X{|;0(o4~41D)RLNu9ENWNxfY;Uik<6QNI zGA*_YLD)kO#{a;m72T>F@;7_*M;Gxv z+Cdea$3zbJ0Q@0e?}I7X*s$p6=MCBP-&wD!9H|eDiX}?Mor-QbTGF@iu z^dsxJ|8Zl0rZCa&v9YmjpZdzkpx8S&C!US&D|@i zVt7MMXy=P?sUl;%sj{GgS5N#o_!EY0oi4KSr(#ZJYyLP8qGj#wvH=ikeGuxl;{&wfi?SHul)pzC_C#cJn=afgl<1jud@ zw1C!!tQ5GN>sjT+Xk)~Mwj{-6I%S;#i+_V3H&={ppMED_u@H3W*R08A6TpJFu)T+7 znt48GY2T&Go4}OCh@B6|hb;JPr8l0>JMj5mdsBn{&HGQ&){0vbGRz>~g=S2H*VZhN zC z4NH-rFBe+7AmcG#*x6H}@j-)09`{>_as<)E3a7yPmHDk~wZ$Ry3f(7?q8ie{0#WKYk>}O4;=24RSU?h9m0Xr<=IiGT-*Fj#)3Q^Sd{+(;`Q(Br7 zU4vItWScs|&cllgD#o?8J}$jBv36`(kWy|n?-Y>3*{ex_Mu?A0LDa;&tMRFpABG*} zjWw_#FB(R6xY^edIIuI(6#eR_Fw=kkaR12HqFks^QZwO=`yZSET`blYvmkiC24RTu zp`%5bytVt=$xLmzNxfvXfYll^5@;~?gjO7Pso|>v4*mc7o7wQlp_f?^FI+!q*_2<1 zVto?-LCOdnT3DD~4W6N$^emG)ldZMalKJv7KOfXR+hAlp>_aQ{$ao)*~`!7kfilgW}-hTn5*!Agm2I!7Xw-T?&%={u8BZ&85o%B}K z$4inZLKU){Q*i;kJ>xn3LzgbFH~3xHlxwo}pXO+Hhtbu_5dIsq+1KxQqLi0P3@u2~ z-ZSzeFTUm{HV+EpfzFvSabG{9FC~Wgcq}8YgvHn-lRH1B zqrdtT0#he|qN5hP^$o|OV)3AOXvu8s5aur@j~~&yNyO)tlIbiVhH z13(TZfyINFAxt3q7 z#C;y}Mb~bQqMMWjBw2U}G48Q9Vy_Gn&1Z5>%G>Lfd-38B9=^Gm8|N9Hl(r{SAEe;H z|4rVHKjBog51`Td%c}{g6csA#^P}4|zyYfq@ zd7?aNo4pD>TN+bko0<|^O9GKb2KJB)k8_T8HSUImN*Qi?_W$|y;^*41NnY* z8b=wzw+A^sGzZs*~Vt715U2?-3!{^ObV3tb_QQ1SvR z`6^y(zgJ~)4L5HdTfeHr+HLmnlV43p8rMfuhQpviAzPP~>~MM*Y?3D&tXE+ua?!Bz zI#y*8e&C>D;Pz|EWwww&o+u>vCz+kI5oTU{q?a_WHWuRSLYbOj}y1@=>{z2GpS_|`>!2moMOt?IViZ)C$~?x8I-g0np2v@`sIqb zC+(Q@84>d?299YAQ5`Kg`az@C}9LT$xb3)=Bw5{@Q4zl)%Q%TQ9$wM^140GX~mHuSk zB_3Y45~j>$i<@SPn4t~%!I`-7h7|gQ4SO;>m<{XlZ8jz?AUHzoJ!p02=jS7*N(^(_ z+GsjnZ29nmzC32>2O*kk;>0xlLauw~=Ch=&+^=IhJ-006iit0`D;0l-fM2`vRRjH%jq`)o=KcLo>mlj~Uvikr zEVc+$Tta*=ZDGBYR>LYg)JGPF^rNT`8lE4M5u(x4n(2Zj)swuu{ni&0c)-m8{!-!Z z%)&zHmJXWCwd#xBbr(=z*%NK|goLEbyD@%d1lhYPoL}%7seGep^-F>8h~Hnb=VwrH z{8{*FlnzWScwErZx%_f!pcfM}9$h3tJK_vo{Mz-(wyJ2S&gpOB=U`q_)H%%THmL>C`ESTa_L4+)7HDjR zYZ|%>5CDQNn{TS8Mb+#rf|oy6CNClifw{+|h(O$vk^DO>e0^RfG;3Dy++8I|bpGem zx;qjOA<2q*r(e9FNlF<`=aJn?bC1pVw`L#<=nVKa-sSVkE$bO_!8AWD!}JN zgK*8wef@QdwPqVcNkN1b&ztS@8W;V+rQP4$Z$>Awv8dyviwY{AG-zl)RjWl29gY2X zJ2AbQko_{A0U7~Ea4k<@LPVX@RMn5vExt!0v$_co;Me=wf zVq4T)X3cts)_|Rle}|_bdD5k^KR!1}$$4L&?g2rW(*&Dex7(#)3A<%LI#>GOT>2Vr zx$-d1`?$s$2kNelUhQ0C^~#jy=hC|B6dY3_;R_fCFyJPy=|Am>Wi$+;S{%d$UesdOD6hDRIh2 zjXD+8n_p zp!hM18=~*I^CBBP&^L@q$jRA-nzuz1)g}k!=2!;>@|G&C89*{6;%4kjK$x%Y*Npx- z|0}kY7JPGcvDZW*Lm*!D;@P9XpQopc`vjeOrLe z?{sQd42_`@Spymf1_a6FAjPQLvx(99Zk&!DSR2(PsX6@@N zRE&Mxp|qwx!=EQe)C9S?{Z5A2xVX9jdldtg856?$vY!B~GsafN+wy;*h1wpTKW(9~ z!%HEG%R>}0dQKU}-N|Y|$)Qvbt|EHG5XJHUV^_iGDT5u;-BsbqvUVkd^C`(LT_`Ra`h@1u28|4oRgsxxoFC z^Z+tzZZ%_lS0%4f{?b{aw2#&AT^;kv(6ZG^AW0P8uGcV^fv28Tp4m>U$v4^X z9by*0lsnbE6#O7jO0iukinjkv2i^u+niPI(Y(PE7B_(}$C}7jQkU{4wens`6_|bW- zbZ#A0|Y)k!ralPjrpC>a5Z^1`l;+0b%=y--iu^E@S3xxrWPv+=*o7IatlgzsXr>l#lw-pmJNRktJbE=E%myxKzxle(h?_LKTERrQl z#%$R%>$RFe40#?eVAT4&ADr4{@ohb-4=Pc>ml!RVMy*W*XcfA8(RH zz%Sg__LBd7o&E`U*aog7#6~AY$K{4&3S&PD7JP54{mx5cd};Ov9RhB7@O#D=)BoB(l?_V z9(L3)tfhhCvJ>T0KiA^z|G_aj!@1TqZraNKQM@(7MySK__X-Z&*2_mb@iWOzAJ&>- zL^)07+1|`LP%`7&Zr7rCT$X&cR(S$0aazo+$?E~Nh;|Q!goMPyxAp5+NL^iB_4!eO z^bHo^eu2iKIO#<5cAxL%%a_V`h06qEx-aa?tJ4xSl4SCX2OwX4Ol1(0r?z&fT0FF8 z=&zUwY3nxjAIuTbI^FxRbEbx>O1zkiiK*{&woBx+E~>Fht-iy(W+Z30>JAh)OC+No z!aV}|b9SK89s!MEed+DtlzUO*HCW+pP~*c#p;x%V&rS*czPnfqtFIT{d2VgJVIip+ zBu_?EVCWD(z;~wzJ5eIFrIxelX9%Dp zkREV~h>$Dh5CYvR-MpftM9#v(Vkq++Qk5AExFwdphNCLRQa^NmRx%ZNdU~pHhndZ) zHNkK-7(aO9!k!5$cYFDnTJMms?u6F+8IUG}^mOgKvq7$aVu2alu-rbk~n23?p z_kIY2rU`59%zV%26SM%*y_(6=stzU@YA2AOyfc(|*+S~cxr_pl%2XilV35B5K#yhB z3!u2CE51MrmO<_TpfSe&b=QO{a;xgF?KS6IWGqBwwl)~I}Q7^ERl0X7! zJRaoyCt_6u+;IM5xDY@}&7Ct-Z3F^1QVYbO@kRzalK29032Q_l;A=WxV45X9_uXOk zZZ$Xc7*j|;7XV2SX|CAS1n5V`-h|Qclq7fV1-}a%!w2M(VoqN$i2@1}?ooprY$~Qb z5#7pGG?Kf$l9eOFN0QLh{Ph=curF&-=x;~)*Rg32Vu%i$rRQ5wAmOvBbg3cuuF=^g z@P}eBZM2nj?YiLNmGzDQC|I7l$7fKM9-<81To zmwK+OR@ATlP@if(NYK}=lF2e-S0*>Fs3{?bx@Ge{RI#a4!7AfmU~*%r5vWC28i~Da z(Ifv_*0i$9_3BlZR!z2G@=z8O+RYbPPD7hHiczB9_=4N05(0Xi2ap%=m5#!qqA}!H zgthf=U3(m)aYQmVI`Iy3WiFfd$pa_T8#pg_#B-Zp<~l{AKiCl#0DU}|aR#2p)dW%K zROlQ$YdKIN#+h|ue=d9Z2tODM{w`VMYx8kzUUT+4bffNqvM!A0beJ`RyHI57b(SFM zILq5|ef-0y*@GP^rz3?xh?bdI4A8=)k{QBjI^LE%@bX>rw>vU7JO44%ZOk73y7K-< zATAum8@n<;OcV04T*Dz^F-go1yC-8_?Ef)g7dvT$Q&WyT1_8+uOw&oJ;NXnxV-=WV zP*|Vzt;Afjl{Z{H0f=!u$U+@qW{wK$p+NpXo#;d# z7`3)PJfrN!433Dly?yX$w|ItrjrfpdM0I}3TSYIgnI!*fnuRQTM$^Ne1M9@hH{GC> z`&@_eb*hH}8b8BNX=_gI>X_|N>;N1(z-kn-=&WR5@agpLq5lQa%zy;r)F;%oZWfxY z#4M;`4zWCa_`h~5FSV%r=NH4HdXsGD-$(|8ksPU1HW`bes})$Oc2hn{;Zd~c4m*Qa zeZj3vS(E0Zc>se|#$r8c3)~&#ChLjNpU+IUl&Sfl))^+6|5M7&L6A}+f(8O~6(#>R zujlt?$(dcqK>z9mYzuv+BCK*0MIaV94`8ZY3 z{JR__WL)pT2U+^xhw(EX<(#@%DSngc7uh|wdmXWUaxc&kupfPNUl^fQeX&UN9}iF> zpH*+*diEO*vv&X1=?$PXRaRA#LU{8V;BFU9y-<-k0c*H(3piJj zIGRQz4kgRJF=EQT?CLOpdRjT#1{qUH9WSYY491xUm~Atc$81wP*>XSyvbtd`dt%2 zmrVd{w5M1hNHh&pZ%`&-H6!9UKyB{t?|))oK!$|7pg>TMbtPJ% zbkcZ`%7%_2-(~Xvt=$`^?$u#OVNWTe+=U(b5}- z*~wEQnkZ`Ze5=dskVU^|zghvoIoF22LHO~fA7{pvwRB3=wo%K2N!)3_pX>OY2RQxw z9H^8G(BcqHKNvZ|?ta-!OS#W8dlbm4*zFG!p=2xhZ)Vn0hlLssqdQK&KBX20Y>#>h zFAAuCzJET_`7&`OP3a>}2Y*84qArCj&t9X*5@y=qjB%$H$6#bzUzfvV@1PSTLKmDUW=BUCVVsT_mfx7#kF+u(^dxm_3j?eYuqg`k2fE z2ryEAp?Hu(OLN?wg=uOF(x+)Xbl*=k_rj)P&N6+;-W2idX(!?XXv!ZnNIR2c?@_uj zGO?2-Os4j)p3@I79Jb=9+ax!{(mTS7Te|>k@F{~#8hEk`IiO}u>iZpWmJ(tfSAKg} z9Uv0#()e!Hm^0;=HStx4jqqA-$0fqX9gpmwFnL~>Kt3CQD?vfQ7r;3MY&@S%Df?V? zjKl~qx0|SCs1x)WyyysiTL@6aEnA!TG!HXHgv<+z47%%*97>zd*eKQ`YL`npm$Pzn zsw>lZ{j7KfizMqkpX}#v$lddlrW8gq_V-ruqR!LzpR= ziBdAaR;Oj_<|Bla8Ix3oc?=q|kCWu~I?L34HBIPy4{Q$=H3;0mGa|ih6aqH5P{ax< zzX)-Ns!@`ftBp=WJALfBR*FT}ts=Sof&B-VWPp;b>H9C?u$J=SXppfzyL|ME`RoJ6c-0(peJ~)T+#HkeFn4qhH!fvi zFCSTV-n|x`y%#`-nGl+v29$cU52L^~1K&t~o(*U^-#?$|d`a{l2f^6~A|+=V=oTYy zVz?)Z(#E+9!te=HKNNlDr-|%kbNE}p?}4Z4eiFJO*=!4 zFhS(sfryot1x7Aki_F|FHXpAQCTUx+m%YDlrz3BtR3^8pp+OKKZ|L*xc!1Rk?6H5b zO&w-}7NF^BpwoRw9%&aeFYMVFrf+B6v%QKMQk<{=%@S9^ioD?%|9#qxb^poYEOvdF zDIu$4iK(FK79%4zYDl&!s3D$}pQ20wA3Qy(qQLmW#cKv9y&r=#SEb@19<^dr`oNr{ zc#yJSv!dS!^vdxXSeUv200<&vRP+!K$#fqP`;VXw>(nueXZvY1N9sEddpDt0gB^o{ zDnsM+2&$lH-(yEb8Z4D3X2xIA4A}^l^2snXow^?)#HXi4SfJO>{5fX)uy1KqsaoOo zh|j%dAsqi}*<1H85xR%x7-adLf0rt=ak&;3!w)FG#S@2^0=`gW(SsPW0>I^;b14uH zeGK|#kG$RI{7G_u@$QAVnMq=2=@|la{8uko(u%Xs6{x8>a~ld^w-vJ`1dj_QPFg9+ zU`Li^O|GN%!w}xrGIq7WAN35IJM|2C`#H&?sQc&_ZDiHH;d?dUe|UHtAiXaT_gD$B z&0FXJ5QrqtY3QK(f#WRgxEg`1g#Dx93rzx5Kz5-8AHTIC=&ncyM2%tFxd6wP5Y{=9 zZ&U$S!&<{v)|;EQonc8zGZK3F%`ZRIpvHy3K9&zkj+Q8UvcnLy?4`T+I#VeIiH)8% zx=_cJ(yirrIDVMe!*EE*5%ioH|D)^Z^6A+eMhHHK{<1_Q-ohiTxcP&(H%7W6if8I# zSh84H4L=*|>sfq(M}uL=*js1<1IKc&j`CM`XYGUdM4$9G44rz1%b5sHvayo<}z37QSjY_3^z z38%y6mH&#>NRet#`-JZwJmHLX1mKn-G$CUWsS+|mme7U|2sv0^m zRGqtG&0i*PK0&Fgr>j8)eq-PgG&!tXk)?L-T zdn5bu)!*-akSu~*Kp*yKr??nJ_*z6`bHuLa4pQWaU^k(vK2%k2e!?c6o8KP0K-D-& z$2X9>tw_DQ&M2@p(Xr{l{#J2F%Ntt!0oHkfBHL>tMr!s%8M#4g-zEjrb9SHVD}EHS zKV&28DV^c>I)!zI2yA+I^HCF zc2tbRI2S6sU>A&#Wf6&N52JsWM*7#!#QGd=p-e-2zld9ChdvJvH%Wv4Rfr@Mn-R*v z$oByDd|J=Fu2abl4F@x(B<|{=ay>;};TOtG{F8%j$_k=L1n>eVOM=J;_FXd2=yQfX zcocbgvc)K*kLfTyIl1!bnKQC!6txr-lhP5Wk7xc231J(8xPJWWjJLyWP?SVmP*Ob~ zt{F81xIleETGH$gr@cgWlEeo9k80aG*MFN*@S8oCDtfQ;j`ZNf~+qZ9LrY@K+zM6lyf z0)c(n3a|r(6%~imKjH5&XnwvG3liN|?jq~4#Sb={H5OFH)9GdvI-l^S;j}YMp^W=g z_c=a3w{u}3%aqGVeJ~{Gi_SUR3j0{r+NdRB4?IU8o#pPMW0nzzGX$H8C;JU9#G=(t z?=-eJPRDGF5qh~}iIxDk7z&V+TL35Dc)6JxpPCxg+1aU~sY~4#52ugC0;P^Hy<8w{ zuv@E*Y;}T3U@f6Ue2ww-6ZUl%1wY6t%hC$GU-ehWw3ZiE&1XE`hoXpJNowckeyce; zFRC(&-gv(hBA+xFDIZ!G3V~hM85OGyf7MYzbcZ8AB!wyIZ&1jv$$&PxpAq=>lxTZ0 zZ%Blez=VHzz&({XqN3KSz~g6R0xu2&4k>77)xc{@Z_yufNkD(AbV~B|n{V|m z(y7wKbr(=u^hK4a^+dc(o+l2W^bith04G8KUp(!ejOMDhijS68T!wO)&Io;qD0FIF z1|sE`W9vQvk&^wl+0zTS)NSLAVta)#aS#i2TwxtA`ENkiuT77Zo)DbO&0dSw2J{=Uj3 zK&GLs`f2a{2Y!DAr=N;waZM*0fbeI`#Ef&qD^37k!GU6U_0Zx!FIf7amK^MTwv931v= zp)T-M4+`()uF`9D_!8AIZibOMspRLjhIk91>#+3`i@ zkna{vKSMwbcyxRkeHz-&Cw)kTeUBmU-jA1p%E2#^FcqJC?$?nhOvK6zIz?pKk@e*2 zk%Re+LF_NLKObGR_)lR8Y3{TFhd7X~Jzn?Cr$`efu*@&kzkdB%X}Rs4D_C~jLpla} zWm2>I@vk1(742J+n)&dD-~%Y8R+C-bgo>wu@B2fU*~1$Zj`-jaP85Ja40UrZy?sK! z?OOVNO~;*mEho2FEx3<0_Pd+U&B|vw?e(Mh9cD{LXemo@>80J`vNj_5yF?dsP@gbXQ?ro^O?FvrQU z>}@dSfZD<)=gW36={bPcTjGh7;`*^+2vID4)E zqorxT_A%pHBX&5a4wi&=ugYGahlV|P)CokK2qaOxcW~_i2l`n55^QF#r`dDQW%=C& zK;gLPLn(ZyoQCC-2i{UN_>vhvX}>Hw&p0i2SKS{y`DoX~r5ci_7Yw&^8`xXz(lQwz zxt97oK&J3cho9v1*h1t;ucSKs9-Xx88cs;4wS5GlJ9TE`CtZ0+W&(M~xK0*2+uqUw z_4z|B+2&!~ocD5c{W(1wau%VI^c1R|J>*ayyTo0F2l$}0eZV1KOLHHQ0SjDZ)%O6G z7D^3h>=hpxz-8&zR{SrrlZ4m)&w~_NpfpLI{*-GzfQkBU!_nc_uy5KEo4uK%6kL02 zR8iAjnZGaD1|k{!x@SsEBuGRo9bDL=5o|5myaBL%fMLMQBTVo(VGzEeIu8 zQ&ZhyR5ID2f_f@dvIbiZ){VR89M937(v02=QiuY+POA3nV;o0eDx~zNXJCLl&7tHJ zkoiAZe+L=gDTin*+zhZ>zdADatIxu|GiiKwa%)6VK(|OKbfz8WjM|3+I3Cyg(c|Ho z<>TS7PBAmw`gf_(;jr4F@%Ksj6aLpPN__TLdy$7Vr z)%ii=<`)MDge3v%(W6Jo>gqkUatW$Xg*Y^hTMuu|J zUJ9$Wezoj?jy`ChbO;y#% z-+MdYXeBuJ$@#9Ls!DsTjf)Hid3*~*plZea{}RQfw*n)qKD{w8fI!MqW~qX)$A7Nk zco50jzvwIw427f62?>|lYqR-LANT6>&VJQtBBb@|($N{a-%rl;gl#RS7L|{n`RE5J z)LwPyLuLZ2UvBv@D6wne+^-?G6vOxHu$#2HmD-w&)w@}rUAGK8(i(I zZtu(z95_NA(*aU6^0W_dlY{e)N}0q={-gj-8daKwlb8!t;ci89--7@19GnJ&wNhoN_|ipFY?3s1^yaSV$)29|yvr zP*)xMr!S1_%22z>n0IS%RhKt;#Z(i`jfKPYw& zGw^97F@x!I7mG_u{+&(RE6DK02In(L^3_vAfpft@LTt^j>&-L!RU9~ld0H&skui@Y zGp_wvrwwZ9D1I|~nSKgR(<3K{MCdgPwtLsu!iF8=%3&26OE4%Y_@R)iisi1 zh(~|6gE`KKv5y&`_Ka$!O<#Xd1-5pPpS_cA+1TIhu7C?F+_(1eF`%pQF*E*+w7`$5KcAy64a7*svagUB+C*E$k?0Xk!9_=#;WBMUBymY4)4w zn%x4r$vU<JgC5md-cL4R zE@}C6cC;H5?0h~crh;lUhY++lR^?M=&w-tdoa8>%KfHP{TK_S@@^YXm8Yj>m5keDG zfmkc9SHM42$J(p>+24nq?P)^?6{cmE%;3}0mmY*raE6rEl$(4+^5m)Gd@UAI=Tucy zMf#UYOSxX!*f4N%s=@Lw8CdonV3OCmZp@{d(=JL7Ln?E6vx=3%7j(RyG|uq_S1%Oe zM*+ArKNQDe(iZ`Gb`*B?yxv)k3%lp4o<%JYKM0{F6LwF$FE-IChzpW|VbkFpp)B`u z@ixW!;)>qGBNgJem)$ES+9eYwvrn*AP2lV)V@d&%fZ6DaJYR)ZVq1Xc49*jqTjfR%&pehAddECW4aTBIstc2fAM8IF#N0hHl`2nAR==;&; z&mt9fl+Hs1rwg0SL-vuUvenGT0`D>xNPg!TubyG(U)_X1mu|+&1oS9Uo*#Y~Pm29knH4XIg$pGTUW@9!o;^LsN2&^I6YaB36&a#_K*4@~o{N zVdOrT`N9A-Ft|tKlMWvbc#QA)(3Jt|n|lE9A#7qPD43|Xk9#)Gt!{1j!Vx_L!*=te zNZ)9j=Ep2`TfisuWtU3*F%Y;Ii_?TMET3&xQn%=C^y zblN#wsEDkM?=u-o=g1>KujCSb^DbIGwNXW4=)PyH z?y|PA5vx}_U70_HV#~2#8DQM#Wr%Lv=^~ydWxj`df+*R|3x^%oVUIhC{+ujtOomaf zqC#?1`Hv2G>Sp~4^^d9u`_REmArJ3@uI@;LDI9I(7*W+eb{|4vKw^wI9o76W@V(>D zc~0~2~4Gh{x6n~G`zc6KcysOoRb>F@cqsetv$~{ zk-bMZ&*V);uhQ^YA4Y>B8u{wsMEbWsg&HoL?z zM1tt~PX)wJKdv?9nmko+Un+w{8h44!lew(#TRD@uhQ8BzxW$Ydp3Qqog3&|?s zk0R=6{%_oUwcSoczF>`U8s=WFB0%e%D-tJgF2BmM#VxraqM&;W9;;5Ej&w z6-RoVKJ+U-9hc96rRWuK$ahZJz01qx_rz)<+AZC$F^I{74k5=l_g=Y=*mDLk2|1oF z&^o=0I?nm?jE5?OU$5#j0iT#nUHO|QVhp*V`+J>bRPI&pC>30+U$BgtTGJoTi*(Am*7^*`wf6=Yv)i$*55A z;M{l7J)AO)_PPhstze0drZ6mOE5@|9WW@wGGfX)Kq(M$P@X#aQnxCN|xb+{Bsbeg* zQ(?`=IeaaeSuTCfaxO`$`^|!+3%g`FUpEegW)tXhnxc@rFvTrumv$Bd^JFb#0>?~m zmW(%aY9CGN8bNPKI6F(UN}TPBcc=K5Xdt&NcP8PC4QqUc96R4QYgzjd5!-yn^(3-c zJVMXG7r&c`x~`qs>O_6#!0h;jzb7lR=QK&LS0 z;V~Yd!#QOTs-B@6*y2-8>UV5}KHy<|8^5|&#D2aPtf7Q#frUXZu5s`%%aG^v?1xh<+l_9Yt{VD&>i%Z+I`<9V&Q$pLT>EUx zOrB?pvg_PQPovq`bV0f0 z^`#xn7V3l5w@Q);BH2H*@JLo#5>qWN37vi`2X(e zVg8c!UZt`3{wn!du4%0*fQJfiB{448&rl458q>RClTd5ZPOaL3p&WG)ZUV9WKT6B; z8yPRyQ8^!eWDUoMOG+K{6A=H7dSj!KH2&OI%Z1zOCr){fK0s?-P zyDH+9yHu)krpQneJ{s*BxXY*e0w=yr)GAK)QJF?^%In3_p#(v>_3Y;E=I>6u zDApydElbeRK8%_o8!P7#jRAK+Nz_?e@sn_K=kH|gOOxA(Il5WTL>A&)N~PB;4<%1It`{+=XsiFaXYzj*Y@K@Bt~^3qp|jjxk`!`5qQFFa|pkSrrQ z(rf@P@_OXr@ilL0!+;s049_QSMB|^G$aI8;7;x}o=nTsD^=$r95KfcKe16=L>Ucjp zs>kSGmF?T<%-iL8DdTJJS8=dMtbnU?Yz3?J@MBx@t2dMAZ}s47GaFIB1>79-%_FvtqL*_VIZ(n#Wd zA;~$zb|qC_9RZ!ji5EqD+ru~8NDl)_@8@}C@6w3Ajf@u-cCIr(ix5_!g_nP z59$*iY59^}(JwZg`SsO|_WW=9r>Tlnj^9UN{Ih(Q*Wf#)8Y7#J3B=lu!d0LC9676( z)UMagApFOZH?{xoN4SMQ7&@$%Prw~jiwCn4uXL^dd2N%@VRH>@F&sPbLv3}r(=4~u z{^kwUtC8gA=-(0poI_&eX)|-XVvGk@)l`^&>}Tt>Z5Nx%-t^s3+}w5f-lAb$))ihG z_K%`Vx~pV6#us7xx}h8SMXaMmPZ_d#9v|aMM<1^wubRxHrF`AYutrwWOaHBUpSm|< z3lit!An(pS<60lIf5_kuiHWVHR4+&=KQ4z2rQhsHY_*N@rb=^>dI%f;zC-?(_f?2b zLGmgm)S^+HSy+t@-&`KvkI4GzZ$Tj*4hpUhdcW7ft*x)JNSS)OxPl|8?SsCGm-&Ro z6N-6RZ|SyAAj8dwdCg~HA{RMHLRgr<$&8F2(&Su;n=x9<2^LiVg`X{k6m3SS=1b40 znUyM~cZDKNP%v^-3G{;l#R=bK>3HVU@rLb~tE$d`^LcmEm!SG}>*gUGc}5b=6+D7Bowf>{WgpO0@KV0aek9?3 zcF~zz@4r2KG9Z|36r23!5t)S*u{J<*f&-;ufNhTKz8f?$pR_kDQ-AQ$!2Bf2otCb| z!qGadO!p-+qgrL$B284xIFQLZO*oWCs@-<+^}~FF`DIo$ro24Gj6q7oejoAW<{`iI zR#|hCz`G?iQ$jjjhMZnOx|a!$XiYay*{^#TnPk}Rza3#ay`@Uw^OPnnh8+%fY#F7L zNHAUC(Tu{nH$~f0?4ytvyF{t;o?V7vahOH$h6N*Leh=NKgf2ZLZJ%@X%?vA|3`*6{ z`@NI3;CoUg07-#Sv^1KOHiB%Z#(;?7!^$>YxrdW7gFydtshH3ZoaCB zw>XqUE(cbb-mxL>(YuXD8#4&%^q(hXaU4ze-w7h4s+F2L&<&FxS`IJkh7O`p2~pZq z{fMTd*L+l~;*oNbP;CazJ5cbRdd2hzrUGnE9(6Ce@~)#)3pLD&L&KYl345yG1&~GM zwVHN3IRD7q;*tyaN1qC)oh{SQgvQgDTyJ~Qu{e@EXg@apuWtns|e;Coa*!U(j_ zbz(!f181FK%7%FDp&@HUFQ%u{j{(8|SD>p{=PjhxnXgb-Bw%Z=#?Kvi3+JxilND=m z!o|A;;j{%@(F+V(tpD!Gq1bajrf($ie>2E;iN6OBTETF4*-Cu6NnA;SJ@IdrV5*Og z#qRrzeS2EoYP;CFH=S*+)-lMrK}1K^HLXw1IM0|8ud7U(3&0?oV)Ikk`l76%5W5Gi z6nNB1RFr3u_=L1e1EeopyuTu23r(5!LxTy1!l7z(6by2;5%0Oq&)#%fSiLIk&i!&3 zbxMKJq2tXVMx#jcK2+nj;%|5WF?+D{7TmLGb=c0zOb(R2B=(0$)nH$@%_djF&}AZh zr+2}~d70%q`uzAmfrO>F8$+OM+sl5C)oCQfb?!E@xR0Xz%!0m)KNBwS+_arB&yq`-jSPX_J60wG3G== zmTPjE2@m*ii05$@#SNmUo@dAJR@}wng4qaHy>cG}Vgoe=51-&S!w>a8<14}7IMZ*d zqW7J4;IrD&p7q;?jhgv`^=BW(`6NCItYu{2d=Y2Oy%<%obX&+u)|$Hccg1Z{?#0sCx=SHZ=WkX&8hqHlzlwMIoQvM# zx=BA>??@0w5c?j{U0KO`JZen$i#Dav$D_iD6@2fv3vBVHx0wjSqXo4J%<3PA z&UZx3otBJf_Lf(vM0BzCPYef@5@js8ayJHiT4@^Qo$v5GnPAMV-}jo0$UQ2l+>R4Y z1L6Xy5||N$56bztj?vlPxFc;_g$1(U$>(-kOS(AAM(QG8HOl$5k7gbX%?aTzza<;i zH)LObHfZ(A)A6K8+!ScMW=tQP7JfCWU44ofr)lrv{t_ir7#xO+O?M5k{R@WbmZ6Zq z*BllZkDhrpi3;AhYVc)1HP>puoDg4+Z&D`P_#k|Tz*^v>fZA16w>%%alvVjYV5gdf zu%U{zRdow8xw~;jsW*Kt=p}6kY^@5Dh1c3Ty}l0Q33;@drnsf^k~Q$?+%l<2c(+Hthndh*cHrD@pS**U!P~_5pk#=J zOqS?P5Z6v`BzK$gWNPLG`J2k! z9m$daHC5Z5f0xzIk{ANQdPxN$IvUxq&gY>r(mK+z%Fr7N+cPf)N*e4=zguCF1%nIX zF;jqxUa4`)4H>VnBXG$tyngf%54;I#e_-^i;M4|j$2|$PRFL>#^T!RIvMA*4h+fpp z!*3KLBE*tn8l=q0f=OFFyN?v*?o;g?9uN!5j4;2mG#z-Gpb~4}RVvJ4?`~;Vvy>(6 zCU?B=2nPcI56s)5jytvSpA)t7@i;oW7UWy^T4$RlaQvcTc@VY*6{gBf>d&0N5!^&i zYY-ZYiQhD7xAd+%jRYKGcx3(*J?#wRDPQYrLa|JXaD29RU`6U0p7%1hgEX5+z5rV= zTOu|&i}yMENc+?B6eeUF19oPG--Uf~h<-hKsPJQ(j7wU4V)R5uj4G77wUjpw|lOE?+TKE~~#KAZayT-RE8c<1*NlEYA_ z)TM8gtT)0)&Cu9)?z>N1eu1_?4eFty5HecgF(-J1t2KSlC42I()Na&Ol-Gd;F?TtO zD|v-=@%{8~?tI!B3q$|Q_LK;+se>Kn$w%R+;_NA;?At<2s<;7*3naYyZQX{CCB7tp z(|>H%-5oU7m2#ZNaAw7QbTawVo?~CY9Al1cNkY;?aca!IR zzJy(uju2>3)L7FJm$a%~KUGg-R>pPsUrP&CPHtv_CDHb2kQC*!9xU1L6%UiZWq;Pv z{ix%z1-sXtz>&>)r_D_RUy2p;ugoOZZBe>06}4HH_sZ*^jt!nBn%+L;e`?0F^I~!s zzlQsc%BS?TerI9 zVV0Fq-r~ZkSy4LDb*z^G4r>9eukvgwI?yYhI}OMJhWLX*&7Y%l(lCxff%)>SuckxMo-%o+-K!V< z?#>~x^PcPNMAK?|`rnkw=QckCA+XXvSy>3fdw(>lcPl&Bi?ch~oSttoYRr{R%MDwc z`_D9%U+fbPrHaKNl|CI_&97YGC?xwjKU=<9`{zr?`TR9IO<56es&af_R0$=JhEm_(NklWw+US<-Ty9ktp{5_ ziz?0FTUCi$VWf;CY{G=5#Mt_ElS*d2Ft9eRL&v<`xZTWas4JePmKMdIs(TBu&P=;n zke#vpO|d#l*&fH;pw@slX_HKCj%9yv$UH6X?roUvhJJ5G3e~Jpk&ePAR;Zj0zN|y| zKeXXku)peTOqv*xbgC*<=n&H^U?Hs2WfNQVaxehGHLOmUj=)0!*x@U`z#1a;m6jULFrQcCpOpf?Ei$KL;+s#f64Qm_r`}1-=zK2mU)Ib^; zT!S|8Vk>??W{aw}%Pdy@f`Gp+2kWVL+Hef&8(tOi`Bd`(g11Mo52ykxhr-u7_fS2Som=7i`2 zOG1j6aa2>UN<;}q!Wv(@1uZss?`El1JbC+3Jn#BZ7(qUPUz1{a#^;jh&}Fjq_M9HF z`9lIhlgqEd1y9YhM}k0ih(z_K-;}w#rw&5R`ZYu;>5gF89 z%;*-lY^^kW7;}S`xZQty5*ft%BQQcSW4tSAEHAvQr+i63EXD2YC#h+J>1oNb;NYaD zhor#!sBv(BTn(De!v~-C@uW?3gdT5s4YPRniD|HW7+e%NqI-sS!a_u@&klaOFD%)^ zIQp_Z_!Yf=_bEmQS7BYf=3!a<u2$Bx-M*i;%q$ff ztd<^rD@tO8uL-Q&ILPr*QTF5q|Yx|*&OZxU|&sPpEQx8+h-?yh~2*u&6Xfxj#2~y8PG>zdSa@r4^+R zNX286jcTo#_4Rrm%`e~@LL&m&5xSC+PBys0Pi#W8mXo8n+lIx{g2%tm#E4knb}EjX zBFk^enoMRWbuW-dODIL$XjuJNJ15Su-5%4BUASYpwADVIY6D2M`{D3VgnU05{h-fS zuL0I>YmlM+M%BR4i#1rM2AD+>X)8sgCnR-rHa}cRG!B~H=vk&JL?Fa%OCD#BL^kpl z?K6EQW&ZSj+c?oo-Q-!k_IKcp!Oxx0WSNQ@3o|}jIJMei4e4;A?hYGevtdsuHz@Wr zCgt$tmA2h6oL=g_&-=HP;koC1Jw24w7+WDvnZ#@=J7LP+{x@OdRz`eW9D>yA$)2qzl>C_zKnR)3p~0OGC(QPq7}A^Co=)sJV@_^qx<;M{Ui8BDI3MIL z%owN+v322N5hX)83kBIzN92gpmF_N`e8;%^_DAFQ4~r4diU~GW3Rrx&oWWq>@;b1b z+WTg~-_S@An-M|&g(9-cEhAV&nJU=Hd~*2UFw;5IbktC(EklVeDvF5@yh@!eUf4MG zQx*AX>gU9~M1l!2HOlqzJ=p1veKCwt&6YI=6VlILVy1@Nx*|wxLEyaeXZDheO2D=i zUKa|?D1sMXZ6E%4GLz<iAGyEm+uoF6D+_9! zpqnGx|N0Z4aAz|Jh*ZAEt$i)!z}aX+IY2pyLYMP>Cqfhqb=f|!q0v9zopAfJa~|V` zKwJs=)vmtUJ{zEjg8QL}BW35fkp_s3ZkEwn(Bk?~ovclF?PP{1=Fue|mICt5thR0E_hox#||5N*JXK!8`hyn@0` zsQ5XW-{oFLgPq^M+~oGZuaIkBT9OP>`K@n(Kl)oB(>|Q1q>aI(RqoBPsrjS&{CNae zjO666?Y;Z8zH8E+eY4(&0ybDE8z`vAu*M1M-r+kYAFj&(VmA zXUZ~fqG{`Z1yY@h!%eXWm9m|oFyet}sgKKNviE}DborCic;C&^9L;l2$oXCBw%vb^by_6?}^zn)Qg@z zP|BHn_FkBWKzz$iDxoiOo#duit#LfR+LN0l8wPqOr|fKZALY3*zd4kD0u&kXjhFt@ z_xQuo?%yGYM=`kYwheIV+}Homysvq{AI&&z(LPbZNn+02){5rhN^mG3lpA_8A)sRk zQ(1l5TYwVMF~E%5X=@f`4Fhb+>3SE?CB4~CX)|gC-(avg`W_};3IA65gWd`>#B6&4 z1j@SP{{8zoe!01;g|Q}aX(nxXlljPvwV00nkuzgkhc=ZLz*9cAb8+_@mGmyFztwld zpE*q>@l@;9rm)MMq>B@?bNiR#GI3B;9g(%Syxq=7K2C^}gYWR&2FmTWRe6vVJkhGS zJ!mKein5}r3vnc>Wg~puzvH$MW9rI`Z8dS>o=xS z5M*D`#j5$`-?v<1`P{f`)>_1u4)S!<pK9GBWr zF>po@QG2j>X*5>KhW?6IKys)8bk(mTI;Xw5=Yn$>Bl!}xf7S(tI=O`0@w7-&DJ@z- z3tkyM6MWYGdH9*olrKuEtH{L-Wl>7Bn&2yKNXB963ZI#Fk_ z+u4wa$n8PB`#4*AejiucD$F0Uxu2{$9iI}g%vWINf90{4`(QUA@S3nXIxWAH;5Zbl`?<2+YDLH_6T|tfRfXnlme(qc zPDK$Behq=oD|H@Ixq!`w#}TsR&C_Z@W|c(CZ`sB^&PQ~PtqO4dR*iu}FMd+h!S&Z~ z)Z2wNQ%;T)_l~HlZ*_rirVWg1-c?_3q3@2|Iy68FJhCthx{3M$_ckUHC1QK>*YGpl zlq&4gOXX@seZ8B@aaaxqN2}>nb6mu9-LL?)Z1cZ?Po5+8us;9AMZle}8h^@5esjIn3;o&O0I*g^ znM&Xk@Dj+y^yALD!Mh%uZuhr~lwJNVEkTZlD={b7C$VxyO(|rSm8lFJ{*Nm? zXY_NVX}J!M{ge>67pZvOqrf!*2kA5h3FNbM(YldC1dre4`R6~xsFx2_%IQgIVQx0= zDd~A_RD-dRXtcIw?IX&)rT)i~0Yo@$z%@F*PF8uza_ayYFtgn8m|@m3eHrN}q@tnm>l?-hDVTY-8S#9|k)FNH zgM@I05xP-he|RB!(_kop=NAHkeK9)PTL)r25&JyRzhAlj_g=A@U?Kkh0t5z)!CV}b z&{6iBSTH{r{%?+wTYJc$nYI6ZNN6_Fhxva#3gIIR@Fn^0a{O-z1pnF7|9=)Y(Dpiq zV9tt>0yhiNNFaG=PH0n(4j*-03GYMa2dPrvmc~Po)#D;}{5lg}lbf6SaQq8UY;@_(Xj8mK0n9UJmaYE(xJyk_PWgJ&`(UUAFKSF?X;o zP+<|BypphL3E=)ZcQK0DwkM&hbRXuh=pvTnHrrp^wfb9*3rAZeJ%FhFtA>f&Klux7 zDE8mU`Vw>mtsjE!%cI~f5vn=IGbngyr6QSn<9qbrO4S1yOgRMeR_*pRjEs!v;C!z! zDnlr&3O}vy?dXJ-UFf7$YmV>aaeptvwEY}R(SsS6fqc0q<8UggqX7~_X}Vr?$e%TEwG3yfB-)zgAu{!}v<6u-Sfx02h^&>h42}LffKzDa z_k#tnop8|&y%SBkIMed<_%$jIW2Fx!v+d=&Q~=^cnr6V^^ypl89sD%(R-`a1(aQaDVB{`>wS=pw#_m zoGw(Xjt$NQr-iFA59ATDp zNAB|0yC%DNo=<2@MgU_M#t)U0wBkR_*z=AO?N9Ck4I=&e;2s<+Xc?tnq|BW~a7OHe zOr`04`6{qvgAP+y2cBd4?wzY0UlWy0G@Gk34srB6KX$jfOPOY1b~klr=xqY;CyA!x z0=HVH@9GNRp5wIjFUYZP|8n?E zy@OMBfZH#fF0oLs$Ephj9Er+4EyQ%irNM%PxAODx@3oF3M@iKyHt8^hb%aly3Eqvs z&I+AByy4jM@onv9{{vJg0zj80Gh@$D*n-|R7{-3Bd$1u+vFNnLk_vu?LgtQQVhw+< zpI_!&9*_JB;@yfapwNvE08NSS+2M0I-A32W_Zny%-Oo|KO_hJRw%@cnMbhYb;I0#e zab8w}56wZrb67WZ?}=~zXDU#pl!b{B9Ef`TvjXh2c~UQ^OJr>{4c9-k`FBJ_o-2tZ zGxF`46ugT0puY_?Xt)S>?-_j1&=iiN`9qKX@#6e`W795*+#+9@z*EdhgMt6Pr3By4 z-48ub(o=vr`W|e%J5`_Y^qRtn>s`M|2v#ajLIpqd`2u8tnq~}bi{HRKcuIUam&?&J z|5Y914j|fav+3>c;_$z$E%)71z!RW(`M7X2xQB}Z?Xk{vHo?(|8cUkc`5#OuDe7ZG zJN4@BLrM{tKdvD}y*IbRR11mj-iF4V4$&&!JRR*HL3L83a0oPP6Wgt4A4Td}=LNFm z`FPikUm;peXE#-<2eN1m-Zy08VBou7M(`5(JRPSojHYiI9vVY-*eD!v7z6>x=ySXn5pSX(Z?3xL z=F^B>IrBUy{7T24K#MMT4EF#G$c)+!J#`c@8l5kk+~?La;Wp=<@>rGd_BtbZ_m^ow zMIm&R#W#I<=SzrG@ZuXbpSTSBwXcd`)3IvN7HNrc_TYL@xcu`3t=)T_KR?tl;54OmX@)?1Fg?hGXY znWR;k-&uZ0u;6zc6E4dwR1~BKUk_B7eM0ZRH5+3ytMe9aBd}E#%JjpJ;7fpZ)oFIh zaQnD1t?+1ijNV-s_8FCLUe_bhz{}?TrPqc#=yG)GzF<3(f?v7OWV-Bnfg9|{I}ccr zo=n?&dkApR7~&w@S24|(H72K`zX*;a5ccU~+)H2Cw1`VnbTAO^rn(_nF3rC+@W9<3 zD%E=d9{5v`cusM8Mj4!0XD|c^yFDg_&lC$o3{6&9c=xxUJ>IfAq@X&@aL~9sn|waa z9A0P11x@ac9Q!|de09`}5qwbech=AKBgR*72KU@8&2KPYn$lZ{9T7u8x*z4e;)U8c z0IX~^BQDt+f^x18UiK*dJsvEWywww0L;xyY{p1VZGljSBPU}oe9L~>^)wkhZYKMC% z{+x!Jdoq&Li%N6jYN0x@tl?rMBO`)Cn)heo<%#ui$2W8YYfAvSlpz(O)=Ce1c>cYq zgNQle83w-imQ6Q2Et58lXM1RHCGv24ySC?}YX2BMD8Qx01Y}fezu^>a7DTH#vAp^1 z>@Ohw15%Ld*uydthlJt>fNW6p1y_x3w{N(kl%DzGXT&IG zSd(9%3Mwm8r7ilo$iV5*eZ5mqX08<39q&yU@*I4VK`};B4qw1gshnYpaVJNF_K^dy zK2krmwIcJZFC24qzVV$!mPGh4L4WTit@`Q$+s8!9UZ1yIP>lp`l1z5%IIGRK%*E|& z-=DQV%)UPR1M~g`yqG&TzVux=27<(5!cj_`zW%Nt-ss%6(X?cyD)OOf<0F00-!BA~ zcOm?hWrj#%Tri&lz=;N;nm(4^qF=&puX#CT(Z6a;mKP1suUR7IjMN*yCWll3~}j*nE5TTn#;P$bZt3psRZ_-+1GKZ~JcvixCtYAyMC{^G)Gt zT3RdyG9XV#(XZiG&9z?@w?eXv8mH_JYAydAb6o(C!#zZHCNVq&8{|YUrv;29Wejc9s{;un6f?S2|$nxD~b+`Z`WV)4YA%=QcVAUX&desW}c z3A0kdl7FUVt7fcyBXY~s_+Mw`6Eb>6U4s*Ms6FZ!SW-%xCy3Tio9j*w%_X>C58XX| z84XSur?!t13)w4@lh(T+lm`VQpRAU@cafq4P7Nftf*|3&^MV<*cKTa5`3F~G)fmIv zf!u|418lSAu4W9-;c*T3sVHBZNkARWJKy?y7Lxu24lV`^))ek?{t}srkM&sjXv`z? z@8w5(zJ+dUA2h@l_Jg>vYfGRml>6G5q2qk{{wJPZDN*8dupeJV^7=x`gdo+2|6o|1 zdmW375>YxI#fk~F63+3vSqKI&d(dE`Q}O-4Z-V_}pLGY0`4=>Vsh4FYY>>Dd?%3mi z8(}Wi4+q(Ak?gz{5j_VNS|078%O2ib5ygEm3FNwz+DUI=gamx&SjXaeWO?Nn{Yen* zLkA%xTD_lkRFy;iEf=zK1wJscdQp9h7`ua&3m-XJ7oWdwdujK=9SkUc{i)W@1zb%; z{C5}}=8%xF(637zOEqTtw{!&KsqtApDWwZqo5DQ7F2x@azRigsju?)|@snXR)%eA~ zxxY|;|GQ&~#7AQEG2Ggr&`t`8FJ=O_`12}}W=x2|lAFoC{kUOvG0Rwh(lNqaJ&J_{ z9{3m&_Kn51lL|n{K5B44D;2TUxmmpcq80C$*!k3l&tTCf^?VoTTIKgnVcf+Q2}Z6B?oH@SMxf|ZfT@z9q`538mT5;$ie|8$XKL$F9}!(V6u_# z+>lK&1JStmb&pK#XgvS|%kyWj69N*3$#;bOqUIt$v{d8M`knLtnopBr`U~xJM7Ka$ zZx?)R3t}5rOtLn41mD#~DNSA(O0wD(yo{VowHWo4WR2n;jE|a?7b=b6k@UF;NP7RL zWNMs=Ry(?omptKgskIdi=sLXFyi{F-i?#P%Iut()TIy2MV@j;DK6<32>#IF%XJMV@ z&`EY}2i3*^gdTkP5TsHqtM=dh^NL`eA|sGk19+Yh=B^&=rMiWd%NN3@$MKg%xPj^k!gSB7*v>N zolz=|f|eKab$4Jd(K&Va{i#&q(A0ruMO2AIZ?=>7mEL3!e^0V`=ACIAFu2QYFqz$l z=S7WI^MQ+hMe2-`Peq(9Z`KU5E&BJw=wlmczkx;H?`i`65XK`YctcXGDnqVV{3nh? zlL~lGVP^+Cc1abS z(AX~I&S4&bS`x!`|B=v}fqDZ%(MGX7dP9qTJGCoprH(?;2|tz%3s)4cBVv3TXaL=X z0&LQjHu7J|gf&jt+<5U3EbZVcSnV)H()J6@gY|nE7!uDq zQS&Db&^xGXZMRwo7W>rNI$7iyz#zAxdIuc|ileyo0gni`ct(myID zmY^&fVe;JS>wcZWhPgFpyx-ITW4b1(?kB7kGru?l1a$(1cD*g$fCv>ITF%C88 zh)q!!qniAEFhV3qXVi#pEHA!>hkugs=bol3ggkVZ+@FJk#;HaS_EmSa_DVW1=)19IaefBqIKwLG3Al#-F*Z0`-(hk= zBaAv5l3t`!+Kd?qC2c34bGjmbVTG_EkSX6j0fjXx{x{2EwizN{<&>0UA$ApI9q@$C zhXi2ba3Q66ia~C;oO$Q{C{eFcuXd2(v_Wv*rq0mf0rD9y^ zGyBypB&P;0l`(=0bf1=dGH{rq?|g8(OSLXZq3$yg9q1>w`Sverx+~ZjNF>| zmd+?5;y)AL>^UI1J_c+X)e*L}t_SaA-?baVRzu?nnb}Ceacpn`Tzw=<+ zkRah(u=vG4<@X|PT+LUPUX5T#fwIU)8R9kjoXzK@+Dkn~ucl+EhqSX=hfVIg%(Y41+wku_1b{rc2}3bUt3-L-{Kzuz52Of&J{ejTT)d1OLR}^`3VY zK)S$z#gGfB)3Yj*DvMX*f0=(5lib80$5F1aIecPhxzMJCtkuX1h1w2W=AU!hpM>SF zQcJRQZf8nz;@*>ot_EZ;()2yTBsQctk9BYgf77b=UZ~y0B7K<6W5QdT?D!G<$Es=@ zr<+?E48T|P#`mJ`_S+m0AFSTk0rgd;rV2}4Kx4jQh`W{1 z)Fiz;o4uMxg(SnT-$K;Ke~Gv#;}r;UHwH)5-XA|Y!B!@{C zG0-SF@a&#zf=X(jk@~l6nWxYHJpPwCWb&_4&DMhPbor*>PKoNU%8#C`v7&2Om#Jb| zS7w&i86R-u(tcKD#buQX8EVZ0FiY6$sES3Q+8SJnVof#@>7V7z&MvMV`i$*LC}IB9 ziQ*)Rc2*AJ%lb5{zvbUUCk;!Z=DO8!6Ddairx|1u1+ zu-FV3w10?}OgBy?N-%Y?!@ORQEbbiE_D0U&VY%CnNp*jtS7u@~56$a}$NOq$0KO=p z$Q0um8bRfV^v{p*5%b6!3octVQzTgorO-y0|FQ#CONH*|SjsVlR2?J1rHJlLDakLt zVj&IDP}Rt;=-+ws3A*IE4awN;EXht@&q(G!LHbcW;8=A=8SG3Q`(?u$&^>S(Wh7i= zJdF8mz<92Yw~>hd_+v|)&VHXlK)YZ=$be98nuddqct_zh)U#%ZWz^__l?%pxu7zoICII zW~D`!Gy9cUiPcitFKrM0H@9Q_9{!?qN%MKD1RXc*t0_M17WlcprxzObB9Dl-YN)G_ z8yLg#C0%L)fqncV8+J;cz3Y+{Um`*OMB5;3T>L=lnnVg?cPB}9{V1NHKVXH3ITLFj^*3ysu5(yufoLMc z?PCPL#+N82z!m9xpBzcs7USk>Wc4pa^n7aPf8SZ9n8WfTmRmMe2YSKXF6kFR)85r8 zTmqr%lsne09>7LK@A=2*ts}o7ksLn9c~>(jp_om$-H0dyy+3U*RFPpTtz=O6$68mG z2$BcMr;)vlJ^Q38T`9G5u>QIDZA29L)y$ZdG*mI2k!QJkzm!&zgCN{2Mc<%{)NIzF zq^rRsXXT`?M{c_EVRXm7X7xBx=Y^-)Xm?`ej*CnQO-$iOk67SffOh{mqi@D^?3-`Y^hDU;{EQt? zI&||6$vg5Hk_-XQLa!UxQQa>#rx~_{F4G!`dOxeF+X`W?kh^{@5#*(J+%d=%8hiIQt5(h<#Ws zx069Em7Oua{%}Pjw=;`a-$AyYi~D)!er$?lDiV;F8P#)kPuZssmkJDf*p7Y1@%sJc zC8@8nCw9iG9lgTmkiHapJqhH;SRNq5O;-{WceVFSQ?^bjQv&z5OP;pgU=_)FO;x@& zt9|UVVi!f^ie@fG@F`vwrD1ynK_0G(7!^JtdoRFc5H==F@=71rGVbb}0WCh={V&9k+B^{qs+`_<{C0vkzopyiS=BzF0`X%0Kj#tC_9Y1&nHX_G zY4b=&=h4TU@LfrjUvC_vy_Nfn732*hyV3!qi$mY2x@Ib8CciUc#ldOS!LFoFutni3 zx2&Pr5w9fMAvk!UHg-qoS#SA+N#2!mC4-c*FQ+_6^^(1DF?;@raanx%CQScTcHbUo@77LGTKAfW=f5jRi;q+r*44Bp04n@td1nR0>FYAaIry zc066b9p9Q{l;xtN^U;o%M+`^vb?lmOX_6%d8a;G z?il|3e|%}EAi)hnO2O+sYX4xaEr{6VqjVrFHEJ({@IF^J@ZJ$8-MbPZwb{xD5Fenx zLdW#3&AS!j*YbEsY{Q<;mxSeEpB<+Kk7GQ+N)H9P*mSf1FFA+e@4UFhxZXCw-G1;O z)_*1#GaA0`e|ZwfYJ7=_arS%=CwKL0blAUlP&e#7e|)(mhP(G^VDu?M*)_i~W7$L=v;ZFj%zV*`w zwC}CTUTcpVh;ja%)DG=6^oah+_ql_7h3VOCsWXf=<#%6@Ze2L!0-Zag!c$_LWHJ~w zJ@lbbOqH({&!qnTf_!)0v%V7d^#+t81Lav|yI5Az9gW(-04qEz;^ht2R~b!U>>DnO zKaaJCOpz~s^fM4LIvw-`B|U{3eYz2-y;JlW;^vPz*b{V#h%I$EoP>_K~D zN%gVQlSi8(&SCSW=SD7fXLLOf)R>~)13Y@LK>)gDP|NpKEHzj6XUKY(mq8;CLl^C*DWi3}P|ti9U1cYGOLP?5e)9!`{+ zfcck0KAaW|8o)#f+6utFrM=r{b*b0~HB;?LeYJRk1Rg%>#a=`2OpiZX%(GHjzTfhA zJi0#KQYMte7t$MIjf1jh!aW;a+!70YzF$Jke(MP#?219Y0@%>7;QCT2=8xh5=|pZq z>1_4)F1h)wCRy1^QJp;5UcU931~ymLdKG2+wx&LE+8@}?``~(&ZtZAJO+t#Fg<)g$rGDk|Gv!e+zG9U}tdB z4BqhPCyy%W*b}Af9BA_lCql5s{#c$?kDFv8(?8`z%j9<)=bG`KyFlBw{!X#U5`jT1 zmS85^*zxVzS2;!en=k>i^DBV>K(orMgkrk7 zy79>@Ghi(G81i`g|4NZ>zEGwm94$)*Dx!-?P@8u0W@N)`6CM}8kSL6eg;AjkeZhl6 z^{lzYo)j@?pG0f^4_{v$Rn-@DdkJajP+GbX>F!2KT0lx#Dd`I$9nv7(-HoJlN=S!< za6wucE+F#u{e9mb@BQ-}Lx)4}J)E=8-g~V**P3&-+dRThmEHRlZQfg4{9VUQIcb*> zYH&e!XsyE-$=*pP0TP!abHuG&Xzf@c{VP(`%f%DpW&@NU-mbb=7HDLHub=Es`}N<#kWf7fnd1%RvAa#5CXj#zbkq zCzU=Id=49HYqNHJ3M!u&Y_DOsL~nVkLH%O1+8@IP`q@xiY*KaAuE`^xGfFf2ac~KG zBQ}}`J%GraTSA6IB=K?1Wp@(;chjj|?~rSw6jqU`oD>}2ByfkyD-+g*nkbdkp+ODF zcLLlQMRoB})WR9)-k}G}JtH#U%#Zs%4=mLeYqNDE7HxU4xEhnvDR*{XOc&k7Bt>FxUEKQww_uI_)^Zp!h z1?ERl2NnpTnOXj@{AF+)C$zfr%4l!>Z2SA^Ngo~z3`aM@j`rvK_Qy2P6C`SXxH(Y2 zmb(tBEG_MJ`gr#mSdF18D=Y6V)X-Q@W=aqnUWP@jn$ZiEcamz09&^OhHIXx=0S%uYl~o2$}ed zv6Pb62Ok87pw=L=Cx$2tfwuj(Zscr6xYP0fll>u*O&Y@2P8sKt}*b?$Hri^k@M}8Gu$temMk4G75WcGa&QiLRel8w)WO^*yv9PoE0YT{#;Fq}BgHF>AS|!Wx zPASi!yqk}LUBbFK{i3u*Jh;^|(S?4mYF>)qcP0^MF_W@hv^fQ?Q+1Ttc)y32qR*ov3~Iu-Au%)Dj@)U|0~sh$Ul{5M%Lf?6o*nqP zJtmVlGVQV|9-9#s@BiFYMYRTmdcN%>ApBv8<;+2oeKW3kmRi;$QU}ew$Ecu6Nc8)Z z=ZTOqWpkr%(Xe*)L_8yaXE6$h2a?Do_bE7|_zpgkV13|p(O30)HCPQZ2>8L^qxT_? zbly!(y`jHG0CSvhl5z^0si5QaWlKE=!mvfqu`$#LRNY)g*x6kMyS{8z#|mx;PIC8+ zA6LspeW!Q`i*?l*=t2no{#}2#ry=Dw{TxBWj11AMG73Q$tu!r|&RjwYrsn78N0d5& z{jge=2nng`E*=z6fxLiE>(umgU}fbnD_QK&jNMr1Ds`v$ZT#TI)y5z2lkTdr3OFB( zYAI?=dDZvjI8tbuv8JdQ6UQ60Ii6@`egYU;t)nMB7qOyRa9^m!?-E0PlSOpmLJMG7 z1|n}NPotDi)>A6qgCB9x5zJvf@xTfN`Q}#auu6038MA!8exvQ@Y7&*a51=E))>7wHka=jq3mpy%SCc^k z3Q{4EF#@xp+xr7MA#0!~FtvM;-?R#dRtTec{Ul_W?bq_J+Gni;bl3L$)B$az?n+9v zX7B-^5&8d>G3TB?FUO9@I&`aJ~*jSRU`l9!_M7`4MC%RU?E|(*%VBa(`(;D~ z2vz+FSu(9RWwO|tj;m=za*1o@_wmdb4G}OS_UhXmc>&6LY_l}bX%}CfM0lDs2F2r` z>dsCF!8%Cy!V4vzn+fPAdRRKRgwXLUiImJhXkQW205(Zu8=>WUG#R=f0PPddRME?| z^}0OE(QP@I65T`z?l*U6*C1r{@r?*}mx*VT3Lis~c~qKxF=}PfAxmKWJ9(P7tv_8- z&qKB9EB!F`o_H0(GLJ<+5LczQUb+F==*}(oEJ|Nh`i!<+0o@h^n;%jb(|J6`SBz2H~2j!%eZ#^{}P^88NX9Qb>gh) zp1ezsx8~n~WyB2ero;?_ge1`WV`e1KN&tvVVCjcgB*j3`Qx@14DSzA*Wpux<#tmFljsDQeq@-3>_<4v#6 zfED1WFB1|!BbYbuWft2kco4D6r>$$huWcuyhX%ya0!b*wF`z7qYWX@$FfX3*s?|bJ ziu813_NFt@hcl$f&Mf|wc=RkI!S75Yb37yA<%~4a!k?h;PBso*VCYGFkII?`c~Z?H ziY@5msNNm0Y9QPOUS+?2doBQ;O?MJftJlsgtPrifFNzn?x`zrF*fG)5mt8=MY1cB( z)B2Fu??shj>JwL-c@U>?G~8N zv!SsuJ+A9%Sy3ChdW2mR`k|8C(uyI3j%@lRKa$L|mtr|+VXybS6EU8pP?Ppp{A2H& zi35uC)60KkiB#PgX@MG}Goa@ElhRCgDZV}~b?|%#IQf`=0#Re{ATqs*vGb%-@Y$PP z>y4uJ5T)@5wvve)CWX@!c9tyk0K}05*h7Mz=aVyCSQ|+!a78;=cVOT7>9f=jv>8Vl|WW#@ndyNviPBOcfV3T7+t#jO!5+$_#}*=T880`SNEs(hWLdBQy!2#+T{*x zZ?-f0SOS!O_LOg{5PS=}cX{VQ^SQ_yJ@N8`?b=SBmS83TAFv-9Stn0tM6m%V49dhK zsZ_Cm$)4K&4GSEr{YGpH z&kSFG_;>AfF{OA4vJKe3yW^opWX1vc`E&?#Lm_Z#Z~;5RzDJze#l@dh3WVrAIXSuJ z>(@U=+7bTB-4=DfzINSnBC0_~y3#d$KjD(ex76VfQLsQG7wu&}ZRDPuVIQ(I{A?K8 z&j}(eRQpZBM||M7hn>X&3ntC|ds0JljSUDPX|%arsGI_HaeNuJ@v8G-bk{C+2y(f#m2;{qT8o#(?L@@-5xI$=n*J5 zaQvj7+&QP=sc`<6x~Xm$qGap|r2z;}!PH*Q&le3iibVC2c|mB8drNZsBTd>pHWF01 zq(PZh;%18o;Q?jP;l&df6@_qH$ji@1{<`9d{aN8YI~C!mEbe<{1}I7_tgO;Crk#Z! zKY#v=^A{Xg7P~%5B8(^6|FmJ_iJd_FuiMx6JSY_dCk6F-fHDJU+?hdFINk=OyOzH~ zJ*oE_`->Yxe$iZ@MRIWrZEla{YIb@~(`05IDVr>Nun`MA=o9t-HA>5jeURT*mN`;=r8zR) zP#`{H)xlOHt__!|mw(_7zQP`z`Fpttk9+uce{STf)h^=y;$?nNj`*D2wg$1yOQ0R^Sy)Dz|4 zaP0LOFxs!wq#5O&8}(^tC)61}BpCtq@uBn7`PsI&10|@>;5S1fML?V;lO_@nHeX9J#I2A1$ zFAYZ5^AF#EOp8BhCzSjlq%S+>g1loy#n6zSn26Cw;5)Ya+*@6f+l-88Ac`id`?YoB z3R6SLN6~U|=G%87dyZ1ibP&$F86urMfXe15(;OS6XX1BkJ+Xw$xbRpO=wSpYLV|s* zp}%@&`A>3(Tp4D#McrgF0JT+?hzL$Mgw)IZ9b9e-uQiUn?WI^c$McJNm2fx2XDb57 zY=1qMA|`8Zmm34Lhb~IO>d7(GsxP4A_1sxzO5t4!(g?z+7}28@Zor>PS;<7t^^|)h z<#% z3BlvBxhfN;PX}I8-$}pEXJqvXAt@X0i8Tk@m@RtYL`~)Tq6UdCiHiLTmRAPyYY~rF zRq`LAbqTS|-;ODZ;4UX!v3`?0L?d&u&N2cF`Uz%p0vgqw;e^^R|8|J8fs*S_xzv?U zwWL@_YnlwaNQ}1}qu;S87n^9ut*70G*&PP7p3Wx`;43V(bRZe1p(#_AF)mpo7)3e~ zhE*y62{a;K3S-dVCG;+}KKs36?d4|HWmow(2?l74#kZey7Jqj=BMsc12B_(|f= z+W?}Y@zm({5W#1*;OnNq$QN;Jeq0gGGR4ZV!d~Dupi37VYbEyQqz5=4(_hI|1Rb0#Bt7f>9NcfTm zV^w}@Wo?7bFZCVGKXGf;3$J)E{5^6y=pX}}@AMbddJ)hzIpu3=>-+73R7FcdiKoPsr;a?ys9T=OD;9iBw zTtnPvi~pmG`q4gvHenwv#?^RJwUJS){8gb_Af%P_3-6Q1ftd?3dpq=Y*6E>p1*ffA z(rV&lbbHp^Wwj&NEwsB%)Ny`dlp23I#$>fAQVboGDR+`GV=kfOU*du*>&wU%<_sKiSdGAdB-s*?s2@F z$W0W!YHH+hXdv9%xcaF7K6CEl!oy*p1`V_9PEn?GhLcvyau#jR(94^(je;3Y)=Ft@ zuedn|Mf*8j42{TM6&yU<3v0%-_9Xrfu2GkB!?T3YLd|otd(wPb`TnTFPOSRW4;ATL z&qSw0P_;=ZT0f{OOW`y=aqq&-<>HL^w?Js7=d@UfnqaihD;17nucmqCJ2){;Scytg zF+xk`mHdZ-RQ-?CI6sSKz z{_ie}_=hke;Z=y4lyCd52H4jX5u)WbdiBZazki{?c?extSh%!WFRWhtYSA+KPwLla zk#rNLobg$KP9Zv$@-IyIgR7M{gua-BqwJhHzfp9bw^u%MD(Z`76sCToCp58Vvco1b zf%~0ncEyp8w%bBZIpi@JB{@6kM%O3up0E&Qc?W8Xrq(ljXr=X~TbiEp4{XWAVyZ!= zQi`SuvSk;Gyl9leZ>G|EL}w~&Z_laNdGoe*O%3#5O5?q=B!=II6dx|pN=J~hz`V(4 z8D%<76sews{4mnGDw)cBY6T^2lN<-EMpAPdFF52_kw%BWODm+f0 zk(plf021Tp)?-hINl2bCFvx9}&|)BCN|1B?PT7p_dI(_u*C~ zzFv&+8L`6^M3HMwJ>y#87hPwMilR5AxBQKl*WGSVjeT)1r1=57&u*^W ztz?}SmzT)))N+xd>}gC5j`w59Mz#;b@EDU;~Hh+$MnhKsWv&%+na3ZC~JChgk5TQ8! zHYN(u$g65&Y6>wWcVwJOC%2mJ0`R6juW195`yCNdcTJ2;+1CMn?GrmYGAOR~wy)d~ zSIM6a=^(U?ot%&J?cAp0;nWd`AmrbQugJaHVY~9r&7-H}bv+0tvM6KqZl@#c`=~)= zR1pxEyV9VpC7%A>I^Pr!`SttsDs=qdzLBhQ3SJx0^1^=YU_I0$(ee^?LYBhvIY#-* z%;el(Hd;CQHQFpjUUn8ZXwn`c)=RjWuWhXuZB?&Jk_1N`iBreW_db;vH8NXwu%SEb z9xHJ&nkDgdPj~S=(=(YdRw8I7J5zP=V@hiyuQ*lyj3EW)WO@03(Iqe+E3vi%_>=Wm z>L*~EmHVnh{dvaR^xls=S@*q6L4tiJ1)~fWMb5g~tA>xd=$K6~J(zJPI$+)x{~dnygHerQ zv3cTnv0R>Vve_YcSy1MFkxc}nUBg88=EhhXUbCAwg@IQ)d|3kaJ$pV0k)4iT=Aj9s z&a8JV*kPJS3PUogz27tQkJ`2Sa+&oK2|{YI55|Ip#*Zz`-8ro#$Z5JI^b!nH%Lc>r zaT$iZ8K0%fn+3>)=O|BjG9~+&*Zo!^r%{H-q0)9n)d;x5u}ywpNF>k_Z`w>V8anI* zKmWU4lj4-lNDd)|`Vx=Rqnx%+xTpmx?FYST&k=xTmD1e*lm}bTxW>}L_x;Ly*WdO$ zqZQ>FP67huvfLpA2se42bYW)Hxyj0(d^$_iU0LwD1?eEs4i_UV8lP7@o1GX zj!y|4P~gI_FVWD;sBoo!&NGZ-qAyy>#{)6bv8^;nYqJk&;QidJZ3lf~|HW%X5Ypvi zFBScZJ|r#d`Hw3|B<0(LLB)-gN@joSf=UzZ+Z!b<)95-57EJ8g;ot3T+GUXLHC~UN zp(TzfpN&~6U_|{F1^56;Nl8J9)zSi4Uln(+uhRg%4?MjZ(<)DzPOLrjE-eDB&KI64 zz2n<~FLXq8;M%R|;#oWY-8%c*A-hic{H^eqz;ugbAK1{dy^O1}__@TEQL+Bg$3+4O zMN$^qxu-~Q@3>dk?U&w_cX&BNIjXV)FNkRklA#bAe%ebv}YOw=S|sj<=DWnQgx zK%oX$-5q?YQsYLnb2OHWaF&IQzX@Oskn#`HAs2m~B{}0^b<(Vik&v&VV&qYuHQyKc zViJJ$n!gu$EP8F7JnB^gGY=0zhM-fmJ9MV_rIMPOBe>lx+!#uUE_*`p?G&B-9|RI* zVXORluT)j1;lX=emdb$|(snOnXgk4uE}1)oZSQy0+K1p%2jcNY$HvDF4q5#wJmq2W zgTifV4HRA*3S&x)x;0!})+^%9ci0H;6oyfcpbm`Y4BO&cMSpy+CCo;dE+sIaKgU1J z_HJ(2?GW9EBnd4*K)bb2M9oCIQ6KD>*6BUBo3q>^@0R)0(q23Q0x}3R5b_InVt0=w zv!AAP{gq$9^`ZYd5N0tmMJcS6*KZg$&d=0e9#zIDF^h-ZV6W3$U#6-N9VpWIa^{OWG42S3!c*J4gaj!bLj}Zw>>Df>VvK?YhOR?X0tU1j3W=o*u;>G6yC<#W z?25*xNZVU!s{k*LMlaqz;Qm=%X@|;0T>)|Eh1^p=>{$$Vg`nI6f7(`CE3%}#{Bk4y zYlg5Lk7%5gDU=cgcv(rdjH4sRn$H0z6!f}60)X8j3|MOq0dbvN2lP$?R*M6{Xpxi3 zf&g3BV2NaJMh$6c(J6^hdw#I9=k9amKaNIY9?ttb={QT&7%#SmCNg|?m;q$ZZMVb$7 zkpU*YR{Tr%i}f`rWv-~opF}weE|%8GgJwi$Pd55^pm1mLyG>pt?Yd^$%r(<1?d)I& zMiQ2)+7b0+A1n!X5(Hzt-#M^VTi}_DGxi2sjq1hOE;f+Bu%{rHHZKgiMghQ@TTYr(`ni;nT-=m ze_I<5Z8gUVEFN1yUF@KcWc?9j>Sw>i2>&5zibtPe+1S|cYa0iB%9HD@p!!Bm6GG1~ z8y$Nk9rc#FFxSX%ZwW&p{*(PtSJK-z8V}SFZT3OQIyxf@ySRZGou1v{;TV}hF39om z@fdh`U1cJFKtkX4Vd6DreLDVAE9v)Ik0wkw;~Ruk_Z7?PeJtboB?d@b>pE*8QPt%- z%8xm2@ai6d34yN)?A_7|%yFu#+A8ZMy zu6u#NprGxA>Z{SK4+(V0aj$hgHDL89PQ&F67~sQc(yDB6ligkDrJYK(&RFx=i35pU zdM_t?%@@q@&0b)*ia*!WNMJMXnel_7svkK=?rZ-O;8@VyZe6m6!r_ES`|CMHhS4Rl zv6;zh1V$5Vfoh|$S9U~NntCBCGRh|#1*gKWlQ-|E_k13xbCCik7wasy7l84uhJcBz|%lR$)CM%bu`^LB$!gs7HG3W%XD3ki~bkVglmHcHwVz z$e3vex1aOyua@~!SdW)ZjBB6pxJ)M@?YDOGl}EjLikmw~qdg6;<+vfRYEq0d;bhy% zKONDwg%%pS`pic-;;64~++80J<;jL^UBCHw&ma1jA~eO+2NRfX3*O`e2Pc&%su-|D z=Kl$dO_FXc?TA!9lgaf!(uXi82qgs!kJ4KYNi;oMWpi|rO##=i&2NPM1SJ3Jvz&pwCD(4Yv}y^`uRx_~ zzOiKhiJg1bJVmya$tZYfwd3?93(*r)!?aA6d24YZXBL#cZqvkKMc<8Ul*f&&u`=Fa~zm3nxsCaYSk@{o^b=XA>qjTIiz@&gyUPej4sw#Kdppwa* z&6_kTc)q_!rZ4whP*VX@_j}pRs#EiHS`8N@j+Z6^AyrXtMbXp)Ge0F-j}%7!vGkoh zA*^paH_T9%)o9$Yw%bn#&IHF-VxjuO0~1a1T2Wh7yj7saOj2A;E$;IRumFcZw@~QO z&#(02;#3gl+Y7t?{{G!%X(xF?Xf>&RZhm=s1W1CEZc?zp_7X^28can>PIDyFFEd^> zj@>H@>%%G1L;B1o5qWC9;l|kWomrvm)Etw0$GT}g)(A6uWWmEvOL#%{@nw~>lqD8;CpR5S55*!l($lh+oM{9 zH;}Bo^ID96q}6~&PoZ+|w?K`TvygUY<)Y^UGAC0KpBkJcwh1OCu&FcHxuavX*?YB# zUJZctY#!Q}lc6En5jlta7i;9~;<`dNCM>AzKm`QucUL#my)3U9iN!PZwIc$j*_OOt zyPi7ps~-hsiF)eEyDN8q#^UEMR7QWl!w3vGk;1Mf{_>MoNVIqSQr(cNOwjEK*uySm zdSo~&O}q>^YM0%7T(jBUP8ynov7f#;OZm$)1Pq_KBg@WA2wYHM=~fc8?+4{O)$&EuV9Ir#pH?MpZ-~Sm}tBkIZlP z3LGrABTqPFcCrS_w7@js1La06$neC(VCVH(6rxN9-Vk7oR)e)}U8vcM2&ybiq8WQt zr&9`;wa(eExNyW?JZiw#HjtP*RY0tze`p-^S~wk<88^e?`|F|Rq8+_U-U{xgDtWn= z*D!E{gfrGv3I?lYSidx&oejPSJAQgcaASj zG8t$dbr3!|i`ut1Tp1gQPcP}p(S@xzT9=;2H>!HaY=v+f|8zDyDI0l8ynlR4ZbGOY z?FwYxD)riz?Lmh5MC1btBp2L4%ZI%L|ITw)2GQNQ%}DZBDHGaWoIApU#ayHV;z-fy zKcgCXIW!eq>&RKRow}#rJL#mgiLJL9BG!dzT83dsz^~-)T0K(Fm}0KtA|cAan55TX zMa9j7v$~)DY74m2Q3So}vJJzfs&!m?f#~j|5PaY7cfE=ZY4JLxOXsu82l>|1k;=D| z72Siat$NuQXo)7R&ui;DD^#$aL)p&Iyx{RHf?{9%F_D?UkK8y^K@FWTc&7~mznsi{ z-<(D66QX`_Osl1HSct)-CoMl**=Mk(&mZ?){8iyVY=SR;xKLCmull-XCw8rRFh z#mr#1U9oNSJFE{@DjmZNdC3!*+bQ`VU4c!@=M9b(U&^8^S#iG*SV`+Cx9c#z=3P;S z!DiK7s;bJqf6s-5g@sQ|%|-LjNAoWrAONx|vU8*~@mBt=E{jVkjr(NfSdX{5?zey` zwu+T6Vj``y=w5Ko+N;(CO}m;@5yAG}*@3eas9JC(y+|@kh}nG1taT95+uA$7I^q^@ zux0;9ZwA}?C){T(rIjihFxW;Q9^^^1Lh=t32q@V*IDUjinuT?})bb`#89gG;k;=+R zZ%mU;!;qlllgO8W$x28FhK1!cMk0#*&9Lt*1|c`GR$ ztjJN1#9UjR2-!hrC&tIpk+@sK!k$k1zt5Xk@F^h1GMH~fhHOvwirB=t4yXRc*(^OR zOXi3#`c>dn%FX2|*;BG6?)~c%`j%3)d0%MV{v_wkOwPYxINXa;%uCa~BR3a0(HJx$r$N&o9xdV4TTZnn6N~p{ zW0NGr{iAuB_it>Xs)O_kIgNfdduG;l>FF4(kN1PAx5pRq-^<%xaACoQ%hS5!cZ?(g zOCNQe926`|JvBflu*r@?HfTCC>kEBs@bx_vknYvVsWNK90?7~@sCb&!834Qx9k`WS zj3h9=XNN28OO?5D=5__;dej4~nI-2N0AW%y=R|p&BX@6x`b~$qtE9AvJpBDe*RzUh zLI$j)u9xHVD-<#FVGANVt+2Y60NOEQD?&o)OWU4+K&@I|~ zUM0|}R5AsDCV1^mRt!f0yoOJmgJHxHmtp#HlUY^t08%?WB>&Mpt$a;GCH}4FvVw*BEo~E~fYgQ&FW@ZGf49{-QvgAnk zk?-y8Vc_7%+1j%7_Vp1^Q^(ZS)*9hX`p`zwA$l5=6PfZ9W2xQ!nMFk@czAfqEvN4e z4-YA_eL*J##^cAy4}?TSmj`gpA1d7(nJCE{3DyOlB0AT{q+xw1^VoviUL?I+pR|9y zZAH3tr2fP?Gvlm(z+(N*)_l*m?|Vvk$zaK{JQ&4C?~hsyTj-Qdl-|)j!;s-Tc;v8i z9r`N?<7${bR*G023L3S-BO+XG(fq;Dvd(rYKf`}#cd7ui+M-}#WAnKERx4RL+by75--iI{vdI3MYSnwJrVFCVcjk} z)tY~0d8Dybo;G;a_BqC4GU4yA_6gFV@8sol`Ze_)tY8Z;trovJ(JVK=`&l|z0t6#m zV1ug{qMSyJ-JmV9*7y4TQmauu7%f1|!a+2Y^bZbhp1r*+X6%fOj_%yJsnT<(IzP+T z6UHQUZ~S~ng*;9PqFn7sk9ujXE^OoHjorOL_xHMF^!(oMLy0@2PO~?$i%kW@wH7je z7x_`$Rj}vXdURh1IK2F_WF{3N8)!xKv}EpiYhrBdtH4Qw=51wVr2@8umX=m{WLuN{ z&8p}60FXZC>gobf0qrq)@TBAeWv9<2G6c~*)L=a>1A^C>b^Gxcc-K?S?_M+g78HL@ zaU>zGea1&Bpiiw~C04*`FwHO=nG6$`Ja1VZ8gl!H$GJv2H$Z5L`v+3%`uB*1r9#F6 z_2*X8w_iI$MzRhsu$;F>-*Snu@vATeb@TQ4%DSkW7=D8aGrdd?#wO#+wH%76&wV!4 z>Skji!W^HJROmxPOpFS#U8-j!BqW4D075pHDeU&#WmB#L=(-C*;m;AB>c7AP&Np%U zz-(R&%fk#(^OLY?+4;+Xhq}ggb(sDqm9^T7Ch#^HpQ8peHcvTHICl$<6nakZyWb); zFO)Xg)=uoNYG#78)wnef^rcz+g`b}BNaKTh$%L zQ&8BP(|_asQ_}-evY}4l#5^}%i_51H3LQf`J~=%l^}6vq=_boQGwf#n^i0F+_t{y( zvx<SI3k4dP zVjvGSBYXHQtSU-C>*MUkA=hDe%n5NI3a5hc#sa0Fmp!zS64@bhfVF1_lvfS9{Kbu$ z?29}#09amjsQ;e#5Lm4HercJ9Q}uO!vtjYqhqjJ}q1N zx$+VQ({cI(Xvs#5^cXv}>B)(*506w#rc%d|Z8uVfhE(UBi%X$U6~wRV2(!%TKkcCo31Un_^?hgakFx`7j~R zJ^!p2<+P5rF1elJbY;~sTNMZH?OjtGCW> zh6#GT>iI;>3lyYN^FaPbHSbN5v?KUJ`yJXH0Hxq*(Jh^ZsN0zKwAud}H73RY+oX3dVy`MGrhHEdLV$tLr9y%JHfRl~WbJr~;97-X4kn1Em*brO>xhrFC-vIc@ z3-&63SynR4X*0UGnhgDGAE=dkZN(J6{PL+m8ymx;qsWl| zZtl4m1k%oyK-Wedsy%O>)tZ*vEN8c0UP?FQ>DfE;NNWna6YBNrCF^4bu;tbMDU*1z z#@{n%VvdaWu9+VX7++(T1f2Q5GI zP!BJ9zdjx3$qxxMZ$=U&Yva5$+b7xIc37Jtvd|;YIIwqnsPEE`A-YrucBfvO)9flP^G)i>cqF`nu70s z?P=T<_%fOwoKoW0(!lnscLUk|aod>1QS^G4Rc0}9ZtS2ddV1M8m&i)km3JF^T}lB1!Md^Q8~g9Q_&&V$K@;P1W6RO_O-^$);+8dF zCw>Nyuh6R3U+I{cOY~&=^xyb_tDKV<{FF}CAZYw|L!DiH`Yf}L!VlU(MctKHk2x

8Sph=w5>W{ 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 literal 0 HcmV?d00001 diff --git a/_images/9a415e85d0c43a7a40bed466a818eb08f4cae62e6a4b0a95e4be1e379298b378.png b/_images/9a415e85d0c43a7a40bed466a818eb08f4cae62e6a4b0a95e4be1e379298b378.png new file mode 100644 index 0000000000000000000000000000000000000000..2259d120a4cc0ea5510eab5fa9b118b3befd6528 GIT binary patch literal 18874 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 B;I04w literal 0 HcmV?d00001 diff --git a/_images/a220f3086fc5a316cfe8553831a6dbcaa06a392087595b44af8ee3e6812387d5.png b/_images/a220f3086fc5a316cfe8553831a6dbcaa06a392087595b44af8ee3e6812387d5.png deleted file mode 100644 index 121d4b1132f4ea89c5fadcb8a264f6525599fa61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18629 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 Tk_WF8f=G+M7AqEc^X~rwG-N;a diff --git a/_images/a9f4c8600d7499dc21fdcdccbf5f2b9f6184535efbd43c96489bc58f87d2e5c0.png b/_images/a9f4c8600d7499dc21fdcdccbf5f2b9f6184535efbd43c96489bc58f87d2e5c0.png deleted file mode 100644 index 0398671379ddf8670f0757854fbca356de3afd8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47080 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 M(bq1}yc_)A00+3wn*aa+ diff --git a/_images/d30d68ddd43e49e0882b36f1269edec6dc7dbfabcadf0dd3dea898b99afe6fe2.png b/_images/d30d68ddd43e49e0882b36f1269edec6dc7dbfabcadf0dd3dea898b99afe6fe2.png new file mode 100644 index 0000000000000000000000000000000000000000..43c706eb3c309e06335bb8006ca45a6c9b44a680 GIT binary patch literal 19361 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 [KLayout](https://www.klayout.de/) is a free and open-source software for layout design and verification. It's most basic use case is as a layout viewer (it can read and display GDS files, the most common format for laying out photonic chips), but it is a powerful tool for designing photonic devices and integrated circuits as well. It has features for {term}`DRC`, viewing chip cross-sections, tracing nets (to help you detect shorts), and more, while also being scriptable in several languages including Ruby and Python. KLayout is available for Windows, Mac, and Linux. You can download KLayout [here](https://www.klayout.de/build.html). + +## klive + +klive is a small extension to KLayout that allows automatic loading for GDS +files when some external program sends a json request with the gds path to a +klive server, running in the background. This essentially allows for +"hot-reloading" of your layouts within KLayout each time you rerun your code. + +Once KLayout is installed, you can install klive from within KLayout's package +manager, by going to `Tools > Manage Packages > Install New Packages`. Then, +search for `klive` and double click it to select it, then click "Apply". + +![klive installation screenshot](../klive_installation.png) diff --git a/_sources/pages/mzi.ipynb b/_sources/pages/mzi.ipynb index 923f78f..21f5d97 100644 --- a/_sources/pages/mzi.ipynb +++ b/_sources/pages/mzi.ipynb @@ -1,355 +1,541 @@ { "cells": [ { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Mach-Zehnder interferometers\n", "\n", - "The basic concept behind a Mach-Zehnder interferometer is that it splits a beam of light into two path and then recombines them. The resulting interference pattern depends on the relative phase of the two paths. This is a very common device in quantum optics, and is used in many experiments.\n", + "*This tutorial is an extract from the Simphony docs. For further background reading, see the [Introduction to simphony](https://simphonyphotonics.readthedocs.io/en/latest/tutorials/intro.html)*\n", "\n", - "Phase shifts may be caused by differing path lengths, or by the application of a phase shifter, such as a piezo-electric transducer." + "In this tutorial, we'll define and simulate a simple circuit known as a\n", + "Mach-Zender Interferometer (MZI).\n", + "\n", + "The basic concept behind a Mach-Zehnder interferometer is that it splits a beam of light into two paths and then later recombines them. The resulting interference pattern depends on the relative path length, and therefore the accumulated phase, between the two paths. This is a very common device in quantum optics, and is used in many experiments.\n", + "\n", + "Phase shifts may be caused by differing path lengths, or by the application of a phase shifter, such as a piezo-electric transducer.\n", + "\n", + "Simphony uses [SAX](https://flaport.github.io/sax/index.html) to define \n", + "models and simulate circuits, which uses \n", + "[JAX](https://jax.readthedocs.io/en/latest/index.html) as a computational \n", + "engine. JAX can provide a nice speedup for larger circuits if their models are \n", + "appropriately defined and you have a GPU. Otherwise, it will run perfectly fine \n", + "on a CPU." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Designing a Mach-Zehnder interferometer\n", - "![Image of a MZI](https://raw.githubusercontent.com/BYUCamachoLab/Photonics-Bootcamp/main/book/images/Notebook_Images/mzi_outline_ports_marked.webp)\n", - "\n", - "The above image shows a Mach-Zehnder interferometer. The input port is the top grating coupler and the output port is the bottom grating coupler. This particular design utilizes a path length difference to introduce a relative phase difference between the two paths. \n", - "\n", - "Simphony is an opensource photonic circuit simulator that already has a grating coupler model, y-branches, and waveguides which can be used to implement a Mach-Zehnder interferometer. The following code block was taken from the Simphony github and shows how to create a Mach-Zehnder interferometer using Simphony. To learn how to set up your own simulations in Simphony, see the official [Simphony documentation](https://simphonyphotonics.readthedocs.io/en/latest/index.html) " + ":::{note}\n", + "We run the following command **first** to ensure that JAX, the library that allows Simphony and SAX to run calculations on GPU's, uses [double precision](https://jax.readthedocs.io/en/latest/notebooks/Common_Gotchas_in_JAX.html#double-64bit-precision). Be aware that this setting must be set before JAX initializes, or the setting won't take.\n", + ":::" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 1, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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DN+aMUIuq1nNT+ZOwajY9oWLxmfnnP9+yTi5DHzZFP59vsn42rRquGMVkYvPHGp59QAA/t9FY+XHttjrxINzJ1t6PkEQ8ODcKRiS70JXIIxQRMSlZw3FTReNteyc/37JOHwv9nv5yocn8OftxxCOivj6tGo8ff15XKtQY4cW4OVbLsR3vzAWLrsNHx/vwFNv7cej6z/Hn7YfxenuEIYVuvHdi8finbsuxY+/fna/E3WATsduILF8+XLcd999fXLuWePKMWtcOY60duPvHzdi/0kfHDYBE6uK0HB2pWWfqLwuO1bMn47vXDAK//ikCYFwFJecNRQXnznUUhfCYbfhv6+dgZd3HsfR1m5849wRWXEDLhg7BP+3aDY27juJunFDLN9SwHhk3nS8+XkzvjljRMogad5cNqUK02pK0N4dytoLSZHHidU31+FUV8DyviiGIAh47fYvYOPeU1kRzYzpNSX4879fmLXzAcCj356G1z9rxpXnjczaORvOrkSDRT1YqRhdno+1P7gIh051Z2UYBpDKzutvvxiHW7uz0qcJSAMwf/reLHQHIzhvdGlWnF92zuc2HsSXz67EKAumYROZVF2Ev/z7hXhhy2GcVVmAy6dUW/rBhH2Iv2xyFV758DggAPUTK3CeReX1fLcDd182ETdfPA6vfdKIT090IhCOYGihB+eNLsWsceVct3pYgS5hV15eDrvdjqamprivNzU1obIy+YtFZWVl2uPZ301NTaiqqoo7Zvr06fIxicMZ4XAYra2tKc979913x5WAOzo6UFNjXWkwGTVlefh/Fn6SSYYgCDhvdJllT/pUuB12eZAim0yqLsramwVj5JA8XFs3OqvnBKQyYbbKk4xsP48AKTT32+dl5824LxlRmocFffA86gvy3Y6s/57abUJWPmCqmZyllgU15QVuLM5CtULNyCF5+OFXJmT1nFNGFGPKiOw9vqX5LszP4ocunujyMF0uF2bMmIENGzbIX4tGo9iwYQPq6uqSXqauri7ueABYv369fPyYMWNQWVkZd0xHRwc2b94sH1NXV4e2tjZs27ZNPub1119HNBpFbW1t0vO63W4UFRXF/SEIgiAIgshldJdiFy9ejOuuuw4zZ87E+eefjxUrVsDn82HhwoUAgAULFmD48OFYvnw5AODWW2/FxRdfjEceeQSXX345Vq1aha1bt+Kpp54CIDlMt912Gx588EGMHz8eY8aMwb333ovq6mrMnTsXADBx4kTMmTMHN954I1auXIlQKIRFixbhyiuvRHU1n0BEgiAIgiCIgY5uYTd//ny0tLRg6dKlaGxsxPTp07Fu3Tp5+OHw4cOw2RQjcNasWXjhhRewZMkS3HPPPRg/fjzWrFmDyZOVJs+77roLPp8PN910E9ra2jB79mysW7cOHo8yOfb8889j0aJF+NKXvgSbzYZvfvObePzxx83cd4IgCIIgiJxCEBNT/3KUjo4OFBcXo729ncqyBEEQBEEMGPRoGNoVSxAEQRAEkSOQsCMIgiAIgsgRSNgRBEEQBEHkCCTsCIIgCIIgcgQSdgRBEARBEDkCCTuCIAiCIIgcgYQdQRAEQRBEjkDCjiAIgiAIIkcgYUcQBEEQBJEjkLAjCIIgCILIEXTvih2osM1pHR0dfXxLCIIgCIIgtMO0i5YtsING2HV2dgIAampq+viWEARBEARB6KezsxPFxcVpjxFELfIvB4hGozh+/DgKCwshCEJf3xxTdHR0oKamBkeOHMm4DJhIDT2OfKDH0Tz0GPKBHkc+0ONoHt6PoSiK6OzsRHV1NWy29F10g8axs9lsGDFiRF/fDK4UFRXRLx0H6HHkAz2O5qHHkA/0OPKBHkfz8HwMMzl1DBqeIAiCIAiCyBFI2BEEQRAEQeQIJOwGIG63G8uWLYPb7e7rmzKgoceRD/Q4moceQz7Q48gHehzN05eP4aAZniAIgiAIgsh1yLEjCIIgCILIEUjYEQRBEARB5Agk7AiCIAiCIHIEEnYEQRAEQRA5Agm7Puatt97C1772NVRXV0MQBKxZsybjZZ5//nlMmzYNeXl5qKqqwr/927/h1KlTccesWLECZ511FrxeL2pqanD77bfD7/dbdC/6HiOP45NPPomJEyfC6/XirLPOwnPPPdfrmNWrV2PChAnweDyYMmUK1q5da8Gt7z9Y8Tj+5je/wUUXXYTS0lKUlpaivr4eW7Zssege9D1WPRcZq1atgiAImDt3Lr8b3Q+x6nFsa2vDLbfcgqqqKrjdbpx55pk5/Xtt1eM4mN5jli9fjvPOOw+FhYUYNmwY5s6di927d2e8XKb3D1EUsXTpUlRVVcHr9aK+vh579uwxf4NFok9Zu3at+KMf/Uj885//LAIQ//KXv6Q9/p133hFtNpv42GOPifv37xfffvtt8eyzzxa/8Y1vyMc8//zzotvtFp9//nnxwIED4t///nexqqpKvP322y2+N32H3sfxV7/6lVhYWCiuWrVK3Ldvn/iHP/xBLCgoEP/617/Kx7z77rui3W4XH374YfGTTz4RlyxZIjqdTvGjjz6y+N70HVY8jldffbX45JNPijt27BA//fRT8frrrxeLi4vFo0ePWnxv+gYrHkPGgQMHxOHDh4sXXXSReMUVV1hzB/oJVjyOgUBAnDlzpnjZZZeJ77zzjnjgwAHxjTfeEHfu3Gnxvek7rHgcB9t7TENDg/jMM8+Iu3btEnfu3Cledtll4siRI8Wurq6Ul9Hy/vHQQw+JxcXF4po1a8QPPvhA/PrXvy6OGTNG7OnpMXV7Sdj1I7T80v3sZz8Tx44dG/e1xx9/XBw+fLj8/1tuuUX84he/GHfM4sWLxQsvvJDbbe3PaHkc6+rqxDvuuCPua4mP0be//W3x8ssvjzumtrZW/O53v8vttvZneD2OiYTDYbGwsFD83e9+x+Nm9mt4PobhcFicNWuW+Nvf/la87rrrcl7YqeH1OP76178Wx44dKwaDQStuZr+H1+M42N9jmpubRQDim2++mfKYTO8f0WhUrKysFH/2s5/J329raxPdbrf4hz/8wdTto1LsAKOurg5HjhzB2rVrIYoimpqa8NJLL+Gyyy6Tj5k1axa2bdsml7v279+PtWvXxh0z2AkEAvB4PHFf83q92LJlC0KhEABg06ZNqK+vjzumoaEBmzZtytrt7O9oeRwT6e7uRigUQllZWTZuYr9H62N4//33Y9iwYbjhhhuyfRMHBFoex7/+9a+oq6vDLbfcgoqKCkyePBk//elPEYlE+uIm90u0PI6D/T2mvb0dANK+hmV6/zhw4AAaGxvjjikuLkZtba3p9xgSdgOMCy+8EM8//zzmz58Pl8uFyspKFBcX48knn5SPufrqq3H//fdj9uzZcDqdGDduHC655BLcc889fXjL+xcNDQ347W9/i23btkEURWzduhW//e1vEQqFcPLkSQBAY2MjKioq4i5XUVGBxsbGvrjJ/RItj2Mi//mf/4nq6upeL3qDFS2P4TvvvIP/+Z//wW9+85s+vrX9Fy2P4/79+/HSSy8hEolg7dq1uPfee/HII4/gwQcf7ONb33/Q8jgO5veYaDSK2267DRdeeCEmT56c8rhM7x/sbyveY0jYDTA++eQT3HrrrVi6dCm2bduGdevW4eDBg7j55pvlY9544w389Kc/xa9+9Sts374df/7zn/G3v/0NDzzwQB/e8v7Fvffei6985Su44IIL4HQ6ccUVV+C6664DANhs9GuhFb2P40MPPYRVq1bhL3/5Sy9XYLCS6THs7OzEtddei9/85jcoLy/v41vbf9HyXIxGoxg2bBieeuopzJgxA/Pnz8ePfvQjrFy5si9ver9Cy+M4mN9jbrnlFuzatQurVq3q65uSGlOFXIIr0ND/8J3vfEf81re+Ffe1t99+WwQgHj9+XBRFUZw9e3avHonf//73otfrFSORCNfb3B/R8jgygsGgeOTIETEcDstNw+wxqqmpEX/xi1/EHb906VJx6tSpnG9x/4TX48j42c9+JhYXF4vvv/++Bbe2f8LjMdyxY4cIQLTb7fIfQRBEQRBEu90u7t2719o70Q/g9Vz8whe+IH7pS1+KO37t2rUiADEQCPC+2f0OXo/jYH2PueWWW8QRI0aI+/fvz3hspvePffv2iQDEHTt2xB3zhS98QfzBD35g6naSNTHA6O7u7uWE2O12ANLotNZjCAmn04kRI0bAbrdj1apV+OpXvyo/dnV1ddiwYUPc8evXr0ddXV1f3NR+TbrHEQAefvhhPPDAA1i3bh1mzpzZh7e0/5LqMZwwYQI++ugj7Ny5U/7z9a9/HZdeeil27tyJmpqavr7p/Yp0z8ULL7wQe/fuRTQalY///PPPUVVVBZfL1Vc3uV+S7nEcbO8xoihi0aJF+Mtf/oLXX38dY8aMyXiZTO8fY8aMQWVlZdwxHR0d2Lx5s/n3GFOykDBNZ2enuGPHDvlT+aOPPiru2LFDPHTokCiKovjDH/5QvPbaa+Xjn3nmGdHhcIi/+tWvxH379onvvPOOOHPmTPH888+Xj1m2bJlYWFgo/uEPfxD3798vvvbaa+K4cePEb3/721m/f9lC7+O4e/du8fe//734+eefi5s3bxbnz58vlpWViQcOHJCPeffdd0WHwyH+/Oc/Fz/99FNx2bJlOR93YsXj+NBDD4kul0t86aWXxBMnTsh/Ojs7s333soIVj2Eig2Eq1orH8fDhw2JhYaG4aNEicffu3eIrr7wiDhs2THzwwQezffeyhhWP42B7j/ne974nFhcXi2+88Ubca1h3d7d8zLXXXiv+8Ic/lP+v5f3joYceEktKSsSXX35Z/PDDD8UrrriC4k5ygX/+858igF5/rrvuOlEUpRfwiy++OO4yjz/+uDhp0iTR6/WKVVVV4jXXXBOXCRYKhcQf//jH4rhx40SPxyPW1NSI//7v/y6ePn06e3csy+h9HD/55BNx+vTpotfrFYuKisQrrrhC/Oyzz3pd7x//+EfxzDPPFF0ul3j22WeLf/vb37J0j/oGKx7HUaNGJb3OZcuWZe+OZRGrnotqBoOws+px3Lhxo1hbWyu63W5x7Nix4k9+8hMxHA5n6V5lHysex8H2HpPs8QMgPvPMM/IxF198sfyYMjK9f0SjUfHee+8VKyoqRLfbLX7pS18Sd+/ebfr2CrEbTRAEQRAEQQxwqMeOIAiCIAgiRyBhRxAEQRAEkSOQsCMIgiAIgsgRSNgRBEEQBEHkCCTsCIIgCIIgcgQSdgRBEARBEDkCCTuCIAiCIIgcgYQdQRAEQRBEGt566y187WtfQ3V1NQRBwJo1a3Rd3u/34/rrr8eUKVPgcDgwd+7ctMe/++67cDgcmD59uu7bSsKOIAiCIAgiDT6fD9OmTcOTTz5p6PKRSARerxc/+MEPUF9fn/bYtrY2LFiwAF/60pcMnYuEHUEQBEEQRBq+8pWv4MEHH8Q3vvGNpN8PBAK44447MHz4cOTn56O2thZvvPGG/P38/Hz8+te/xo033ojKysq057r55ptx9dVXo66uztBtJWFHEARBEARhgkWLFmHTpk1YtWoVPvzwQ8ybNw9z5szBnj17dF3PM888g/3792PZsmWGb4vD8CUJgiAIgiAGOYcPH8YzzzyDw4cPo7q6GgBwxx13YN26dXjmmWfw05/+VNP17NmzBz/84Q/x9ttvw+EwLs9I2BEEQRAEQRjko48+QiQSwZlnnhn39UAggCFDhmi6jkgkgquvvhr33Xdfr+vRCwk7giAIgiAIg3R1dcFut2Pbtm2w2+1x3ysoKNB0HZ2dndi6dSt27NiBRYsWAQCi0ShEUYTD4cBrr72GL37xi5qui4QdQRAEQRCEQc455xxEIhE0NzfjoosuMnQdRUVF+Oijj+K+9qtf/Qqvv/46XnrpJYwZM0bzdZGwIwiCIAiCSENXVxf27t0r///AgQPYuXMnysrKcOaZZ+Kaa67BggUL8Mgjj+Ccc85BS0sLNmzYgKlTp+Lyyy8HAHzyyScIBoNobW1FZ2cndu7cCQCYPn06bDYbJk+eHHfOYcOGwePx9Pp6JkjYEQRBEARBpGHr1q249NJL5f8vXrwYAHDdddfh2WefxTPPPIMHH3wQ//Ef/4Fjx46hvLwcF1xwAb761a/Kl7nssstw6NAh+f/nnHMOAEAURa63VRB5XyNBEARBEATRJ1COHUEQBEEQRI5Awo4gCIIgCCJHIGFHEARBEASRI5CwIwiCIAiCyBFI2BEEQRAEQeQIJOwIgiAIgiByBBJ2BEEQBEEQOQIJO4IgCIIgiByBhB1BEARBEESOQMKOIAiCIAgiRyBhRxAEQRAEkSOQsCMIgiAIgsgR/j+eRBUl72gPMwAAAABJRU5ErkJggg==", - "text/plain": [ - "

" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ - "# Copyright © Simphony Project Contributors\n", - "# Licensed under the terms of the MIT License\n", - "# (see simphony/__init__.py for details)\n", - "\n", + "from jax import config\n", + "config.update(\"jax_enable_x64\", True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this tutorial, we'll use JAX as a drop in replacement for NumPy, matplotlib for visualizing our results, and SAX for constructing our circuit and running our simulations." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import jax.numpy as jnp\n", "import matplotlib.pyplot as plt\n", + "import sax" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## The MZI from it's components" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In an MZI, light entering the circuit is split and travels down two paths of differing lengths. When the light is recombined, it interferes, and the output is frequency-dependent." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{eval-rst}\n", + ".. figure:: /_static/images/mzi.png\n", + " :alt: Mach-Zehnder Interferometer (MZI) layout.\n", + " :align: center\n", "\n", - "from simphony.libraries import siepic\n", - "from simphony.simulation import Detector, Laser, Simulation\n", - "\n", - "# first we initialize all of the components in the MZI circuit\n", - "gc_input = siepic.GratingCoupler()\n", - "y_splitter = siepic.YBranch()\n", - "wg_long = siepic.Waveguide(length=150e-6)\n", - "wg_short = siepic.Waveguide(length=50e-6)\n", - "y_recombiner = siepic.YBranch()\n", - "gc_output = siepic.GratingCoupler()\n", - "\n", - "# next we connect the components to each other\n", - "# you can connect pins directly:\n", - "y_splitter[\"pin1\"].connect(gc_input[\"pin1\"])\n", - "\n", - "# or connect components with components:\n", - "# (when using components to make connections, their first unconnected pin will\n", - "# be used to make the connection.)\n", - "y_splitter.connect(wg_long)\n", - "\n", - "# or any combination of the two:\n", - "y_splitter[\"pin3\"].connect(wg_short)\n", - "# y_splitter.connect(wg_short[\"pin1\"])\n", - "\n", - "# when making multiple connections, it is often simpler to use `multiconnect`\n", - "# multiconnect accepts components, pins, and None\n", - "# if None is passed in, the corresponding pin is skipped\n", - "y_recombiner.multiconnect(gc_output, wg_short, wg_long)\n", - "\n", - "# do a simple sweep simulation\n", - "theoretical = None\n", - "with Simulation() as sim:\n", - " l = Laser(power=20e-3)\n", - " l.wlsweep(1500e-9, 1600e-9)\n", - " l.connect(gc_input)\n", - " Detector().connect(gc_output)\n", - "\n", - " theoretical = sim.sample()\n", - "\n", - "plt.plot(sim.freqs, theoretical[:, 0, 0])\n", - "plt.title(\"MZI\")\n", - "plt.tight_layout()\n", - "plt.show()\n", - "\n", - "# if we specify multiple samples, noise gets added to the simulation\n", - "with Simulation() as sim:\n", - " l = Laser(power=20e-3)\n", - " l.wlsweep(1500e-9, 1600e-9)\n", - " l.connect(gc_input)\n", - " Detector().connect(gc_output)\n", + " Chip layout of a Mach-Zehnder Interferometer (MZI).\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The MZI we’ll create can be broken down into constituent parts. Simphony includes models for these building blocks below:" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{eval-rst}\n", + ".. figure:: /_static/images/mzi_outline_ports_marked.png\n", + " :alt: Mach-Zehnder Interferometer (MZI) block diagram\n", + " :align: center\n", "\n", - " # we get 101 samples even though we only use 3 because\n", - " # filtering requires at least 21 samples and the results\n", - " # get better with more samples and 101 isn't much slower\n", - " # than 21\n", - " noisy = sim.sample(101)" + " Block diagram of a Mach-Zehnder Interferometer (MZI) with the components labeled.\n", + "```" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "As you can see, and as you might have predicted, by varying the wavelength we can see different levels of power being output from the device. Notice how the power periodically dips to 0. This occurs when the phases of the two paths are exactly opposite, and the light destructively interferes. The power, however does not peak at a consistent maximum, since the mach-zhender has been optimized for a particular wavelength." + "The grating couplers are the input and output for light in the circuit. The Y-branch can split and recombine light, and because the waveguides which carry light across the circuit have a different length relative to each other, this produces interference when the light is recombined at the second Y-branch. We can now begin defining our circuit in Simphony using the components we have identified." ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "## Analysis of a balanced MZI" + "## Models" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "You can think of a balanced interferometer as having equal path lengths when the light separates. In ideal conditions, this means that amount of power at the output is the same as the input. " + "We'll use models from the [SiEPIC Ebeam PDK](https://github.com/SiEPIC/SiEPIC_EBeam_PDK) library (already included in simphony)." ] }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from simphony.libraries import siepic" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As explained in the Introduction, models in SAX (and therefore in Simphony) are simply \"callables\" (functions) that return a dictionary of scattering parameters. The keys of that resulting dictionary are the port-to-port relationships. In Simphony, we follow the convention ``(output, input)`` for the keys of the dictionary, which is the same as the S-parameter matrix formulation (where $S_{ij}$ is the scattering parameter representing the response at port $j$ given a stimuli at port $i$).\n", + "\n", + "Models in SAX must have default parameters in their function signatures; that is, no positional arguments are allowed." + ] + }, + { + "cell_type": "code", + "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "You can install `pip install gdsfactory[full]` for better visualization\n" + "\u001b[0;31mSignature:\u001b[0m\n", + "\u001b[0msiepic\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgrating_coupler\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\u001b[0m\n", + "\u001b[0;34m\u001b[0m \u001b[0mwl\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mjax\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mArray\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m1.55\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n", + "\u001b[0;34m\u001b[0m \u001b[0mpol\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mLiteral\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'te'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'tm'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'te'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n", + "\u001b[0;34m\u001b[0m \u001b[0mthickness\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mfloat\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m220.0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n", + "\u001b[0;34m\u001b[0m \u001b[0mdwidth\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mfloat\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n", + "\u001b[0;34m\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m->\u001b[0m \u001b[0mDict\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mTuple\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mjaxtyping\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mComplex\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mArray\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'...'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mDocstring:\u001b[0m\n", + "SiEPIC EBeam PDK grating coupler optimized for TE polarizations at\n", + "1550nm.\n", + "\n", + "The grating coupler efficiently couples light from a fiber array positioned\n", + "above the chip into the circuit. For the TE mode, the angle is -25 degrees\n", + "[needs citation].\n", + "\n", + ".. image:: /_static/images/ebeam_gc_te1550.png\n", + " :alt: ebeam_bdc_te1550.png\n", + "\n", + "Parameters\n", + "----------\n", + "wl : float or Array\n", + " The wavelengths to evaluate at in microns.\n", + "pol : {\"te\", \"tm\"}\n", + " Polarization of the input/output modes.\n", + "thickness : {210.0, 220.0, 230.0}\n", + " Thickness of the grating coupler silicon in nm. Useful for simulating\n", + " manufacturing variability.\n", + "dwidth : {-20.0, 0.0, 20.0}\n", + " Change in width from nominal of the gratings. Representative of\n", + " manufacturing variability. Must be one of -20, 0, or 20.\n", + "\n", + "Raises\n", + "------\n", + "ValueError\n", + " If `pol` is not 'te' or 'tm'.\n", + "ValueError\n", + " If `thickness` is not one of 210, 220, or 230.\n", + "ValueError\n", + " If `dwidth` is not one of -20, 0, or 20.\n", + "\n", + "Notes\n", + "-----\n", + "See also the PDK documentation:\n", + "https://github.com/SiEPIC/SiEPIC_EBeam_PDK/blob/master/Documentation/SiEPIC_EBeam_PDK%20-%20Components%20with%20Models.docx\n", + "\u001b[0;31mFile:\u001b[0m ~/git/simphony/simphony/libraries/siepic/models.py\n", + "\u001b[0;31mType:\u001b[0m function" ] - }, + } + ], + "source": [ + "siepic.grating_coupler?" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This means that they can always be called without arguments to inspect what their default return values are and to see what port names are provided." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAisAAAGfCAYAAACeHZLWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABJ7klEQVR4nO3de3hb1Z0u/leSLVk3O3acSHas3CAUgmFK4w4TAiQZIEBzaBlmGCg0TXrhtA0ppJkWSJmndfojMVMuJ1MoTGH4AedQDp0WhunAlHHaQiDlFtKmTckMDcSJncSKE9uxJMuWZO11/vhmS/ItsRNtaUt6P8+jR9aWLC9/LWu/WmvttS1KKQUiIiIik7LmuwFEREREJ8KwQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREplaWqx/U0tKCb3/727j99tuxefNmAIBSChs2bMBjjz2G3t5eXHjhhfjhD3+Ic889d8LPq2kaDh06BK/XC4vFYlDriYiIKJuUUgiHw6ivr4fVepK+E5UD7777rpo9e7Y6//zz1e23357afu+99yqv16uef/55tWvXLnXDDTeouro6FQqFJvzcHR0dCgAvvPDCCy+88FKAl46OjpPu6w3vWYlEIrj55pvx+OOP45577kltV0ph8+bNuPvuu3HdddcBAJ5++mn4fD48++yz+MpXvjKh5/d6vQCAjo4OVFZWZv8XKGGRSARvvPEGLrnkEng8nnw3p6hpmoaOjg4EAoGTf8KgU8Y65w5rnRuFXOdQKIRAIJDaj5+I4WHl1ltvxfLly3H55ZcPCyttbW0IBoNYtmxZapvD4cDixYvx5ptvjhtWYrEYYrFY6nY4HAYAeDwe7lANUFFRwdrmgKZpcLvd8Hg8BfeGU0hY59xhrXOjkOusaRoATGgKh6Fh5bnnnsNvf/tbbN++fdR9wWAQAODz+YZt9/l82L9//7jP2dLSgg0bNoza3tHRMaF0RhMXjUYRDodx4MABuFyufDenqCml0NvbC4vFwrlXBmKdc4e1zo1CrrPe2TARhoWVjo4O3H777WhtbUVFRcW4jxtZXKXUCQu+fv16rFu3LnVb70YKBAIcBsqySCSCPXv2oKGhgT0rBtM0DUqpguzKLSSsc+6w1rlRyHUOhUITfqxhYWXHjh3o6urCggULUtuSySRef/11PPzww/jggw8ASA9LXV1d6jFdXV2jelsyORwOOByOUdutVmvB/aHMTq8pa5sbrHVusM65w1rnRqHWeTLtNew3u+yyy7Br1y7s3LkzdWlqasLNN9+MnTt3Yu7cufD7/diyZUvqe+LxOLZu3YqLLrrIqGYRERFRgTGsZ8Xr9aKxsXHYNrfbjalTp6a2r127Fps2bcK8efMwb948bNq0CS6XCzfddJNRzSIiIqICk7NF4cZyxx13YGBgAKtXr04tCtfa2sqJskRERJSS07Dy2muvDbttsVjQ3NyM5ubmXDaDiIiICkhhzcYhIiKiksOwQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpmZoWHn00Udx/vnno7KyEpWVlVi4cCF+8YtfpO5XSqG5uRn19fVwOp1YsmQJ3n//fSObRERERAXG0LDS0NCAe++9F++99x7ee+89/OVf/iU+85nPpALJ97//fTz44IN4+OGHsX37dvj9flxxxRUIh8NGNouIiIgKiKFh5ZprrsGnPvUpnHXWWTjrrLOwceNGeDwevP3221BKYfPmzbj77rtx3XXXobGxEU8//TSi0SieffZZI5tFREREBSRnc1aSySSee+459Pf3Y+HChWhra0MwGMSyZctSj3E4HFi8eDHefPPNXDWLiIiITK7M6B+wa9cuLFy4EIODg/B4PPjXf/1XzJ8/PxVIfD7fsMf7fD7s379/3OeLxWKIxWKp26FQCACgaRo0TTPgNyhdek1ZW+OxzrnBOucOa50bhVznybTZ8LDysY99DDt37sSxY8fw/PPPY+XKldi6dWvqfovFMuzxSqlR2zK1tLRgw4YNo7Z3dHTA6/Vmr+GEaDSKcDiMAwcOwOVy5bs5RU0phd7eXlgslhO+/un0sM65w1rnRiHX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", "text/plain": [ - "
" + "{('o0', 'o0'): Array([-0.0307378-0.00345908j], dtype=complex128),\n", + " ('o0', 'o1'): Array([0.75686856+0.02082852j], dtype=complex128),\n", + " ('o1', 'o0'): Array([0.74360676+0.09760613j], dtype=complex128),\n", + " ('o1', 'o1'): Array([0.0750638-0.02585451j], dtype=complex128)}" ] }, + "execution_count": 5, "metadata": {}, - "output_type": "display_data" - }, + "output_type": "execute_result" + } + ], + "source": [ + "siepic.grating_coupler()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "SAX also provides an explicit function to get the port names." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "my_component: uid 4dfe1431, ports [], references ['mzi_1'], 0 polygons\n" + "('port 1', 'port 2', 'port 3')\n", + "('o0', 'o1')\n", + "('o0', 'o1')\n" ] } ], "source": [ - "import gdsfactory as gf\n", - "\n", - "PDK = gf.get_generic_pdk()\n", - "PDK.activate()\n", - "\n", - "# The << is shorthand for c.add_ref()\n", - "c = gf.Component(\"my_component\")\n", - "mzi = c << gf.components.mzi(delta_length=0)\n", - "\n", - "c\n" + "print(sax.get_ports(siepic.y_branch))\n", + "print(sax.get_ports(siepic.waveguide))\n", + "print(sax.get_ports(siepic.grating_coupler))" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "There are there three different relevant amplitudes:\n", - "1. The amplitude of the input light:\n", - "$\n", - " I_{input} = E_{input}^2\n", - "$\n", - "\n", - "2. The amplitudes of the beams after the split\n", - "$\n", - " E_{1} = \\frac{E_{input}}{\\sqrt{2}}, \\hspace{2mm} E_{2} = \\frac{E_{input}}{\\sqrt{2}}\n", - "$\n", - "\n", - "3. The amplitude of the recombined light\n", - "$\n", - " I_{output} = [\\frac{E_{1}+E_{2}}{\\sqrt{2}}]^2 = I_{input}\n", - "$\n", - "\n", - "```{warning} \n", - "Note that these are not generalized equations. Instead, these describe a balanced interferometer whose branches have not undergone a phase shift.\n", + "```{note}\n", + "Throughout all of Simphony and SAX, the ``\"wl\"`` argument is in microns, by convention. This is not strictly enforced, and\n", + "various model libraries may follow different convention, so it's always good to double check the documentation of the model you're using (or, if you're writing the model, create documentation for it)!\n", "```" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "### Quick check\n", - "If intensity of the input wave to a balanced interferometer is 0.5 mW, what is the intensity at the output? Assume lossless waveguides.\n", - "\n", - "
\n", - " Answer\n", - " 0.5 mW \n", - "
" + "## Writing the netlist" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "## Definitions" + "A SAX circuit contains a \n", + "netlist, which is a collection of component instances, their connections, and \n", + "exposed ports; and a list of models, which makes it easy to swap out different\n", + "models without rewriting your netlist to see how the circuit behavior\n", + "changes.\n", + "\n", + "The netlist is a dictionary with three fields:\n", + "\n", + "* ``\"instances\"``: A dictionary of instance names to human-readable component \n", + " model strings (like \"coupler\" or \"waveguide\"). You will define the \n", + " string-to-model mapping later.\n", + "* ``\"connections\"``: A dictionary of ports to ports in the form \n", + " ``\"instance_name,port_name\": \"instance_name,port_name\"`` (note there is no\n", + " whitespace delimiting the instance from its port, just a comma).\n", + "* ``\"ports\"``: Since a SAX circuit is basically a model itself, and could be\n", + " used in other circuits, it has exposed ports. This field is a dictionary \n", + " mapping port names of the composite object to the ports of its constituent\n", + " instances.\n", + "\n", + "We'll create " ] }, { - "attachments": {}, - "cell_type": "markdown", + "cell_type": "code", + "execution_count": 7, "metadata": {}, + "outputs": [], "source": [ - "It would be helpful to mathematically model the light in our waveguides. We can start to build a model by considering the equation for a plane wave." + "mzi, info = sax.circuit(\n", + " netlist={\n", + " \"instances\": {\n", + " \"gc_in\": \"gc\",\n", + " \"splitter\": \"ybranch\",\n", + " \"long_wg\": \"waveguide\",\n", + " \"short_wg\": \"waveguide\",\n", + " \"combiner\": \"ybranch\",\n", + " \"gc_out\": \"gc\",\n", + " },\n", + " \"connections\": {\n", + " \"gc_in,o0\": \"splitter,port 1\",\n", + " \"splitter,port 2\": \"long_wg,o0\",\n", + " \"splitter,port 3\": \"short_wg,o0\",\n", + " \"long_wg,o1\": \"combiner,port 2\",\n", + " \"short_wg,o1\": \"combiner,port 3\",\n", + " \"combiner,port 1\": \"gc_out,o0\",\n", + " },\n", + " \"ports\": {\n", + " \"in\": \"gc_in,o1\",\n", + " \"out\": \"gc_out,o1\",\n", + " },\n", + " },\n", + " models={\n", + " \"ybranch\": siepic.y_branch,\n", + " \"waveguide\": siepic.waveguide,\n", + " \"gc\": siepic.grating_coupler,\n", + " }\n", + ")" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "$$ \n", - "E = E_0 e^{i(\\omega t - \\beta z)}\n", - "$$\n", - "\n", - "Propagation Constant of Light:\n", - "$\n", - " \\beta = \\frac{2 \\pi n}{\\lambda} \n", - "$" + "## Simulation (using callables)" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "If the equations above describe the propogation of the wave before the light gets split by the MZI, we can represent the two resulting beams as follows." + "```{eval-rst}\n", + ":py:func:`sax.circuit` returns a tuple. The first element is another callable function. All\n", + "parameters you call it with will be passed on to the models contained within the\n", + "circuit, so long as they are named the same. In this way, a circuit itself can \n", + "act as a model within another circuit.\n", + "```\n", + "\n", + "```{warning}\n", + "It is important that your all models have **common names** for arguments. For example,\n", + "all models that take a ``length`` parameter should all use the name ``length`` for that argument. Models\n", + "that are wavelength dependent should all take the same ``wl`` keyword parameter (by \n", + "convention). If you have your own model library, you can follow whatever \n", + "convention you want, as long as it's consistent.\n", + "```\n", + "\n", + "The second element of the returned tuple is a information object that contains details\n", + "about the circuit.\n", + "\n", + "We can simulate the circuit by simply calling it with the appropriate arguments--in this case, the wavelengths we want to\n", + "simulate at.\n", + "\n", + "The circuit itself contains parameterized models. We can pass arguments targeting\n", + "those models by passing a dictionary of keyword arguments and corresponding values\n", + "when invoking the circuit function. The names you gave the instances\n", + "in the netlist become the keyword arguments of the function. You can pass a \n", + "dictionary which will be used to instantiate those components at simulation time.\n", + "\n", + "If you're unsure of the format of the settings dictionary you need to pass to the circuit, you can use SAX's get_settings function." ] }, { - "attachments": {}, - "cell_type": "markdown", + "cell_type": "code", + "execution_count": 8, "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'gc_in': {'wl': Array(1.55, dtype=float64),\n", + " 'pol': 'te',\n", + " 'thickness': Array(220., dtype=float64),\n", + " 'dwidth': Array(0., dtype=float64)},\n", + " 'splitter': {'wl': Array(1.55, dtype=float64),\n", + " 'pol': 'te',\n", + " 'thickness': Array(220., dtype=float64),\n", + " 'width': Array(500., dtype=float64)},\n", + " 'long_wg': {'wl': Array(1.55, dtype=float64),\n", + " 'pol': 'te',\n", + " 'length': Array(0., dtype=float64),\n", + " 'width': Array(500., dtype=float64),\n", + " 'height': Array(220., dtype=float64),\n", + " 'loss': Array(0., dtype=float64)},\n", + " 'short_wg': {'wl': Array(1.55, dtype=float64),\n", + " 'pol': 'te',\n", + " 'length': Array(0., dtype=float64),\n", + " 'width': Array(500., dtype=float64),\n", + " 'height': Array(220., dtype=float64),\n", + " 'loss': Array(0., dtype=float64)},\n", + " 'combiner': {'wl': Array(1.55, dtype=float64),\n", + " 'pol': 'te',\n", + " 'thickness': Array(220., dtype=float64),\n", + " 'width': Array(500., dtype=float64)},\n", + " 'gc_out': {'wl': Array(1.55, dtype=float64),\n", + " 'pol': 'te',\n", + " 'thickness': Array(220., dtype=float64),\n", + " 'dwidth': Array(0., dtype=float64)}}" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "$$\n", - "E_{o1} = \\frac{E_{i}}{\\sqrt{2}}e^{-i\\beta_{1}L_{1}-\\frac{\\alpha_{1}}{2}L_{1}}\n", - "$$" + "sax.get_settings(mzi)" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "$$\n", - "E_{o2} = \\frac{E_{i}}{\\sqrt{2}}e^{-i\\beta_{2}L_{2}-\\frac{\\alpha_{2}}{2}L_{2}}\n", - "$$" + "This is slightly overkill in our case. We don't want to update ``wl`` for every single object. We only want to change the length parameters for the long and short waveguides, and let everything else stay with the default or assume a global value.\n", + "\n", + "We can set the ``\"long_wg\"`` and ``\"short_wg\"`` waveguides to different lengths alone. The waveguide model within the circuit takes a \"length\" argument, so that's what we'll use in our dictionary of parameters that we pass using keyword arguments. These keyword arguments correspond to the *instance name* in the netlist. By setting ``wl`` at the toplevel, it will trickle down to all models that require a ``wl`` parameter." ] }, { - "attachments": {}, - "cell_type": "markdown", + "cell_type": "code", + "execution_count": 9, "metadata": {}, + "outputs": [], "source": [ - "*** As the light travels through the waveguide we can imagine that it will experience some degree of loss. The 'α' term that appeared in the exponents is the loss coefficient. For convenience, the following examples will assume that α = 0, or that there is zero loss in our waveguides." + "wl = jnp.linspace(1.5, 1.6, 1000)\n", + "S = mzi(wl=wl, long_wg={\"length\": 150.0}, short_wg={\"length\": 50.0})" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "And finally the intensity of the the recombined light at the end of the MZI can be described like so:" + "``S`` is now our evaluated s-parameter dictionary" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "$$\n", - "I_{output} = \\frac{I_{input}}{4} \\lvert E_{o1} + E_{o2} \\lvert ^2 \n", - "$$" + "We're interested in the power transmitted from the input to the output, which is the magnitude squared of the s-parameter. We'll square the magnitude of the ``\"out,in\"`` element of the resulting dictionary. Recall, too, that we renamed these \"external\" (unconnected) ports in the netlist when we created the circuit. It's really easy to give the ports on your composite circuits meaningful names, and it makes your code much more readable.\n", + "\n", + "Below, we plot both in linear and in log scale using [``matplotlib``](https://matplotlib.org/)." ] }, { - "attachments": {}, - "cell_type": "markdown", + "cell_type": "code", + "execution_count": 10, "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAj4AAAHgCAYAAACl7mduAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAADifUlEQVR4nOydd3Qc5dXGn9mu3otVLLn3bmMbcAEMpoTeOyYfoYQAoSUkBAOBEDoJEGpooZliOhhsYxs33AvuVbas3rdI2+f7Y+adXUlbpq1trPs7xwe0Gs07s1rNPHPvc+/leJ7nQRAEQRAE0QMwHOkDIAiCIAiCOFyQ8CEIgiAIosdAwocgCIIgiB4DCR+CIAiCIHoMJHwIgiAIgugxkPAhCIIgCKLHQMKHIAiCIIgeAwkfgiAIgiB6DCR8CIIgCILoMZDwIQiCIAiix0DChyB6EG+99RY4jgPHcVi2bFm37/M8j9LSUnAch9/85jfS69ddd530c9H+lZeXd9o+NTU17vE8+OCDnfZhNptRXl6O2267Da2trXqcMkEQRCdMR/oACII4/NhsNrz//vs48cQTO72+ZMkSHDp0CFartdPrN954I2bMmBFxXwsXLsRbb72FSZMmqT6el156CampqXC5XFi4cCGef/55rF+/PqI4IwiC0AIJH4LogZx55pn4+OOP8e9//xsmU+gy8P7772PcuHFobGzstP3kyZMxefLkbvupqanBnXfeibKyMrz00kuqj+eiiy5Cbm4uAEFkXXbZZZgzZw5Wr16N4447TvV+CYIgukKpLoLogVx++eVoamrC/Pnzpde8Xi8++eQTXHHFFbL2EQwGceWVV6KlpQXvv/8+srKydDu+KVOmAAD27t3b6fVVq1bh9NNPR0ZGBpKTkzFt2jQsX7680zYOhwN33HEHysvLYbVakZ+fj1NPPRXr16+Xtpk+fTqGDx+OdevW4fjjj0dSUhL69OmDl19+udux1NfX47e//S0KCgpgs9kwatQovP322522qaioAMdxeOqpp/Dqq6+iX79+sFqtmDBhAtasWdNp29raWsyaNQslJSWwWq3o1asXzj33XFRUVHTa7rvvvsOUKVOQkpKCtLQ0nHXWWdi6davi95IgiM6Q8CGIHkh5eTkmT56MDz74QHrtu+++Q1tbGy677DJZ+/j73/+ORYsW4aGHHsLxxx+v6/ExERAupn788UdMnToVdrsds2fPxj/+8Q+0trbi5JNPxurVq6XtbrrpJrz00ku48MIL8Z///Ad33303kpKSsH379k5rtLS04Mwzz8S4cePwxBNPoKSkBDfffDPeeOMNaZuOjg5Mnz4d//vf/3DllVfiySefREZGBq677jr861//6nbc77//Pp588knceOONeOSRR1BRUYELLrgAPp9P2ubCCy/EZ599hlmzZuE///kPbrvtNjgcDhw8eFDa5n//+x/OOusspKam4vHHH8ff/vY3bNu2DSeeeGI3gUQQhEJ4giB6DG+++SYPgF+zZg3/wgsv8GlpaXx7ezvP8zx/8cUX8yeddBLP8zxfVlbGn3XWWVH3s3jxYt5oNPKnnHIKHwgEun3/2muv5VNSUuIez+zZs3kA/M6dO/mGhga+oqKCf+ONN/ikpCQ+Ly+Pd7lcPM/zfDAY5AcMGMDPnDmTDwaD0s+3t7fzffr04U899VTptYyMDP73v/99zHWnTZvGA+Cffvpp6TWPx8OPHj2az8/P571eL8/zPP/cc8/xAPh3331X2s7r9fKTJ0/mU1NTebvdzvM8z+/fv58HwOfk5PDNzc3Stl988QUPgP/qq694nuf5lpYWHgD/5JNPRj02h8PBZ2Zm8jfccEOn12tra/mMjIxurxMEoQyK+BBED+WSSy5BR0cHvv76azgcDnz99dey0lyNjY244oorkJOTg3fffRcGg/bLyKBBg5CXl4fy8nJcf/316N+/P7777jskJycDADZu3Ijdu3fjiiuuQFNTExobG9HY2AiXy4VTTjkFP/30E4LBIAAgMzMTq1atQnV1dcw1TSYTbrzxRulri8WCG2+8EfX19Vi3bh0A4Ntvv0VhYSEuv/xyaTuz2YzbbrsNTqcTS5Ys6bTPSy+9tFOUiqXs9u3bBwBISkqCxWLB4sWL0dLSEvG45s+fj9bWVlx++eXSeTY2NsJoNGLixIlYtGiRrPeUIIjIkLmZIHooeXl5mDFjBt5//320t7cjEAjgoosuivkzPM/jmmuuQU1NDb777jsUFhbqciyffvop0tPT0dDQgH//+9/Yv38/kpKSpO/v3r0bAHDttddG3UdbWxuysrLwxBNP4Nprr0VpaSnGjRuHM888E9dccw369u3bafuioiKkpKR0em3gwIEAhFTbpEmTcODAAQwYMKCbuBsyZAgA4MCBA51e7927d6evmQhiIsdqteLxxx/HXXfdhYKCAkyaNAm/+c1vcM0110jvJTvXk08+OeJ5pqenR30PCIKIDwkfgujBXHHFFbjhhhtQW1uLM844A5mZmTG3f+qpp/Ddd9/hnnvuwcyZM3U7jqlTp0pVXWeffTZGjBiBK6+8EuvWrYPBYJCiOU8++SRGjx4dcR+sb9All1yCKVOm4LPPPsMPP/yAJ598Eo8//jjmzp2LM844Q7djjoTRaIz4Os/z0v/fcccdOPvss/H555/j+++/x9/+9jc89thj+PHHHzFmzBjpXP/3v/9FFJbhVXgEQSiH/oIIogdz/vnn48Ybb8TPP/+MOXPmxNx21apV+Otf/4qJEyfi0UcfTdgxpaamYvbs2Zg1axY++ugjXHbZZejXrx8AIdoRrZ9QOL169cItt9yCW265BfX19Rg7diweffTRTsKnuroaLperU9Rn165dACA1YywrK8PmzZsRDAY7RX127NghfV8N/fr1w1133YW77roLu3fvxujRo/H000/j3Xfflc41Pz9f1rkSBKEM8vgQRA8mNTUVL730Eh588EGcffbZUbdrbW3FZZddhuTkZHzwwQcwm80JPa4rr7wSJSUlePzxxwEA48aNQ79+/fDUU0/B6XR2276hoQEAEAgE0NbW1ul7+fn5KCoqgsfj6fS63+/HK6+8In3t9XrxyiuvIC8vD+PGjQMg9Duqra3tJAr9fj+ef/55pKamYtq0aYrOq729HW63u9Nr/fr1Q1pamnR8M2fORHp6Ov7xj390qgbreq4EQaiDIj4E0cOJ5Zth3HTTTaioqMCll16K5cuXd+udw7jqqqt0OSaz2Yzbb78d99xzD+bNm4fTTz8dr7/+Os444wwMGzYMs2bNQnFxMaqqqrBo0SKkp6fjq6++gsPhQElJCS666CKMGjUKqampWLBgAdasWYOnn3660xpFRUV4/PHHUVFRgYEDB2LOnDnYuHEjXn31VUnY/e53v8Mrr7yC6667DuvWrUN5eTk++eQTLF++HM899xzS0tIUndeuXbtwyimn4JJLLsHQoUNhMpnw2Wefoa6uTmojkJ6ejpdeeglXX301xo4di8suuwx5eXk4ePAgvvnmG5xwwgl44YUXdHmfCaJHcqTLygiCOHyEl7PHoms5e1lZGQ8g7j+G0nL2hoaGbt9ra2vjMzIy+GnTpkmvbdiwgb/gggv4nJwc3mq18mVlZfwll1zCL1y4kOd5oST9nnvu4UeNGsWnpaXxKSkp/KhRo/j//Oc/nfY9bdo0ftiwYfzatWv5yZMn8zabjS8rK+NfeOGFbsdRV1fHz5o1i8/NzeUtFgs/YsQI/s033+y0DStnj1SmDoCfPXs2z/M839jYyP/+97/nBw8ezKekpPAZGRn8xIkT+Y8++qjbzy1atIifOXMmn5GRwdtsNr5fv378ddddx69duzbe20oQRAw4ng9z3REEQfQApk+fjsbGRmzZsuVIHwpBEIcZ8vgQBEEQBNFjIOFDEARBEESPgYQPQRAEQRA9BvL4EARBEATRY6CID0EQBEEQPQYSPgRBEARB9BhI+BAEQRAE0WMg4UMQBEEQRI+BhA9BEARBED0GEj4EQRAEQfQYSPgQBEEQBNFjIOFDEARBEESPgYQPQRAEQRA9BhI+BEEQBEH0GEj4EARBEATRYyDhQxAEQRBEj4GED0EQBEEQPQYSPgRBEARB9BhI+BAEQRAE0WMg4UMQBEEQRI+BhA9BEARBED0GEj4EQRAEQfQYSPgQBEEQBNFjIOFDEARBEESPgYQPQRAEQRA9BhI+BEEQBEH0GEj4EARBEATRYyDhQxAEQRBEj4GED0EQBEEQPQYSPgRBEARB9BhI+BAEQRAE0WMwHekDONoIBoOorq5GWloaOI470odDEARBEIQMeJ6Hw+FAUVERDIbocR0SPl2orq5GaWnpkT4MgiAIgiBUUFlZiZKSkqjfJ+HThbS0NADCG5eenn6Ej4YgCIIgCDnY7XaUlpZK9/FokPDpAktvpaenk/AhCIIgiF8Z8WwqZG4mCIIgCKLHQMKHIAiCIIgeAwkfgiAIgiB6DCR8CIIgVMDzPLZWt8EXCB7pQyEIQgEkfAiCIFTw+cYqnPXvZfjTJ5uP9KEQBKEAEj4EQRAqeH7hHgDA3A1VaHB4jvDREAQhFxI+BEEQCgkGeVS3dUhf76i1H8GjIQhCCSR8CIIgFFJrd8PtC3l7dtU5j+DREAShhKNe+Lz44osoLy+HzWbDxIkTsXr16qjbzp07F+PHj0dmZiZSUlIwevRo/O9//zuMR0sQRE9gX4Ory9ckfAji18JRLXzmzJmDO++8E7Nnz8b69esxatQozJw5E/X19RG3z87Oxl//+lesXLkSmzdvxqxZszBr1ix8//33h/nICYI4lqlsae/0dU2b+wgdCUEQSjmqhc8zzzyDG264AbNmzcLQoUPx8ssvIzk5GW+88UbE7adPn47zzz8fQ4YMQb9+/XD77bdj5MiRWLZsWdQ1PB4P7HZ7p38EQRCxqG4V/D1lOcmdviYI4ujnqBU+Xq8X69atw4wZM6TXDAYDZsyYgZUrV8b9eZ7nsXDhQuzcuRNTp06Nut1jjz2GjIwM6R9NZieIXy+BII+7P96EP3ywAW3tvoStUyUKnfFl2Z2+Jgji6OeoFT6NjY0IBAIoKCjo9HpBQQFqa2uj/lxbWxtSU1NhsVhw1lln4fnnn8epp54adfv77rsPbW1t0r/KykrdzoEgiMPL15ur8cm6Q/hqUzWeW7grYeuwCM/48iwAgMPth92dOKFFEIR+HHPT2dPS0rBx40Y4nU4sXLgQd955J/r27Yvp06dH3N5qtcJqtR7egyQIIiGs3t8s/f9nG6rwt7OGwmCIPalZDdWtgqdnQH4qMpPNaG33oabVjfRCs+5rEQShL0et8MnNzYXRaERdXV2n1+vq6lBYWBj15wwGA/r37w8AGD16NLZv347HHnssqvAhCOLYoaIpVG3V2u7Dtho7hhdn6LpGMMijRuzhU5SZhKKMJLS2+1Dd2oFBhWm6rkUQhP4ctakui8WCcePGYeHChdJrwWAQCxcuxOTJk2XvJxgMwuOhrqoE0ROoaBSqrVKtwjPd+oMtuq/R6PTAF+BhNHDIT7OiKDMJAHAogT6fXXUOvL/qIKXTCEIHjtqIDwDceeeduPbaazF+/Hgcd9xxeO655+ByuTBr1iwAwDXXXIPi4mI89thjAASj8vjx49GvXz94PB58++23+N///oeXXnrpSJ4GQRCHgfBIzKlDC/DZhirsqnPovg4zMhekWWEyGlCYIaTKEzW24lBLO85/cTlc3gCW72nEi1eOTcg6BNFTOKqFz6WXXoqGhgY88MADqK2txejRozFv3jzJ8Hzw4EEYDKGglcvlwi233IJDhw4hKSkJgwcPxrvvvotLL730SJ0CQRCHidYOH4K88P+T++aIwkf/xoL1osDJT7cBALJTBOHT5EyM8Hlv1UG4vAEAwMbK1oSsQRA9iaNa+ADArbfeiltvvTXi9xYvXtzp60ceeQSPPPLIYTgqgiCONpjwyEgyY2hROgAhRcTzPDhOP4Mzi+zkpQmCJzfVIq7v1W2NcH7cHmrYWtXaAZfHjxTrUX/pJoijlqPW40MQBKGERlF45KRa0D8/FQZOMDg36ByJaXR2Fj45LOLj0j/i0+LyYqeYrmPabX+jK8ZPEAQRDxI+BEEcEzDhkZtihc1sRFlOCgBgt87pLinikyoKnwRGfLbVCJ3ky3OSMbxIqE6rs9N4DILQAgkfgiCOCZpdgvDIThGESO9sYZxEZXN71J9RQ9RUl0t/4bNdFD6DCtNQkC6sV2enKlWC0AIJH4IgjgnYiIrMZKGJYHGWUGau9zgJljrLFSM+zNzc1uGD1x/Uda099UK0alBBmmSmpogPQWiDhA9BEMcErMdNepIgfEqY8GnRWfh0ifhkJpnBmkO3tOsb9WFT4MtyUlCQJgifegcJH4LQAgkfgiCOCdo6BOGTIQqf4gQ0FuR5XjI354vCx2DgpKhPo85G6kOiaCvJSqJUF0HoBAkfgiCOCewdfgBAuk0o9U5ExMfp8cPtE9JZLNUl/L/g82nW0ecTCPLSMNSS7GQUUKqLIHSBmkEQBHFMwCI+6VLERzA319rd8AeCMBm1P+exkvkUixFJFqP0OjNU61nZVe9wwxfgYTJwKEizolVMo1HEhyC0QREfgiCOCbp6fPLTrDAbOQSCPGp1ipIwD0+WKHQYWcnC1606enxYmqtXpg0mo0GK+DS5PPAF9DVRE0RPgoQPQRCHjWaXF25fICH7loSPTRA+BgOne3qICRsmdBgZYiVZa4d+Q0QPicbmEjFylZ1sgcnAgecT1yWaIHoCJHwIgjgszN9WhwmPLsC0JxclpPswK2dn5mYgZECu1yk91OLqXDLPyGLCp10/4cO8Saws32DgkJnMegZRuosg1ELChyCIhBMM8nj4660IBHnU2T14dv4u3ffv8Ijm5qSQdZGVnOs1toJFdDK7RHwyk/RPdTEvT68Mm/RaTor+JmqC6GmQ8CEIIuGsO9iCyuZQddXC7XW6prwcHj94cTI7S3UBQL7Y+4b13tFKKNXVOeKTiFRX135BQMhETcKHINRDwocgiISzdHcjAOA3I3shN9UClzeArdV23fZvFwWH1WSAzRyqtpIiPjoJH2Zu7h7x0T/VxRoV5ocLnwSUzRNET4OED0EQCWfdgWYAwPH9cjG6NAsAsOFgi27779q8kKG38GHCJrPLOkwItekZ8XFGiPgkk/AhCK2Q8CEIIuHsqHEAAIYXp2NEsTBlfGetQ7f9dy1lZ7AJ6rp5fEThk5XSVfiwiI8+goTn+bAp8CGPj9QviIQPQaiGhA9BEAmlweFBk8sLAwcMyE9Dn7wUAEBFk36VXfYoEZ/8dJ2ruuKkuto6fAgGec3rdOoQnRZaK4eluqicnSBUQ8KHIIiEsqNW8PKU56YgyWJEnxxB+OxvbNdtja7jKhgsTdTo9OgiSKKlupi5OchDqi7TAov2pFpNSLaEzonMzQShHRI+BEEkFJbmGlyYBgAozxUa8jU6PXC49fHERPP4sHla/iCvS8VVtAaGVpMRyeIIizYdDM71ESq6gDDho/MUeILoSZDwIQgioewTmxX2zxeET5rNLA31rNAp6hPN42M2GqQokNYoidcfhMsrlOB3FT5AKArUooMoCfl7oggfivgQhGp0H1La2tqK1atXo76+HsFg53ky11xzjd7LEQRxlNPWIdykc8LmW5XnpKDR6cX+JhdGlGTosEbkiA8giAW726/ZeMx+3sABabbul86MZAuq29y6RJYaRTN2uL8HCAmflnYvgkEeBgOneS2C6GnoKny++uorXHnllXA6nUhPTwfHhf4oOY4j4UMQPZBIoqQsJwVrD7TgoE4GZ2ZuDm9eyMhMtgBN7ZqjJK1h5xFJcIR6+WiPxrBjzUnpHPFh7yHPAw63X/IWEQQhH11TXXfddReuv/56OJ1OtLa2oqWlRfrX3Nys51IEQfxKYMbjcOFTlCmUaOs1NT1exAfQnoJqcUX29zBYSbsevXyY8Ok6Bd5qMiJJbNCoZ88gguhJ6Cp8qqqqcNtttyE5OVnP3RIE8SuG3aDDZ2ixqem1bfqUmdvd3ed0MZggadFoOmY/33VAadd19OjeHIr4dBdZGUn6CSyC6InoKnxmzpyJtWvX6rlLgiB+5USKxhSKwqdO54hPV3MzEOp23KIx1cW8Sl17+DAypEGliYv4COskRvj4AkE8+s02/PatNdhdp19zSYI42tDV43PWWWfhnnvuwbZt2zBixAiYzZ0vQuecc46eyxEEcZQTDPJSyXq4/6YwQ99UVyyPT5ZOlVCyIz4denp8ogsfPdYJ5/Wl+/Ha0v0AgEMtHZh3x5ROPk2COFbQVfjccMMNAICHH3642/c4jkMgoN80ZoIgjn6cXj9Y38DwaAxLdTU6PfAFgjAbtQWfY3l8mCdHa6orlrgC9B1U2hzDT5SegIhPMMjj7RUV0tc76xxYf7AF48qydVuDII4WdE11BYPBqP9I9BBEzyPa1PScFAvMRg48r32AqNsXgMcvtM6ImOpK0ae/jsMduTs0g4kuu0ZBEgzy0rGyERXh6GmiZmyuakOt3Y1UqwmnDysEACzZ2aDb/gniaIIaGBIEkTCieW8MBg75afqku1jzQo4D0qzdRUmWTh4flrJLixLx0ct709bhk6JkkSI+ifD4LN/TCAA4sX8upg3KAwD8vJ8qcYljE92Fz5IlS3D22Wejf//+6N+/P8455xwsXbpU72UIgtCRfQ1OPPPDTuzS2dQaKwVVIA4QrW3TKHzEcvk0qylif50sncrZneIMrkjNC4GQuLNrHMPBxlGkWU2wmLpfovWKLIWz+VArAGBcWRbG9s4CAGyrtusy34wgjjZ0FT7vvvsuZsyYgeTkZNx222247bbbkJSUhFNOOQXvv/++nksRBKETLo8fl7zyM/794x5c9NIK1Dv0MRwD0YeHApAiPqxLseo1ooyrYIRMx9omp7OS+dQ4qS6tkRjm78mOkObSc51wNh9qAwCMKMlA37wUWEwGOD1+VLboN0iWII4WdBU+jz76KJ544gnMmTNHEj5z5szBP//5T/z973/XcymCIHRi7oYqSXzY3X68v+qgbvu2x4j4MP9Ko1NrmXn0NYCQGZnnBbO1WpxuFvGJso64vtsXhMev3tMYy9gMhFV16WCiBoB6hxs1bW5wHDC8OANmowH98lIBAHsbnLqsQRBHE7oKn3379uHss8/u9vo555yD/fv367kUQRA6sWBbHYDQ9PRvNtfotm8WjYksfIRUV5PWiE+caiub2QirmDLSMjnd4RF+NjWCjwgQUlOs+ptFutQQq5QdgDSmQq+Iz5YqIdrTPy9VOreiDNZnSZ8GkwRxNKGr8CktLcXChQu7vb5gwQKUlpbquRRBEDrgDwSxWjSxPnjOMHAcsLveqVu6K1ZjQTahvUljxCdWVImhh/8mXlWXwcBJ5motoiRW80JA/1TX3nphXtpAUfgCQL7UWVu/tCdBHC3o2sfnrrvuwm233YaNGzfi+OOPBwAsX74cb731Fv71r3/puRRBEDqwp8GJDl8AqVYTjivPxuDCdGyvsWP9gRacPryX5v3HSkOxAZxNLq0en+jjKhjpNhMaHB7VkRie5+OmuoRjMMPu9msSWHEjPjoLn/3ioNg+OSnSa6yztp5+L4I4WtBV+Nx8880oLCzE008/jY8++ggAMGTIEMyZMwfnnnuunksRBKEDv4im1mFF6TAYOAwvEoTP9hqHLsInVhoqR6eITzyPD6A94uP2BeEXjdHRzM3sGA61dGgSJazsPjuO8HG4/QgEeRgjVLIpoaJRED7luSHho1fFHUEcjegqfADg/PPPx/nnn6/3bgmCSAB7G4SbHvP3DO6VDgDYXmPXZf+xREmuZG5OrMcnfH21JeDM32PggBSLMep27Bi0lJo3yUx1sXWibSeX/aLw6RMmfJj/SuuYD4I4GjnqGxi++OKLKC8vh81mw8SJE7F69eqo27722muYMmUKsrKykJWVhRkzZsTcniB6Ovsbhaod9rQ/pJcggHbU6tPPJ5SGiiR8rNI2XrHzshokcRVlhhYQJkjc6lJdzN+TajXFnF+lR4+dVrGPT3aUqi6z0SCJL63prg5vADViVCdc+LBoUxMJH+IYRLPwyc7ORmOj0PUzKysL2dnZUf8pZc6cObjzzjsxe/ZsrF+/HqNGjcLMmTNRX18fcfvFixfj8ssvx6JFi7By5UqUlpbitNNOQ1VVlaZzJIhjla5P+0MKhYjPweZ2qWGfFkLm5u7B5XSbGSYxTaMlsmCPMAS121ri+qojPjL8PUCY8FEpsAB5Qk4vn8+BZuH3n24zIStsvRydBrsSxNGI5lTXs88+i7S0NOn/9Zzm+8wzz+CGG27ArFmzAAAvv/wyvvnmG7zxxhv485//3G379957r9PXr7/+Oj799FMsXLgQ11xzjW7HRRDHAsEgj4omoUFd31yhb0tWigX5aVbUOzzYU+/E6NJMTWvESnUZDByyUyyod3jQ6PRIE9v1XIPBRJFaoRAyNse+ZDKBpUWQtMr0LFW3uTULn6qWDgBAaXZyp2s3a57Y7g3A7Qt0mrNGEL92NAufa6+9Vvr/6667TuvuJLxeL9atW4f77rtPes1gMGDGjBlYuXKlrH20t7fD5/PFjDZ5PB54PCGPgd2uj7eBII52qts64PUHYTZyKM5Kkl4vy0lGvcODyuZ2zcInnv8mJ1UQWVpSKlJ36FhVXRrNzWxOV7QePgwpEqOyX1AwyMsqz9cr4sPSXL0ykjq9nmY1wWzk4AvwaHZ5UZSZFOnHCeJXia4en/Xr1+OXX36Rvv7iiy9w3nnn4S9/+Qu8XmUXtsbGRgQCARQUFHR6vaCgALW1tbL28ac//QlFRUWYMWNG1G0ee+wxZGRkSP+o3xDRU2BprrKclE6VQaVZyQCgeVxB+NT0aGmbUC8f9QZnJREfteXsDtkRH20Cy+n1SwNKE92XCAhVbfXqEm3jOE7qHE3pLuJYQ1fhc+ONN2LXrl0AhC7Ol156KZKTk/Hxxx/j3nvv1XOpuPzzn//Ehx9+iM8++ww2W/QQ+n333Ye2tjbpX2Vl5WE8SoI4chxiaY6szk/zJdmi8GnWJnzCp6anWiILBuYlUVvSHgzyUjRGlsdHbcTHo8zjozYSwyJFFpMhZnqJnatDg5cICIv4ZHa/RpLBmThW0VX47Nq1C6NHjwYAfPzxx5g2bRref/99vPXWW/j0008V7Ss3NxdGoxF1dXWdXq+rq0NhYWHMn33qqafwz3/+Ez/88ANGjhwZc1ur1Yr09PRO/wiiJ1DTKgifXl3SGL0l4dOhaf/haa5IU9OBUNm02pL28AhJtCGl7BjCj0kpUqorXsTHpi0SIyd6BYQiT1ontNfaxc9ABH8V67PUrLHBJEEcbegqfHieRzAohLYXLFiAM888E4AwyoJVfsnFYrFg3LhxnUZgBINBLFy4EJMnT476c0888QT+/ve/Y968eRg/fryKsyCInkG1+LRf1OWmxyJABzVGfOTcxLUOKmU3/rgRkiRtERL55mZtER85/p7wdfSK+BSmd/fwZLPO2hobTBLE0YauDQzHjx+PRx55BDNmzMCSJUvw0ksvAQD279/fzasjhzvvvBPXXnstxo8fj+OOOw7PPfccXC6XVOV1zTXXoLi4GI899hgA4PHHH8cDDzyA999/H+Xl5ZIXKDU1FampqTqdJUEcG9S0CU/7XY2rvXOEiE91awf8gSBMRnXPR3JMx7kax1bIjZCka4yQSB6fuOZmto46QaL4fDR4fHiej+rxAaiknTh20VX4PPfcc7jyyivx+eef469//Sv69+8PAPjkk0+k2V1KuPTSS9HQ0IAHHngAtbW1GD16NObNmyeJqIMHD8JgCF2UX3rpJXi9Xlx00UWd9jN79mw8+OCD6k+MII5BalojV/QUpNlgMnDwB3nUOzyqK3rk3MQzRdNzi8oqKElcxYnESGMePOrGPLDOzfE8PuGm42CQj5riiwZ7zzLjCh/tjRLtbj/avQEAiNhKIJuED3GMoqvwGTlyZKeqLsaTTz4Jo1FdH4hbb70Vt956a8TvLV68uNPXFRUVqtYgiJ4Gz/OoliI+nW96BgOH/DQrqtvcqLO7VQsfOY0F2c21ReXNVb4nJvR9h9uHzChdkaMhu6pLXIfnBf9RrHOPhOyIjxhZ0pLqahAHkKbbTBHThCR8iGMVXT0+lZWVOHTokPT16tWrcccdd+Cdd96B2azsAkAQROJobffB7RP8eJGe9gvE1+rsGsrM2+VEfETh067S48PEVRyhYDEZkCTe3NWkocJHVsTCZjbCahIuq2p6+YQ6XcsTclpSXSzKFm0YKgkf4lhFV+FzxRVXYNGiRQCA2tpanHrqqVi9ejX++te/4uGHH9ZzKYIgNMCiPbmpFlhN3Z/2C9IE4VPvUD+dW070gt1cHW4/fAHl87rkmoEBbSXtTpnl7OHHosbgLN/jo93czARNtOgXCR/iWEVX4bNlyxYcd9xxAICPPvoIw4cPx4oVK/Dee+/hrbfe0nMpgugx7Kx14OGvtuHLTdW67ZNVUbFBoV0pSBder7OrFz5yojEZSWawSQmtKiIkciazM7T4Ylg5e7xUF6CtueDhLGdnw1CzojSXzKE+PsQxiq4eH5/PB6tVuGAuWLAA55xzDgBg8ODBqKmp0XMpgugRtLZ7ccVrPws3n+XCDe+kQfm67BeA1J23K/npOqS6ZKRtjAYO6TYz2jp8aG33Ii8tshCLBhsGKi/ioz4SI9fjE34sakSJfI+P8H2XN6C68o6luqJ9BljEp63DB18gCLPK6j6CONrQ9ZM8bNgwvPzyy1i6dCnmz5+P008/HQBQXV2NnJwcPZciiB7Be6sOdnrifmnxXl32y8zEWSmRb7AFkvDREPGRWXElGZw1eWLiCxImWpSmhwJBXqp+kpPqCpXOK09DKY34AKE0nFKYryoriscnM9kiRePUerAI4mhEV+Hz+OOP45VXXsH06dNx+eWXY9SoUQCAL7/8UkqBEQQhn882VAEA7j5tIDgOWL2/GfUaxAiDiYxo/g6W6qrXIeIT7ybOStrVeElUpboUpqCcYUIpnrkZ0MnjEyX9xDAbtZm1AaDVxSI+kdcyGmheF3Fsomuqa/r06WhsbITdbkdWVpb0+u9+9zskJyfruRRBHPMcaHJhT70TJgOHa44vxw/b6rD5UBt+2t2Ii8aVaNp3PH+HFPFJsLlZOAZLp2NKxBpAmC9GYcSH9fCxmgywmOI/Kx4Oj4+wjgkdvoDqyi4WxYlV2p+dYkGzy0vChzim0D1pazQaO4keACgvL0d+vnZfAkH0JFbvbwYAjOmdiXSbGZP7CunijZUtmvcdz9+RJ5qeW9t98PqVV1sB8kvNs5LVp7rkrgGE0lQOhUIh5O+R15JDbcQnGOQVValpLWlviePzAoBsivgQxyCaIz5jx47FwoULkZWVhTFjxoDjoncqXb9+vdblCKLHsLGyFQAwprfwIDG8OAMA8EuVXfO+4z3tZySZYeCAIC9EYpjZWS6BIC8JhvgRH9a9+fBEfJR6fJQYm8OPRam5OXzgqqyIj8rzYYTEb/x2AyR8iGMJzcLn3HPPlSq5zjvvPK27IwhCZMPBVgDA6NJMACHhs73GrrnKpjXOTc8g+juaXF40qxA+4b6YeP6bLA3dm0MGavlVXUojPk5pXIW8yyU7FqURH9bwMN7AVUaaxrEVrXJSXeIQWRpUShxLaBY+s2fPjvj/BEGop8MbwM46BwAh1QUAZdnJSLOa4PD4sbvOiaFF6ar3L8ffkZUiCh8VNz12008yG+P6YtSmurz+IDp8QrWVkgiJUjOw3K7N0joqU11Kolfh6yj1LAHCyJLWOJ2bgcQNKg0EeXCA4llmBKEHCWvM4HQ6YbfbO/0jCEIeO+scCAR55KZapSGiBgOHYcWC2NlWo+3vKV7EBwhLcyQ4BaU21RXubUmVEY2RUl0etR4fucJHnYmaRW7iDSiV1pFSXSr6Enn88It5tczDnOraWt2G4/+5EMNmf4/PxapFgjic6Cp89u/fj7POOgspKSnIyMhAVlYWsrKykJmZ2c3wTBBEdPbUOwEAA/JTO70+ID8NALC3wal6315/UOr9EutpnxlbVaWgJNNxfLEgpboUCh8mrtJsJlnT1tNUjnk4XOZmpRGfUKpLecSH/U6TzMaYabVsqXuz+rYG4fA8j3s+3ow6uwcdvgDu/XQzqlo7dNk3QchF13L2q666CjzP44033kBBQUFMozNBENFhwqd/F+HTLy8FALC3Xr3wae0QbnoGLrY3JkvDyAJlER9Wzq5MKCjp4RO+nXLhI6wjO9Wl0nujPNWlPuIjx9gMADkpgn+zxaV+NEY4aw+0YFuNHTazASVZydhT78TbKyrwlzOH6LJ/gpCDrsJn06ZNWLduHQYNGqTnbgmixxFN+PTJE76uaHKp3ndr2NT0WB6LHE2mY/mihN18W9u9CAZ52b4P5RGS0HwrnudlP5ix6Fi8DtQM1nzQ4w/C7QvIMioDGiI+qoRPfI8XEOrsrde8rnlbagEAZ47ohdOGFuCmd9fjm801uO+MwfSgTBw2dE11TZgwAZWVlXrukiB6JCyV1VX49MrQPkOL+TVi9W8BQhGfZg2jJOTcxNnNN8gru4kzD42cdBoQEj7+IA+3T35vIsncLFP4pFpM0qgHJecjZ7ZZOFpGY0gNLKOMLGFIER9RlGplxd4mAMApgwswfVA+ki1GVLV2YNOhNs37Jgi56Brxef3113HTTTehqqoKw4cPh9nc+Y9q5MiRei5HEMckXn8QB5vbAXQXPqyjcluHT1E0IZxQGXPsm152ChsloVxkKbmJW0zC+IUOXwAOtz9uFKLrGnIjJCkWk9SbyOH2Icki770LTWaXt44hbPCqvcOH/DR5rQDUVnUpNWsDodRVfPErrBEI8rC7fbJ/N5FwuH3YWSuY8ieUZ8FmNuKkwfn4ZnMNFu2ol9o2EESi0VX4NDQ0YO/evZg1a5b0GsdxUlg5EAjouRxBHJNUt3YgEORhMxuQ32VaebrNJImE2jY3ynNTFO8/XtdmRrb4tN+swt+hpKOysJ0wfqGtw4dSuWso9PgYDBxSrSbY3X7Y3X7ky+wGoLSqCxDES1uHD20KojGtSoWPHhGfOJ8Bq8kotVBocnk1CZ+Nla0I8kBpdpLUF2pS3xx8s7kG6w5o70ZOEHLRVfhcf/31GDNmDD744AMyNxOESliVS3FmUre/IY7jUJhhw/5GF2rtaoWPPH9HaFyBmoiPvK7NjHSbGXV2j7JUl0KhAAhRG0H4yF9HaR8fIKykXYHBWen5pKscwQGEWhTEMzcDQhNDh8ePZpcX/fIULyXBxM243qEK3/Flwv9vONgCfyAIk4amnAQhF12Fz4EDB/Dll1+if//+eu6WIHoUVS2C8CnJijzYtyDdiv2NLtSpnNIup4cPEEqFqZkyHorGKGv6pyR6oTSqBKgbW8HMzXJTXUDY2AoVHh/l5ma/IrM2EIr6yYngZKdYcKCpXXP35i3iqJVRYSmtgQVpUkRpR61D6k5OEIlEV3l98sknY9OmTXrukiB6HIdaBH9PcVZSxO8XimmC2jZ1wodVaWXF6OEDhKqT3D6hOkkJiv0q0uT0xAkFQN3YCratXBEnbKtcNErnIyMKA4SiSoEgL3WwlotcczMQ1s9JRSPLcHbXC53IBxWkSa8ZDRxGi53J2Ww6gkg0ukZ8zj77bPzxj3/EL7/8ghEjRnQzN59zzjl6LkcQxySHwlJdkSjQWNkVetqPfdNLswqNAQNBHm0dPkVGasVpGxWDPaU5XTKrugDlgz15nldc1QWENTFUUBGnVMglmY3S78fe4UeyRf7xMXOz3IgPoK17c4c3IBn2BxamdfresKIMLN3diO0au5EThFx0FT433XQTAODhhx/u9j0yNxPHIlWtHXhz2X4UpNsw64RyXTwKoVRX7IiP+lSXPGMrx3HISDKj2eVFW4dPqiiTg9I0lNRjR0EKiq2h1OMDyI/4ePxBabSDklRXusJUVzDIKxaLHMch3WZCS7sPdrcPhRnyfz/sM5AtR/joMKh0T70TPC/0hspN7WzYH9JLEEI7ah2q908QStBV+ASD8ntjEMSvnQ5vAFe+9jMqmoQn2Vq7G3/7zVDN+2Xm5mjCh5VH1ztUprpklrMDkISPkq7KPM+rSHUpj/i0KazqAsKbGMoTWEy4cByQrCDipXRshdPrB2uTozR119LuU2xwllvZB4QPKlXfO4oN3B1QkNrte/1YU85G9U05CUIJCbfQt7a2JnoJgjgizFlzUBI9APD2igrUtGmbO+QPBFEjeneKMyObm/PEEvdGlU/grQpueuwm3KrA3+H2BeELCHdx+eXsys3Aaqq6lFZCOcMqupRMEldq1mYpMavJoCilqFTIAYDbF5A8QZlyPD5iWwMt3Zt313X39zB65yRL+2dGcoJIJLoKn8cffxxz5syRvr744ouRnZ2N4uJiMj0TxxyfbawGADx0zjBMKM+CP8jjm801mvZZ5/AgEORhNnLdevgwcsXUQ4ND+RM4z/NSvxg5wodFhVpVRGKMBg4pMpsEKp2jxfN8WOfmxFV1ST18FJSyAyEvkdyIjxqjtrCOcsHIIn4mAyfrvHJ08PiEIj7dhU+6zSxVGB7QMIqFIOSiq/B5+eWXUVoqtB+bP38+FixYgHnz5uGMM87APffco+dSBHFEqbO7samyFRwHnDGiEDOHFQIAft7XrGm/zN9TlJkUNcLAIj5Oj19xtZXd7UdAzKnISXVlajTpyi2xVtr3xuUNSOehxuMj10ukpmQ+/JjkChI10StAnTcqZGyW9/vJ1jCzjbFL9O8MKuwufIBQ64aaVnXpW4JQgq4en9raWkn4fP3117jkkktw2mmnoby8HBMnTtRzKYI4oizYXgcAGF2aifw0G4b2EtoA76nXZtCsahVL2aNUdAFC2sVqMsDjD6LB4UFpduSUWCRYyirZYpSVUmFVP2yiuxzsGsq/5d7AmbiyGA2wmuQ/v6UpLJtnER8lPiIgJJQOW8RHQUSuVWYDSwYTPk0ur+J+QYDghasW07f987p7fABI0c0Gp3ofEUHIRdeIT1ZWljSkdN68eZgxYwYAISxNFV3EscTq/UJkZ/rAfAChEP7B5nbFUZhwWIl6YYwKKo7jpMoYpTcKuQNKGUpNukAoOqSmv47cG7jUIDHJpOhGHOrjIzPi08HmdCl7RsxQeD6qhY/C8wFCxmY5FV1ASPh4/EG0e5V/tivE9FVGkjlq7ygWxazXMHyXIOSiq/C54IILcMUVV+DUU09FU1MTzjjjDADAhg0bqJszcUyx4WArAGBsWSYAwXeTmWxGkAf2Naj3KTSJQiY3ir+HIRmcFfp8WmX28GFIHh8FqS416SGlDQyVTjJnhDw+CiM+KiMxDo9f1lRztcJHaQQLCI2rkPsZSLYYpaiaGp8P8+3EGq8SivhQqotIPLoKn2effRa33norhg4divnz5yM1VQhr1tTU4JZbbtFzKYI4YjQ5PVIztpElmQCEKMwAcZL6bg3pLlaplROnq7LaiE+LzB4+DFURHxWihG3rlCkUlA4oldZRaG62u9VFfNj2PC+In3i0qhRySk3hANCqMOrHcZz0eVRT2bW/UfhbKc+JnpLNEyOcFPEhDge6enzMZjPuvvvubq//8Y9/1HMZgjiibDrUCgDol5fS6Qm9f34q1lS0YHedU/W+G1nEJ1VuxEfZjUhu12aGmoiPmuhFV6EQ72fVR0hC5exy/CpqPT42s1HyYdk7fAk8H+XDUKXPgIxSdkZ2qgXVbW5VvXxYf57ynOgRnzzx816volKRIJSiq/ABgN27d2PRokWor6/v1tDwgQce0Hs5gjjsSMMWxWgPg13YWTRIDVLEJzX203geK2lXmBqQ27WZkZGkwtzcoVwsWE3KhIKaUvbwYwryQmVYvInraj0+gCBi6h3yJs5r9fgoSXUp/QwAYb18VPSOqpBSXdEjPvnpYgSThA9xGNBV+Lz22mu4+eabkZubi8LCwk5PUxzHkfAhjgl21wsRna4zh8rEUL4W4dMkM+KTqzriI29AKeNwRXwA4Sbe4PDIStuE1lB2CbOZDTAZOPiDPBxuX3zho1JgsZ+pd3hkNRfUWs6uzNzMhI/8tViqS82gUkn4xIj4SB4fh0dV5RhBKEFX4fPII4/g0UcfxZ/+9Cc9d0sQRxWsC+3ALu33WVl5pUrhEwzykocibqorlXVvVujxcbHmhTJTXWFVQ4EgD6OM7sUhc7Pypn8NMiMkaj0+HMchTZxv5XD70SsjzjoqPT7CsclvYng4y9mVjKtgsG2VenzavX6pUrFPDHMzS916A0G0dfhkl9oThBp0NTe3tLTg4osv1nOXBHFU4Q8EpaqtAfmdIz5M+Khtvd/W4ZOa8mXHMzer7Hui1twMHL7SbDnrqI2QAGFNDGWso9bjAyhLQ0nvmYIoDBA6f1URH5lRPyCUem1WmOo6II50yUgyxxQzVpNROhdKdxGJRlfhc/HFF+OHH37Qc5cEcVRxoLkd3kAQSWZjtyaD4a331UR9WPQmI8kMS5ymfFLER+FNQnral3nTMxkN0lgDuWMr1IoSJU0M1XZUFn5GfnpIq8cnfB+x0Gpu7vAF4AvIGxLd4lKe6spWObaCCZ9YFV0Mlu4igzORaHRNdfXv3x9/+9vf8PPPP2PEiBEwmzv/Yd122216LkcQh53dYVOmI42U6J2djJb2NhxsbscQsZuzXJixOTeOsRkIRXxc3gDavX4kW+T9Kau56aUnmeHw+EVTbPR0BUN1qflhEAoAkGaVH4lxaBFYMoVcMMhL55ypcJ1wj5LD7Y8bKfQHgtLxKEknZassZ6+zC+b7XhnRO5Ez8tOt2F3vRL2DevkQiUXXiM+rr76K1NRULFmyBC+88AKeffZZ6d9zzz2nap8vvvgiysvLYbPZMHHiRKxevTrqtlu3bsWFF16I8vJycBynek2CiMYusVS9a5qLwdJdB5vUR3xy4vh7ACDFYoTNLPz5KjE4K011AcoHlar3q8hvxqemcowh1xAcDPJSDx5VHh+Z88ecXj9Y6yKlAstkNEiDYJUIRkCZyFI7qJQJn4L0+J9pFsWkVBeRaHSN+Ozfv1/P3WHOnDm488478fLLL2PixIl47rnnMHPmTOzcuRP5+fndtm9vb0ffvn1x8cUXU+8gIiFIFV0FkWcOaansYhVdeTKED8dxyEuzorK5Aw1OD3rLSCV0eAPw+IV0iBJ/BxM+cm6s/kAQLnGsgeJScynio6SqS4PHJ47Acnn94JkgUePxkeklYiM+rCaDrPlp3dZJMsPlDcgSjCzVmWYzwWSU/9yrNtXFjM35MUawMPKpiSFxmNA14qM3zzzzDG644QbMmjULQ4cOxcsvv4zk5GS88cYbEbefMGECnnzySVx22WWwWuPfPAhCKXtF4dM/P7Lw6Z2tXvjI7eHDyFX4hMxGFZiNnBQlkEMm6+Ujo6Q9PK2jZEgpoGz8gtrKsfCfiRfxYediMaoTJHIntGsRcYCy7s2sh0+8lFhX2PZOjx8ev/x5XSziE2v2HIM8PsThQvcGhocOHcKXX36JgwcPwuvt/HTwzDPPyN6P1+vFunXrcN9990mvGQwGzJgxAytXrtTteD0eDzye0B+a3W7Xbd/EsQXP85JpuSxKhKVUg/Bpcsnr4cNQWtLO/D2ZyRZFfVIyFPTyYTfxVKuyiAIgP0LiC4SGZWqJ+MSb1+XQIK6En5MXwdJSoQYo697cHPYZUEK6zQyjgUMgyKPF5UNhhjwhGEp1xRc+eWmU6iIOD7oKn4ULF+Kcc85B3759sWPHDgwfPhwVFRXgeR5jx45VtK/GxkYEAgEUFBR0er2goAA7duzQ7Zgfe+wxPPTQQ7rtjzh66PAG8PyPu1HT5safzxgs6+Ibi9Z2n+T5KMmKInzE16taOxQ3YmtwKIz4KLxRMH+P3KncDOYFkdO9uVXhAMxw5E4aD7/Bp6lKQcmM+HQwf4+2SEy8Pj6aIz4KStpbpR4+ytYyGDhkJVvQ6PSgyeVBYYa8v6VaJR4fKeKjj7m5td2LlxbvRU2bG5dOKMUJ/XN12S/x60fXVNd9992Hu+++G7/88gtsNhs+/fRTVFZWYtq0aUdtf5/77rsPbW1t0r/KysojfUiETtz9ySb8Z/FefLahCv9auFvz/lgUpyDdGjX1UZBuA8cBXn9QcQWM0ohPrtKIj8I5XQy2fZuMiI/S6e/hyDU3sxRUmtUkq6FiV+RGSKSIjwpjMxBmbk5wqktJilCNuZ2h1ODc7vVLYqxAhlDKTxM9PjpEfDq8AVz26s945ad9+HJTNa767yos2Faneb/EsYGuwmf79u245pprAAAmkwkdHR1ITU3Fww8/jMcff1zRvnJzc2E0GlFX1/nDWldXh8LCQt2O2Wq1Ij09vdM/4tfPyr1N+GZzjfT1Z+urFE0YjwQTPszHEwmLySB5FapbOxTtPzSgVN5NSWlqQM2MJiDM4yPj/WNRIfYzSmCRC7kREjUl5oB8T0yoa7O6deT28WnVyeMjJ9WlVvwCyg3OzKScZDZKvaBiwT7PDrcfbp98H1EkXl6yFztqHchNtWLGkALwPPDXz39Bh1fbfoljA12FT0pKiuTr6dWrF/bu3St9r7GxUdG+LBYLxo0bh4ULF0qvBYNBLFy4EJMnT9bngIljlndWVgAArpjYG4MK0tDhC3QSQmpgwqc0hvABIDU2rGpRKHwc8sZVMNigUrkRH3bDUlLRBcgXJEAo4qO0AzEQuvHLFT5qSsyFn5MnfKSuzWo9PuI6Lm8A/hjNBbUKuVDER765WU3EJ1v8vMkdVMrSXIUZNlkp33SbCVaxcacWn4/bF5D+/mefPRQvXjkGxZlJqLN78PXmatX7JY4ddBU+kyZNwrJlywAAZ555Ju666y48+uijuP766zFp0iTF+7vzzjvx2muv4e2338b27dtx8803w+VyYdasWQCAa665ppP52ev1YuPGjdi4cSO8Xi+qqqqwceNG7NmzR58TJH4VNDk9WLBdiBReNbEM54wuAgDM31arab+VMiI+AFDEhI+CiE+7148O8SlXTh8fIDzVJe9GpNbfERpUKsfjo64RH9B5/AIb3REJJhTURC2A8D4+cVJqTGBZta0DxBYlenl85KS61IpfQHmqixmbWQQ0HhzHSVPatfh8vt5cg5Z2H0qyknDG8EJYTUZcOak3AOCD1QdV75c4dtDV3PzMM8/A6RTKfR966CE4nU7MmTMHAwYMUFTRxbj00kvR0NCABx54ALW1tRg9ejTmzZsnGZ4PHjwIgyGk3aqrqzFmzBjp66eeegpPPfUUpk2bhsWLF2s7OeJXw3dbauEL8BhenI6hRekI8jye/H4n1la0IBjkI3ZcloOcVBcQivhUt8q/eLNoj81skF1qrjTV1aKylFny+ChokKdGlITf+B3u6IMq9RMK8iI+aiNLrLmgyxuAvcMX9X0/vOXs6sSv8DOi8JE5oZ2lupQUFeSn2YTeVBoiPszLc9G4Eqmy8KJxJXj6h11Yf7AVB5pcKIsxKZ449tFN+AQCARw6dAgjR44EIKS9Xn75Zc37vfXWW3HrrbdG/F5XMVNeXg6ej/6kSPQMFu+sBwCcMbwXAGBwYRpsZgMcHj/2Nbqi9uCJh1zhUyQJH/kRn0bR2JyTYpVdCcYiPh2+AFweP1Li+CjUljKH9/GJV6kmVXWp8PiYjQYkW4xo9wZiTuhu07AGEBIyTk/sifMtGirUGBkymgseznJ2TeZmhYNKw1NdcmEtGtQanL3+IJbtEWwVJw8ONbnNT7NhQnkWft7XjB931GPWCX1U7Z84NtAt1WU0GnHaaaehpaVFr10ShGLcvgCW72kCAJw0SLjwmYwGjCjOAABsrGxVtV9fICgJGbkRHyWpLjZsNFdmWgAAUqwmJIvRITlPyFpTXf4gL3VljrqGxjSUVDofo4JM7SRzRngEx+mJHiUJVaipE1iAPH/U4SxnP5zmZqWpLgBSqov9rFLWHWiB0+NHbqoVw4syOn3vlMFCpuDHHfWq9k0cO+jq8Rk+fDj27dun5y4JQhFrK1rQ4QugIN2KIb1C87RGl2YCADZWqhPm1a0dCPLCWIG8OBdyNREfVvqeqzANJaW7ZBicpad9hWvYzEbJdNoS56bXolEsyBEKkoFapVCwmoywiOcTy+cTEooahI9UcRXf46PVsxTP48PzvDZzszSoVF40RknzQkaBxrEV22qEBrTjy7K6pbRPEiNAq/Y1U3VXD0dX4fPII4/g7rvvxtdff42amhrY7fZO/wgi0aypaAYATO6b0yklM7o0C4D6iE94miteKopFfJpcXtlluVLER6axmSEZnGVEfEKT2ZXf9NjPxOve3KYxPSSnsktrhASQJ0j0SHXJ6eWjl8cn7jBUjx9+0TSuro+P8FmTH/ERPpNKUl0sOlSnMtW1J8ZImX55KShMt8EbCGLDQcpM9GR0ET4PP/wwXC4XzjzzTGzatAnnnHMOSkpKkJWVhaysLGRmZiIrK0uPpQgiJusOCBe0ceXZnV4f3TsTALCjxqGqR4jcUnZAuNkxg7LcqA+L+Mjt2syQJlrHifh4/AEpTaXG2Cr3aV9Kdam8icsRPlrTaUB49+YErxOnl08wyGv2+EhDZN3+mGXzLS5hHZvZgCQFs9oY7DPQ2uGLWXUHCNElKeKTJl/4MJFU16Yu1RVrlh7HcZjYV7gu/Ly/WdX+iWMDXczNDz30EG666SYsWrRIj90RhCr8gSDWi09yE8o7C+2iDBtyU61odHqwvcaOMb2VCfHKZnn+HkC4wBZnJWFXnRNVrR3omxffTN3gVBnxSRN7+cR5QmaRGgOnbtJ4joweLsEgr9l/I6eCTKtQAMJL2iNHfLSmhRjxxlY4vX4wDaG2j09WsgUcB/C8kGqMlorVYmwWfk44PmEdb8zPaluHDx6/IMLyZYyrYLBUV53KcvY9DbGHCE/sk4MvNlZj1b4mVfsnjg10ET6skmratGl67I4gVLG9xoF2bwBpNhMG5qd1+h7HcRjSKw1Ld3uwo9ahQvjIj/gAgs9nV51TdsSHmZPj+Ye6kpcq3CjiRXxCaRuLqnJ+OT1cHG4/WFGlWlEiK+Kj0eMDhDUx9ERex+UNwBcQTkaXiE+UyBIbA2I1qZsADwBGA4fMJDNa2n1odnmjfobY705pOwOGyWhARpIZbR0+tLhiCx+W5spMNis6LxYdam33we0LKPrZZpdXOse+eZHL1SeJEZ8Nla2K908cO+jm8VEyjJEgEgHz94yLYGwEgCG9hHEkO2qU+83klrIzQk0M5T25NqoUPiziwwacRoOlOdTexLNFf0es+WNsXEWyxQirSd0NRRI+Mqq61JazA2HemygeHxbtsZgMSNJwc5Tmj0VZRw+/EhAyrMcSpk0ahQ8QEsDx5tCpSXMBwu9Fbfdm5u8pzkxCsiXyM32f3BTkpVnh9QdV+/2IXz+6CZ+BAwciOzs75j+CSCQbxAvZ+LLI0ZzBhUIUaHutQ/G+lQqfYoWVXeojPvI8PuyGmKPypif1cInh8dHStZkRL+Lj8QekDteaIj5WVgIeeZ3w0n8tD3UZcSI+eqTtAHkRuSanp9O2apBb0i5NZVdgbAaEB2jm86lVWNIey9gcvn+WBt9wsFXR/oljB90aGD700EPIyMiIvyFBJIit1W0AgOHFkT+HgwtDEZ94jfjCaWv3STfi0uwkWT+jRPh0eANwiP1klEd85FV1Nar0EDEkc3MMj094Ok0tGeLPRhM+7HWOU99RWVgndr8grX4YRrzyfK0DShkhQRL9cyCJX5WfgfB14kV86qWIj/K1CtJsONDUrriXjxzhAwCjSjLx7S+12HyoVfGxEccGugmfyy67DPn5+fE3JIgE4PL4sb/RBQAYVhRZ+PTPT4XJwMHu9qO6zS2Jk3hUtgjRntxUa9QQeleUzOtiosRqMsiaYh1OeMQnlpiTnvYVVo0x5KQ4tPajAUICINokeBYhSbeZVY8eAUKCpiWK8NHDRwTELzXXK9UlJxWpS6pLZvfmWhU9fBihJoYKU11xjM2MkSWZAIDNh9oUHxtxbKBLqov8PcSRZnuNHTwPFKbbokZNLCaDdFFU4vMJpbnkCSUAKMoULvg1rW4E45T+1oeluZT+LbFz9fqDMWdPNThZqkvd034o1RXD46OhKzAjI075tx5rAKEKpZYoc6f0qOgCwvv4JNbjIyfVpTXdCciLLAEh0aI01QWEVXYpjPjEKmUPZ0RJBjhOeChplNH4kzj20EX40Hws4kizpUp4ehtWlB5zO+bz2aHA56PU3wMIF28DB3gDQWkOVzTU+nsAoasyixLFuoiziI+SkRjhZMtoXse+l6HBdBzP46O3GTia8GGRoKwUbevEE3LsfNSWsjPkpKD0iPjIiSwB2lJdhSqEj8vjl6Kr/eO0j0i1mtBP3OYXivr0SHQRPsFgkNJchCL2NTjx9A87sUIcKKiVLdVCBGdYFH8PY7BY2bVdVcRHvvAxGw3Sk2u8Ke3MmJyn0nuRK2NKu9qRGAx2s3R6/FEbQLLmhnkq02lAyBjt9ERuxqdXCkpKdUW5gYfW0cfj4/EHI75vukV8ZKSgWJRGm8cndqSMoWZAKUPNvK59DUKaOyfFImsky1DxOrBNRYUn8etH15EVBCGHtg4fLn31Zzz/4x5c8foqfLGxSvM+t4rCZ3gCIj5Ke/gwpGGlLbF9PloiPkBIMMWK+DRqjPik20wwG4U0XLSoDzM+a7mxhkc+IqWH9PPEsBt4tJQaS3VpWyfVYgLLXkaq7NLvfORUdemR6rJ22lckAkFe+kznKyxnB0KprloF3Zv3NAh/z/3ipLkYQ4uUPwARxw4kfIjDzutL93WKTtzz8WZUiMZkNXj8AeyuEy588SI+rJfPvgan7NEVaiI+gPxhpZqFj5yIj8abHsdxcW+uasduhGM0cFLqrjVCVEGPMRLCz4eqxyJFlvSq6jKEnU+kXj56lbPHS3W5fQG0iyNLsjX8fuR4iRqdHgR54Xep5jMdqoiM749jyK3oYgyhiE+PhoQPcVhpa/fhjWX7AQAvXTkWUwbkwhsI4pFvtqve565aJ/xBHlnJZhTFCa3np1mRmWxGkA9dLGPhDwSliE3vHHXCJ15ll1bhkyveyKJFfNy+AJxiubzaiA8Q398R6hOjfg0grNQ8gi9GL6EQ3msokp9IKjPXKLDC9xEp4sMElhbfDRB6z1vavRHFAvtsWIzKKwfDyQ7zRkXzdtaIkZq8VCuMKirvemXYYDRw8AaCcftTMdjfcj8Z42GAUKprf6ML7d7oRQFyqW7twP9WVuCrTdXw+qPPSyOODkj4EIeVzzYcgssbwKCCNJw+vBCzzx4Go4HDgu112FGr7ulrS1j/nnhVURzHYVCBkO7aKSPdVdPmhj/Iw2I0KO5CW5zJPD7xhE/oRqGGeBEfvW56Ukl7lJuR5CPSEFEAYvtvWBRIq/Bh4xeAyH6VUANDbecCxJ7XxTpqy/GlxIKZsANBPqLA0lI5GA4TPr4AH7VSjaWo1Ph7AOF3wwzOLM0cD6URn7w0K3JTreB5edeBWCzcXodTn1mCv32xFX/4YAPOeWEZDrXIO27iyEDChzhs8DyPD9dUAgCumNgbHMehf34qZg4rAAC8uaxC1X5Z48Khcfw9DObz2VkX/4LHLrwlWUmK+8YUZx2uiE884RMSJHrc9CKlOXyBoCQWtHh8hJ+PnrYJVSZpWwMIL2mPHonR6vEBYvfyYe+l1nWsplB1X6T3rd6u7TPGsJmNSBEnu0dLd9W2CZ/3XiqFDxBqFHoojj8OED57B5qEv1O5wgcIXS+0pLv2N7pwy3vr4fIGMKRXOrKSzdhR68A1b6yOOW+OOLKQ8CEOG5sOtWFHrQNWkwHnjS6WXr/u+D4AgC83VasKO2+pYsZmeZ3DB7EOzjKe9A6qNDYD8jw+PM+Hqro0enwaoxhOQ80L9REkkdIPLDpj4LSNrABiC6yQgVp7JEYqae+yjp4iDojey8ftC43f0BrxAULenUjvG4sq5msUPkD8uWC1rIePiuaFjNIs4e9NTsTnQJML/iCPZIsxbqo7HKmyq1q98Hl58V54/EEc3y8HX956Ar69fQqKMmzY1+DC37/epnq/RGIh4UMcNuauPwQAOGN4YSfvxITyLJRkJaHDF8CPO+oV7dMfCEqVGfF6+DAGsYiPjNSaWmMzEBI+Le2+qIKu2eWVpoAnKuKjl1hgFToNETrqMtGVnWLV1FEZiG2g1aMJH4Olsbquw75mU8+1Eq2XD4sqmcIM0FrIjpGKZKkuViquhXgGZz0iPiWi8JET8Qn39yiJaA7pJVwH1EZ86h1ufLZBqEi967SBMBsN6JWRhH9fPgYcB3yy7hBW7m1StW8isZDwIQ4LwSCPeVtqAQDnhkV7AMF3c/aoIgDAV5uqFe13X6MLHn8QKRYjynNSZP0MEz51dk/EyqFwtAifdJtZuqFF6+XDXs9Ls6qeaM4EU5PLE9HY2qBxThejQLxp1kcQWKyHj1Z/DxBKY3U1a/M8L91stZqBgdCxdk0NsXWzUyyaRRwQPdXFziUzWVsKksE8aJFGPbBUl5ry8q7E696spYcPg6W6KmV4ZZT6exjsQWlnrQMBmdVj4byz4gC8gSDG9s7EuLLQEO7x5dm4amIZAOAf326nBr9HISR8iMPC+oMtqHd4kGYz4fj+Od2+f/ZIQfgs2tkQdZJ1JML9PXJvUqlWE0pE/028dJfaHj4M5vOJlu6qFp+Oi2TODYsEi+T4AnxEX4HeEZ96R3cR16hxFlg40SIKDo8fXrH0XGvlGBDdFN6oQ7+bcDKjjMdg6bRsjd2hGbGmmtfrmOoKCdNoER9R+GhIdSmJ+GwX/4bZA41cynNSYDUZ0O4N4ECTsnYavkBQ8iv+35S+3b5/+4wBSLEY8UtVG5bsalC0byLxkPAhDgvfidGeGUMKIkY2hvRKQ7+8FHj9QSzeKf9CsbWKpbnk+XsYksE5hvDheV4afFqmsJSdEa+knQkiJd6ErlhNRimdEqmkXWtnaEas4ZHSbCYdIgrR5oKxrsTJFiOSLOqiY+HkRUkRNmn0XHWF+YS6Nv0LGZv1EVjSjKsIjf/0THWxfURKrfI8r2vEp7q1I240hs3dG6xQ+JiMBulnlKa7ftxRj0anB7mpFpw6tKDb93NTrbjsuN4AgNeX7le0byLxkPAhEg7Ph9Jcpw8vjLgNx3GYMUS4gPy4vU72vrcorOhiDJLRwbml3ScZUuWm0bpSFKekXRI+GiI+QOhJvibCTY95LrTciICQqGnr8HVr/sie8tUMpexKyKvSWSjoMWsqnDzmWeoW8WH9iPRZh+2nqyjVq0kiozBD+AxEjvjol+pi3p2atu6faeGzIUTltJib89NsMBs5+IN8xPNhuH0B6eGEmZWVwK4bWxUanOeI0Z4Lx5XAbIx8G511QjmMBg7L9jRqMlAT+kPCh0g4v1S1oaq1A8kWI6YNzIu63cmDhXlvS3Y1yMq58zwvXVDkGpsZrLIrlsGZXVB7ZdhURxjiRnxEwaBV+LCfj3QzYmJIi9kUEKqTLCbhktFVLOiR3mDkpIQ8S+HoaWwGQh6frlVqeoze6LROlKo7vXr4MKRRD12Egj8QlKJYeqS6CmOMlGBrZyWbYTOrj8oZDZyU7joQo6v77jongrwghtVE6EYUZwIANh9qlf0zNW0dWLxTKMK4dHxp1O1KspKlB705aw4qPjYicZDwIRIOS3OdNCg/5sVwXFkW0m0mtLT7sLGyJe5+D7V0wO72w2I0YEC+sjA3C3HvqnNGNR+yMRpqoz1AePv9xKW6gPDS+c43o2CQl4Y9FmZoE1ccx0k3zq4+H3bD0/KUz2Bl2W5fsFM1nF5l+Yx4Hh+tZnBpnbBZauGftVDXZp08PmGCJHydOocwQsJs5HQ5p17i5yhSJKamTZ/PGgD0yxP+7vY0RO+wvr02lOZSYxAfWSKkyDcfapM9HmPu+ioEeWBin2z0jdMp+hJRGH1JHZ2PKkj4EAlFTpqLYTIaMFWMCC3cHr+sfUuVkOYaWJgqRSLk0ic3BWYjB6fHH9VAWSEaHstztQufaBGfGlGo9NIY8YnWJbpJLJfnOH2e9iXh08XnU6eDr4ORYjHCKv4+Gx2hKIn+qS7hXJwefyeBpadRO3w/Hn8QLm8oRcjW0S/VJbz37d4AHJ7Q+bCRK70ylDfhjLVOvcMDX5c5Z9LnWYfPARs4Gmu0zI4aIVU9uFB5mgsQUt5WkwEOt1/6e4/HN5trAAAXjC2OsyVwQr8c5KVZ0dLuI5PzUQQJH6Ibe+qd+M/iPXhm/i4s3d2gqRxzZ50D+xtdsJoMOElMZcXilCHCNnL6+bC8/LBeyozNAGA2GqS5PtEMzvvEiE9fDcKHheurW93dnvg6vAHpqVlNuXw4UsSnS6qrNmxuUjQvghIKJX9H6Gk/EOQlD4keqS6O4yJWKOktSFKtJtjM3QWWNMlep3WSLSYki6nSxrDokp5ika2TbhPaJ4QbnEM+Mn3WyUmxwGzkwPPdo2VSw88s7REfFsXdXRcj4iOakllPHqWYjQYpTb5JRrqrotGFbTV2GA0cThsa+0EOEB7mzhVbdXy24ZCqYyT0h4QP0YnXl+7Dqc8uwRPzduLfC3fj6v+uxqWv/oz6GAbDWHwrPh1NHZiHVBlN2qYNzAfHCabjeKMeWCn7sGL1T3tA9NEVUqpLg/ApSLcixWJEIMjjYHPnJ8oD4tfpNpPmkQXRUl3M86M1osRgQi78d9Pk9CAQ5GHg9BMLTECFe5akaIIO4goQBJaU7nKG3reQX0mf9wwIpc3CDc56ea/CiSQYq3Qy0DMMBk5KaXY107O+O2rbP4TD+vJES3UFg7xU3DBEhbGZMbIkEwCwqbIt7rbfbhGuZ8f3y5HtzTpfjAwt2F4Ph4JWHZHwBYJ49+cDuPvjTXhm/i7Nc8Z6KiR8CIm1Fc149Nvt4HlBqFwwthg2swGr9zfjgpdWSE+ocuF5Ht/8IlwozhrRS9bPZKdYMLZ3FoD4UR8p4qOwlJ0Rq7KL53lJ+PTRIHw4jgsL2XcWPuH719rALjylFh6hk26uOokF1v8ofAgju8nmplph0iGqBISbtUOfuRq7PmnBcFiVU22bIEjcvoCUUivWcR0WpWL+oWCQl9KFeviiGAURjMdM+JToeD6RhCkQ6nulNYIJhDw+DQ4P2iLMU9vX6ITD7YfNbFBcyh7OqFLm82mNu+234vXsTJnXM0CoNuufnwqvPyil/dVQZ3fjopdW4P7Pt+CTdYfw74W7MfO5n3DPx5vg9GifMN+TIOFDABDSLvd8shk8L+Su37n+ODxzyWjMu30qynKScailA799ew08/kD8nYnsqnNib4MLFpNBSmHJgVV3LYxR1l5vd6Pe4QHHqQ9zD44xuqLB6YHLG4CB034RZym1vV2eXPc3CjcJLRElRkG6DRwHeP3BTtVD1TqVsjOY8KlsDt3wJA+JjjdWqWS6NTziw4zg+q3TVcixtFCKxSjN2NKDrhGf5nYvvIGg6L3SMeLDevnYI6W69HvfiqX3rbPwkTqdq+x7FU6azSyJz0h9dtYfbAUgRGy0CG4W8dlabe/mWQrnYFM7tlSxNFf33j3R4DgO540W0l1fKuxMz2hyenD5qz9j06E2ZCSZcePUvlL/oI/XHcLFL6+MOKqEiAwJHwIA8NQPO7G/0YWCdCtmnz1Mer08NwX/u34ispLN2FJlxzM/7JK9TxbtmTogD2k2+akcdlFZsacJrihPMusOCFVfgwrSkGxRd4NiJe37Glzd/Dd7RF9BaXayYuN0V1jIfm8Xk6YeVWMMi8kgCYLwLrQVGhswdiXUUTcU8akQJ2P30WkNICR8WLm/LxCUys71EnFAuPARbuDVYWZzPcZIMPIkU7iwfxaRyUmxav58hRMx1SWeW7EOvhsGi4Lubwh91uxun9SNmg0Z1cqIYiEawwoZwtkgCp8xvTM1rdEnJwVpNhM8/mDM1BFLc03qm624svCcUUK6a/mexoidz2MRDPK47cMN2NfoQnFmEr669UTcd+YQvHbNeHx802TkplqxvcaOy1/7Oe4IHkKAhA+BNRXNeGO50F30nxeMlLoAM3rnJOPxC0cCAF5dug9rK5rj7pPneSksfNbI+CbAcPrnp6IsJxneQBA/RamEWCsKn3FlWYr2HU5Rhg0ZSWb4gzx2dIn6sDSamqZoXYlWlru/SXsqLZy+4jrhkSXWiyhe2a1c2BO43e2XxmMwoVWmg4BjSCXTokCos7vB84DFaNCtjw8QukFLER8dRojEWodFRFhERk9/DxA6bibkgkFe8t2U6CRGgDDhE9Zjh6W5clIsSNFh6CoADBf9e8zLE86Gg8I1YEyp+msAIHiWRpdmAkDMa9t34vXsjOHy01yM3jnJGNM7E0E+VBUmlzeW78fyPU1IMhvx9vUTOkXTJpRnY86Nk1CQbsWuOidueGdtt+aiRHdI+PRwOrwB3PPxJvA8cPG4kqiVV6cNK8TF40rA88DfvtgKf4yQMABsqbJjT71TTHPJDwsDnbs4z4+S7mLCZ3y5+osex3HS0+L6A537BkkzwHQQPqFmiQ4plM7zPHaJpmqlwxWjEUqpCTejQJCXojFaKtPCSbGaJOHBIgmhsn/9bqyFXboDhzpDa5/+Hg4TA5VSxEeMjuhUAcVgEbcDojhg3iU9/T1ASJDsEz8DVa0dcPuCsBgNulRaMfrmCp+1fWHCh33u9IouAsAwMeLzS5eIj8vjl/5+tEZ8AGBSX2F+4Mp9kaepVza3Y9OhNhg4YOYwZQ9yDFbd9cVG+emubdV2PDFvJwDg/t8MQf8I/cr65aXinesnIs1qwpqKFtz18SbZPYl6KiR8ejhPfr8TFU3tKEy34f7fDI257X1nDkFGkhnba+x4b1XsTqRz1grfP31YoTSdWgksf/3jjvpuIsvp8WOreCEcHzYVWQ3jRCM18wswmKdAbcVYOGXZyVIonZXmVrV2oLXdB7ORw4ACnYRPl74n1a0d8PqDQhpMxwhGieh5YoLngCiu9Iz4sONtdHrh9gWklFcvHf09QGgm1KGWdvA8H9ZQUt91mE/soPheSZVjGfo0SWQw8VvZ0g63LyBFGctzk3UznrP9AYJniQ0VZl3UtVRYdYWluvY3ujoN4F13oAVBXohA6iEemfBZtb85omhgpuTj+mSrnuF21sgiGA0cNla2SinoWLh9AfxxzkZ4A0HMGFKAK8TZX5EYVJiGV64eB7ORwzeba/DPeTtUHWM0eJ4/pqbMk/D5FcHzPLZWt+GlxXvxp082486PNuKx77Zj0Y56RaZjxur9zXhzhZDieuzCEd1SXF3JTrHg7pmDAAieoGhmOrcvID3VXBKjpXssxpdlITPZjNZ2H1Z3CT8v290If5BHeU6y5NFQy1gxVbYuLOLj9gWkp9ehKnoEdcVg4KQL+C9VrQCEiBgg9CqJNLRVDf26pLr2SR6iZBh1jJIMEoXajho73L6AFL3Qw6vEyEo2Sz1pKppcUipKa4frrvTKSALHCV2iG51eybStd6qLRUGaXF443D4pzVmWrd97BgjtBNJtJvC88L4xX1k/nVKdjDSbWRIA7CYe6qmjn/DJTbWiT24KeF64XjGW7hZS4Cf0z9FlnZElGUixGNHa7os4t+sbFdVcXclLs+KE/rkAgDlrK+Nu/8S8ndhZ50BuqgX/vHBEXM/Z8f1z8cRFoiXhp314c7n64agd3gC+2FiFG95ZiwmPLkCf+77FhEcX4o9zNmLp7oZffUSJhM+vhHUHmnHef1bgrH8vw+PzdmDO2krMXV+FV5bsw6y31uDExxfh9aX7YlYlhGN3+/DHORvB88Al40tw0iB5VVdXHNcbw4rS4XD78fT8yEbnbzbXwOH2ozgzCcf3U3dhMhkNOFVMd33VpRJikVjmftLgfM0G1FGlmTAZOFS1dkhelTUVzQgEeRSm21CgwzRrIPTkuvmQEKliqbThOkSUGP3Z035zOzq8ASnyo5eHiMHSf9tq7JLHI02HXkThhLcB2Fvvks5F7xu4xWSQSv0PNLmkCEk/ndKPjDSbWeo4faCpPSRI8vX93XAcJ/m59jW4JBGsVzo1HCa0WTuIRAgfICwNtTeUhlq6uxEAMGVA9Nl/SjAbDdK+5m3t7ME52NSOjZWt4Dghgq2FqyYKUZv/rTwQ04i8dHeD5Lt88qJRskeNnD+mBPeID6cPf71NsZ+ord2H5xbswqTHFuL2Dzdi/rY6qUllo9ODzzZU4er/rsbJTy/G3PWHZM1UPBoh4XOU0+zy4t5PNuHCl1ZiU2UrrCYDZgwpwB0zBuDPZwzG5ceVIj/NigaHB498sx1n/Xtp3H4UPM/jL3N/QVVrB3pnJ+NvcVJc4RgNnFT19eHqg92mDvM8j9eW7gMAXDGxtyY/xvljhEqIbzbXSBEtXyCIhTsE38/JMjpBxyPVasKEciFdxvoGhS6qubpV9rCS2TVi9GqTKIDU9iCKRF6aFXlpVgR5wQzKPgd6rgGEbmzbqu3S0/GQXum6VkEBIZGzs84hCQW90oLhDBTbGqyuaJYu8uymrics6rO3wRkynecmQpCEUp6JEoxA6DO9+VArGp0eqb2Elp46kZgsPjyt2Cv8XVa1dmBHrQMcBymCogdnjBBEzbe/1HZK67y3+gAA4MT+ucjXmFY7dWgBhvRKh9Pjx78W7o64zaGWdtz+4UYAwFWTesvqeB/OLdP74epJZeB54I9zNuLnKL6lcHiex8drK3HS04vx3ILdaOvwoTQ7Cbed3B+f3jwZa/46Ax/+bhKunVyGNJsJFU3tuPOjTTjjXz/hxx11v7o02FEvfF588UWUl5fDZrNh4sSJWL16dcztP/74YwwePBg2mw0jRozAt99+e5iONDZ2hR07A0EeH62txClPL8ZHa4VW55eML8HSP52E168djztmDMRN0/rhsQtGYtmfTsbjF45ATooFu+qcuOA/K/DCj7ujqvFn5u/C15trYDRwePbS0YpKzQEhz33WyF4I8sCDX27ttM73W+uwo9aBZIsRV06MnpOWw8S+OeiVYYPd7cfnG6oAAD9srUOj04u8NKv0JKgVJqCY8GGVZFNiTJJXygn9c2A0cNhVJ9yM1ohh++P6aPMohcNxHMaI1SlrKpqxXqx6YRUrejFEbPFf3ebGMjHlwCJaejJcXGfdgWYpqjCwQN+bKhCa8/TJOuHvrDgzSfHfhBwGiFGXueur4PEHkWYz6dLoryuDCoV1NhxskUzBQ4v0jcIAwCgm5ve3SGmo/nmpulV0MY7vJ/zt7Kh1YG+DU7oWTOyTrdvcNgA4ZUgBrCYD9je68PM+4Xwcbh8+WiOkpa6eVKZ5DY7j8NczhwAA3l5R0SnFDggRlxveWYdmlxfDi9Nx/1nyH0rD13jwnGGYOawA3kAQN7yzNmaZ/t4GJy579Wfc88lmNLu8GJCfihevGIvFd5+EO08bhHFl2dL19qFzh2PVX07Bn04fjIwkM3bVOXH9W2txzRurf1VdpI9q4TNnzhzceeedmD17NtavX49Ro0Zh5syZqK+P3NF3xYoVuPzyy/Hb3/4WGzZswHnnnYfzzjsPW7ZsOcxH3p1znl+GEx//EXd9tAkfra3Ewab2iCq5wxvAZxsO4fTnfsK9n2xGS7sPgwvT8OnNk/HERaMiNjuzmAy4dEJvLLxrGs4a2Qv+II+nftiFS19ZKZkpASFa8th32/H8j3sAAP84f7jqcvD7zhiMZIsRqyua8fi8HeB5Ho1ODx76aisAYNYJ5cjUOHzRaODw2xP7AABeXLQXbl9ACv9ePqFUl9lTQGg+2Iq9TVi0sx47ah0wGjicqOPTZGayBRPECrTZX25Bhy+AvDSr7k/H7An4v0v3o7K5AxajQfIx6UW6zYxyMXrxuejl0tJWIBpjROP58j1N8PiDyEmx6J62A4DRYudeVgmlR5VQJNh7xIZVjirJ1LVCjcEimIt2NsDtCyIz2SylQfXk+H454DghIvf2igoA+qWewslNtWKa+BDy0dpKfCoK1AvGlui6TqrVJHkS/7VwF3iex78X7kZLuw99c1N0iTADwIkDcnHe6CIEeeCW99ZJ0b8mpwdXv7EK22vsyE214JWrx8NmVuf/Mxo4/OuyMRhflgWH24/LX/u5W2uQdq8fLy7agzP+tRSr9jfDZjbgz2cMxre3T8FZI3tF9QUmW0y4eXo//HTvSbhxal+YjRyW7m7EGf/6Cbe+vx6r9jVFfehudnkxb0sNXhezAkcKjj+KY1QTJ07EhAkT8MILLwAAgsEgSktL8Yc//AF//vOfu21/6aWXwuVy4euvv5ZemzRpEkaPHo2XX3454hoejwceT8ika7fbUVpaira2NqSn6/OU1OzyYsKjC7p9GHpl2DC8OAN5aVbwPI+Dze3YcLAV7eIE53SbCbee3B+zTugj+ybP8zzmrq/C7C+3wunxSzfwokwblu9pkvqI3DNzEH5/Un9N5/XFxiopJDu5bw6q2zpwoKkdvbOT8f0dU5Fk0W7abff6MfWJRWh0elGcmYSq1g4kmY1YdPd0XRvZXfbqSukpDwDOGF6Il64ap9v+AeC/y/bj719vk77+7Yl9FKUZ5XCopR1TnlgE9lc9bWAe3r7+OF3XAICHv9omiVCjgcP6+09Fho4eH0CIek78x0Kp2/HZo4rw/OVjdF0DEJ6yx/z9B7A/z0fPH44rJ2p/uu9KZbPwu2H89cwhuGFqX93X8QWCOO7RBWgRmwmeM6oI/07A+wYAl7/6c6cS8E9vPj4hIvjbX2pwy3vrpa/TrCasuO9k3SNzVa0dOOnJxfAGgjiuPBtrDjSD54E3rhuPkwcra8sRC6fHj/NfXI7d9U6k2UyYOjAPP+9tQpPLi+wUCz64YZI0UkcLre1eXPn6KiklPaZ3Job2Skdbhw8/7WqA3S00iJ0yIBf/OH+EqhlrB5pceOzbHZi3NTSOI91mwtiyLBRlJsHAAXV2D/Y2OKWHC5OBw+YHT1PdfDYadrsdGRkZce/fR23Ex+v1Yt26dZgxY4b0msFgwIwZM7By5cqIP7Ny5cpO2wPAzJkzo24PAI899hgyMjKkf6Wl6qqQYpGdYsGm2afh7euPw83T+2Fsb8FQW9PmxvxtdXh/1UF8sLoSy/c0od0bQElWEu46dSCW/flk/G5qP0WRDY7jcOG4Enx3+xSc2D8XgSCPJbsa8MHqShxsbkdWshnPXz5Gs+gBgHNHF+Pv5w6DgRP6XxwQy+Lfvv44XUQPIDxdPHnxKMmADAB/+81QXUUPANx/1lCpg26yxShVr+nJpRNKpZECaVYT/m9KH93XKMlKlrxRHAfcPL2f7msAgn/LIn4uLx5XorvoAQRBddUkIV3KccC1k/UXIwCQkWzG2WKPlayw/9eb0uxkqT9Vms2Ec8ckZh2z0SClZQwccE2C3jcAuPXk/mDWrikDcjE2QdGy04YWdIrE3XvG4ISkI4szk/DQuYKHcXWFIHpmnVCuq+gBhOjS+zdMwqjSTDjcfnyzuQZNLi/65aVgzu/0ET2AEGn+5Kbjcd3x5TAaOGw42Ir3Vh3E15trYHf70Ts7Gc9cMgrvXH+c6sGyZTkpePnqcfj6DyfisgmlSLOaYHf7sXhnA95fdRDv/nwQ87fVSaJnYEEqLj+ut/SAfyQ4aiM+1dXVKC4uxooVKzB58mTp9XvvvRdLlizBqlWruv2MxWLB22+/jcsvv1x67T//+Q8eeugh1NVFboR3OCI+kWj3+rH+QCv2N7nQ6PDAaBAmRY8sycBQHY2ie+odWLKrEQ63D31yUzBjSIHuOfiKRhe+3VKDZLMR540p1pziisTW6jYs2lGPcWXZktlRb3bU2rF4ZwNmDClISBUMIDxRfrWpOqFruH0BfLS2EgPy0xL2XgGC92ZfgwvnjSnWLe3YlUCQx6frDqF3TrJunq5IuDx+fL6xCif2z9W1H1GkdT5ZdwjH98vBgAT4lRiBII+56w+hJCs5oZ8BAFh/sAXbqu24YGyx7k/w4TjcPny+oQpFmUmKm6IqZd2BFizb3YiRJRmYPihPd+M+IxjksWB7HXbVOdAnNxUzhubr1t6iK/V2NxbtrEdVSweSrSaMLMnApD45uqdb/YEgtlTbsa3aLnRch9DNuzw3BcOL0hWP+1CC3IhPjxc+XZH7xhEEQRAEcfTwq0915ebmwmg0dhMsdXV1KCyM3EuhsLBQ0fYEQRAEQfQsjlrhY7FYMG7cOCxcuFB6LRgMYuHChZ0iQOFMnjy50/YAMH/+/KjbEwRBEATRs0hcQlYH7rzzTlx77bUYP348jjvuODz33HNwuVyYNWsWAOCaa65BcXExHnvsMQDA7bffjmnTpuHpp5/GWWedhQ8//BBr167Fq6++eiRPgyAIgiCIo4SjWvhceumlaGhowAMPPIDa2lqMHj0a8+bNQ0GBYGw7ePAgDIZQ0Or444/H+++/j/vvvx9/+ctfMGDAAHz++ecYPnz4kToFgiAIgiCOIo5ac/ORoq2tDZmZmaisrCRzM0EQBEH8SmBV2a2trcjIiN5N/qiO+BwJHA6h7XYi+vkQBEEQBJFYHA5HTOFDEZ8uBINBVFdXIy0tTdfeDUyJUiQpsdD7fHig9/nwQe/14YHe58NDIt9nnufhcDhQVFTUyQbTFYr4dMFgMKCkRN8ZMOGkp6fTH9VhgN7nwwO9z4cPeq8PD/Q+Hx4S9T7HivQwjtpydoIgCIIgCL0h4UMQBEEQRI+BhM9hwmq1Yvbs2bBaEzenhKD3+XBB7/Phg97rwwO9z4eHo+F9JnMzQRAEQRA9Bor4EARBEATRYyDhQxAEQRBEj4GED0EQBEEQPQYSPgRBEARB9BhI+BAEQRAE0WMg4UMQBEEQRI+BhA9BEARBED0GEj4EQRAEQfQYSPgQBEEQBNFjIOFDEARBEESPgYQPQRAEQRA9BhI+BEEQBEH0GEj4EARBEATRYyDhQxAEQRBEj4GED0EQBEEQPQYSPgRBEARB9BhI+BAEQRAE0WMg4UMQBEEQRI+BhA9BEARBED0GEj4EQRAEQfQYSPgQBEEQBNFjIOFDEARBEESPgYQPQRAEQRA9BhI+BEEQBEH0GEj4EARBEATRYyDhQxAEQRBEj8F0pA/gaCMYDKK6uhppaWngOO5IHw5BEARBEDLgeR4OhwNFRUUwGKLHdUj4dKG6uhqlpaVH+jAIgiAIglBBZWUlSkpKon6fhE8X0tLSAAhvXHp6+hE+GoIgCIIg5GC321FaWirdx6NBwqcLLL2Vnp5OwocgCIIgfmXEs6mQuZkgCIIgiB4DCR+CIAiCIHoMJHwIgiAIgugxkMeHIIhjinavH15/EJnJloStEQjymLv+EJbubkTfvBRcO7kcWSmJW48gCP0g4UMQxDFBIMjjgS+24P3VB8HzQFlOMq6dXI6rJ5fBbNQvuF3vcOP3763HmooW6bX/rTyAl68ehwnl2bqtAwAefwAfrz2ExTsb4HD7MGNIAa47oVzX8yGIngbH8zx/pA/iaMJutyMjIwNtbW1U1UUQOlHvcOPLjdXYVm2H2WjApH7Z+M3IIt1u4DzP48+f/oI5ayu7fW90aSZeu2Y88tKsmtept7tx0csrcbC5HSkWI66eXI6F2+uwu96JJLMR798wEWN6Z2leBwD21DtwwzvrsL/R1en1KQNy8do142EzG3VZhyCOFeTev0n4dIGED0Hoy+cbqvDnuZvh9gU7vd4/PxUvXzUW/fNj99yQw5w1B/GnT3+B0cDhhcvHYMrAPHyxsQqPf7cDdrcf/fJSMPeWE5CRZFa9hi8QxEUvr8Smylb0zk7G29cfhz65KWj3+nHj/9Zh6e5GFKRb8f0dUzWn2fY3unDBf5ajpd2H/DQrrj+xDwwc8NyC3Wj3BnDWyF544fIxunaXd3r82FTZinZvAIML01CanazbvgnicEDCRyUkfIieBM/zWLKrAZ+ur0JlczsK0204Y0QhfjOyCEaD9pvqzloHfvP8UvgCPEaVZOC0YYVwevz4eG0lGp1eZCWb8dGNkzGgQL34qXe4ccpTS+Dw+HHv6YNwy/T+0vcqGl24/LWfUdPmxmlDC/DK1eNUi4UXF+3Bk9/vREaSGV/8/gSU56ZI33N5/Dj7+WXY1+jCWSN74cUrxqo+n7Z2H859cRkqmtoxojgDb82agJxUIVr1874mXPX6KviDPP5x/ghcMbG36nUYDrcPT32/Ex+sroQ3EBKnpw4twNOXjEK6Tb1YJIjDidz7NyWKCaKH4vYFcMecjbjuzTX4alM1Nla2Yt7WWtz+4UZc8NIK1La5Ne0/GORx7yeb4AvwOGVwPj675QT8/qT++NPpgzHvjqkYWZKBlnYffvv2WjjcPtXr/PO7HXB4/BhZkoEbp/br9L3y3BS8evV4WIwG/LCtDvO31alao97hxvM/7gYAPHTOsE6iBwBSrCY8e+loGA0cvtlcg8U769WdDICHvtqKiqZ2FGcm4Y3rQqIHACb1zcGfzxgMAHh83g40OT2q1wGAqtYOnP38Mry98gC8gSBKs5MwrCgdBg6Yv60Of3h/A4JBejYmji1I+BDEUUwwyGPdgRZ8uu4QFu2oR4c3oMt+A0Eet76/Hl9srIbRwOH6E/rgpSvH4rZTBiDNasKmylZc9PIKNGq4sX7zSw02HWpDqtWExy4YAUNYBCk31Yq3Zx2H4swkHGxux0NfbVO1xvYaO+aurwIAPHzu8IhRqhElGbhhah8AwD++3Y6Aihv5q0v2we0LYmzvTJw7uijiNqNKMzHr+HIAwGPf7lC1zqId9Zi7oQoGDnj+ijERfUnXHV+OIb3S0dbhw2tL9yteg+Fw+3D166skkfXe/03E0ntPxje3TcHHN02GzWzAkl0NeH/1QdVrEMTRCAkfgjhKWbKrASc/vRgXvrQCd328CbPeWoOJ/1iAD1YfhNYM9XurDmDB9npYTQa8c/1xeODsoThjRC/ceepAfHv7FJTlJONQS4fqJ36e5/GvhUKE5IYpfZGfbuu2TVaKBf+6bDQ4Dvhk3SGsrWhWvM7LS/YCAM4a2QujSzOjbnfL9P7ITDajoqkd87fVKlrD5fHjA/Hmf9spA2Kmym49uT/SbSbsrHPgsw1VitbxB4L4+9eCALz+hD4YG8UkbTIacNepAwEA7/58AG3t6qJl//h2B/Y1ulCUYcPHN03GCf1zpe+NK8vGn04PRZbqHdqif+EEgjx21jqwpapNNyFPEEog4UMQRyFvLt+Pa99YjYqmdqRZTTihfw6KM5Ngd/tx39xf8Pi8nar33dYheDoA4P6zhnS64QFAaXYy/nvteCRbjFi5rwlzFd7AAWDZnkbsqXcixWLE9SeWR91ufHk2Lh1fCgB46gdl51TZ3I6vN9cAAG6e1i/mtilWE66aWAYAeGNZhaJ1vtpUDZc3gD65KZg2MC/mtpnJFtwseoxe+2mfIoE6d0MV9jW6kJ1iwR2isInGyYPzMbAgFU6PH59vVP772VrdJom5Zy4djaLMpG7bXDO5HCOKM+Bw+/Hs/F2K1+gKz/N4Z2UFJv5jIWY+9xN+8/wyjHzoe/xxzkZUtXZo3j9ByIWED0GohOd5rNrXhDeX78eHqw+isrldl/1++0uNlPq5YmJv/PyXU/De/03C0ntPkvwdLy/ZixV7G1Xt/+O1lbC7/eifn4orRDHQlf75afjDyQMAKL+BA0JfGwC4aFwJ0uKYY287ZQBMBg4/72vGpspW2Wu8+/MBBII8pgzIxfDijLjbXzWpDBwHrK5oVvS7+mTdIQDAZRNKZRmjr5jYG8kWI3bWObBib5OsNXiexxvLhLTV76b2Rao1dos1g4HDFccJxuaP13Uv4Y/HcwuEaNw5o4owqW9OxG2MBg4PnD1UWGPtIU2fb18giFvf34AHvtiKRqcHKRYjclIs8AV4fLahCqc/+xOW7GpQvX+CUAIJH4JQwY5aO8769zJc+urPeOirbfjz3F8w9clF+M/iPZr2W+9w40+fbAYgpDsePW84UsSboMHA4aZp/XClWMkz+4utin0kgSCPd0RRcv0JfWJWbl0xsTdSFN7AAaEqaZFo7o0mrMIpykzCOaME38wHMv0kgSAvpZKulLEGABRm2HBCPyG6JTcN1eDwYN1BoVHhOVG8PV3JSDLjgrHFAIBPRdEUj3UHWrCj1gGb2YDLJ8ir1Dp3dDEsRgO2VNmxq84h62cA4GBTu2Tyvu2UATG3nVCejSkDcuEP8njhR3WfbcHkvhnf/FIDi9GA2WcPxcbZp2Ht/TPw5a0nYGzvTDg8ftz87jrdHh4IIhYkfAhCIesOtODC/6zAtho7UixGzBxWgPFlWeB54Il5O/HZBnk3u0g8/t1OqULpL2cOjhhh+NMZg5GRZMbueie+UJjmWLyzHgeb25GRZMZ5Y2LfyIVthBs4MxDL4ftttfAFeAwqSMOgQnll6heMLQEA/LCtDv5AMM7WwIq9jah3eJCZbMZJg2Onn8JhxuR5W+T5fBZsrwPPA6NKMtAro3s6KBrnjRbet++31sLti+9jYenEs0cWISNZXvl4VooFUwYIQk7u+QDAh2sEcTllQC7656fG3f6OGYI4+mxDlaoqspeW7MVnG6pgNHB4+eqxmHVCH5iNBnAch5ElmZhz42QcV56Ndm8Az+iQUiOIeJDwIQgFVLd24P/eXgOXN4CJfbKx5N6T8MrV4/HJzcfjlumCz+SBz7eq8izUO9ySkHnonGEwRelqnG4z48ZpfQEAryr1kYgC5qJxJUi2xJ9Yc/6Y0A1crhGV3YR/M7KX7OOa2DcbmclmNLu8WC3D5LxAjFicPqwQVpP8DsYnD84HxwHbauyyyvV/2Cqcy2nDCmWvAQBje2ehODMJLm8gbgonGOSlCMxvRsmLKjFmisf1/VZ5wofneXwuiqzLj5MXWRpXlo2RJRnwBoL4WGYEi7Gz1iH5gx45bzhOHlzQbRuz0YC//UZIqX2+sQp7G5yK1iAIpZDwIY5ZDjS58Oby/Xhp8V7U27VXpfA8jzs/2oiWdh+GF6fjzVkTkBvWY+Wu0wZJYfunFRp1AcFL4g/yGNs7M+7YgyuPK0OS2YgdtQ6s2i+vGsrl8WPhDuEGyyIS8RhXloWSrCQ4PX78tDu+B8PtC0jeoxlDu9/komE2GnCKeFOMJxR4nsePYirt5MH5stcAgJxUK0aVZIrrxO614/L4sXyPkOKbOUz+uQBCWvKUIcKxLd8T24u1obIFDQ4P0mwmTI7it4nGjKEFMHDA1mo7qmWI7V11TlS3uWE1GRS9dyy9+vHaSkVC+4VFe+AP8jh1aAEum1AadbsRJRk4ZXA+eD7kD9MCz/PYWNmK15fuw78X7hYM6h6/5v0SxwYkfIhjDo8/gNlfbMFJTy3GQ19tw+PzduDkp5eobl7H+GxDFX7e1wyb2YAXrxjbLWJiNHB48JxhAIQxDXvqlT25smjMZTKexDOSQ6mqjyLMp4rEjzvq4fYFUZ6TjOHF8rqScxyHGUOEm/6iHfGb8q3a3wy3L4jCdBsGy0xzMU4cINz0V8bxE+1tcKGyuQMWo6FbRZocpg8SUmNLd8cWJGsqmuENBFGSlYR+efFTQl1hx7YsjvBZIYqrqQPyYDEpuyRnp1gwUhRy8dYBIHmvJvfLUTTr64wRvWAxGrC3wYXdMj/Xlc3t+GZzNQAhXRbPGH6t2APpk3WH0O5VL1IOtbTjsld/xnkvLscj32zHM/N34Q8fbMDkxxbK/lshjm1I+BDHFG5fALPeXIO3Vx5AkAcm983B0F7pcHr8+P376xVVDYXj9Qfx9A9CyP4PJw9AWU5KxO1GlmRixpB8BHmhV45c9jY4safeCZOBk9IX8Th/jOCLmb+1Dh5//DTU4p1CJOW0YYWKxjawyMWPO+rjPu3/JEZrpg/KUzwaYnJfQShsqWqL2Ztm1X5BKIwvz5KM30o4ro8wQX39gZaY263c1yQeV46qMReT+ubAwAH7GlwxozEbxc/kuDJ1w02Zz2dZHCEHQOooPT1OWX5X0m1maZ1vxBYC8fhk3SEEeeCE/jkYVhS/6m7KgFz0zk6G0+PHgu3qOl9Xt3bgwpdWYNX+ZlhNBswcVoBLxpegPCcZdrcf936yWVU0lji2IOFDHDPwvFA9smJvE1KtJrx53QR88LtJ+PLWEzBjSD68/iBu/3CDqqZpn64/hKrWDuSnWfHbE/vE3PbKSUKV0dz1VbKMrUDIo3F8/1zZgzTHl2WhIN0Kh8ePpbti3/R4nsdSMVU1dYCym95xfbKRbDGi3uHBjtrY1UNrRH/O5H7KUjaAUHXVNzcFQT60n0isP9AKQL1QGF2aCaOBQ3WbO6Yg+Xmf+nMBBHP40CIhshZNcPM8jw3i98b0zlS1zoliZGn5nsaYwtTh9mFthSD2pg9SliIEgNOHC4JczjiOYJDHXNHkf/G46CmucDiOk8znX6roTQQAj367HXV2D/rnp2LBndPwytXj8cRFo7DgzmmSSfv5H/fgQ+pG3aMh4UMcM8xdX4UvNwkjGF67ZjxOEj0MJqMBz1w6GoXpNlQ0teOFRbsV7VdovCZEb343tW/cFMHUAXkoyrChrcMnKz0EhKIxpyrwxRgMHE4bKtyM4vlvdtY5UO/wwGY2YHy5MsFgNRklkbE6hp/I5fFja7UdgFAGrQbmbfqlqi3qNhvE8nK1QiHZYsLQXoIgWRcl6tPhDWCLeAwTFfpuwmHrbKuxR/z+weZ2NLu8sBgNkkhSyujembCYDGhyeVHRFL0cfE1FM/xBHmU5yd1mjcnhRDHi80tVG+xxZqv9UtWGyuYOsepRvjGctTVYsqsBToWenE2Vrfhmcw0MHPDvy8Z0mi5vMhpwx4yBuFNsDPm3L7bgl0PRP2PEsY1m4ePxaBuSRxB6YHf78I9vtwMA7jx1YLen9HSbGQ+eI1SOvLGsAg0O+Z/bLVV2bK+xw2Iy4KJxJXG3Nxo4nCVWNH0no8y4wxuQbuZTFHpWTugvzxezRnzSn1CercjbwZgopodiVVxtONiKQJBHcWZSxE7Achgheo+2RBE+LS4v9jW6AABjStVFfABgrCiaokVittW0IRDkkZdmRbHKcwFCwmd7FOHDhOKQXmmKqtPCsZqMGCk2cIwm5ABI0R61orRXRpIUkVu9L7ahngn5KQPykGSRf14DCtJQnpMMX4CPawrvymtL9wEQjPvRROQfTu6P04cVwhfgcf8XW2gAaw9FsfD57rvvcO2116Jv374wm81ITk5Geno6pk2bhkcffRTV1dWJOE7iGILneXyxsQq/f389/r1wty5zgF7/aR+aXF70zUvB76b2jbjNzGGFGFWaiQ5fAP9dJn+445ebhLD76cMKkZlskfUzpw8XhM+PO+rj+m/WHmiGL8CjV4YNZTnJMbftysQ+OeA4YHe9M+b7GIqSqBMLx/URBNbq/c1R0ynrxTWURpTCYR2Yt1RHFj5MQPTOTkZWirzfRSSY52R7bWRBwqIBI2V0hI7FUHGdbdWR19ldJxiFBxYoM4J3hUXkYgof8XvjVaYIgVDaj/mforFYrJhjRnIlsDQcE09yqLO7pYeM/5sS+e8fENJpD587DKniIN7527UVPBC/TmQLn88++wwDBw7E9ddfD5PJhD/96U+YO3cuvv/+e7z++uuYNm0aFixYgL59++Kmm25CQwO1Hye6EwjyuG/uL7j9w434ZnMNnpm/Cyc/tQTf/iLPMBkJl8ePt8VU1N2nDYI5Sv8bjuOkXjsfra2U7b9ZJF6AlYTsx5RmIj/NCqfHj3UVcUy0YrRmcj/lJtqsFAsGFwpPt2v2R19n48FW4bhUpodGlmTAbOTQ4PCgOkr/m62iWBmhQSwMLUoHxwF1dk9EIcc6FGsVCkNYCqraHlHI/VIlCBU5ozBiMbiXcJzVbW60uLzdvr+7XjifAQXKq8bCGSuKmWiGba8/KEW3tAhTNjg1VprI4fZJhu1pqoSP8DOLd8Y30zO+2lSNQJDHuLKsuCnD/HQbrp4s+PDeWl6h+PgicbCpHd/+UoNFO+rjpgGJI49s4fPEE0/g2WefRVVVFf773//ixhtvxNlnn40ZM2bgkksuwcMPP4xFixZh7969yMzMxLvvvpvI4yZ+pfz96234cE0ljAYOV07sjZElGVLF1deb1UUL526oQluHD31yU+KKk1MG56NXhg3NLq+spm+Vze3YU++E0cBJHgc5GAycVM68PM5MLXaTUJuCYFPJo0VJWttD6aHRYumzUmxmI/rnCzfxrVHSUMzHotarAgj+mz6i/2RnBCM1K6UeqFEoDChIhdHAoaXdhzp797QnS7VpEXGAkGLtlSFMpt/f5Or2fdbyQE4H5ViMLBGOc0+DM6Kg313vgMcfRJrNhL656tdiQnBrdVvUNNHmQ23geaAkK0lRt2vGpL45sJkNqGlzY6fMURxfbhKuHefKHCty1aQyGA0cVu5rwo4oUT85tLX7cNP/1mHqk4twy3vrMeutNRj/yAL8/ettmkryicQiW/isXLkSZ511FgyG2D9SXFyMf/7zn/jjH/+o+eCIY4tvNtfgrRUVAIDnLh2NR88fgc9uOQGXH9cbPA/c/fEm7KmXP3OIwYZIXjmxd8zZU4BgcmQ+HTlluazXy7jeWbKrrRihPi7R0wLBII/N4tMzEzBKYTfnaL4YlmbRmh6KZdRt6/ChslmokBrWS5tYYDfmisbuQkGv1JDNbERfUWBtq+n8vvkDQexrFNYZokHEMXqLJtuDXYzH/kAQ+xqEcxyQr+18CtNtyEgyIxDkI/aP2l4j/F0N7ZUOQ5y/kVj0y0uBzWyAyxtARQQhB4SEvNrPs81sxMQ+8rxrALC/0YXNh9pgNHA4c4S8buHFmUlSU8r3flZX4eX2BTDrrdWYt7UWBg4YVZqJPrkp8PqD+O+y/TjnheU0df4ohaq6iMOC0+PHQ19tBQD8/qR+OFus3jAaODxy3nCc2D8Xbl8Q93++RVFn2D31DmyqbIXJwElzpeJxhui/WSyjcmStaOad1Fd5NIYZj3851Bp1nX2NTjg9fiSZjRig8ql/eJghONJ7F4qSaLu5skjO1gh+Fea9Kc5Mkj1rKhp98wRBsq+L8OF5HrtEYaw1QgJAmiPGxBSjutUNX4CH1WRAr3Sb5nWYb+tAF+FT2dIBbyAIm9mgyUANCGncIWJaLZKRmr3GUnxqMRkN0j6iVd4xP5la4QMAE8R03No4vZYASGny4/vldOqkHo9LxWGw3/xSA5+M+XBdeeSbbVh/sBUZSWZ8/vsT8MXvT8CPd03DW7MmoCDdij31Tlz26kpV882IxKJY+OzevRuffvop9u8XzKHffPMNpk6digkTJuDRRx9VdNMieg7PL9yNeocHZTnJ3SZCGw0cHrtgBGxmA37e16yoeRmbCzVlQK7si96QXkLliNcfxNI44xHYhXecijRUr4wkFGcmIchH90RsrAylVKLN5orHoMI0mMS0TaQnzJAvRptYGFYU8sVEW4PdfLVQLjaH7BrxaXZ50druA8fpI3xYSu1Al4ngLCVVlpOsKTrCYBGfA82dz4dNIu+drc86zOvFojvhMOEzVKPwCd9HtJ5Om8TPulo/GQCMF//e1lZEN9MzWNNMpfPUTuiXg5wUC5pdXsUVZN9vrcW7YqTo+cvHSN2zOY7D9EH5+OyWE1CWk4zK5g784YMNVD12lKHoSvvZZ59h6NChuOKKKzBkyBC88847uOiii5CSkoKCggI8+OCDeOKJJxJ1rMSvlGaXV0pxPfCboRHLdkuzkzHrBKEx4IuL9sgW0PNFkaTkosdxHKaJnWtXxAil1zvcONjcDo7TZgoGgM2HWiN+n92QhskcIREJq8koCYGu0QsgFPHRaqBlEaOq1o5uPpKKRuEm3kdFf5iusH3s7yJ8mKjLT7OqKsnvSrQUFBNc5VG6cyteR9xPZReBxc5Ha7SHERIknYUpz/O6RXwASOM7IqUiW9u9UquIQYXq1xpVkgmTgUOd3YNDLdHTRS6PX6omVNoKwmQ04IwRwnXjBwXjbDq8ATz0pRC9vnFaX0yN0AW7KDMJr18zHskWI1bsbZLS8cTRgSLh8+ijj+Lee++F2+3GSy+9hJtuugmPPfYYvvvuO3z99dd48cUX8dZbbyXoUIlfK++vOgCPP4jhxekxByNef0IfWE0GbKxslXwCsah3uKVKlVMUDquUU5bLKqEGFaQh3aYufTNKDPdviiJ89KpSYumhrmKB53nsFtfQ6iPJSjYjTRwRcbDLTZz5PdQ0xusKO5fKlo5OKQjWZVltj6CusLEjXSMx7D3UQ8QBQFl25FQXO5/iLH3Op4/4vnX93bS0+9AijgDRJVIW5bMGQJqs3ivDhlQV40QYSRajZKSOVaK/an8TfAEeJVlJiltBAMBJYun8T7saZD9svbOyAtVtbhRnJuGPMwZG3W5AQZr0/Se+3ym7ipRIPIqEz86dO3H99deD4zhce+218Hq9mDFjhvT90047DQcOaJ+sSxx5fIGgLlUJHn9AKjX/vxP7xizXzkuzSubEj2U8IbEuwkN7pSNfoReD9b/ZE6P/Dasq0lKlxCI+myojp7r26FSlxKITXW9GzS4vWsT0kJpBm+FwHIfeUfwqekZJ8tOsSDIbEQjyqAp72q9qFX5PegmfcvFcqlo64PWHBJaeIg4IeXzqHZ5ONz92bnqdT2mWsE5Nmxv+MMHIhFBBulVRM8Fo9An7rHVN4ehVpQaE+g3FGl/Cig+mDFA+Gw4QKsgsRgMOtXREFHJd8QWCeFMsgb99xoC4kcfrTihHcWYSGp0efLqeoj5HC4qEj8vlQlqa8NRoMBiQlJSE5OSQyk5KSqJOzr9y9je6cO0bqzHo/u8w9IHvMfPZn/D5hirV3q0ft9ejweFBQbpVVsXFxWLF1Vcbq+M2/mNPghNU9CXJSrFgkBhlYZGdruwQIyWDNERjWIVTVWtHN4Oz3e1DjdgTp7/GaEy09BBLE+Sn6XPTY8LmQFhFjz8QRGWLcHPVQyxwHIdCsQS81h4SpUwolOgkFPJEgRXk0ckbxd6z3tnKIwiRyEgywypOXQ/vGH5I51RXfpoVFqMBgSAvfa6A0O+qLFsfIVeSlQSTgYPHH+z0+wGAvWKVmlaRDQijOABgS5Tmj0Bosv0UBa0mwkmxmqS+RnJ8Pt9vrUWt3Y3cVKus0nmz0SDN9nt7RYUuHthGpwer9jV1S9ES8lEkfDiO66Squ35N/Lqpau3A5a/+jCW7GsAe5HbWOXDHnI24b+4vqgx6X2wU+mucP6YEFlP8j9ukvjnITxMGb66K0xZ/vShYxqrsRMu690aqUgJCER9W/aOGjGSzZLre26XMmPlxWCmyFuL5YvS6ubKIT3g6hVVBWXSqggKE6AQgdOQNraNvhITjuJDxOEzIsTXZMeixTl6asK/6MOFTrfPvxmDgpLRZuC+GeYtKdRJyJqNB+hx0/byxiE8/HSI+zI+0q9aBQIRrj9Pjl6r8tDRlZP2zNkR5AArnS/F6dsn4EtkjRi4cVwKL0YBddc6IxnO58DyPV5bsxfH//BGXvvozpj65CGf+aymWxCnQILqjSPjwPI+BAwciOzsb2dnZcDqdGDNmjPT14MGDE3WcRILxB4K4/YMNqLW7MSA/FfP/OBVr75+BP84YCAMHfLimEo9/v0PRPu1uH34UJznLbSxmMHCSD+jHGAM+3b6A1EhvrMoxDKwMfGuExn8ef0C6qA/WYNIEgP75gihh/gcG+1rPCqXqto6I6ZTiLH1uesyvEj4M86DO1UkAUCAKqPqw5oLVbfoKH2FfwjpM7Lh9ATjcQmQuL00fESfsSxA+DWJaNRDkUStGZfTy+ABCNAaAFIEDQmlJNR6YaLB0V9dePizl2VeHyF95jtAzqMMX6CRMGUL7BsFPlK/hd8UKFzbE8RU63D4sFkUGa8chh4wks3RN+0Ll1Hme5zH7y6147Lsd8PqDKEy3wWzksK3GjmvfWI3nFuyiimoFKHKfvfnmm4k6DuII8+GaSqw90IJUqwlvXDdBejq8fcYAlOUk4445G/HKkn04eVC+7GnVy3Y3wusPom9eCgYriJqcMqQAH66pxMIddXjwnGERt9lR64A/yCMnxSJd7JUS6kLbPeKzr8GFQJBHus2k+cm/X14qft7X3E34sKdyPZ7Es1MsSLOa4PD4cailQxJTiYr4hFcoMdFQqFO0J3xftREjPjquw1JqbYLAYkLLajIg3abenNuVfEn4CPtvdHrgD/IwcNB00+5KiShwwyM+4cJUL9j7VheWUuP5UIpNj8+b0cBhUEEaNh1qw45aB/p2SZ+xSslRKruRM1i/of2NLrS4vFGbfP60S7ye5Sq7ngHAb0b1wryttfhxRz3uO3OI4mP8YHUl3ll5ABwHPHzOMFw1qQxtHT48M38X3ll5AM8t2A2b2YibpvVTvO+eiKK/7GuvvTZRx0EcQdy+AJ7/cTcA4K7TBna7EZ83phir9jfhg9WVuP/zLfj+jqmynuwXiRGbkwflK0qJHt8vB0YDh8rmDlS3dkR8wt9ZGyrPVZtuFX5WMIM2OT3ICesDxJ6S++SmaE7nMr9D1466kmdFhyd+juNQkGGDo96JertbEj6HWvStHCoSRxDUtrnB8zw4jpPSN+zmrgfMrM5ElS8QRKNTmHWlp8BioqNOjMQwo3t+ulXXNH5eF+HTLM7tyk6xxO02roTSbDHVFSZM9U51AZGFqb3Djw4x2siEkVaG9ErHpkNt2F5j7+YRZP2CRpZq6xSemWxB37wU7GtwYeOhVqnSqys/ixWgUwcqN1Kf2D9XGiZc09ahaJRHTVsH/v71NgDAn08fjKsnl0vH/fC5w1GalYxHv92OJ+btwNjeWTiuj7rRNz0J6txM4L1VB1Fn96Aow4YrJvaOuM2fTx+CdJsJu+ud0hTkWPA8L4WFT1JYap5iNUmN8KJ1bmW5cqVPXuGkWk3Sjby7KVi4WZTocLNgfgc2nqDbGjqJEskXE1alxiI+ehmCWQqqwxeAQzRrM7GQp5MnBgjdWJnwaRXLsTlOuODrBTsfFrkIiTj9xBUA5KXaOu2fCZ8sHc8FgDQXjK3D8zwaxM7BeokRACiQzOfdU5HZKRZd+iwBoTRw1y7egOD9AfRpyhjuJ4oGEz6TZEa8w8lMtkhNDpftVtYs8dn5u9DhC2BcWRZuiDB5/oapfXHB2GIEeeC2DzbE7UZPKBA+WVlZkpcn3j/i10MwyOPN5UIX7ltPHhDVsJeRbMZ1YoPBV5fui7vfvQ0uNDg8sJkNqoyH48uEz9G6KKWsehiPAaA8t7tnBQhLQ+ngjWHCpqbLVHNJlOglfFj0IuxmVCWKK70iPkkWo5QCqhdFCYti5CkYFxCPkLlZ2HdruyAU0m1mXSMkUgrKyVJd7k6v67ZOeuSIj5bZaZFgRnq2jsPjhy8geD9ydFyrML17qot5lvSMyMWac8b8RXp45AaKVZW7IjQABYTUJGsEOlFlRGWqWHm2VIHwqW7twKfrBV/QX84cEjXS/vdzh6MsJxm1djde+HGPquPrScgWPs899xyeffZZPPvss7j//vsBADNnzsSDDz6IBx98EDNnzgQA/O1vf0vMkRIJYeW+Jhxq6UCa1YTz48y6umZyGUwGDpsqW+MOE2UzrkaVZMqufghnfIxZPTzPS91ptXaiLYtQng2Epwe0CwZ2I3B6/HC4hciFPxAM80Pok4Lomh5y+wKwi0bdAh1vRmxfki+GRUkSsYZdSKmxBnxZGueAdSU7VRADTIgkIm0HhEQhE1gtopDL1jnik9dFyDWJ6cEUi1G3KAyAiO0G2OdZTw9W1L/Plg74AjxsZoMUtdUC66O1O8p1jfmJ+uenqharJ0pDixtlV8i+s/IAAkEek/vmYFyM6tUUqwl/O2soAOC/y/ZF7KpNhJAtfK699lrp3/Lly/Hwww/jgw8+wG233YbbbrsNH3zwAR5++GEsWbJE94OsqKjAb3/7W/Tp0wdJSUno168fZs+eDa/X22m7zZs3Y8qUKbDZbCgtLaXxGTL4cE0lAODcMUVx+7zkploxfZDQnv2TdbGrE5hgUVtmyiaO7653ditl1bMTLWti1zXiw6pi9Ij4pFhNUpSEPRXXOTwIBHmYjZxuN1kWJWEGXXZzNRk4XY267ObaKN5cGxIgFtgaXn8QDo9fOhc901xASHh0Ez46ijggdD7sd8MECRNeuq0jCqyWdi98gaA0IDNHx2gcEBKmbR0+qYqwRkx16ZlSYxEfu9uPNvFvHgD2iYUCfXJTdakkHFAQGlgbSZSET7dXy5jeWbCaDGh2eSOm7rriDwTx8Vrh+jzrhPK4258yJB9TB+bBF+Dx0uK9qo+zJ6DK4/P999/j9NNP7/b66aefjgULFmg+qK7s2LEDwWAQr7zyCrZu3Ypnn30WL7/8Mv7yl79I29jtdpx22mkoKyvDunXr8OSTT+LBBx/Eq6++qvvxHCvY3T58L/p1LpsQ2dvTlXNGC1GhH3fEnm3DIj7jVQz3BITqFKvJAK8/KHlhGOzprzDdpvkpNtITJc/zqGzWr+IKgGRmZE/F4V179SoB72o4DU+n6GnUzU7pLBYSIXxsZiNsZuHy1OrySamuREV82r0BuH2BhKTtACAnLLIkRLASE/HJShbM0jwvrNUUZqLWk3SbCUni3x6LMLLPthLjbjySLEZJNIaPFmEVkv3y9GnKWJ6TDItRKJ2PNOhXj1lnFpNB6uTO5ovFYsXeJjS5vMhJscQc9cPgOA63iwOgP9tQ1akHlha219jx6bpD2FIVufv8rxFVwicnJwdffPFFt9e/+OIL5OQoN37F4/TTT8ebb76J0047DX379sU555yDu+++G3PnzpW2ee+99+D1evHGG29g2LBhuOyyy3DbbbfhmWee0f14jiQ8z2NtRTOemLcDD3yxBR+trVQ9A2bxzgZ4A0H0y0uRSrvjMUWsTthV54z6h+X0+KUIymiVpaZGAydVQ3UdvKlneW74qAfWB6PZ5UWHLwCO0y9sL5lBxZsDi5YkshKqxSU8Iet9cw0XPu1ev2SmzNM5PcSMv60d3rBUl77nkmY1wWwURGGTy4u2DmGdTJ0FFmtQ6Q0E4fYFE+bxMRg4SRy2tHulyFKuzpEljuOkCKMUxZQaP+obLYs064wVCnQtcVdLeFPGruNYgNAkelZ0oRbWc0xOs8SvNgnNEs8c0Qsmo7xb9biyLEwoz4I3bLSGWvY2OHHJKytxxr+W4q6PN+E3zy/Dze+uQ4vLG/+Hj3JUxb8feugh/N///R8WL16MiRMnAgBWrVqFefPm4bXXXtP1AKPR1tbWyUi9cuVKTJ06FRZL6A985syZePzxx9HS0oKsrMgpF4/H02nMht0evT36kcbh9uHujzfh+62doy3/WrAbr14zTupELJcftgrRHiWTzbNSLBhRnIHNh9qwbHcjLhRHTITDhmLmp1k1XdgHFKRiW40du+udmDG0QHqdGR1769CQjYknh9sPu9uPjCSz5I/ISrao8idFole0aIyuFUqhdArP82hmUZIUnaMk4u+0yRWaxJ1kNmoaShmJzGQLatrcYmozMakujuOQlWxBvcODZqcXdlH4pGvspN2VVKsJRgOHQJBHW4dP+v3raThmZCSZ0ej0orXdh2aXmOpK0VeUAkLlW0VTu9RmgFXe6X1OvbOTsfZAS6du4SwqU6pj88fSrCTsqXd2izC7fQEptabVUyg1S4wT8fH4A5gnXp+VNEsEgBum9MWainX4eG0l7jptIMwyRVM4q/Y14fq31sDlDcBiNGBoUTp+qWrDd1tqsbXajvf+b6Ku7REON6oiPtdddx2WL1+O9PR0zJ07F3PnzkV6ejqWLVuG6667TudD7M6ePXvw/PPP48Ybb5Req62tRUFBQaft2Ne1tdHLrx977DFkZGRI/0pLSxNz0Brx+AO44Z21+H5rHcxGDheMKcbvpvZFUYYNVa0duOyVn7v1iYmFPxDEkp1CufmpQwvibN2ZE0ST3qr9kSebs4njWiuu+udFNhyyC2CZDn94kaqUEvGUzHwPLB3AnppydFyDVfR4A6IvJkFpDnZja3GFIjHZOqfTACBTFB+t7V60uhJjbgZCIsfh9kkRH60jRLrCcSGfVbjw0TviA4TEYWu7TxIlenuJhHVCkSVAiMwBQgWonvTKZF28QxFm5pXSM7rEmj9WdkuttyPIC+k9rRHaMWLEZ1edI2bZ+cq9TXC4/ShIt0rDWuVy0uB85KZa0OTy4icV4yzWH2zBLFH0HNcnG4vvmY7Pf38Cvvj9CSjNTsLB5nZc9d9Vv+rIj+o+PhMnTsR7772H9evXY/369Xjvvfek6I9c/vznP0vzvqL927Gj85iEqqoqnH766bj44otxww03qD18ifvuuw9tbW3Sv8rKSs37TARvLa/Az/uakWY14eObjsczl47GX84cgnl/nIpxZVlwePy45b11naZMx2JLtR0Ojx/pNpPizqds++gzrtjEcW3Ch/W/6dpj50CzfhEfIKwLrT3UVRfQ9ym5lyR8hCdVKRqjYwTDZjZKvou2dl/CesVkhaW62hIUIRHWYcInPOKj/zppoiCxu/2wuxMjfICQIGnr8CXM4wOEBGNbhzehkSX2uWI3QBbxydT5vZN6LYW1aWCRUz2N1CUR5pwBYQ9aOdqbmRak21CUYUOQBzbHGJHBSt5PGpSv2ANoNhpwrujFZLMS5dLk9ODmd9eh3RvAlAG5eOf646QGssOLM/DJTcejJCsJB5raccecjb/aMRmyhY/Lpaw8Ts72d911F7Zv3x7zX9++oYZN1dXVOOmkk3D88cd3My0XFhairq5zCoh9XVgYPZVjtVqRnp7e6d/RRrPLixcWCb0Z/nb2UKnFOiD0NXnpqrHITbVgV50T76yskLXPlXuFaM3EvjmK+6IMKxKbfdU5Ik5Q36XDVHMgNJOpprWzl0jvTrQFXdJQ7ClZz2gM87+waFJzgqIx4U/h0s1Vd2OrsIbd7QulhnSsGmNkJIUiF9JNNQFCIU08nwaHW+p5kwghlx4WwWL+K73TkEAo4tLa7kMTS3UlIOLDBHBLuw/+QFCacab376hrd223LyAJ7oIEj/sAQsJHj9YWQPjU+ehm4aW7hUjNiSqnzp8mRvGXKyidB4BHv92OOrsH/fJS8PJV47oVjxSk2/DfayfAYjJgya4GfLT26AwUxEO28Onfvz/++c9/oqamJuo2PM9j/vz5OOOMM/Dvf/877j7z8vIwePDgmP+YZ6eqqgrTp0/HuHHj8Oabb8Jg6HzokydPxk8//QSfL1TyOH/+fAwaNCiqv+fXwstL9sLh9mNIr3RcOLa7pyY/zYa7ThsEAHhh0R5ZZueVYhfSySq6kJZkJSEjyQxfgO9mPAZCpaZaJzQXSV1o3fAHhEhWMMhLJcd69O8Awi6sUqpL2H+ujpU97GbAxEiiojHhaY5ErcEiJA63P2GpofB1XN5QObve5xK+DrvhGQ0cUuK0dlADe4/qHR54xc8zE116kskEY4cPza7EmMKFfYaEHOsXBegvgru2aWB/pzazAelJ+q0Vivh0aW2h84PWoALhwZFFxrtSb3djV50THAec0E+d8BnTOwvJFiOaXF7JmB2PjZWtmLu+ChwHPH3JaKRE8ewNKkzD3acNBAA8+f0uuH6FnaJlC5/FixdjzZo16NOnDyZOnIjf//73ePTRR/H000/j/vvvxwUXXICioiJcf/31OPvss3HvvffqdpBM9PTu3RtPPfUUGhoaUFtb28m7c8UVV8BiseC3v/0ttm7dijlz5uBf//oX7rzzTt2O40jg8vjxweqDAIB7Zg6MGp25ZHwpijOT0Nruw7e/RBengCAeNoh9dib2VV5uznGcNNm8a4mj1x9EjXhh0lp1lZtqhdnIIcgLfW8AQTiwvj56PcXmdmli1ygJH/1uFllhT+EAEhaNYWmGREZ82M3a4fZJqaFEREhSLMKF1+nxJ6zaCgjdqJlhNt1m0t2vBAgVZEBnr4rehnAAkhiwd/jg9AjvWyIEFhNTze1eqd1Ams0kuwJJLuwBpNEpmPZZFVlBuk3X3xMTPnV2T6dItt5DXpn3cWddZKvAerHia1BBmmoPmMVkkEZrLNsjz+fzHzGrcP6Y4k5ZhUhcd3wflOUko9HpwdsyswxHE7I/oYMGDcKnn36KXbt24ZJLLkFVVRU++eQTvPbaa1i8eDGKi4vx2muvoaKiArfccguMRv2emObPn489e/Zg4cKFKCkpQa9evaR/jIyMDPzwww/Yv38/xo0bh7vuugsPPPAAfve73+l2HEeCzzdWweH2ozwnGdMHRu/lYDRwuPw4wZj94erY4cd9jS44PH7YzAbV6Sj21NLVUF3T1gGeF57GtAoHg4EL6xIs3JRYxVV2ikVVtUIkuvalCZmb9Yv4sJuE0+OH1x8MlZonKNXV1uGTzkNvAy0TCk5PqKlcegJurKlsHbcf7V7hRhTtKVQLTBSwiEKyRf81hP0K18T6sEo4PcdvMJhgbPcG4PII71taIlKR4mfN3uFDawKFKfsb8fiD6PAFpIcgvcvms1MssJqEa0pdW8hPVJkg4bO7rntzVkCIvACIKz7iMUl8qF0XZd5hOAeaXJi/XbCG3DI9/oR3i8mAP5ws9Ax6Z8UB+ALyvKVHC4r/Gnr37o277roLd911VyKOJyLXXXedrGqxkSNHYunSpYk/oMMEz/N4Z8UBAMDVk8vjmtwuHFeCp37YhTUHmtHs8ka9qf5S1QoAGFaUofrprI8046rr4E02fypZl6exoowkHGrpQHWrG+PKEjMXKrw8GwgzN+u4RnqSGRwH8LyQGmDei0QJn3BfjN6VUEwoBHmgWnz61jPlwEi1CkLB4fbB5RXC6YlIQbFIDPOQJCdgDSAk2pjwSYSIC9+v0+OHU0xBJUQwWsNSnpKxWf+UWrLFCIvYzLTZ5ZXmg+k5EwwQItm5qVZUtXag0eVB75xkoZmpjl3cAUFA2cwGuH1BHGhydetFtLFSECpahc/oUsHisakyfuPBzzdUg+eBKQNy0T9f3sPw2aN64Z/f7UCt3Y352+pw5ohe8X/oKIGmsx/F7Kh1YGedAxaTARdF6JfTlV4ZSRhcmAaeD5njIsH+EFgXUTWU54Ya/4XDno70GrzJSllZNRQTJXo2ywt11WVVXfqbm40GTkpDVbe54fYJT0h6R2PY077LE2osqHeaw2Y2wCSKcHYTSkTKJtUqHHeTywtWPJKckIiPKHzsiRY+LOLD3rPErtPa7pW8RKkJiGKxz5XT45dK2RMR8eE4Tqp+a3H5pPdP73lqQCi9zaKlwkgO4T3Uq4LMaOAwQBQXu7tEzANBHr8cEq7PzAStluHF6TBwQtFGbZcByeHwPI8vNwkjiFg1mBysJiMuGS/cl+aujz3C6GiDhM9RzDebBa/O9IF5ss2j08RZWot21EfdhvlyNAkfseNxZXNHp3BtKOKjk/ARDczVrV0mget40csWy9abncI4AUlc6Ty2gPlg2HgMi9GgewSDPdk7PP6ERUk4jguJBSlKov+NVRIKYWXMSToO2pT2Kb4/7AYXb2adWth7xM4nYREfS+fIkrCW/ucUnopkqdtEmNyBsBYK7d5QJDMBJfosyssKHNi1IM1m0nXIK2vFURnWlBEQRtm4vAFYTAZJHKkl2WKSWopsEoesRmJvgxN7G1ywmAw4bZiynm5ssPXinfW/qr4+JHyOYr7bIgifs0bKDyFOHSAInzUVkfO6PM9LTxla+uwUZSbBYjTAGwiiOmy2DauIKNEpLNwro3PFVSKEj2Q87vDB4w/CI/ZC0rsRG4uKMBNtRrJZdxMtW6PJ6ZGiJIm4wbKbHvt9JCJKkiqlhoTffaI8MV1vaIny+KR08fgkSvgkWzvP0LKZDbobjoHQ78fp9Se0zxIAZItl/80uj+QnSoTIyumW9hb+q/dDEEubdRU+exqECqy+uSm6fNbZw+3WGHO2VoitTSaUZyn26g34//bOPDyKIv3j354z90VucnAfcoRLEFASFEHMguA+oIDKpSsuiiKwiqgICAiu6OqyorKCusAqy6qsa/xxIwgKAkGQy+UMRwiBhNzXpH9/zHSnuxMgmXTVXO/nefIw0zN0VddUV739njHBaB8XgqpqERuP3Lx+oztBgo+bknWtBCevFMNoENC/HgXqJFISwyAI9s21rlpauUX2pHOCALkWljMYDYKc10Lp5yNpZpqG6aPxuVFBTD0XIulmL6mwyQu4IOhvHpB9PBxP/CzMQ1Ibl1lrSRznlJyO9XwalpCEq2pZgGOjidH2nZnGR/N7s/j9leeVNFis2pG0fqJYI8yz8PEBaoQclT8RAyErMrgmgkz5r955kCRH6SxNzqCTOfa1tDFrsxLp4fZ/V26c1X/X/+yCTx8nQ+elnEGbb1G42p0gwcdN+d7ho9MtKaxBUniQ1SRHatVVCE+KwkoMD2j0ZiWZu5Q1dHKL9dXI1BJ8pFDzYP0WoiBFxIukvQqymHSrmi4hO9E6BFIWG7l0TklADLQYdb8OoC4tif7XEmBWb9isBJJa18JAiANqTFDye8bOzRKsBB+rySAXeJXuGxZO7kDNNShzR7EQsiSNj6TpyS3UP6cXUCP4nNNqfHL0yYEm0TqmJoKsLqqrRfzoKD10hxM53QBgQHu74LPjt9w6E9q6I07P0vz8fOzZswc5OTmorlaHsj322GON7pi3IYoizl4tkZ2Cb4VUY0UyXTWErknhOJZdiAPn8nBfR3XWaknyb6XDjSU5Hl9WOM7pXecqQs4Oyy7U3Gw0IMBiREmFDRccGisW4b+BGsGHhUlFax5itbnyEHysZvVzmVZw0As/k6YdxiaoG7WrF9pxYqGNA+y+XkFWE/JKKmXzHSszoeToXlhW40jNwtQVWcvHR//1BqjJAp11rQSiKMom75M6rs8A0FpR9qfSVl0rBci5ayXIL6mE1WRw2uezQ3wIooOtyCksx74zeejTyjnNEU+cmqX/+c9/MGbMGBQVFSEkJETlpyAIAgk+Gi7ml+KRv/+E3MJy/PjSPbdcHERRlH10+jqRsjwlIRRr9gBHLtVOkHUyR0fBx+F4LBXerKiqlp/G9KpzFaFIi1/tqGwN6P+0F+xnsgs+DtUzi4RvWjMUi9BsqQ2p9AKrTVxrPmOhjbFqBANW0VbavjMzdWnGTCvY6YW2/6wEH8Au6OSVVDL19QJqHkSKyiuZJrNsoonqktJO6C34xIf5wyDYcxNdKSxHtCM0/5QjSrZFPR+Qb0VcqB8CLUYUV9hw9mpxrVB1aY9oFxvsdF40g0FA31aR+PLABew+ddUjBB+nrnTatGmYMGECioqKkJ+fj7y8PPnv2rVrevfR44kN8UOVTURBWRW+OnDronGnc4txrbgCFpMBHeMbLoW3jrELNXVVa5f8cZrrcGPFampcSVoZo0HQ7WlMSvxncwg9cm0onVXqkjlRUtmz0PhI52SpjdGaNdj5xaiXDhZ+RLx8b3iZuiwaQc5qYtOOVmDUvtcT6TeR6nSxmAdAzb2TV1wTXs7iHpU1Pg6B50qhQ+Ojo2kdsGuZpQfH8441p7zKJpv09YqKFQQBrW5i7jriKDR9W3zjalRKpY8kR2l3x6k74sKFC5gyZQoCAvSJ3PF2DAYBj/VOBgB8suvMLSvaSpk2UxJCay2W9aFVlH2iX7pehsKyStVnUsHPeB2cj2M1EVe5iqzKevmVWEwG+SnyWkkFih3OtHpnCg7Wli1gWIJB1sYwMAton7hZmR60GxyLdiyaJ1Dte73wM/HRxGjvZWfu7Xq1oxknK0ONTy0BmJFwGqQxEwNs5lwThU+hrbomtYVeGmwl0ZoaZNK/FpNBVzNesyZ1+xMBwK+OQqm3xTVS8GlpF3wOZuV7RO0up+68QYMG4eeff9a7L17NiB6JsJgMOH65EEcv3bxo3P5zdsGnW7JzxVVDA8yyc/HJK+oEgxcdiQDjdUjGVWMPV/vfNNG9NpR9gVOGzev9tBes0fiwibgyat7r34Z2k2P1BM5DG2MwCKpNnJWg4GdRn1evUihaeGliDAZBdjpm2Q5QW2hkJWhL96eUN8psFJjMB+mBp1q0J2a8Kgdr6O9ILSVglDTA0r8xIVZd01xIEbYX8ktrfSaZuhqr8UmMCEBcqB+qqsVa9RvdEadmaXp6OmbMmIEjR46gU6dOMJvV0unQoUN16Zw3EepvRlqbKGw4chkZhy/ddKL96lA/piSEOd1eq6ggXCksx/9yiuTU50XlVbJKOk4HjY+c8dhROJSVPTzYz4zLBeWy/02gxah7XhJJKJHyd7AwEWmFAxZtaDc5ZsICJwHLajbI2YdZCSTaa2GR8wYALJr6haxMXfa2DKi02bWjrOYAwG8eSJGXUg0tVgKWn7mmPEZhWaWcmJFFdXup1pikxZJ8/2KC9S3FIeVUO68JnS+pqJLblKwEjaFzQiguXS/DL+evo5eTEWK8cGr2PPHEEwCAuXPn1vpMEATYbJ4R0sab+zvFYcORy/j20CVMG9i2zu/YqkUcz7ZrhNo3Qv3YKjoIu09dVfn5XFL4r+ih0QgPsMj1p/JKKmo0PjrnvOBhhpIWcCn7KAuHUO1Gx0JLwsucou27UsOgJ1aTEYWwC+vMhDjN72JhdS1mPhofwD5WklmYqcaHVw4kx3klIZhFYIBEiJ9JzncmlX1hseZIGh9J+JAEIL2LrzZ1+Atd0Ag+kiAU4mfSJVlr54Qw/N+vl2+aJRoAFnx7FM0jA/G7znFMgkjqg1O7nzZ8nagf/dtFwyDYzU/Z18vqrP1y5moxyquq4W82NqoasBQuqTQPSQUl9UouaDTYa+hcLbYLPXKNK53t4dLNcYGh47H0pFrlyJbH4slVuwFpN1wWbVg5+MVYjAbdM1BLKK+HlY+P2SjAaBDk0iusNEu1fW/YCj5yOww1S1ofH1ZRXbVMaoyiFQH7epNbVKGqb8XSkVp62JIEIMn3Ry8kR+nzeerQ+XNXHVXnm+jjqyuFw/9y/samrtyicnz4/SkAwH0dYm/4PdZQAkOOhPqb0bGpfXLsPpVb53eOOfx/2sQGNypluRQxoLx5JY1PnE7F9gBl+Ge5nPuClcanJvEfe6dgFoIPD20Mr83VX+EXY2KkIQHUGysrjY8gqH1imJm6tL8/o3YAtbDDVePDzKdMm9OJnTCn9Sm0mAxMhMewgBpXAQDIYaXxcTzoFlfY5FQAAHSvOt/Jsbedu1aCAk1QjcRPp+xR3+1ig5nUWqsvTt8R27dvx5AhQ9CqVSu0atUKQ4cOxY4dO/Tsm1cieb/vvkHY37Fsu39P+9jG2Vwl4UZyZgZqbmQ9/HskpHw610vZ5dcIkQUfdrlCXJGXhsVGLghqp09Wm6tyIzAxyAxdVzusNDEAYFRorFiZumqFszOMtlJpfBhqlnjcNwC/empAjeAjhZmHMND2AIocZZLGR+HcrCd+ZqOsXVL6+UhRXo2xLCgJC7DI5ru6UqkAwN4zdsHH2SzReuHUHfGPf/wDAwYMQEBAAKZMmYIpU6bA398f99xzD1avXq13H70K6Qe/URFRvTJ3SsLN5YIyVDtU+FK5Bz2d56R8OtdLK2XHab0jouSIjoKaYpV648ch6Zv2qZHVk7jKPMSoDaU2kqVAYuWg8QH4XI/JIEBpEWTq46O4BlbmTqC2JobHnAbY5acCgGCrFOEpZXFnXXhV0vg4TF06OzcDQLwjy/4lhQVAKpCaqJPgA9TUBvvtct2Ry5lZ+QCArklhurXpDE7tUPPnz8fixYsxdepU+diUKVOwZMkSzJs3D6NHj9atg96GFKl1OrcYReVVtYSEsw67a3KTxiUYjA62QhDsOWNyi8sRHeyHfEdxv/BA/W5kKZ9OQVklCssrVcf0QhJ05CRpDJ72tMIUE8HHzMfUwcMh2MRL8OGgvQLU5i1Wpi5BsIfnl1fZfSRZOzdLsM3jo9TICex8vWpplthpfKQIsksMfQqBmkixgrIqVNqq5arzTDJSy/mJaooXZ12zX5+egk/rmCDs/F9unckSK6qq5YSJjYlY1gOn7rxTp05hyJAhtY4PHToUp0+fbnSnvJmIQItshjqqKSkhiqLscJbcSIczs9Egqx0lPx8ps3KYjqGZUrTD9dJKFEkaH50XCh6ZdXn4+PAKNbdycGxVakjY+vgonKgZCgoGQSnIsbseCwdtnPbcvHx8WArAvDRLQM1aINUfYyX4KNfh/JIaVwEWNcgiAqWM1BXyMSlvUKyOPkWtHSUxTtRh6jqWXYAKWzXCAsyN3t8ai1OzJzExEZs3b651fNOmTUhMTGx0p7ydDo4cPr9qEj3ll1Si0BE+qYfdNVZTS0vS+ITpeGNJgk9BaU2OIL0XCh7ZYWuH5eq/sGqFEB6CDzONj5GPxsdk4KTxMSh9fPhosFhGW1k5CT7Kc7P09bJHDta8ZznnpIceyQTFyp/IaBBkjX9uUTkqHJpANsVX1TXIKm3VyHPsB3oVlAaANlK5pDpMXVK0V+eEMGaawfri1C86bdo0TJkyBZmZmejTpw8A4IcffsDKlSvxl7/8RdcOeiO3xYdi09EcOVGhxFmHzTUmxKqLqSU+1A8Hs2pUtrKpS0+Nj0PIKSirVAg+bExd8nsOzs1sfHz4mLp4ODcbDXw2PINqs2PXjlqDxcf3hpeAxVKzpBRAWAojgiDAz2REaaXN0Ra7uSCtL1IOH1aRaoD9IbGovErOsaMUhvREGX0L1Ah1RoOg634guWhkF5ShoqpaNfckh+d2jQzc0QOnRvipp55CbGws3nrrLXzxxRcAgPbt2+Pzzz/HAw88oGsHvREpYus3jTrwrKOAaHKEPpV5JU9+aZLXmLr01/hcKSyXk4vpfePyMHXVqtDtyaYuDuYhXj4+SoHEwlBDotZg8TF1NSZdRUPaUWrN9IaXkztg1/xKgg/La6r1oMVQ8JHWyvOO0PIQPxMTbYjW1HWlUP+6ioBde2Q12f3Ysq+XqXIESYE7LaP02d8ag9M71PDhwzF8+HA9++IzSFKxtmic3l72Up6EayUVKK2wyU6Vego+dRUPZC34sND4aBdtFmYIbqYuI3szh3rDY6nx4dOOOpydj+8NS22/8hpYtmPi5OsFSOuAXWttNrHX+NzovZ5os9KzMHMBSo2PXfCRiq/qXV5IEAQkhPvj5JVinM8rUQk+pxx1I1tGNS5iWQ8ogaELkCbDteIKVaInyZlOrwSDEQ4BJ6+4Evml9glv0lmVKi0KV+VSDwbdn2R5+PhoN1ULg4WVV8kCHiHgPBL+AVA9jfIKZ2dq6lJcg4GhRMKrHb4aH4UjNUONj/ZBi2UepKBaWenZCD6RgWrtv5RlX0//Hom6aoOVVFTJ1+gOgk+9d8CIiAicOHECkZGRCA8Pv6k67tq1a7p0zlsJspoQGWRBblEFzl0tkbM5S+pHqbJ6Y5E1PsUVcrG9sACLrqpUSQ0s+Q+xUAvzUD1rVedGBgurVpOgLVqpF2YuGh+lbwcfHx+WmhheGizluDG0dKmEHaYaH04mQkA9l1kKWTwiPCUkjY+Uw4dVfqIISeNTXA5RFJlpfAB1iQwJSdsTEWhxacZmiXoLPm+//TaCg4Pl1672yvZ0kiICkFtUgbMKwUfS+ETrJPjImUFLKpDPwL8HqL1IsHAK1p6TxZO/Vk3PwmHXYBBgMghyPTBWT5IqYcHTfXwETu1wiupS/jYs11DludlqfPj4EgHq35+lWY2nj4+cld4RWs4qgkzK41NpE1FQVoXcQknw4aPxOePwX20e6Xr/HqABgs/YsWPl1+PGjWPRF58iuUkg9p/Lx9lrxfIx3TU+ATUaHyk5VjhjwYeJxkfTBosFVrupsvZXANhtsDw2PZVpiGVUFycfEuUwMTXdqX4bZs2ozs1S8DFx0pQB6rnANKqLUxkOoMYfUtL4sCz5EWS1R5BdLSrnovHJUmh8pFxyetaJbAxO3eH79+/HoUOH5Pdff/01hg0bhpdeegkVFRU3+Z+EhJSnR0pYKIqi7oKPlEG5qLyKSfJCoHYGVRZZYrWVmVn432g3b1ZPr5K2B2BYdFPxmtWmZ+LkE6P8WVhGQYk1Pws30x1LgYSXqYunjw8vLSOP8jXac0uBJywiViUkx+mCsirZJ5OF4CMJN1JtRftr/ZMlNganZs+TTz6JEydOALBncX7ooYcQEBCAtWvX4k9/+pOuHfRWpIq52Y4JUVxhk0M19ZqMUgblkgobrjmc2fRMXgjUpRbWf0Hy0yQT5KLxYfk47oCV4MNj0+NlGlK2Y2S4g1erBB+2+Wgk2Ao+db/WG55RXcrfn6WwzSOn143OHcggh4+E5E9UWFbJpHyRhFRr7Eqh3Z8IqBGCYj1Z43PixAl06dIFALB27VqkpqZi9erVWLlyJdatW6dn/7yWaEcFXmlCSNqeQItRt8mvjN6SbMh631g8fHy0GyuLBbaWjw8HUxcr4UrgoFVQCp9sTVAKQYHhDl6tkHxYCj5qHx9mzajGjaUvEU+Nj/J5x8xwLmg1fix9fHik6pCoEXyqUOiIJmYRRRYZbLcqlFbaUFxhf5iXHvCjPVnjI4oiqqvtqrlNmzbh/vvvB2AvZZGbm6tf77yYGMcEyHFMCL3NXIBdoyBFQkg2ZK2g0lisJnUqeRaLhNbEwULDoG2DtaMmwG5D4q3xYZogT3EBLE1dNoWti2U7Bk6CnIGTZsmkiu5je8/wErK081mbTkNPtOdmaeqShJzCskoUOLLs611QGrA7aEsP3dK+5hWmrh49euD111/HZ599hu3btyM9PR0AcPr0acTExOjaQW9FEnyuFlegoqqaieAD1Ej5lwvZCD6CIKiEHRYaH+1CxELNrc0LwkPjwwylVgGMND6K8WHhcyXByydGqfFhCS/nZrXWj107vJzcAfXYsbw/tedm6k+k8V8M4GLqUmp82LQn7WM5BWUQRVF2bvZoweedd97B/v378fTTT2PWrFlo1aoVAOBf//qXXLuLuDnhAWZ5obhaXI6rxXbBpEmgvoJPTdQAu3BJpTDFQvDRPoGzcD7lEc7OCx6bKy+Nj1IrwlITU8VJ8OFhhrSfm087vIrVAvwKyfL096tVjoeDqetKUTkqbfb5HsIoU7QUPZxXUomC0irZeVty8XA1Tu2CnTt3VkV1Sbz55pswMkrK5m0IgoDwQAuuFJbbMzg7ws31TlkuqTdzGGl8APVCwUItrF14WCyw2nN6cp4qZc9ZXYcr8viwdG62uUDjw3KKqYQdblFdjJ2bOUUSauczS4G7VlZ6DqYuqSCqQbD7lLJASqWSX1Ih+/eEBZiZOoo3BKdmT1ZWFs6fPy+/37NnD5577jl8+umnMJvZSJDeSIRjcuQVV+K6Q/AJ8ddXIyNpfKSFnYUqVfnUx2JiGwyCapNgsdF6soZHC4+IHuXGw/IpVanxYel2VeXwWWQNL00Mr+gxXmkNAC81dWnLYzAsyyLtBRcdpSOCrGwKogI1aVPySirlivAsQuedxalRHj16NLZu3QoAyM7Oxr333os9e/Zg1qxZmDt3rq4d9GakUMJrJRUoKLU7m+mt8dFGCbBwnlMuDDwyBbMQUlg+1fFG4KBVUP4GLCNRDLycm/nIPerfhmE7vMLZeUZ18UqhoPX346nxYTmGknZH0v6zqgsG1FQIyC9hlzy3MTg1yocPH0bPnj0BAF988QU6duyIXbt2YdWqVVi5cqWe/fNq5JISimKlettctU8QTExdysgORouEatFjIFx5smlLi8rKwSFzM1ONj6L7bE1dnCQfBbwSGPKL6mLs3MzJkZqnv59V49xsZqjxkbRLeY7khSzv23BZ8KnJGRTq7/oaXRJOjXJlZSWsVrvaatOmTRg6dCgAoF27drh06ZJ+vfNyJDvo1eKKGlOXzlJ4Lec5xqYuFsU9AY2a24u0MyxQRnKxGinlb8DSbm9Umbo837lZCS/nZl6Zm1mngOCVwLBWFneOpi6mpTgcgo6UW4elprbG1FWB/FI2dSIbg1O/aIcOHbBs2TLs2LEDGzduxH333QcAuHjxIpo0aaJrB70Zyaxlz6vAxrm5Vp4IBpNduTCwsr2rSgowfCryBnj4kSg3PJZ+CQIn52Ze4exKBIbTWG1S4+Pj429he1/yiuoSBIG5aV1Cuz6zvC6tkMXygSVE3tuqcN2h8dG7akBjcGqUFy1ahA8++ABpaWkYNWoUUlJSAADr16+XTWDErQlS5VWoUh3TC60qlcUmZVFpfNgsEtUKyUdrgyfUCBye9pVP99o5pie8EhhyC2dXvGbr3Kxsh1kzGpMnuxw0AL+Ctdrzs2yrlqmLYykOlhFkQVZJu1QlWzPcSePj1ExNS0tDbm4uCgoKEB4eLh//wx/+gICAAN065+1IzmVFZVUocagfdc+szMF5TlW+gNEqq9yWPDq5IAd4+Hew9rmSUGmvmDo3u8LUxfLcfEyErCM6lSiFYNaO1GaDAWWw+32xFLh5pOqQ0Jq2WAo+gQ4huKisSuHj4+GCDwAYjUaV0AMAzZo1a2x/fIpgh79NUXkVSsrtGp9AnZ+atJlBmQg+HDQ+okLjQz4+N4eHn7aJk6lLlcCQpXOz6L0+Pvw0PmwFH+Vc4OtIzWd+A2yzoNfS+DD8vSTLRVF5FYorHHsbw6zUDaXev2i3bt2Ql5cHAOjatSu6det2wz+WlJeXo0uXLhAEAZmZmarPfvnlF9x1113w8/NDYmIiFi9ezLQvjUXKq1BYVomSSj4aHxY2ZLPKx4fNIqHcl7wpAosFPHK4GDhpfNTOzcyaAS+5h4cZ0n5uoc7XeqMUCljWtAIA5dLCOmeQcsiY5gziqPGplSyRpeCjeKgvLnc/wafePXnggQfkSK5hw4ax6s8t+dOf/oT4+HgcPHhQdbygoAADBw7EgAEDsGzZMhw6dAgTJkxAWFgY/vCHP7iotzdHSiGeW1QhL7x6T8ZaGh8GTxTKpy9W2phqFzyReyoqPxIO7lDxof7Mzq28FpYaH1fAK5yd5ajxzOPDM3ReeXaWGuba5Xj4OTez9fGx720lFTbZf1Vva0ZjqHdPZs+eXedrnmRkZGDDhg1Yt24dMjIyVJ+tWrUKFRUV+Pjjj2GxWNChQwdkZmZiyZIlbiv4SOpAqXItoL+DoHays9D4KJ++mJm6mJzVOzFwiuj5x8ReyC+tQFITdn59yt+dpa+FxWRARRXfXD5eUauLU6SVFp4BDixNXTwFH57OzUrtzhVH5uYAq3uUqwCcjOpSUlRUhIKCAtUfCy5fvownnngCn332WZ0O1Lt370a/fv1gsdQkSRo0aBCOHz8um+jqory8nEv/6yLYanf2kiJKrCaD7ou7Ur0pCGw2D7OBvcaHFD71h1dEz52tI/G7zvHsGtDA0kn3HxN7oUVkID6byC8qlZtzM0PBh5eTO6CJ7GTcltI8yFTjo/ltWAqPtZybGZq6rCaDrJWTnJuD3MjU5dQonz59Gunp6QgMDERoaCjCw8MRHh6OsLCwWg7PeiCKIsaNG4dJkyahR48edX4nOzsbMTExqmPS++zs7Buee+HChQgNDZX/EhMT9ev4LdBKwCycA5XhkmajgYm938xB48MD1gs3L3gVwuSBUuBluQH1bB6BLdPTcFfrKGZtaGHpe8PLl4inxqfaRQEOLAVu7blZuCJI8EhtIiEIQi3rBWvn94bglAj2yCOPQBRFfPzxx4iJiXH6Bn7xxRexaNGim37n6NGj2LBhAwoLCzFz5kyn2rkZM2fOxPPPPy+/Lygo4Cb81C4nob9ErNT4sFqYVAkMPTjHTlqbKGw4ctnV3dAVb3IEZ6m58DZ4FSnlqfFR1lNj7U/kqpnG8rqMjmLPkvzIUvAB7HvP9dKa9x7p46Pk4MGD2LdvH9q2bduoxqdNm4Zx48bd9DstWrTAli1bsHv3btm5WqJHjx4YM2YMPvnkE8TGxuLyZfWmJb2PjY294fmtVmut8/KiVjkJFnW0jOwdAs0cwtl5sPDBTqiwVePh2/lp/VjAy7GVB6LCy8eT5xZv1PmP2LWjFLBiQvzYNQR1SgvWc8FVMjZrTZbZYECFQ4JkHRmn1TC5k4+PU4LP7bffjqysrEYLPlFRUYiKurVq+d1338Xrr78uv7948SIGDRqEzz//HL169QIA9O7dG7NmzUJlZSXMZrvvzMaNG9G2bVsm5jc9MBvtPj1S8jQWNlceT2Q8oy1Y0iTIipXjPT/zuNrHx3N/Dy3eFtXFEl4O7gCwcvztKCirQmIE2+S1vuDnx1pDazIKcOTKZS48KjVKJoPANMN7Q3FK8Fm+fDkmTZqECxcuoGPHjrKgIdG5c2ddOieRlJSkeh8UFAQAaNmyJRISEgAAo0ePxpw5czBx4kS88MILOHz4MP7yl7/g7bff1rUveuNnMshF41iYopQLICs1qtIuTU/lrodXgUresPS18DZ4JTAEgLS20WwbcMA3yaR3zjV1+gG216i0aLDO6t1QnBJ8rly5gpMnT2L8+PHyMUEQIIoiBEGAzWbTrYP1JTQ0FBs2bMDkyZPRvXt3REZG4tVXX3XbUHYJP7OxRvBhoJFRLnqsfHzMBu/w8fEWePl38MAXnvJZwCuBIU945vLykiGrhZmjP6ZS4+NugSNOCT4TJkxA165dsWbNmkY5NztLs2bNVPZeic6dO2PHjh1c+9JYlJODhUaGR4IxHiUriPrjrYs2UX/U4ewu7IiO8BSCAy1GXOHXHDd4anysHAJrnMUpwefs2bNYv349WrVqpXd/fA6lCpCFYMKjtIC6ZIWXrLIejNKng8xDvgmvBIY84anxcaeCmnqizLlmZK7xqdnb3E3j41Rv7r777lolIwjnsJqVk0P/BUpd0ZjNAmjhmMfHS9Zwpqh8fFzXDV2oS7NL3BpvyuUkUc1xKoQGWG79JQ/ExPEhVW3NcK9J6JTGZ8iQIZg6dSoOHTqETp061XJuHjp0qC6d8wVY59nhYepShinyCMckbo43RXWR3OMkXjQHJKo5Sj5hXqrxUa7PrNdStY+PFzg3T5o0CQAwd+7cWp+5yrnZU/EzMTZ1CexNXcpU5Kwd5tztycEd8canfaJheOMc4GnqahLkrRofoc7XLHBnU5dTgk91Nd9ift6MUuPDov6MUuPDShujEnwY30ysk255A8pfwFs2PaJhkI9P45jcvxU2/HoZw7s25dYmD4wcc64pnZutbrZu65ZDOj8/H2FhYXqdzmdQScVMTF01r1kJDUrBh5WPz4D2Mdh09DIev7M5k/N7E14Vzu7qDugOn9+DV5FSnvD08YkMsmLnC/29JhWAhDrLPuuSFQprBsMaZM7g1JUvWrQIn3/+ufx+xIgRiIiIQNOmTcnpuYFYGOc6UC56rDLfBqpMXWza+Ovorlg7qTf+2J8iCRuCey03BC94FSnlCW9Hd28TegD1+szaH1Pl4+NmGh+nerNs2TK5kOfGjRuxadMmfPfddxg8eDBmzJihawe9HdZ5FZTnNzJSbQb7sdf4+JmNuL1ZBOUJaiCe/rRPzs3O4Y0+PsF+3ulwzBN1eSG2wohS2PEKH5/s7GxZ8Pnmm28wcuRIDBw4EM2aNZNrZxH1g3VJCeX5efj4eONTkidDP4dv4o2mrhcHt8O5ayV45I6kW3/ZA+HxTMfTuVn5oO1uUV1O7bTh4eHIysoCAHz33XcYMGAAALsqkiK6GoZS1mGduZmVtkRp6qqoIsd3d8LTBVHRC718eOBNKQ0kYkL8sO6pPhjeNcHVXWECD222Ko8P4/bUD/XuNQed0vg8+OCDGD16NFq3bo2rV69i8ODBAIADBw5QNucGopzsVg+N6rKaDBjQPgZ5JRVIZlyhmWgYnr7nKbWJRP1RmgjJOuwZ8HhIUfn4MDZ1Kecdi72tMTi1qrz99tto1qwZsrKysHjxYrla+qVLl/DHP/5R1w56OzxNXayeKARBwPKxPeQitYT74OlP+6N7JWHr8RwMaB/j6q7ogit+DronPQNWwSdK1AkM+Wl83M252SnBx2w2Y/r06bWOT506tdEd8jVYZ1ZWnp/1AkgLrPvh6b9IgMWEVY/f4epueDR0W3oGPDRzKp9P5hof9slzncVpPfJvv/2GrVu3Iicnp1ZCw1dffbXRHfMVWNtBlU8RtP75Hp6u8SGcwxt9fLwdHr+TsgnWPkU8yiU5i1OCz0cffYSnnnoKkZGRiI2NVT3pC4JAgk8DUE4OJnl8FKek9c/3oN+cIB8fz8DA+Ydi7XCsvBx3y7jvlODz+uuvY/78+XjhhRf07o/PoXY+ZmzqIp2Pz0GCD0EaH8+At4DKuq6iUpDj4b/UEJy68ry8PIwYMULvvvgkapur/pPDGxOZEfWHhF2C7nvPgEc4uzLaj73GR5lLimlTDcYpwWfEiBHYsGGD3n3xSVS1tBjMDrXGh/A13G3BIfhDwq9nwCM4RO36wNjHRyn4uNlC5JSpq1WrVnjllVfw448/olOnTjCb1anEp0yZokvnfAHWk8PdVIwEXyjSjnCzPYe4ATxyVnWID8W3h7LRrAn7fGs8HakbilMj/eGHHyIoKAjbt2/H9u3bVZ8JgkCCTwNQbkwsND4GjuHshPvhZusN4QLIx8e9eW9UV/x5w3G8N6or87Yev6s5UhLC0D05nHlbPApkO4tTgs/p06f17ofPwqOkBOG7kLBL0BRwb4akxGNISjyXtqwmI+5sHcmlLeV+5m6mLveKMfNBWEd1KaEnP4LwPUj4JVyBOpeU6/pRF04bFc+fP4/169fj3LlzqKioUH22ZMmSRnfMV+BRUkKC1j+CcC10CxK+gjtbM5wSfDZv3oyhQ4eiRYsWOHbsGDp27IgzZ85AFEV069ZN7z56NayjupS419QjCIIVdK8TrkYdzu5eM9Ip28rMmTMxffp0HDp0CH5+fli3bh2ysrKQmppK+X0aCGl8CIIgCG+D597WUJwSfI4ePYrHHnsMAGAymVBaWoqgoCDMnTsXixYt0rWD3g5PdSDZ+gmCIAgeKLczd4vqckrwCQwMlP164uLicPLkSfmz3NxcfXrmI6idm8nURTQe8dZfIbwcmgOEqzF4WwLDO+64Azt37kT79u1x//33Y9q0aTh06BD+/e9/44477tC7j14NV3Wge809gvA5xvVthg1HLqNfmyhXd4UgmKIKZ3ezvccpwWfJkiUoKioCAMyZMwdFRUX4/PPP0bp1a4roaiA8w9kpdT1BuJY+LSPx00v3IDLI6uquEARTvCpzs81mw/nz59G5c2cAdrPXsmXLdO+Yr6C0fRoZF40jCML1xIT4MW+DVhLC1ag1Pu41IxusYjAajRg4cCDy8vJY9MfnUNo+WTuAudnc80lSHSaOHhxSxhMEQbgKd47qcsrU1bFjR5w6dQrNmzfXuz8+hzKPD/OoLqZnJ+rDuw93xfqDF5DemU+KesI3sZopKT/hWtw5j49Tgs/rr7+O6dOnY968eejevTsCAwNVn4eEhOjSOV+DeVSXe809nyQ0wIxHezdzdTcILye1TTTuaReNDvG0FhOuQbmduZnCp2GCz9y5czFt2jTcf//9AIChQ4eqcsOIoghBEGCz2fTtpRcjKuJOWfv4BFicrlBCEIQHYTQI+Pu4213dDcKH8ZqSFXPmzMGkSZOwdetWVv3xOZSCDyuNz6z72yPj8CU81juZyfkJgiAIQongLXl8RMcunZqayqQzvogy0RgrqfiJfi3wRL8WTM5NEARBEFq8KnMzlT1gB+s8PgRBEATBA68xdQFAmzZtbin8XLt2zekO+RqiwtblZnODIAiCIJzCq6K65syZg9DQUBZ98UmUpi7SphEEQRDegFrwcWFH6qDBgs/DDz+M6OhoFn3xTaiaIEEQBOFlGDjmqGsoDXIqIY2E/ogk+RAEQRBehtGNo7oaJPgo/VFcwX//+1/06tUL/v7+CA8Px7Bhw1Sfnzt3Dunp6QgICEB0dDRmzJiBqqoq13S2nlST3EMQBEF4GUpFibtFdTXI1FVdXc2qH7dk3bp1eOKJJ7BgwQLcfffdqKqqwuHDh+XPbTYb0tPTERsbi127duHSpUt47LHHYDabsWDBApf1+1a4WJYkCIIgCN3xqqguV1BVVYVnn30Wb775JiZOnCgfv+222+TXGzZswJEjR7Bp0ybExMSgS5cumDdvHl544QW89tprsFgsdZ67vLwc5eXl8vuCggJ2F0IQBEEQPoBS1nEzhU/D8/i4gv379+PChQswGAzo2rUr4uLiMHjwYJXGZ/fu3ejUqRNiYmLkY4MGDUJBQQF+/fXXG5574cKFCA0Nlf8SExOZXosW8vEhCIIgvA13rs7uEYLPqVOnAACvvfYaXn75ZXzzzTcIDw9HWlqanDMoOztbJfQAkN9nZ2ff8NwzZ87E9evX5b+srCxGV1E36Z3iEGgxYkD7mFt/mSAIgiA8AKVDs7v5+LhU8HnxxRchCMJN/44dOyb7Fs2aNQu///3v0b17d6xYsQKCIGDt2rWN6oPVakVISIjqjydhARYceHUgPnqsO9d2CYIgCIIVqursbqbxcamPz7Rp0zBu3LibfqdFixa4dOkSALVPj9VqRYsWLXDu3DkAQGxsLPbs2aP6v5cvX5Y/c2csJo9QvBEeQmyIn6u7QBCEj2P0lqguvYmKikJUVNQtv9e9e3dYrVYcP34cd955JwCgsrISZ86cQXKyveJ47969MX/+fOTk5MgJFjdu3IiQkBCVwEQQ3s6IHgk4nl2APq0iXd0VgiB8FMGNfXw8IqorJCQEkyZNwuzZs5GYmIjk5GS8+eabAIARI0YAAAYOHIjbbrsNjz76KBYvXozs7Gy8/PLLmDx5MqxWqyu7TxBcMRsNmPNAR1d3gyAIH8bdhB0lHiH4AMCbb74Jk8mERx99FKWlpejVqxe2bNmC8PBwAIDRaMQ333yDp556Cr1790ZgYCDGjh2LuXPnurjnBEEQBOFbuHM4uyC6Oh2zm1FQUIDQ0FBcv36du6MzQRAEQXgD10srkTJnAwBg5wv9kRAewLzN+u7f5FVLEARBEISuqDU+7qXyIcGHIAiCIAhdcTdhRwkJPgRBEARB+Awe49xMEARBEIRnEGA2IibEioqqasQEu1dkNQk+BEEQBEHoisEgYOcLd0MUAZPRvYxLJPgQBEEQBKE7ZjcTeCTcs1cEQRAEQRAMIMGHIAiCIAifgQQfgiAIgiB8BhJ8CIIgCILwGci5WYNUwaOgoMDFPSEIgiAIor5I+/atKnGR4KOhsLAQAJCYmOjinhAEQRAE0VAKCwsRGhp6w8+pSKmG6upqXLx4EcHBwbqm3C4oKEBiYiKysrKo+ClDaJz5QOPMDxprPtA484HlOIuiiMLCQsTHx8NguLEnD2l8NBgMBiQkJDA7f0hICN1UHKBx5gONMz9orPlA48wHVuN8M02PBDk3EwRBEAThM5DgQxAEQRCEz0CCDyesVitmz54Nq9W9irV5GzTOfKBx5geNNR9onPngDuNMzs0EQRAEQfgMpPEhCIIgCMJnIMGHIAiCIAifgQQfgiAIgiB8BhJ8CIIgCILwGUjwcYLvv/8eQ4YMQXx8PARBwFdffXXT72/btg2CINT6y87OVn1v6dKlaNasGfz8/NCrVy/s2bOH4VW4PyzGeeHChbj99tsRHByM6OhoDBs2DMePH2d8Je4Pqzkt8cYbb0AQBDz33HP6d96DYDXOFy5cwCOPPIImTZrA398fnTp1ws8//8zwStwbFuNss9nwyiuvoHnz5vD390fLli0xb968W9aF8mYaOs4AUF5ejlmzZiE5ORlWqxXNmjXDxx9/rPrO2rVr0a5dO/j5+aFTp0749ttvde03CT5OUFxcjJSUFCxdurRB/+/48eO4dOmS/BcdHS1/9vnnn+P555/H7NmzsX//fqSkpGDQoEHIycnRu/seA4tx3r59OyZPnowff/wRGzduRGVlJQYOHIji4mK9u+9RsBhrib179+KDDz5A586d9equx8JinPPy8tC3b1+YzWZkZGTgyJEjeOuttxAeHq539z0GFuO8aNEivP/++/jrX/+Ko0ePYtGiRVi8eDHee+89vbvvMTgzziNHjsTmzZvx97//HcePH8eaNWvQtm1b+fNdu3Zh1KhRmDhxIg4cOIBhw4Zh2LBhOHz4sH4dF4lGAUD88ssvb/qdrVu3igDEvLy8G36nZ8+e4uTJk+X3NptNjI+PFxcuXKhTTz0bvcZZS05OjghA3L59e+M66EXoOdaFhYVi69atxY0bN4qpqanis88+q1s/PR29xvmFF14Q77zzTn0750XoNc7p6enihAkTVMcefPBBccyYMTr00vOpzzhnZGSIoaGh4tWrV2/4nZEjR4rp6emqY7169RKffPJJPbopiqIoksaHI126dEFcXBzuvfde/PDDD/LxiooK7Nu3DwMGDJCPGQwGDBgwALt373ZFVz2aG41zXVy/fh0AEBERwaNrXsetxnry5MlIT09XzW2i4dxsnNevX48ePXpgxIgRiI6ORteuXfHRRx+5qKeezc3GuU+fPti8eTNOnDgBADh48CB27tyJwYMHu6KrHok0VxcvXoymTZuiTZs2mD59OkpLS+Xv7N69u9Z6MWjQIF33QipSyoG4uDgsW7YMPXr0QHl5OZYvX460tDT89NNP6NatG3Jzc2Gz2RATE6P6fzExMTh27JiLeu153GqctVRXV+O5555D37590bFjRxf02HOpz1j/85//xP79+7F3714X99Zzqc84nzp1Cu+//z6ef/55vPTSS9i7dy+mTJkCi8WCsWPHuvgKPIP6jPOLL76IgoICtGvXDkajETabDfPnz8eYMWNc3HvP4dSpU9i5cyf8/Pzw5ZdfIjc3F3/84x9x9epVrFixAgCQnZ1d5154I/9Bp9BNd+SjoB7qvbro16+f+Mgjj4iiKIoXLlwQAYi7du1SfWfGjBliz5499eimx6PHOGuZNGmSmJycLGZlZTWyd96FHmN97tw5MTo6Wjx48KD8OZm61Og1p81ms9i7d2/Vd5555hnxjjvuaGwXvQK9xnnNmjViQkKCuGbNGvGXX34RP/30UzEiIkJcuXKljr31XOozzvfee6/o5+cn5ufny8fWrVsnCoIglpSUiKJon8+rV69W/b+lS5eK0dHRuvWVTF0uomfPnvjf//4HAIiMjITRaMTly5dV37l8+TJiY2Nd0T2vQTnOSp5++ml888032Lp1KxISElzQM+9DOdb79u1DTk4O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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "## Analysis of imblanced MZI's" + "mag = jnp.abs(S[\"out\", \"in\"])**2\n", + "\n", + "fig, axs = plt.subplots(2, 1, sharex=True)\n", + "axs[0].plot(wl, mag)\n", + "axs[0].set_ylabel(\"Transmission\")\n", + "axs[1].plot(wl, 10*jnp.log10(mag))\n", + "axs[1].set_ylabel(\"Transmission (dB)\")\n", + "axs[1].set_xlabel(\"Wavelength (um)\")\n", + "plt.suptitle(\"MZI Response\")\n", + "plt.show()" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "The equation below is the simplified version of the above expressions assuming no difference in the propogation constants of the two different waveguides and no loss." + "As you can see, and as you might have predicted, by varying the wavelength we can see different levels of power being output from the device. Notice how the power periodically dips to 0 (on the linear plot). This occurs when the phases of the two paths are exactly opposite, and the light destructively interferes. The power, however does not peak at a consistent maximum--an effect of using grating couplers, which are optimized for better coupling at some center wavelength (in this case, 1.55 microns)." ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "$$\n", - "I_{output} = \\frac{I_{input}}{2}(1 + cos(\\beta \\Delta L))\n", - "$$" + "## Analysis of a balanced MZI\n", + "\n", + "You can think of a balanced interferometer as having equal path lengths when the light separates. In ideal conditions, this means that amount of power at the output is the same as the input. " ] }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "You can install `pip install gdsfactory[full]` for better visualization\n" + "\u001b[32m2024-01-09 23:00:01.222\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mgdsfactory.technology.layer_views\u001b[0m:\u001b[36m__init__\u001b[0m:\u001b[36m785\u001b[0m - \u001b[1mImporting LayerViews from YAML file: '/home/sequoia/git/Photonics-Bootcamp/env/lib/python3.11/site-packages/gdsfactory/generic_tech/layer_views.yaml'.\u001b[0m\n", + "\u001b[32m2024-01-09 23:00:01.227\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mgdsfactory.pdk\u001b[0m:\u001b[36mactivate\u001b[0m:\u001b[36m258\u001b[0m - \u001b[1m'generic' PDK is now active\u001b[0m\n" ] }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAisAAAGdCAYAAADT1TPdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABIMklEQVR4nO3de3hU5b03/O+ckzmFhEAOZAJBUIvorgVL8QjbilouW7e7ttaWwm7r09ZSpVxWpe6rhr4FfOrhYVe37LbbV7229bVPW9vdrT1AW0UpiEg3LYVdi5wSCCGQhMxMJpnTut8/fqyZyZGEzJpZM/P9XNdcSdZMkju/zMz6rvu+170sSikFIiIiIpOy5rsBRERERKNhWCEiIiJTY1ghIiIiU2NYISIiIlNjWCEiIiJTY1ghIiIiU2NYISIiIlNjWCEiIiJTs+e7AROlaRra2trg8/lgsVjy3RwiIiIaA6UUQqEQ6uvrYbWO3ndS8GGlra0NgUAg380gIiKi89Da2oqGhoZRH1PwYcXn8wGQP9bv9+e5NcUlHA7jzTffxDXXXAOv15vv5hQ1TdPQ2tqKQCBwziMMOn+sc+6w1rlRyHUOBoMIBAKp/fhoCj6s6EM/fr+fYSXLrFYr3G43/H4/w4rBNE2Dz+eD3+8vuDecQsI65w5rnRvFUOexTOEozL+MiIiISgbDChEREZkawwoRERGZGsMKERERmRrDChEREZkawwoRERGZGsMKERERmRrDChEREZkawwoRERGZGsMKERERmRrDChEREZkawwoRERGZGsMKERERmRrDChEREZkawwoRERGZGsMKERERmRrDChEREZkawwoRERGZGsMKERERmRrDChEREZkawwoRERGZGsMKERERmRrDChEREZkawwoRERGZGsMKERERmZqhYWXTpk247LLL4Pf74ff7sXDhQvzqV79K3a+UQnNzM+rr61FeXo5FixZh3759RjaJiIiICoyhYaWhoQGPPPII3nnnHbzzzjv4+7//e3zsYx9LBZLvfOc7eOKJJ/DUU09h165dqK2txQ033IBQKGRks4iIiKiAGBpWbrnlFnzkIx/BhRdeiAsvvBDr1q2D1+vFW2+9BaUUNm7ciIceegi33XYb5s6di+effx6RSAQvvviikc0iIiKiAmLP1S9KJpP48Y9/jN7eXixcuBCHDx9Ge3s7lixZ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IxZ9zZo1WL16derrYDCIQCCAQCDAYaMsC4fDOHDgABoaGuD1evPdnKKmaRqUUggEArBme55DJAL09MjS7xYLUFsLjDDhvdgZWmdAan3mTHqZ/ZoaoLIy+7+nABheawJQ2HUOjuOgadxhZeXKlbjjjjtGfcyMGTPG9LNqa2uxc+fOAdu6u7sRj8eH9LjoXC4XXMNcb8NqtRbcP8rs9JqytrlhWK1tNrn19gJ2uwxLlPD/09Dn9OBal/gkW75/5Eah1nk87R13WKmurkZ1dfV4v21YCxcuxLp163DixAnU1dUBkEm3LpcL8+bNy8rvICp5mW8IySRw/Djg9/O6NUZgrYkMYeiclZaWFnR1daGlpQXJZBJ79uwBAMyaNQterxdLlizBnDlzsGzZMjz66KPo6urCfffdh7vuuotDOkTZok/2LC+Xr+Pxkp30aTjWmsgQhoaVb37zm3j++edTX19++eUAgNdeew2LFi2CzWbDq6++irvvvhtXXXUVysvLceedd+Kxxx4zsllEpcl+9uXOCxkaj7UmyipDw8pzzz034horusbGRrzyyitGNoOIiIgKWGHNxiEiIqKSw7BCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmxrBCREREpsawQkRERKbGsEJERESmZlhYOXLkCD7/+c+jqakJ5eXluOCCC/Dwww8jFosNeFxLSwtuueUWeDweVFdX45577hnyGCIiIipddqN+8F//+ldomobvfe97mDVrFv7yl7/grrvuQm9vLx577DEAQDKZxNKlSzFlyhRs27YNnZ2dWL58OZRSePLJJ41qGhERERUQw8LKTTfdhJtuuin19cyZM/Huu+9i06ZNqbCyefNm7N+/H62traivrwcAPP7441ixYgXWrVsHv99vVPOIiIioQBgWVobT09ODqqqq1Nc7duzA3LlzU0EFAG688UZEo1Hs3r0b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", + "image/png": "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rHVm5HKdtRGRsUw4qNx+++1YunTpqK+ZMWNG4vPKykpUVlbiM5/5DE455RT4fD5s2bIFTU1N8Hq96OjoGPS12n2v1zvie9vtdtjt9mGPm83mnPslGZ1WU9Y2M1jrzGCdM4e1zoxcrfN42zvhoFJVVYWqqqoJNwhIjkdpc0yamppw1113JSbXAsDGjRtx8sknjzjsQ0RERIVFt/j11ltv4Uc/+hG2b9+OTz/9FK+88gr++Z//GSeccAKampoAAF/+8pdhs9mwbNkyfPDBB3juuefw0EMPDRraISIiosKlW1BxOp34zW9+g0suuQQnn3wyli1bhjlz5mDz5s2JoZvS0lJs2LABra2tmDt3Lm6//XbcfffdPDWZiIiIAOh41s9pp52GV155ZczXzZkzB2+88YZezSAiIqIcllszb4iIiKigMKgQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhMagQERGRYTGoEBERkWExqBAREZFhZSSoRCIRnH766TCZTNi+ffug5959911ccMEFcDgc8Pl8uO+++zLRJCIiIsoBGQkqX//611FXVzfs8UAggEsvvRTTpk3Dtm3bcP/99+Pb3/42Hn/88Uw0i4iIiAyuSO9v8NJLL2HDhg349a9/jZdeemnQc8888wyi0SiefPJJ2Gw2nHrqqdi+fTseeOAB3HjjjXo3jYiIiAxO16DS0dGBG264AS+88AKcTuew51taWjB//nzYbLbEYwsXLsTatWvR1dWFKVOmDPuaSCSCSCSSuB8IBAAAiqJAURQdforCpdWUtdUf65wZrHPmsNaZkct1Hm+bdQsqqqpi6dKl+NrXvoZ58+Zhz549w17j9/vR2Ng46LGamprEcyMFlTVr1mD16tXDHm9ra4PH40lP4wkAEA6HEQwGsW/fvhGDJqWPqqro6uqCyWSCyWTKdnPyFuucOax1ZuRynYPB4LheN+GgsnLlSqxdu3bU13z00UfYsGEDgsEgVq1aNdFvMapVq1ahubk5cT8QCMDn88Hn86GkpCSt36vQhUIh7Ny5E/X19XC73dluTl5TFAWqqsLn88Fs5sl4emGdM4e1zoxcrrM2IjKWCQeV22+/HUuXLh31NTNmzMArr7yClpYW2O32Qc/NmzcP1157LX72s5/B6/Wio6Nj0PPafa/XO+J72+32Ye8JAGazOed+SUan1ZS1zQzWOjNY58xhrTMjV+s83vZOOKhUVVWhqqpqzNc9/PDD+N73vpe4397ejoULF+K5557DOeecAwBoamrCXXfdhVgsBqvVCgDYuHEjTj755BGHfUaiqiqA8SczGr9QKIRwOIxAIJCT45+5RFEUBINBBAKBnNvY5BLWOXNY68zI5Tpr+21tP35Maoa0traqANS//OUvice6u7vVmpoa9brrrlPff/999dlnn1WdTqf6k5/8ZNzv29bWpgLgjTfeeOONN95y8NbW1jbqfl7305NHU1paig0bNmD58uWYO3cuKisrcffdd0/o1OS6urrERNpcm0hkdNr8n7a2Ns7/0RlrnRmsc+aw1pmRy3VWVRXBYHDEddZSmVR1rD4XKlSBQAClpaXo6enJuX+AXMNaZwbrnDmsdWYUQp1za0CLiIiICgqDChERERkWgwodk91ux7e+9a0RTwen9GKtM4N1zhzWOjMKoc6co0JERESGxR4VIiIiMiwGFSIiIjIsBhUiIiIyLAYVIiIiMiwGFTqmdevWYfr06XA4HDjnnHPw9ttvZ7tJOW3NmjU466yz4PF4UF1djUWLFmHHjh2DXtPf34/ly5ejoqICbrcbixcvHnbhTpqYe++9FyaTCbfeemviMdY5ffbv349/+Zd/QUVFBYqLi3Haaadh69atiedVVcXdd9+N2tpaFBcXY8GCBdi5c2cWW5x74vE4vvnNb6KxsRHFxcU44YQT8N3vfnfQNXLyus4TvWYPFYZnn31Wtdls6pNPPql+8MEH6g033KCWlZWpHR0d2W5azlq4cKH61FNPqe+//766fft29e///u/VhoYGNRQKJV7zta99TfX5fOqmTZvUrVu3queee6563nnnZbHVue3tt99Wp0+frs6ZM0e95ZZbEo+zzulx5MgRddq0aerSpUvVt956S929e7f68ssvq7t27Uq85t5771VLS0vVF154Qf3rX/+qfvGLX1QbGxvVvr6+LLY8t9xzzz1qRUWF+uKLL6qtra3q888/r7rdbvWhhx5KvCaf68ygQiM6++yz1eXLlyfux+Nxta6uTl2zZk0WW5VfOjs7VQDq5s2bVVWVi3RarVb1+eefT7zmo48+UgGoLS0t2WpmzgoGg+pJJ52kbty4Uf385z+fCCqsc/rceeed6uc+97ljPq8oiur1etX7778/8Vh3d7dqt9vVX/ziF5loYl644oor1K9+9auDHrvqqqvUa6+9VlXV/K8zh35omGg0im3btmHBggWJx8xmMxYsWICWlpYstiy/9PT0AADKy8sBANu2bUMsFhtU95kzZ6KhoYF1Pw7Lly/HFVdcMaieAOucTv/1X/+FefPm4eqrr0Z1dTXOOOMM/PSnP00839raCr/fP6jWpaWlOOecc1jrCTjvvPOwadMm/O1vfwMA/PWvf8Wbb76Jyy+/HED+1zmrV08mYzp06BDi8ThqamoGPV5TU4OPP/44S63KL4qi4NZbb8X555+P2bNnAwD8fj9sNhvKysoGvbampgZ+vz8Lrcxdzz77LP785z/jnXfeGfYc65w+u3fvxqOPPorm5mb8+7//O9555x3827/9G2w2G5YsWZKo50jbEtZ6/FauXIlAIICZM2fCYrEgHo/jnnvuwbXXXgsAeV9nBhWiLFi+fDnef/99vPnmm9luSt5pa2vDLbfcgo0bN8LhcGS7OXlNURTMmzcP3//+9wEAZ5xxBt5//3089thjWLJkSZZblz9++ctf4plnnsH69etx6qmnYvv27bj11ltRV1dXEHXm0A8NU1lZCYvFMuwsiI6ODni93iy1Kn+sWLECL774Il599VXU19cnHvd6vYhGo+ju7h70etZ9YrZt24bOzk6ceeaZKCoqQlFRETZv3oyHH34YRUVFqKmpYZ3TpLa2FrNmzRr02CmnnIK9e/cCQKKe3JZMzh133IGVK1fiS1/6Ek477TRcd911uO2227BmzRoA+V9nBhUaxmazYe7cudi0aVPiMUVRsGnTJjQ1NWWxZblNVVWsWLECv/3tb/HKK6+gsbFx0PNz586F1WodVPcdO3Zg7969rPsEXHLJJXjvvfewffv2xG3evHm49tprE5+zzulx/vnnDzvF/m9/+xumTZsGAGhsbITX6x1U60AggLfeeou1noBwOAyzefDu2mKxQFEUAAVQ52zP5iVjevbZZ1W73a4+/fTT6ocffqjeeOONallZmer3+7PdtJx10003qaWlpeprr72mHjhwIHELh8OJ13zta19TGxoa1FdeeUXdunWr2tTUpDY1NWWx1fkh9awfVWWd0+Xtt99Wi4qK1HvuuUfduXOn+swzz6hOp1P9+c9/nnjNvffeq5aVlam/+93v1HfffVe98sor8+a02UxZsmSJOnXq1MTpyb/5zW/UyspK9etf/3riNflcZwYVOqZHHnlEbWhoUG02m3r22WerW7ZsyXaTchqAEW9PPfVU4jV9fX3qv/7rv6pTpkxRnU6n+o//+I/qgQMHstfoPDE0qLDO6fP73/9enT17tmq329WZM2eqjz/++KDnFUVRv/nNb6o1NTWq3W5XL7nkEnXHjh1Zam1uCgQC6i233KI2NDSoDodDnTFjhnrXXXepkUgk8Zp8rrNJVVOWtiMiIiIyEM5RISIiIsNiUCEiIiLDYlAhIiIiw2JQISIiIsNiUCEiIiLDYlAhIiIiw2JQISIiIsNiUCEiIiLDYlAhIiIiw2JQISIiIsNiUCEiIiLDYlAhIiIiw/r/Os9whGbaTHsAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "my_component: uid a71ccce9, ports [], references ['mzi_1'], 0 polygons\n" - ] } ], "source": [ @@ -358,80 +544,176 @@ "PDK = gf.get_generic_pdk()\n", "PDK.activate()\n", "\n", + "# The << is shorthand for c.add_ref()\n", "c = gf.Component(\"my_component\")\n", - "mzi = c << gf.components.mzi(delta_length=15)\n", + "mzi = c << gf.components.mzi(delta_length=0)\n", "\n", - "c\n" + "c.plot_matplotlib()" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "### Quick check\n", + "There are there three different relevant amplitudes:\n", + "1. The amplitude of the input light:\n", + "$\n", + " I_{input} = E_{input}^2\n", + "$\n", "\n", - "What is the intensity of the output light if the input light had an intensity of 0.75 mW and a refractive index through silicon of $n = 3.48$ when operating at a wavelength of 1450 nm? The shorter path has a length of 90 $\\mu \\text{m}$ and the longer path a length of 102 $\\mu \\text{m}$.\n", + "2. The amplitudes of the beams after the split\n", + "$\n", + " E_{1} = \\frac{E_{input}}{\\sqrt{2}}, \\hspace{2mm} E_{2} = \\frac{E_{input}}{\\sqrt{2}}\n", + "$\n", + "\n", + "3. The amplitude of the recombined light\n", + "$\n", + " I_{output} = [\\frac{E_{1}+E_{2}}{\\sqrt{2}}]^2 = I_{input}\n", + "$\n", + "\n", + "```{warning} \n", + "Note that these are not generalized equations. Instead, these describe a balanced interferometer whose branches have not undergone a phase shift.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Quick check\n", + "If intensity of the input wave to a balanced interferometer is 0.5 mW, what is the intensity at the output? Assume lossless waveguides.\n", "\n", "
\n", " Answer\n", - " 0.491 mW\n", + " 0.5 mW \n", "
" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "## Thermo-optic effect" + "## Definitions\n", + "\n", + "It would be helpful to mathematically model the light in our waveguides. We can start to build a model by considering the equation for a plane wave.\n", + "\n", + "$$ \n", + "E = E_0 e^{i(\\omega t - \\beta z)}\n", + "$$\n", + "\n", + "Propagation Constant of Light:\n", + "$\n", + " \\beta = \\frac{2 \\pi n}{\\lambda} \n", + "$\n", + "\n", + "If the equations above describe the propogation of the wave before the light gets split by the MZI, we can represent the two resulting beams as follows.\n", + "\n", + "$$\n", + "E_{o1} = \\frac{E_{i}}{\\sqrt{2}}e^{-i\\beta_{1}L_{1}-\\frac{\\alpha_{1}}{2}L_{1}}\n", + "$$\n", + "\n", + "$$\n", + "E_{o2} = \\frac{E_{i}}{\\sqrt{2}}e^{-i\\beta_{2}L_{2}-\\frac{\\alpha_{2}}{2}L_{2}}\n", + "$$\n", + "\n", + "*** As the light travels through the waveguide we can imagine that it will experience some degree of loss. The 'α' term that appeared in the exponents is the loss coefficient. For convenience, the following examples will assume that α = 0, or that there is zero loss in our waveguides.\n", + "\n", + "And finally the intensity of the the recombined light at the end of the MZI can be described like so:\n", + "\n", + "$$\n", + "I_{output} = \\frac{I_{input}}{4} \\lvert E_{o1} + E_{o2} \\lvert ^2 \n", + "$$" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "While a balanced MZI will not experience a phase shift due to a difference in path length, we can introduce a phasae shift by utilizing other methods. The thermo-optic effect describes the effect of heat on the phase of light. By heating up one of the waveguide in the MZI, we can control the phase shift of that waveguide and therefor the intensity of the output. This is a practical way to turn our otherwise static MZI in to a switch that we can control. " + "## Analysis of imblanced MZI's\n", + "\n", + "The equation below is the simplified version of the above expressions assuming no difference in the propogation constants of the two different waveguides and no loss.\n", + "\n", + "$$\n", + "I_{output} = \\frac{I_{input}}{2}(1 + cos(\\beta \\Delta L))\n", + "$$" ] }, { - "attachments": {}, - "cell_type": "markdown", + "cell_type": "code", + "execution_count": 4, "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[32m2024-01-09 22:59:50.499\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mgdsfactory.technology.layer_views\u001b[0m:\u001b[36m__init__\u001b[0m:\u001b[36m785\u001b[0m - \u001b[1mImporting LayerViews from YAML file: '/home/sequoia/git/Photonics-Bootcamp/env/lib/python3.11/site-packages/gdsfactory/generic_tech/layer_views.yaml'.\u001b[0m\n", + "\u001b[32m2024-01-09 22:59:50.508\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mgdsfactory.pdk\u001b[0m:\u001b[36mactivate\u001b[0m:\u001b[36m258\u001b[0m - \u001b[1m'generic' PDK is now active\u001b[0m\n" + ] + }, + { + "data": { + "image/png": "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0CHW2qhaE4DcrnMwGJzQ/SYVVFatWoX7779/3Pt8+OGHmDNnzmR+7aSsXr0aK1euTFwPBALw+Xzw+Xzwer2G/d1CFAqFsGvXLjQ2NsLtdme7OXlN0zQopeDz+WBN95kivb1yKSmRDyhsaABKS9P7N3KEoXUGpM49PVJrmw2orwcK9LVjeK0JQG7XWR8ROZFJBZU777wTy5YtG/c+s2bNmtDvqqurwzvvvDNkW2dnZ+K2sTidTjhHOUKxWq05908yO72mrG1mGFZrmw3QABzuBoocQLAfKODeR0Of0zYboCzJWocGgAI+gOL7R2bkap0n2t5JBZXq6mpUV1efVIOGa2lpwb333ovDhw+jpqYGALB+/Xp4vV7MnTs3LX+DiCBDD0cGAH8IsAAIDQJV5fIZQJReTifQ1c9aE6WRYXNU2tracOzYMbS1tSEej2Pbtm0AgFNPPRVutxuXX3455s6dixtvvBEPPPAA/H4/vv3tb2PFihWj9pgQ0UlSCqguBiqOzzOyc3Vaw7DWRGlnWFC555578POf/zxxXT+L54033sAll1wCm82Gl19+GbfeeitaWlpQWlqKpUuX4vvf/75RTSIqXA474Dl+AJBy1hwZgLUmSivDgsozzzyDZ555Ztz7zJgxA//93/9tVBOIiIgox+XWzBsiIiIqKAwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWoYFlf3792P58uVobm5GcXExTjnlFHz3u99FNBodcr/33nsPF198MVwuF3w+Hx544AGjmkREREQ5xm7UL/7oo4+gaRr+6Z/+Caeeeiref/993Hzzzejr68OPf/xjAEAgEMDll1+OxYsX44knnsD27dtx0003oby8HLfccotRTSMiIqIcYVhQueKKK3DFFVckrs+aNQs7d+7E448/nggqzz77LKLR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j9eTosutAS0iIiIqKAwqREREZFoMKjQmp9OJ7373u3A6ndluSt5jrTODdc4c1jozCqHOOT+ZloiIiPIXe1SIiIjItBhUiIiIyLQYVIiIiMi0GFSIiIjItBhUaEzr1q3DzJkz4XK5sHDhQrzzzjvZblJOW7t2Lc477zx4PB7U1NTgmmuuwc6dO4fcZ2BgACtWrMC0adPgdrtx3XXXobOzM0stzg/33XcfLBYLbr/99sQ21jl9Dh48iL/927/FtGnTUFxcjLPPPhtbtmxJ3K6Uwj333IP6+noUFxdj8eLF2LVrVxZbnHvi8Ti+853voLm5GcXFxTjllFPwgx/8YMhn5OR1nRXRKH75y18qh8OhnnrqKbVjxw518803q/LyctXZ2ZntpuWsJUuWqKefflq9//77atu2beov/uIvVFNTkwqFQon7fPWrX1U+n09t2LBBbdmyRV1wwQXqwgsvzGKrc9s777yjZs6cqebNm6e+/vWvJ7azzulx7NgxNWPGDLVs2TK1efNmtXfvXvXqq6+q3bt3J+5z3333qbKyMvXSSy+pP/3pT+rzn/+8am5uVv39/VlseW6599571bRp09TLL7+s9u3bp1544QXldrvVI488krhPPteZQYVGdf7556sVK1YkrsfjcdXQ0KDWrl2bxVbll8OHDysAauPGjUoppXp6elRRUZF64YUXEvf58MMPFQDV2tqarWbmrGAwqE477TS1fv169Wd/9meJoMI6p883v/lN9ZnPfGbM2zVNU3V1derBBx9MbOvp6VFOp1P927/9WyaamBeuuuoqddNNNw3Zdu2116obbrhBKZX/debQD40QjUaxdetWLF68OLHNarVi8eLFaG1tzWLL8ktvby8AoLKyEgCwdetWxGKxIXWfM2cOmpqaWPeTsGLFClx11VVD6gmwzun0n//5n1iwYAGuv/561NTU4NOf/jT++Z//OXH7vn374Pf7h9S6rKwMCxcuZK0n4cILL8SGDRvw8ccfAwD+9Kc/4fe//z2uvPJKAPlf55z/UEJKvyNHjiAej6O2tnbI9traWnz00UdZalV+0TQNt99+Oy666CKcddZZAAC/3w+Hw4Hy8vIh962trYXf789CK3PXL3/5S/zv//4v3n333RG3sc7ps3fvXjz++ONYuXIlvvWtb+Hdd9/F3//938PhcGDp0qWJeo72XsJaT9yqVasQCAQwZ84c2Gw2xONx3HvvvbjhhhsAIO/rzKBClAUrVqzA+++/j9///vfZbkreaW9vx9e//nWsX78eLpcr283Ja5qmYcGCBfjRj34EAPj0pz+N999/H0888QSWLl2a5dblj3//93/Hs88+i+eeew5nnnkmtm3bhttvvx0NDQ0FUWcO/dAIVVVVsNlsI86C6OzsRF1dXZZalT9uu+02vPzyy3jjjTfQ2NiY2F5XV4doNIqenp4h92fdJ2fr1q04fPgwzj33XNjtdtjtdmzcuBGPPvoo7HY7amtrWec0qa+vx9y5c4dsO+OMM9DW1gYAiXryvWRq7rrrLqxatQpf/OIXcfbZZ+PGG2/EHXfcgbVr1wLI/zozqNAIDocD8+fPx4YNGxLbNE3Dhg0b0NLSksWW5TalFG677Ta8+OKLeP3119Hc3Dzk9vnz56OoqGhI3Xfu3Im2tjbWfRIuu+wybN++Hdu2bUtcFixYgBtuuCHxPeucHhdddNGIU+w//vhjzJgxAwDQ3NyMurq6IbUOBALYvHkzaz0J4XAYVuvQ3bXNZoOmaQAKoM7Zns1L5vTLX/5SOZ1O9cwzz6gPPvhA3XLLLaq8vFz5/f5sNy1n3XrrraqsrEy9+eab6tChQ4lLOBxO3OerX/2qampqUq+//rrasmWLamlpUS0tLVlsdX5IPetHKdY5Xd555x1lt9vVvffeq3bt2qWeffZZVVJSon7xi18k7nPfffep8vJy9Zvf/Ea999576uqrr86b02YzZenSpWr69OmJ05N//etfq6qqKvWNb3wjcZ98rjODCo3pscceU01NTcrhcKjzzz9fbdq0KdtNymkARr08/fTTifv09/erv/u7v1MVFRWqpKRE/dVf/ZU6dOhQ9hqdJ4YHFdY5fX7729+qs846SzmdTjVnzhz1s5/9bMjtmqap73znO6q2tlY5nU512WWXqZ07d2aptbkpEAior3/966qpqUm5XC41a9Ysdffdd6tIJJK4Tz7X2aJUytJ2RERERCbCOSpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRaDCpERERkWgwqREREZFoMKkRERGRa/z8XTKrCES/eCAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "![Image of a thermo-optic switch](https://raw.githubusercontent.com/BYUCamachoLab/Photonics-Bootcamp/main/book/images/Notebook_Images/thermo_optic_switch.png)" + "import gdsfactory as gf\n", + "\n", + "PDK = gf.get_generic_pdk()\n", + "PDK.activate()\n", + "\n", + "c = gf.Component(\"my_component\")\n", + "mzi = c << gf.components.mzi(delta_length=15)\n", + "\n", + "c.plot_matplotlib()" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, - "source": [] + "source": [ + "### Quick check\n", + "\n", + "What is the intensity of the output light if the input light had an intensity of 0.75 mW and a refractive index through silicon of $n = 3.48$ when operating at a wavelength of 1450 nm? The shorter path has a length of 90 $\\mu \\text{m}$ and the longer path a length of 102 $\\mu \\text{m}$.\n", + "\n", + "
\n", + " Answer\n", + " 0.491 mW\n", + "
" + ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "Introducing a phase shift in this way will affect the propogation constant 'β' and since we are assuming that the path lengths are equal, we can modify our previous equation like this:" + "## Thermo-optic effect\n", + "\n", + "While a balanced MZI will not experience a phase shift due to a difference in path length, we can introduce a phasae shift by utilizing other methods. The thermo-optic effect describes the effect of heat on the phase of light. By heating up one of the waveguide in the MZI, we can control the phase shift of that waveguide and therefor the intensity of the output. This is a practical way to turn our otherwise static MZI in to a switch that we can control. " ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ - "$$\n", - "I_{output} = \\frac{I_{input}}{2}(1 + cos(\\Delta\\beta L))\n", - "$$" + "![Image of a thermo-optic switch](https://raw.githubusercontent.com/BYUCamachoLab/Photonics-Bootcamp/main/book/images/Notebook_Images/thermo_optic_switch.png)" ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ + "Introducing a phase shift in this way will affect the propogation constant 'β' and since we are assuming that the path lengths are equal, we can modify our previous equation like this:\n", + "\n", + "$$\n", + "I_{output} = \\frac{I_{input}}{2}(1 + cos(\\Delta\\beta L))\n", + "$$\n", + "\n", "### Quick check\n", "Assume that the lengths of the two paths are 100µm, the light has a wavelength of 1500nm and the ouptput was measured to be 0.9mW. What is the input intensity of the MZI if the heater introduced a 90° phase shift in the top waveguide?\n", "
\n", @@ -448,7 +730,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "env", "language": "python", "name": "python3" }, @@ -462,7 +744,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.3" + "version": "3.11.5" }, "orig_nbformat": 4 }, diff --git a/_sources/pages/setup.md b/_sources/pages/setup.md index d1c677e..1bec3aa 100644 --- a/_sources/pages/setup.md +++ b/_sources/pages/setup.md @@ -1,27 +1,42 @@ # Setting up the tools -Since we use a lot of python tools in this course, there are some things which you'd need to install. In short: - -1. You'd need to either have a Linux machine, a Mac, or a Windows machine with the Windows Subsystem for Linux (WSL) installed. -2. You'd need a Code Editor. The recommended code editor is VSCode, which you can set up [here](/pages/vscode.md). -3. You'd need Miniconda. Some of the tools are available through pip, while some are only available through Conda. Miniconda is a nice way to manage all these tools in a single place. -4. You'd need KLayout. This is a layout viewer, which we'll use to view the layouts we create. +Since we primarily use Python tools in this course, there are some things +you'll need to install. In short, you'll need: + +1. A Linux machine, a Mac, or a Windows machine with the + [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/about) + installed. +2. A code editor. The recommended code editor is + [Visual Studio Code](https://code.visualstudio.com/), (installation + instructions [here](/pages/vscode.md)). +3. Miniconda. Most of the tools are installable through the + [Python Package Index (PyPI)](https://pypi.org/), i.e. "pip" installable, + while some precompiled packages are only available through Conda + repositories. Miniconda, which also provides a Python installation and + virtual environments by default, is a nice way to manage all these tools + in a single place. +4. KLayout, a layout/GDS file viewer, which we'll use to view the circuits we + create. ## Install WSL -If you are using Windows, you'd have to install WSL. To install: -1. Open Command Prompt as Administrator -2. Type `wsl --install` and press Enter -3. Restart your computer -4. Click on the Start menu and type "Ubuntu" and press Enter -5. Set up your username and password +If you are using Windows, you'll need to install {term}`WSL``. This can be +easily installed through the Windows store (recommended), or via the command +line: + +1. Open Command Prompt as Administrator. +2. Run the command ``wsl --install``. +3. Restart your computer. +4. From the Start menu, run Ubuntu. +5. On the first run, set up a new user account on the Linux machinen (username + and password, which can be different from your Windows machine). ## Install VSCode You now need to install VSCode. Refer to the chapter on VSCode [here](/pages/vscode.md), which explains what VSCode is and how to install it. Open VSCode. You can setup a theme and other things. If you are using WSL, make sure to [open VSCode in your WSL environment](https://code.visualstudio.com/docs/remote/wsl#_open-a-remote-folder-or-workspace). You can check this by checking the green box in the bottom left-hand corner. If VSCode is connected to WSL it will say "WSL" in this box. If it doesn't then click the green box. A menu will pop up. Click the option "Connect to WSL" and VSCode will now be connected to WSL. -## Setup Script + \ No newline at end of file diff --git a/_sources/pages/vscode.md b/_sources/pages/vscode.md index 14567d5..b2dcaa9 100644 --- a/_sources/pages/vscode.md +++ b/_sources/pages/vscode.md @@ -3,7 +3,7 @@ While you can write computer code using any text editor, some text editors have special features that make writing code easier. In this course, we will be using [Visual Studio Code](https://code.visualstudio.com) (also known as -vscode), a popular open-source text editor by Microsoft that is desiged +{term}`vscode`), a popular open-source text editor by Microsoft that is desiged specifically for writing code. It boasts a healthy set of extensions that can provide integrated development environment (IDE)-like capabilities in a much lighter program. diff --git a/genindex.html b/genindex.html index 3b6a78a..e01fda4 100644 --- a/genindex.html +++ b/genindex.html @@ -265,6 +265,7 @@

Index

|
P | R | S + | V | W

C

@@ -369,6 +370,13 @@

S

+

V

+ + +

W

    diff --git a/objects.inv b/objects.inv index c65b443d5d2f5b9bf46d87be101d532e907690d4..dedd1d488d640d332baddf6386a839ed22b36077 100644 GIT binary patch delta 1294 zcmV+p1@Zcu3!n>-c7IKe+cpq}@A?%4nnQX}gI{6mY zQr>!heTQF`WYJz32$0pxypO06`I7SL@rGzq{$fBiB>$Oov;zIE5>jib4nNhV5kJ^m z{)Xh)pR2E{<<%co8?xg9mMO40chz}ze}B9DF6-6j<;9zaD}Tt}H+Rd68O;q<6&NQG zbPHn8Jkvc?Jug8QhAXdpLv9o|oKZn&TM5t^lTAmNA&o3iyy(tBl6wh`qBmR0o|X?A zhs3Lvs2&^7YG6;it(K|1GPlb7sGI=x)gX<49dEgTyyUwbC}VL4jQ5CejE#bfE>y1%YOm6L;S*574y2F=$5Q&X=KZpCLg3Uj5ZxAk&Nw>4Va}5 zW&0-R0aV`5F10RPvd{*nY+Mv~Hgr$BAauEFq#GLv;yyixXMK(Mn-yfZm=dqLJLECp z`*kl%yK4MP_gq^3E3r|9>~O;I7ks6%9e4YDl}G;WGi01OqW2VMa#A z^0d{EiJo#qE0!QB7KEqX9%WEgaA7Euv`77cq0^hAixx%}4L~<%jFO&U4+BP$dkjQ9 zHwA6W0{^f3Z2~dL2MRajEe7o$f1mp8kJ;3F5|FVgk&odj%Dm}bXvJwoz)T%JHUw9$ zLQi1nRX@(g?P7=o#1lG`?9E&q5?=WE&Rt~D%(fB-gu5AbT&9-WX@#fU9i!x{jb<}% zOp&I>iF3?uw%7|(194g6vH@n_znup-9p3QDbX=( zGe`TACU5Z&spI@;UU-7?!UF`iz5E}j(a05u_UOdfi3~YIuHKj zFVe)WeHGS)H?jWW`oF&YLjLMox8w(?KWr5x>^Xzv0H+lm`Msuw;LIX1O+xy81RqSD znkPOU#^wGF0!0t*P{NAg6J(-1DF`;!bV}}{2Rzb4?n>F*+|4mXhE$}3=@a{z3kNkA=l)n`AJ~k%Q`fYE zS5ANPnt-+O)X6V8NCFiy0Wfu%y=K-IXCfc>l5br1XfPYomuN^g7|%{WSm%Ht7v|yd zdM0+$1g%l*ldtGZf8hz%oe0mcg^1s)m%y&-cxVqI&o6lj-AO^!**AEmFf6E1Bujn$ zU*yGK2XIF=RQOHJp8FnQCt!R~I22ojC;EC$iy6=PJOALW>{Ci{sARkR)2)-rTv0tU z^kv$hi$4Qc9m0l>tyjLnyn#(W#_-$s>K|i<4m+b(uv64uM3&IV46nnl5sMq5!G3~I zN8n@8M_hi5j7)RE@zW*8f4tSbuzt7vPNSv1sQ#JL=S2;Q&2d`|p2X;|D&J@S1Fzp+ ExaN(0-T(jq delta 1289 zcmV+k1@`)&3!4j&c7I)O+cp%2@AWGPtQXydR_t~dR;=;XW=$F+E?R6i0! zDQC{F-{F@fS+pYq1sa`m-bWNaUXort-VkldUks>*&|x7ri-1axcMF^kz%h)AD9x zlX%q<)nmuA8rTzWt7U4h%&js%DkngFHAo|1$6Ib7FZpf<3R(ul@CKh{LwUQ5I78%P zM4nZp-eIpvb$?jiQ5CejE#bfE@W!YsCb#y_tWwn2zF@NN1gK@N2%AU20vpWT6dC*|;d~Z0MeLLFjVVNH;bT#6Eit&-xniH!H|+F(rn&JLECp z`|DnocGdVn_gq^3E3u;r+2MraFF2&K9ryP6Dv$i#XUI5nMDHoiE4s zsNLgYbB2)Q&B{FX*H)r|7y-YXBJ~B%s7;gJVhYM+7llNS`G=q>xdLWKl8PcM?*t%K z@*de%b z6?y_ouljK|ZWlu&AfC{fWN+r`knqCKckUsJX10~sAl%Kc$7O1{omP0t-7!kO+GsZO z#uRC4oH)nqW{Z7cY9KC4TsFY$_}h7a(_s!9C4-~dsf3dR=StK!JSD_ve^B%Soe~|x zcIIe*(&Q~3B6XY}%?nRZUU-1uwwM0{H5$1h(|s;>itL~*wCq*NeMU(Se82#S)pBQ^ zse&WO9r+3_Q=FKK7=JvxefKa@pWj#J`^m$&-Yy%C?x-{nf949*j%v;KaB*ju*Z4QA zeSA2e#2)L)rxXUGL8v4Hf2~7H$kX7LT}?F8RT$9s$pxGGNgjf<()IgU2W1RClJ^~TRf7V15Xxzlma1x(* zQsBvt7W#M$29{>jVBcCnM->h0eMU@{dG6+zB109Dci!+grd&xJhdo-Ah=}R=E8;obC7uGpo$c1@$ ze4dHjG(l?=`{WRvet@I)n|EtygYg-oU1pF}(X;{bS6~!_KG`>=gBnKP5CW!{_j8#NrOoV6WiQ z7Wi275tm;hBhy@Pyt?H0kGHxP*6)_T>6z2#MIRhL)@>blvZBK(d!PLeY&cFJllFh- diff --git a/pages/git_and_github.html b/pages/git_and_github.html index be6eb23..9a533fa 100644 --- a/pages/git_and_github.html +++ b/pages/git_and_github.html @@ -302,7 +302,7 @@

    Git (and GitHub)

    While you can install Git for Windows, because the other software packages used in this course are Mac- or Linux-only, you -will be forced to use WSL to complete this course on Windows. Still, we’ll +will be forced to use git via WSL to complete this course. Still, we’ll provide a download link for git on Windows.

    @@ -332,12 +332,12 @@

    Git (and GitHub)GitHub is the most well known hosting service, and it +provides free accounts (and free private repositories) to all users. This +bootcamp, for example, is hosted on GitHub, along with many of the most popular +open-source Python projects (including numpy, scipy, and matplotlib). If you +want to version control your code, we recommend creating an account on GitHub +and keeping your source code there.

    + @@ -279,6 +282,14 @@

    KLayout

    +
    +

    Contents

    +
    +
    @@ -291,6 +302,17 @@

    KLayoutsource)

    KLayout is a free and open-source software for layout design and verification. It’s most basic use case is as a layout viewer (it can read and display GDS files, the most common format for laying out photonic chips), but it is a powerful tool for designing photonic devices and integrated circuits as well. It has features for DRC, viewing chip cross-sections, tracing nets (to help you detect shorts), and more, while also being scriptable in several languages including Ruby and Python. KLayout is available for Windows, Mac, and Linux. You can download KLayout here.

    +
    +

    klive#

    +

    klive is a small extension to KLayout that allows automatic loading for GDS +files when some external program sends a json request with the gds path to a +klive server, running in the background. This essentially allows for +“hot-reloading” of your layouts within KLayout each time you rerun your code.

    +

    Once KLayout is installed, you can install klive from within KLayout’s package +manager, by going to Tools > Manage Packages > Install New Packages. Then, +search for klive and double click it to select it, then click “Apply”.

    +

    klive installation screenshot

    +