From bf97fc31cea245f6f5f73a8b3ee96e66c1d03b84 Mon Sep 17 00:00:00 2001 From: Morten Hjorth-Jensen Date: Tue, 23 Aug 2022 23:08:28 +0200 Subject: [PATCH] update --- .../_build/.doctrees/environment.pickle | Bin 202263 -> 170375 bytes .../_build/.doctrees/statistics.doctree | Bin 306085 -> 237656 bytes .../_build/html/_images/statistics_181_0.png | Bin 0 -> 5097 bytes .../_build/html/_images/statistics_188_1.png | Bin 0 -> 9758 bytes .../_build/html/_images/statistics_32_0.png | Bin 0 -> 18480 bytes .../_build/html/_sources/statistics.ipynb | 1772 ++++++++-------- doc/LectureNotes/_build/html/searchindex.js | 2 +- doc/LectureNotes/_build/html/statistics.html | 1484 ++----------- .../_build/jupyter_execute/statistics.ipynb | 1843 ++++++++--------- .../_build/jupyter_execute/statistics.py | 698 +------ .../jupyter_execute/statistics_181_0.png | Bin 0 -> 5097 bytes .../jupyter_execute/statistics_188_1.png | Bin 0 -> 9758 bytes .../jupyter_execute/statistics_32_0.png | Bin 0 -> 18480 bytes doc/LectureNotes/gaussian.pdf | Bin 229869 -> 229869 bytes doc/LectureNotes/statistics.ipynb | 380 ++-- 15 files changed, 2011 insertions(+), 4168 deletions(-) create mode 100644 doc/LectureNotes/_build/html/_images/statistics_181_0.png create mode 100644 doc/LectureNotes/_build/html/_images/statistics_188_1.png create mode 100644 doc/LectureNotes/_build/html/_images/statistics_32_0.png create mode 100644 doc/LectureNotes/_build/jupyter_execute/statistics_181_0.png create mode 100644 doc/LectureNotes/_build/jupyter_execute/statistics_188_1.png create mode 100644 doc/LectureNotes/_build/jupyter_execute/statistics_32_0.png diff --git a/doc/LectureNotes/_build/.doctrees/environment.pickle b/doc/LectureNotes/_build/.doctrees/environment.pickle index 6a3912e3b567ee067914ff6f953a2d4e45a268f9..adb406d0a338ea1d49a1ece7502b0be8696d6a5c 100644 GIT binary patch literal 170375 zcmd?S378~DaWAf8?{oG(bd|Ox?X0vltGy(x4#ey!Y4&1gb)ajg>8_dX-k$DOA3Hk| z!eARLnZ^Rs7=yuJ49|WxU~ItndOq;Yd)Q!e+Sq>PZ~x)>!p7hWAMY0#Rh3zl)iag3 z)BF5c`abQ)}Jzr|ns#AWo)$I%% zY?ms9Bg&&UcXzy|`)qfxbEQ|WcTaYf6>9lb!}klNMz{08t_Pcbqq%FUSoW(;zq;$J z@8v;ta@Ps*(?9NejVk?(w{{)(^R0HnKUr(}&0S;T^rc-x0l8+kv#8m~3#tdKse(wp zR-GtKb~`JB=7oPRI>ZH0dzRMD`;A7a;5S9{mQ=jzWZRqc(Z*HvnMsmIbFA5#srba2 zkX5&{tk{~WjJ1mX6rQf(r(@%_+PU!AT3KPNR&SMRRVKf>2}$IOW8+?9tmR*TsMn2( zCr+zaYC1$>XlSV0Syl1cRjSu+wZeDTRv|I*ky5qgHzvG1KE60#@tVz29xWX&RSSNj z*d8BiH!9uE`eLh9Z{E3U*VGJ`4AmMC$f|O?K7-ezdY5%O3(=Bszx#Y=X}(tR`2FIx zc4tN1YZb>@wK1U6>=w6mRyF*3tyyZ-8Z-Qn2g8r#Yg6@laR!_;hbBucP#-GQGQ&^O z+C}VN7@}VxQ{_YB4G*G#^ryTg7>CFvYqiOWKju}v%1jGi94i%wyA=>w!P#57K?Kb5Zt}Xdr3DWH&KJw8$^Gg zSex?4>QIicQWav!cc1HQXgB>am01B8M7f>{&^=oG0t1QXYv_5Y*=+mG0Nw8M?aoG_ zFU?xJk@qX5>bbFIdt#z=fxfz^+MXg+ey+2*?p6ItbIdCgNZDFVw6;E$Z#Ic+vt6$@ z{AP1(n!8%F`vjUWHPdXNZ%uh6D4-YWZK*}teDiR3vEMN5V=jt`+IE=y4p~ItNqtG|- zyYy_aJvH7ODvX02wi{i)b2UH*6%XC9mLCggPeH=4HxSGU!Nr7kz628>v_w1@_nJO+ z69{-UbeFq%U?j-QEi2B{Yv>k`2#72Lsy?Y9tOTJ&7*4e-E%b!^81NbQ8}zm3IvYvg zV}8{ehkg=g)u!nC)WqfJT(#=hgby+>A%$9{;x(qw!_bQf^U}l&5No!_o1oh!n*q7C zyym$|so6qH2Lx>}J=TPbroakOMXxATS`hI9Qf>5Qq2Z{$(ZAs51(`9gQmIXk!OYbf zLRVx7>9IdmM-vAi`dYhHZ?|CWU`GJ;f@ZNcjlL+Ww@On!Ds@M$?W_!X&{!TO-X}S3 z37>F%e=M|Dz;OZ82Rv?(qynTACFrcEc(93(-ejo?2`#A?Cd892_cEo+j`8#7h&Kg& zGFRQsLF;j27wOQ@3=B}av#{y6+G30j_pRC_j8M?8qd|bWLHKO30IUjiT@i|g z>~oVl>$GRrN$V2S$tl7EqaLF5*X&YTT*4}c*1yeR{3@K1sE#ECcuFh8&(NB7<;r*JSr=dR`QS(4oAX<5pKe$ zb(WuMz*6{y!=-!+t=e%0_GrOS1Jdg!c$SM@y4K;?cqunOg|;Ed3OZmgQ>& z-yN^i@{r52<1nDG&s5S@Oa>eom~jtAb5lxx8}jNUd}S1sPM}WYFfL?ohz5y;=!K11 zxA@;WOAgoaZQ(nMdc_Z%gl)$2#b;~zvv8C7^+A5PA9h!00vYo{8~nev`DSYjwwqABLwczVxxq zK(pnwsPXX1#ONB*T!8_{t4t~n{m#KN{`rzW?bIfm(dad28qS<^#&3F4a26oLvwpr< zEjdS~X`BUKIQq=OJO6LO-ZEXS;4wC@bx{ zU3u(x+{1ppB)&u{(cI}A!DMNQRQ7}q=c>RGMPC-$I_Ed

AE31MsTIKL$ujf#2DD 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 WoR}B*a{-^WapIh>B=0T_Ec_q1O+3E< literal 202263 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 z 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 gVkJ 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

1u-(B%wQ7 zmwV>^LpsmKrjNL zjZRzJ&i9cL%^*Mq5jC3NH&G|;?NKUS+Gb=1V0dtPPn(X3WZk2^J*;KKnHddU7=h2$ zBV)u+DCO*%yMA7yRe~X~X>Z0S(;>kqWEQ#eLR@Sp3WACdd&60zJAiVPZ4FJUdW)n4 zSr81UD$>n0)Id0U&rveSye{$;(OYy>`#|i_$C#y;3`$fx{ zra@tDz5XQjZPIt*f#KwN9bB==bX5!%OyWXrX+*>me3MfXnBZO=Rttg)D#7oE^Hq!~ z{DNk={wVjWoY}=YBb=IU&1JW{^A}Cq>vw`4W2nvkT4~191wGtbGjj*I0+nzV_LUA_38qRPxO`{nBz7yMPjy&L@f-2W-=nQ?&9I=E)vDAE>^o#W_Dw~^o)!m`-Dx56@NO0!rCc1SQk0&LMB8{uytpL zgTXvb>SLQoxCu>(UeKS)6uF--x1FRu9ZJ}44Nl2M)S|@*z=R^62#OUV#pyb718iwU z(I5;*hdr@M8g!4N#a^4(=p&DTI;GelAl7Pa!p$CJ*sKcDsokG7ftR`I7XSov#&tnYj>;T8|P1;*Vqx#(?B*9?%rT39M1y zEb_eIEu>*Dbx9$)p^!(TzT4yX3rM6?*A^l3MI+5KM2`xHMUxv#Zf0t?VcQT%X%D8| z@l-R|p03d|U7r}$Ce+aixCykRtb(}$)vHcfhcFTsrm)hQ=%`1OoK3mq)LY0Lf@f;miISZnCxlPR| ze!fqG6rb33x&oJ=U9T@1JPf>eMwp9c7!e9Tf;zg+zB){Xaj(bA zDn3qo9;@TTDo1FIYYsY&hq_MEt#U)7XeiXEp39JAvO;b-7)wF|B~Ns?QC+E^tYUv2uZyc`nae$bBBwGHdMl4Re!f3h#fVlR@I3*nub$~YVVn; zG4PwB-%9cTI+o-hkXg=Er(HUraaxi;>b z!Frfdz@WI}l>_E=$bSmHU(;8k{;nR)Xsn4zMH=^eB9tFDnk?JMC*95jok$kFb5*R4 zL|dqlt#VMgDhfPb)_>KZlHcXFT)Z8d6GISbX;bnXzUOytBm&Qq8w4arU*`BpUEizn zDvZZOn=M=oBsQjp!UDj{sm*x9KVI@x zbm=$ZLC>JO#6Bl%TVNzXU$@$2&Zm&`&J(`G&4~OUy(1+d+30d1B7A z)+jAWGijz7#=g_3Qix}6fkdC0VbE2UkeSguJD3GDv3|331g8}incM&XK z(9>{F#C?m^6=F|CkvWykmACCesfJ82y(UyeqRARn+gTKEux5Mh10B?pOwhW9jx*H` zw*)&U;ZzC2D|X8VBLvb0@>| zk(U=)n(eNNCE#ttlxt2@v#wJ3H{WrnpN z^+6)3yzqOf)R@gNY}c4BJuQqEwfQpBtT60Kq`gC?7T(VTYm;-c{Yu%I`$l(UOIxn* zt*cy^4F=A@Q0BVGky9vN<|ZoJF5{JPJZqs$3K5=88M_ZsB4PA=l5D+EC+y+l)mR!k zP9W^}Aqg@OpV8KmYH!T_25VR$85SEz^{8#eKsljn?hs|)qr07|?zf3u*0IKG6bfjo z+i<4&;9K_l0g`e^&hjoY?9w#68A8rR!VH(2wgMu3J)Y0kJ1OzUg3tJ)zP?Sh6`S|h zIwT#yK}3cS`-h4y&&2hq==lsjOnOO(Kq-pSAf481AhWAM2cirL5497M0o1V0>)n=T z>ktCu+Jgwu9Iu5!<$K0OG-!v#T$`GMRkkM9P^HO0Emo(R?As6oTtFZ(872YMpG_gR zBt*-_dI5Wf?5@JAMq%wv-MqDR$OidwVE$h5MN*%hHQ$nfkGs|qOxx@s!wE3RR8 z$_yg0)^soJ?=zt_CPqrD55%y+p}2Uuse_GBqcCRzB?U;5m?0Gz){LR2xxX7Zi=4;l zMK%w+K-)czG!TzPAxkvU4YoBHjC@b6N}j+5V`?kuPOt53Xy5T!-AU&BM$0qPMpuwT zorbN}o+d(ZDq2HS-;8SW)jCJlmJiho6G9b&Fl^g_;A7ynLH(z)s3YCkWQ9!Wrrhtf zwh*d=w?(qHn`7c&XV+&w>_-kUI|j|10N0#JV}TIzF5dBE9AQmiG8c5AH)uCGqn0)J zxnDZ&ZBz*z9$pUEE}*~(t>G+W*W9_LudChImvTdBwOUmJBIOE0Z>-^fr!dPK3_U+t zHU)hw#&}~@@GlAITEXx;D8!C>ao)Ysrzd46u#crcF>Et`8`M~x=^Z#M* z-Gd#;&igPfx!ff$mm+sbEoD&@vBMEHGnl!J?nVO*kwX*j_xlYFcZ5ebfCkV2y73;5 ztdb&Iwr-+W8doVUS+SUs%4H|6NS3WQvg3*><;YSJmsNIb$tAnOIQqv)r6MaTxuUr8 zI}P*$xP5W&oqJcJQk<%pLBG!V&Ue0ZzVCcbcs-VfS=H;Q5kCoK1b=EMwdd-jmMX^K zH=|~&jcz<0%5mzZ=Up_IT*SMmCss~Zv_G8+LwGx9D?_e5b5q!?=OLD><Aw~ixGHaX9UIcl+p1oD-9*^`Zy+VOBb12Mm*2J`tS_LF?RHz=m-yS1Rq?d@ZbFZ8qa6AreT;*NFia{@lYvnXS-p zW~nrKb2(T-^hGnbtdpRaFeS`~F>lDp%k(0g~_OH-aF#5vOM0z;G(6bhEhM8 zl*$uo=AKZ99+7-1*OFP;nS;{RC)2`QndgL{z{<@pF^N)t7orujn<$2%A*>(<{GLI-AiYrIjtJZSjp{Ra^>Ntb*c^10N(qza4;oq!ck5=h?wc%RA zRg8?WD%KXW603OGR@LqE(G90F8_$huuz0a6O7yEffvra*A60OvDHYm_aLXNE!hMz9 zEQ7@8K)VF0UYW!1&)-?sxmqF-hm9l+y>hRv)|Q@niRlubMOV~c_l_p>My)bQcH4YA zkg4^2UU-F$6@Ji*!*;W1EadnQpH+zuVnnI58?@RYzK}$zKZaHpAmA6TBlU1(~Xv^64`{3g;vzLuJ;GN-XKEs&^7qD z_W0TaUQ46i*b@!#-3A*gjiqoju&ESkHHCI}K>To5lpqjL{6s4kM#NTgkg4W;;!s3@7JzvRd9BRDICq}I&W(sc5n{J6FZMipQuxt?^Z zh1F)Lh!anHk<3C7lFkPMqex?P}HiQ*j1U z{erBaI>q)^l{G6!HG0);IlY^i=%$KuD3*kI-IFRQ?(uZts)_l0j2*}5a?u-^EvPmX z%WzKBOSghj*3He>WUub*^jLADI8y;ns}srPnt^mAx(fOuL`Nnn!Bwc;p{H~kX6h0f z4L6tZR=fqRI;@L=O|h->gt_i#c{KwcEv%B0>~Xx*ac1d?RL+bZ0{MVH3$!l?s)M zhD8WB%RDn5k827{3!^mebPluC#Uh-SymjZg%hYOoVwj{Fkw`wi^wy{~0{*;9u{z|k zjWyRSY=o>lbbAJ#N!=eyKp!tt5Qtc3qmx{ug5wf`qoe?WT1&%K$F=BmGxai-EyYJO zP?6x+*q+B*6=$(DqoPYh@h$<91KsebQQlUDQ%;)tS;_;}+S`k}t=Y z=+vcVC(1(YCVCn8#i#v6xCeSi&RJCnY>LgzROBo0;ar7^i{Z)}@?-^Pzn+Ir4kJrp zCdRs)fz7I|f`zUJBlsNF!nvwIt6K+DN}SbNAi-6A0UzOTT&gc!{mO^|%PFzoMKxG= zdhR~wgZeiXoO)wYfbb+A{A_uTl6Cso48=qXLR)oD<#l`5fpa|inZVmyDMPU>EJlN2 zq1G8v>tfACXIe$RlNHXfvob1`SoTX52a3IRZ{l0GAPo_fv9gi8dGw;(l zuFYwGJLlxr>ZH5j<5^|U*-SU1MVbb&#R>^fhUv2!&UZu^B4?)}MRQtQLsu!)=ZJdA z;)IxAO@^|nwu_63zsW#dy;52WH5)|y>Sj4C2=xxN=G`HB)%LkkaC+z5u}IyuEQu5& z)N`Hr&;?yi$sftL)AdF>&HHM8e|tz%{?&r=#FS39n)W11YmXFzPZ+ESa8Dcd1O6mm z!9tP|6yYr{GOG?7%!%>{X41ku7U;EO`OGq&8m^hqROz~z!3=)Un{d$Im`t0K9&DG< zEUXQiTC~%Ox*$IY4Fsi+J;7dk&Otm{FGKYjVkQEx2X)}?yR3xOSbq+Ep|_5mv;nE&T=JE%4HCJsbm&GW~uZM0a@-d4OZnF(;&+ZmddQy&O?#XnmHAvR1tE~O?2sB zWLh34He^kgUtZ5VpkT2^x5Y}?J*~yk@U#rIhiW^QUkf9l)^0Q5k~8RcPocDTmLT(} zQ7MG6M5!(U_u3n$EJtD~@2DmQ%WLN*C-{(4VCr?cnRtI(-sHH5l5TXthTNWDgY!k^ zFtm9<`-PR8gZ|6gp!}PP>SJTIZbRv2)+#^mFib2RSMt>{%*<>A&X~<;VuM-BBxZTZ zH=l=N%5dH3jBAy`pwno2sCF}o@Mh83>@?U?cHtDq^E#ELE3Vjl68F$As3%SqY^*btQ>?6pC3ciW^eQDR=wfFu3Pqg$NRR0$<&824Wdi+h z0cQL~)Y%eQSQwUUzr6^Ig>rUCv&8SZ&1V*^c`)s%ig^M4)#-IB8;m#;MQ0*ecd`R! zH0ybN?m)8Xk|mBx$Gl!wVC`vlieZRNqXzt4g%MZqE!7@;QA6=!2r}Ei-6%vlFuiVE zG}mshu=Sz{UprD{!7vg1iMnM^=SIif`8f?XF>Me>sftYSJ5 zEB342G1u+xJDNbsu&~Gl|#7B0S7ll}^wvI+%B`wo!znY{sQD569 z6kHM4QdzRjNN!pP)#vG9E|P$+(xxWHDGVaC8%F#d+_LP1w=*y4NP#}5SiC|<3Jzh2@EIn&V zEHQE^0GAvw-wl@9g;5GNkpj3xJUZ^JT&$ zRKX!8*Ju+*Dp!S{<#N%NjnAXgQGErgM+gitjhfU9svWT(R(mnWPh2KjUh417W$q&K58Vu;OZiD6ncOvkWzyf=?I*a!w{4Z6Ta+ zHR2^We z(T#u*X&LAHb}5Uj9yNlOczz7uIgU{mVq?z8^>lJW@q-S>(vx+XoAq6hV!NKDs9w$K z3yPpX_hOOo4(T;~8pWB%yI50Mr(6=@r&|m3=EY>(19*d7FXhd$oRf|46OnTDYYVyS zb+=rwmFMzGi=(n)#^({lo-*9j3WC=|t-YR*QZF>BRDV7wO%}OjChwGLLFbgj4Z3FT zO*stjtY(FW{%q;2OCfKilk`>^$qaP$jT@YrzVQn)Mk->oURTpANUE+og4DNG51QoV6{@Nld`u%YXV&#%OxpIHHfm1^= z?ry<1n(x$D7NJ|c>^#vEQ!^?u3L+>+^>jipIag1OX*j<0a=GDD*cwUP*sY9Zg~>9FO@ne~Ql(OkqjQzjI#~4iD(PS$PK74RhOe29 z`%@`*DFeO3I383}u;fJPDHCF69-Jh)jS=Bl@GR!3lw58#JyKSL+M8qIRfMWn-K!?@ zD7d_Qtr_prEUQdIY*`ML6U9sna#uNfxx^R-s zC3`dHe2Ok%4VJpyb$&V*8_l*i6)dj#VJ%%Ndy_jJB?V{Q=*-#4(=B%9EcQs`>?Bc5 zcLGg%nGuqkklM}{lTlAftuf_J*;#i(_ltPKS|~D@)P{*T8;7%-mt9u}9-$LT0X6j{ z#MIglPHn+z}> zH)1Np`hBg=Y|P6T}D7sqTnP`RI8Zu?tbgCC-GHcT)FFm`=tGZIWCn zhW$b|98rBS-ZkmCq1r?il~O%S)+ls5GR3H)DnFkJ0yFJHOcaY7d0m;g+{037RFdSv zypgGuVN_Z4+nY^|uOJio}YykC+X6qFp-4E$J4`+z|=)}DJeBR8xGb& zp->fGH^~+^7p49zAtx&pF;Ju2LHNBUD!F81!v}{$KAsaNfi4IC2RVdD?_?n5ZA`>k zJ2#R>uu_NPut zBbT}>QEW9Ag?No=_9dS8LxLUi&T6R$B|5mH#IRL_N=%*k7>VDB#3Jii2Z>n|M@6>&aHbz)*D>2bnG5ovg!zIQi^r9pSu?{4Io#v|6mq_yuo{AXA66c zGf_hLF#HI`O$rB_UL)*GM-dM+0xo0ytgpuo<*B$Bw(yj^%yhLX*hh&)P=3-g7I2rVfk_u-flAA6XbIxqGUr4{Gmasw&t zN{CcQq`WS;(uhvyGPWs->-CynyTaMQs8NfC)M_r%Zp9aiu9TawO<|equH2C2ovMgT zAT^Pz4`(Gh=owE6oq#iw8w7-b?xINb zHathZO%@XgqOlx9+;eFb&yL*wcBa!ohNrS;J}y@>b#YS2=W2^_ zx8(D>5@DB^$;Boz>uh>Ua~7PI&(Ft*4?_Nd$V3rmUZ%}^7P$t+O1X~PGjGbyh?1b! z@me<4%~SAG>TYs5I7%mFr5s&N^WNG#G?-3jUDvv?fjyvDN-SX?=&%h0=`r4BnSrHz zBZ%!yyzb2~Ay+g|szoZfTD9L<^^jwM#IBVgSsTLeFYoThdy74-tCREP3 zrYBx?I%(SN!(T2Ci*LHb`FkbA)O8CXX3@E`luR;6R56eez1)7fQS3L|j1rjX=NYU%Ju@u`m~rHpl66PjmTR zbi^&{nO3>l38xlfIGW4l^K2{}tHr_*M1fQ?%yQYFxKX1Mqy}l9la^OGG7lW$AJ&K) z-&CpYLhKaFu(dV@OlPIBCv3G8Q(wvLRu-kqId6#BFlx+OTLs;tQocmH^5GFY(_1XR z+~jZ~7{RHcF)D#~zyoK5LCpKBrKo1Y&BdZl^Glf<*M;E7w`gsu%kroYU#N+}YUx~0 zCNRAEQ(mrA$<4e9Pc_7Jb~%X-aT;Qm@@z6?kcDH^W-=Zm{lV#6Saq-nT%8$g)I5n( z@~>LbA}_d$olMRdb;WSH2+@=$-l#=}twMDcOF4sr;GH@lF>MgO=c|=*u;!qjDK>^l zewl40lRR54HhlbGoJy9YaRTNeagz>l8LzY9nnp)%Q7Ui3)XF{Vh+Jk~6B{$JwQvn5 z8y}zTIw=Ib;qbxdJn|qyVmb>{QJJTDb%Z;l7K$5rC7PLxr~o$S+*uG^5z)8lRlUw} zXyh!)tvMZ2Je{O#F&{_@JHtz>IyBhR!2pZE4qh zI+F!OxBC4lvJ<6a8*!SXyu%>BrpAoOb5##jpAS+j33E>MyMsU{*pGXQ6&E~EdN|`Z zISw9ugE=(j#nx~_hhYnsvN?7}t%XpnqmHwsuo@Y1ak>J?AZae!g4im+LngS`tX2tV zeJb3z)G1|iFt9MgU?sj@1xo2YwQ>5KF~sV}TI{B^Sgiv2_9&i+I=%H}YSN;)XluYP zX2d<0${^5QoX#dptz2%5Np_GmgteG&kr=N%=`zwatUN-t#$(xa=%JIXC1KljDKy8e zQpKrIkr#^^G7Lo)eUaLPBk+gaU@MRi5=n(piyOt)0BT z3V8!(g$|z|CrW+KEDIA|wcqPtFAk{Lm?Xy|976i~(0;OgWG#!PW1~#m8wd~(!&0&~ zT(0WXoVQvJv%Y0~=%bu-xEP4?gkz~BLkZ4JhmLeMX{O1n_(;nOP5W?Atuek4yguQ} z4F~P+XtkUn^m$oC@MT6Cu*qmh%tAVW9NI!kpL7XPE(HkKDNR>7roHSm#00&Sk#pjw z*mOFP+w=nrTp{2($Yut^MLplo!^I>lp%w2cB2d|RDwoS;)0h))2fn8@gl+Mi43}+g zTAt>5l1On0-jh>SaCqO;%5-B;Qksoi#@#8^lk zOAx)ITyY*Aw$q}TEGo>I#dE=CHZKM0p(YdY`l-ManZw)OxUaGzP8HSG za@~mJgcPfETCF*gR;rsR!_ViL%1j1x;Q5}**D0ivjDPCvv^SlqTx-*n3GJ!K(7R^4 z#a4z}aJ^YmO}Da;e&^J3mK^$-W}#ViIqMx9CA=G7X3^t0I2nVHq$_2Wozh|mdwsCs zX*c}C5fk!{lV!MSc9&vi+-g%)GCTu~OQ`n@EjTN#&NJuqTCFZ3SF)gbIdo2$5B3#Bv?f`CDUanPE$FWEh3(J$5 z1w4&da+OKON2#Tt&J?7ctE+?jd|j%oShGD zm7!qb5)mpBhcGyAtl0$Yk`m4P<#cu7jl&m8MeM$P_D>k#PZ>`z%KaUAXnhwiw_cNi^8bcS+z4`xR4`V zN{U-2Waz!2jKT3>)M1v${G+C;qiVxT4<%1pZTd-Xb#~ft_p{ANz?I)ro3Uz!g__$5 zM`R|zE}@c`&((Y#;dAWB%|^Y>VqT$g<7A!9R|k|jN~a>MUmALHnV}~Z8v5L;(PBkI znp%yN)g~BC*VmieWFe}&RIFAD4KI_)H?jk@lJisL5L~ZQg42gUu4328C+1aXs%oQ= zoRwqgHdPV%F_PlM3!(g~2=@{Gx^W7AWO)=&y zINLob66%MzRkY}9#G>(*-@TCsnSttFOcr6@nO*mL19ru@NlNukV7o)()EhD^UK?R3iSzg5FYNYIw z5DmLYkiQdFp*D$ummQTxQr|s7-wAI}sQF#1QI5{lWzV#f;8~%SL-N;L&mD$Ci$68n zcyn!MXTZCcDKFMS*Bz4Fjlfcv(L8d(M!PC#BN%6LT^^Z5Ww&pXZ#sjEepnc=aun_< zeAo@Y_)@8u%GaZV04#OL&!%SM@lF*^``I|{88=!j27VRJY<-o;cioke=o6z;%7=6$ zBe&BxTo)0?6om3K4hv1DTus-@>s4mRHvsxiNy)E7}GVzpMeUX z%~3u^fWYE&&iHYO>LTkYk_AK?c`92>PF#Igc(dZXu0=UCc4r%4psv-rU&?Us${dOC zrlb=c1%Bh%vJ&X|X#^*4^WQBvN}`!~q&uMtfr;qJue*JJJU>qk zu;)$c!K?&_Vx(qV_XFU3v3ePKo#S2PF+^VHpk_}%Zs)`Q)7@Dl4Bh5@9LxpW2=GJn zkt;zD)|-MmKk_a68MQoeIoE*!^dViOj;?1WLILT75+v_)zgA2qSFS-+X1b8fazfsS<6-omfR>JWRO>fA>^jI2Amp`Y_e- zM#9r5n{cM*fi~l5x#f_guDyy-YKjyhwBntx6h(*0?kYTOAdG*yRKg=fK2MpAP!7ys zWsd~sv!W+6Ta@H_ATcd_l|{KA!FQ8i^AT@-k}I=yE}K|zt~8>0m4%pgM9lf>URQ0R23=u^P9+fsD8-^Bq}EVmsy%WE3@%!HBkCQB@%(C-T^IUc ze@-bNx^dd_%Z;4i_cg>)KH$wOjpDS_YWE@&Pu}YsVYeCaId1zqvS~JallclhwfvBR zHLp;bl~dE&qP$cpa$D(y*dbE8PMcNej$MkPu3{r+GRjO=6jMf={u=ljmTP0K>lv2H z&ANLjWU9G(#A3 z3HJ)oUcnTtpx#xj?k)#`B5E(Zn~cPhh_{JHul$|k90rn^dD?DH|w zNaP#CDRk`$@^Mtw;RWkd7l@W!sQy55xke8D09TAs@d2Xx8!&dI^DcQprROVwNtS#W zCR^%5GAZR$HZv*B2H~YAyxgZNjUIKneChu;>p~3qB_h3g62fTJFGt|dN=w7)1hIIH zq`%xlsv+c}Oy=t_I>biEX^uQ)&Y3$o^9L%U$Y4};!}n`GL$Vw!sCsvspETi4))TTM zY>>TuFbJhr9p4bCSq9OemMgV9UKQ7iT_BmSl9$;ZkBAONOFFZ1sFz3gW^0t3IGZmhRq2|Nx%4WXCD$e$Pm;T z3NL=x(q8X_+Y)iTPd$HeulFau`l9z~{QV66einb<`6`M%>`Fhh$8&l1BKZm_df^~N zFZSwHe1_aXJ>|o4jb|Ux>RxQyIA8eU)8wMAPYP$eZB&joTkI83n1T%QgJ*F+N?srr%dS9O6Q!c8)!R_q&Y`yZ zg4`AyDA$WOFD!|z)pbN!$6IXCC{7|h-6H3!JJjk04fhL+Smz4k*Gg62aT#?)%zA-6 zv&{25Msd&PaMEjP1)U$=d!k)9R`;Ku8l}{)@TLK;R|i zPIM9Y=m&OHR(fCFl5FpxP8z#`$8*&o&gHgN ziyGBS3DI`OBh)V;h#*($Y>d29DyklyESgH6>;#UxwYv^v##aRgipUdMzdIqFoI0xb z8r92CQ=WYK0EPYbaq!>-t={e7>pto{DuPO$lX~@cC#aAOP_Xfgm#T&-Qug#!G6GAH z((N_Y=?j7-OC9$8lA^DYG3)5wUKj}0$n7s5e13Fo==G^XCaU%BwW6XS$1Nb&GRWI$ z&jv|A=qo2?M;a#dk?6Yw-ubXG&*r<H=)pYGnQdtO{hiyy{I~2= zq1n~h;gic?K6{l=ut74~#XiaW+HC^<@x!HJ0sZ_l8{m7-jh*JrbE`}rhRqXWOlLL^ z(a*oU&M13-3LDTxtKtZy_3rmHW)1rI0QLjR*tJWW;qKAb*(*JLg!pBQNF%S`yAJ%9 zE$lbXZBu4%XEqNn2Yg}xJ~5lp0RQmo`y1MgcBGG3_fi8vXM4A8fHnE0&KY%SPL~iY zlTEnIjtzdqphf2w-+A=N5uVPsd{3*xsg>15;C5dod5~Ve@d$-))d#1J5_-BT-+ct}YC?Y_uzpI#65EpfBlOs#X*^ynsL3qbY@qE{OmQG zZP+>?7JgW?jMw$O)|ibm2DY1w_rqJLrWQ5hb zvMwbY$Oz<#AtUG%bNvsEA!!8mPcS*h#k%86S^2ld_GlTH$&~*NVR9Qm8Cz)Yt}YMJ zJ8?+kbfiGL#<@{3VbmP`_Pw+#S<{a?J^Vl3f|tX^@k3l!Ij?NLqaBP z)Q=T9TAL3>LQ{S~_$!(?Y04e^oCz}6E7Xj5r?u8z8wxXok)gfO{H}&!q8Ryv%@8bf zXZsjL@~;obet*q>{16BFgr0w}KVkpJL9G0@Ekv%jW-B(`y&`TWSF2cko?dZxfZ2RXnW88!P%$QA`GS5x3@nC9^)Y$T)SJ4 zJMCS2JeJ+~i#M4b%Sdk4j?D=6c-ZB3lK=8xLa!tX{_@{8mWMvsnk@LrsX4OVU$6o0 z^1a^DwC$$Y@f#X4EE;ty)N6}scWU3Q7l#T{Bv#S`ZLL9{wtM{Gq4u&&&Jz2NEP66y z-B8!;%^d#OwLb;Ae&t{?EHcx__JQ5nT(SDj-8VME^N-NOKR)Q;=yYpB)ju%jS_e;? z>$_J%qzTQ{-nT)*E7y*erVE#X2<<^WkYJ%*QndPjhD|Kpx?9h z4eV)5?cZSTZX$2|`fnMl)`BL3sntII%KP4DJ*N`pvppmq(4MA1LR*Yz#MT2}|VvIatMed%pBNubPT9+U!`Pp;tfr5(nO|zxuj< z^w)dVwt!d3WSbqFZLe+Mvy&3^mh2DhY0DT~W*6ERzWp}G@P!)?stMQGjheYO#tb>c zR9b&Xr*QpDVBRoxku&oix^!I!jT$Ssm<}#DUmu_2V+!BUb%4{)*B8M@U334i%CJvo>?rlQX5X@?eNG-cP-hUono0)(Erf8QdU~J>%%_g{ zOg{)0(nZHT0?8wyc7L=5?LNGNhjU@4YcgBVZxHQ5C<`CC!pqp2|LVamy3b48 zFN1e||9-iT_o?sa4!}El_|}D*_ZJP4(}$-C-iEz5DJ5XQlI<)XSnDyXU(gs&FL!Aiq;mR0} z)v9EK{ivrWaX7Nf6$ji-w*D>fJtfv9WwDLp(OiFbF+Q4yArU{U?V=l)6%k%V;)dYu zD$gFCEPH(tDU>62BVBT6&ylu5vtn64H#vCbcE@GeDQ>%EOr-l@t=X|an|HqJO31c= ze#H-LAljE!E{$-B91Q46Z0D0End*bpq=|c1B^1j@ul|kAV2`8U!h&AgQl_O}{fLM+*TTg7WwdedkLjU&MCN?2!MJFX6XCJG4H&Lu>$oa_379>z^-D zv)-2+m%Zg68}rssPRnP_~+;l(8hho6Zng`j z&C&5}Ece?wGLLqw0T0yWo=T8&;LA(=kO(eUzYu&#>Q+q?8X1m=L<(j}djJT6;vX^hNmvhv2{>ITIMK-o? zvKL)W`6hcgPd?_IqlENL_98#NV@QjCyxEI!Y|@Tw&v3FirjM}=UL+B}4-(%-&c1I; zma~yzxH(H!`{byjB}jofr455edyGnr@a;XXvm$yLRUq0Mg#AE8h}0}3Q;kENx6y{7 zZ@Ses4J=4!&vc?2Mr)Hi+$BM2UIR26W zu=Llq$p5R?Mn3Z^c2Jtgzi0R;t}Mvk9#dKl+}rX-(^vlL9~jVU=>FR`M0eo-v>S+t zZb^%aCrb$VhPIl?fn@@G?>AQ@@y*+kY zeOk0kx7Q{X>pwW4mwi3eC80L|=-}fkDf$YC{@P_a&^y-@edl70^rxoT@9a(D`MHO5 z3tnsFy)?ax-u26X$Q=>QE28(GQ1uxk}A~Ma!0H5__mbA~Q69*yhYJ6p(le zh*JbD)0T>KM}2UFG4gATnrjC#&5`7Kf}+I^_93ds6y}*|T544dW-sI45{04!y5q?!!Csb%YX{6tim?Pv7!XRSxg=TAUh zvnCuvn)i1$VU9x!YeX!!cJzaNQS%NFvm=n2v~y z)ai>NmJFQ0H1`q`*1gT7LNcacZNO&exVzPqnuew?+@LYb)^($1KvG{gAgTRb{DT_Q zI^FKB_K_YsXy7Qp zgMsdQihRehMs)-pf62h>+41)tnIo2=r%W9+AtDZfV+rbaNwc z>^6dJo=z=m=eDBQjZV(iTLu`~w7fWI>NtJwHiaMi zd1EegP_#|qleWk+Iy|#~ZZn|E>DU5-g&a&e{>ll7z(yQ4ImEc$eYTz6=digDCEwNr zW4XPf@N@J|Ue$Tx_MPYE5_nJhFtDag(|>Wp)$_IAFlNkxE_3yKRHJzPn4^=;!CeC+ z>F*P&d0YB>*C8HFxcm9{eb|O^o746u4PWnbQ}iygox4YvSh!?kYWFARUB;4A_{QxR zW7W|AYd1vyFMqe)uub&0BS?5SB+1=$UBL{TPaQwnxmeESzBV^d2yK(gIQC@Uha_6S z$b$0V!R{Ta2am}u&rpu|_Byi&IJes_$m?Gmkk>vR|Afsbb;7lMW=!ds?PGNKuMavr zz8UVA^{;1)xzz!-W7hh!tIJ20hAnH>Tr1&2nSJZg%{-a(pFh`jvTXpvqwPY`1bHly zXG{zK?qU?48|f%+sWk)1+Pe9J8?KwL&kfvKP++W^+IK=o)pjn^!R*RnKExW0h`9nW@eJvUg06|*EbM8_mC9W^Htp{c0kOfhQ8TBZb&X_0ux!(W4V zp=(}=Cx`=uAHL>)kI6!~Ds+QzqC=K_BbB2pK)t&}LP&B)*9Mba!4yk0ZcA?I`}TGO zmKXYFc5LrU;>ohWU%Ck_tvB8{ID}h0ozFggI2rmvKL22!z`pgM+2bpAC%*j7Pa0IE zgJplF(VyyT*3NCr=ADo3(UAp#2M;bq3w>=8)baKbU+yE;b(@I2ch!Yq!PV8ju|ebU ziPF_3ciCA(qOWGNIc*C}-6kUAx3*K5P@dglqc*6!@>IM@ zR?Yt2Wsu~V%|n~MEMI-DmVxKixt~h7nYA8hdKOin%Qy<3Jq=8O}|x z;b`0q&OU}|^CiACh9-SKS&wf^-*=s5sU2P3`ZsptF-fPfB^~2baupKM-+6wo=`?k-%TO zAqfP&*AA^F2}FsatuG^T1hr)lm$JY6lZU9mL(DwnY17yR^o;>h@wi1|NOV%Uwe}1& zNPl-rQvda}NviN??Z$4B)Gxj?N$F(w{GRb^4Fa>$7xoR~OtMDIyT-G$L*Fw~N_l>P zXh}Y{aIL+zOwHFHTlkH+)kyqTZb;&-zhO7c28q``g5&8qLPo_SoGy3AOf4@ka`%$l zLg0ZqO>3)RiE?C*wyBABXG0@l&|@6o?;;dS3$xzk@JC@JG^&g{bCeV#tI3FnwNaFi znjfV7hlc+HfFN0eA2%P9^ht~U=5*_?Vq_LP*~TT{RJseQ)~siSwtTljNj)6E;_BVm0ujO+c0_=DS=h;OxBE*3Og@Pf@? z><&xjlv&QL_piJdEpS}pBOBQEY2RRAk7*s()?54N{ zp@gtyn3~S{R;gS6RW1E5l+kAFoL&u5B_Z5!tl4E@u@g8tV;u4kEA~kN{ zSCc+bnjCgwAxfj0GwWR&pfBe|mhLQz*W4uwCpoMLt4898N^)gA(`^rgv;94?gDea> z(%y@v4a{hq?Z!HaHDN@DeXfbviGF+F zST@&NS3j)C>waboO8OZ>QEyBC*>wnO>ku(LK9cV(LObdhV|P?Yc!<@j*YM~imD@-y zn4KTG+?>sc0drSg+Nj*-X!Ygsi0t!L#{hlO-}{bCZ2iqGwtnu~*!l%qY?+IqZ4{l> zl{RoPbXY!*JdPqOq#@x&1D)~d{%fOkoZ2mqFc3dDlE)e|kPaG$KG#&2|Voli3-t(?(kZLE@=;ODjB|d+(>9-8# zs$bZ^v^UYxnWfzH%IrX!>EFH0nf}~WDA!otXIFaNW^|Ve5*AXl<&|k7K&wch4t}E9 z+YB}V)n9W6XBHG9>opM=00;U0#;i4F=9JQEd}=k$3>)1ow`w3t`j&6eIPDwcKTA-@ z(N(E&+J9;;Nedo6eD;yn9J#P&Plrg~_2S20=otk;5hw?EulM1z50fWP`!iv5?y)7! zmOqS&5D2qD;Z&th3Z!mV`go31u;hG$#PcfJA$#N947N2CXq|u$kr%gkHutdyS8vLs z;Ir#|1wy)efWW$$w@dU+-Ak4?k&(2%|%I4BH~= zJouNd0}BZ6?1pfRmm;;A^jY%WgM{VF?=ZfU9Qe6UEEa0`k+_!I3j|riq(d{9DpI=a%3=42FPRL{PD{1+aF5Tz*K;({56ydwb<2A98LB>$-%v0aQ!M2P zO5c{UJIv~A;wV{Z3;H)qno1eda`ZEOLM>ljbwd9V*(DE|HmTLTMmD?|abdtrlbM99 zgOoDbl7`k~TX9Kk;<4uW_fV6fgjExTl(tqH{cG$Cy7+WY=xg#mNhqZe0L+|2^*&l} zkI@N{h=w?}z=x2gtbwR6z7b(GcaO7gO!z>1;sNdL?}Z-#mi0BH{WfS<+YiSFA0MZ{ zoeSc>Flkrs+}^08Kh>AT<@=na>Gt)Oh2=|gSsd+9`gYR8-VSNut>$^WjO|cM^0wuK z+tdc2@vXlXQ9J4`ti%SYxxRvBDgtqTcVvVmGAw%_QdSXoB#Uv z|0iY#7Me}pylD&MBw_21AJB`P%xv=x%J*&uZBQSn=)1$i`Bslko3?%amPvw^IWy1F z`4i%lbpPGaE(?SF*!BF~5y`y;ceZmUYdm=3kk6m2oA1i4cb|71DcX|! z>p<}_-hTGl@pJOmf7>{{Sx{q=^LK95OC(Q6OK`ycj)3*CL+y>1+PPKVEG~P^09yKc zgeKmWe(8WTj&3E|B>v7v-_XyQ7D&xWd;+5!$y)~<#&cAfvY)#vYDFG9?ya4gmPCfy zkv26U?`(P+XC)*nKC}?J?oa zv(Fs;(z2yo@*?QqHxB5)Zi}#a$Hqz4K;8u&w1=%+zHPkq#14Tb#r+xGgVsWKP`TZV z^7g10t!XYz@;lF;t=_o@jotlsp6_e$OxpZL0mqmKjf(%T8&dI|AGDhUlZxNiIt&rL zo9Q68f71X+`oPDu&F2;J-?dKE3|s`y+ZRnz$nQwOcJ?rDH0JFYd?fKdxq77i)aLRT zZaz0Ovb!gH90YzI*o1DeWdk4D1bqz1xCsXd{9`-Rm=pAgEeCH6%or>pS$b}*UKH6zpYSYB^A#uIsdlxIAm3CG7<=Xw4bu~PEfI)CKSfu?l^ z0yR7R9M`66^B+y;23EC6e{{o1Z+-ToHtWHh^ax=dhM)@uqoTf1Z-$DxI4-saeVBN_ zXSxE)3c@Fgq$je}2qf4e%-525h<%CnEPUvtJ_mPtd_Z~or=^b@PH{Vcb!q7QgMI8r z4w^kG{OEcmC1Rjl2h08(r9Zv;Im*(sMYJ+!^MxPY48$ylqR4P$KpwU|yV^FO!ASUJ zW4OTNZtWY66HRm&_f>U_z`=1xfM4czgCLppMo|6v86aDBirnm zalKE%>nlTPn<&tVAd7!Q{Pw8B0Qc+`8?`~*yjaNruXI>?z# zM84+^;a!AVZEqd3)_!64j^j%Xm&t10i>3|4YK-K^K?gUH9)4hC>}nR|m|IT*N{LyI z*kwqXyKODp{c{OXsSvU;xDCnn1^28SkAYrAi%S+B>bvu8HfbP3`Wdny;1+S^bwLW6 z=9e?*&`+Wtc)D*dTYDz37!5l!BiJopFiH+ zHjf+MaBvxOp%LcK-H9+WgdGn1JVHwJ4Am)-q3Ob;<$LS`$C?NS`ck;b$6Tg=I*0y`D-GI z2&4XtB%jrCs3CCy;ycE$4#P7ODNE)GtjK+03fa19&R`71^)|VhRy~OHH$?c~))tEL z=R^pGI}WsG+l&m`986GdI@A$S0GnnPlH38_DchJq!%l4-)(OV10Gi%TWXkQND(gF^ zj-oKrg3eH1L*pwrO3I{JEeMskzYrMBZg;*fyK+SsjV7?!_OE4YfL?H48K?!l+~z!4 zmPqPW+r`rQ`oS8o(>~d}^X56yu>fiF(59#TMf}>9^7N&vU+yp1-#q~KN(=TE%mu3t zL|d?t+aYqxxNoaP8)O}y7K{A&aZOsVtT_vO=bzd1v_CDMuvxMC9N9kGpRkXA{2FQ| z{g`*rgndRk`CPP9SjKtDir`c2{*1b+~M^g{=+&)w#TK7C|wvyA8HYc`{~GO;|m z*8XXM=$aqez_?FlZ&Pnp`N{^m%TJk>eZwL?na7BqL}XAO<}sTs?fK127SkB_jubs){=7(D$P_>{w9*WQG$u_qV4GkkAR7T5yUYrP^T-B1ULZ z5f!EXwy_7Rr!utvjuL3?fjKW)(e>GKte@QM06^7uK)F3u;g^Jy4klak+9l!qDxA`W z!|~Eg7Wd}4fm%3;%|l@OuODE0pPRqF!;?-##)E2O89@_M^H$P_|KU@D@XvNPt^%ZF0a7xX(15&un?Qc* zqV3#3%-Myn*bKxJw=SynYrz(gId*)~G?!f~=fTbMBm{uW<3cBKl(fy0@bxOBCzP|Y z8^u8y1m?0l36>WO#A}nCe|h-+*K_chhnE-U^CUdMD0|B2S#Z2~eh_9r#gmVXeAvSooM$RE> zw_Lajm&+d)aQEl#Ke}}8jxV79n@r%j1!SJLUM2Pzor`WS3;?9Rg3hsZ{}lP}T5gN) z|5>|UP0~q{X*}2-9mt~xlCcmEwoa|`vh{R!ND!tD=T_S^aG-IQ|NMrN@YermhYoWR zsJK?aP>WyGkG{>;7{)$xBOqtUCQ_cmk8P#T*R{Vhh9&(s+o}D#*PhxtziT%Zb87FL z1fM?ZOYlX!fK!^5{HwfbK&(x~uikJXm`{J~=xX>)s0fJPhX7Spv#aIJK^agIYPwDF zU=)B5o5-!&Zz?CcJ_@<#?~;M{F>r_N$opC*k)8BVX)2oZK(q~TL_{_T5{Eb^YOdz& zgji$=5Mxn<2F?zUZCS0Y>DlfyKuXV@SXCff-4Zd968HOSjnR~=U*cPAAHR7(V|M3S zn|D59L9GRZz1ude?;m8`FEc0l@_M35z8r#P< zC^|j?7R5s3b_me|;%&8flTm$ie_a^!b$0N;rjN_dZI-Ds1yN;&!qRR?Z7w0S8`@*Gx`~p|2m}f%Lss(iZ?ZG__JNNIO zw6}Nh&b`fP>HdlS&HddL^UX;n6HNXP0{Z{mBpX|cCcJ#+t>ZeB-gosrFTI5=K>7s! zA;}TmkN>d?eLFtf%HR6lyw63XPvO00?=$e7Fb!?e|BL+vI?6)d;3c2hwKH!?-+?c5 zg(-l8+lBOwaZ9?3pSW{xd*`0?06)%NQ)lphAH6txRYt7+3v%6o#DeRYu$sN7{obqZ zd!Osn!?7-}o8jCp7svYC?8#TYLc33C#>?|Q5AVQlo~LnvDW@6S_px4&hjGyKDUF{# z&gF5?EPlH^9-d|#4$moG@G-21B|8Xz%D8=u+rzlE-!9JOV|_Gf)rY<~k6Y`(!?SMM z$2q=w;vk)y9df50FXy8@G&*5Uy`*QKnc;M zm*-t9&63XPQxD7fIGXorom=M6ic;$ctsMe(mSJ5!mlp%%PJJBb@wpjhJ94kf%@TSd zBlmb%+Jz@%&Rs6n=W-FySxgkmxfsSnI=2vwbq=j4wT{r*p~JzP@?IXJrL{Rn!wl>8 zGCXJlzg;XaIJ7Sy24xpfs<7X?A7PNPrOj#3T1yAfJDB)=Jt%j;t~{;OX-c`<+fLgKJT z{;=9=N?*bc=}(e>zD)ixHqijC{+txVzdvkwzxToI_S^f^b7VsL6WGE(jlY(y{Ok>E zvXl7?IziMHf02BJFa`%&+27k~V{bp;4LQ7ejyHUoeE+tjGXzaR^dJch|Gt1LRS!Qt z`*0g6?Vrxp6L5f6+lZrjLE!m)!fQ+&zuBI}QzE)=@Scs4@rpP{Yy&8?0IYK+^m}*v zPh?^0knY|;byNi{N3JG1k%R1=%Nw+uJg)LKhEOqhZKn4i15UYDMC}s0*wcfL_ou=- zs|0C34FMmM*!qtR2Ca9l9rljc#q{@Vt?Oq1@|ayrxlJHH@X&G3f@JOTQY^l{n^gUr zZCvlmOFwj*fSyn`E2t}12JUc%GAH*e~eDeVKN%>(mQ{rjD*%C1Y@ zjJ4l`0oFka7C_8i_5jk`a~jIx^Dmlr4x7I^gyhgU6wbF~fzUMK*}P`Lcl5QJ19Y;D z1K*L6euVrciG7pAwj_*f0p~XYeHHDm%8O|JfW(ZQQaix@6gK4JP5{SkQOYkGoX)aY znr4s)%peCM0MTPZF=Qrkyw_BrDj@o>yM3fa*vbahn$E-rLCY$M%9Ci%%ACk0cKN?? zz*nxt;(zhr<14ZFANZHX!1c~AWAXZXFU8`2^)`Y0^pQERVE5>2mty@x`ef=dfq7$} z27l`|hxW1i2b5#Oc0uj~_L(og9>`f;exzWdI|6=o8w>;x+Q$wM@`oduRuNiTX!|9Oi($ zOl)&5OHy(gNy#1ec5>={)5v_yuZ(eMNc|)RaTBEee9>-5#{OCREQHO>EpLt{yfe56zvq6C0EJDK$0?oQsFz}$%3oiZ_A zuSqbhifSmxICWF(O4rhRp!natpdP3);~2FE)DHOoFstOOOBXZS-Tm?JDj z)r+GzCaN&+j2~^S1}D2v-L4=DN^>?=)KiB85r5ljU}KIjUJFLHt;3p6Y9}J884%dq zhT{V5+hLsS-Y3Ui?PRMU;&+!&fMglb{NITs*zv$(-o==SgZl&GS`H*_uQZdfjt(Te z(b7zlS~H~E6JUYBKuWw0=ezo@|F_g2w%NM}Yu(OVY4c9t=0s~5&TX`I z?Xl?UeT+DG3+u-+oLgz`Cgb^@mtV`4VcevZn?Rqs&F#c8p4)BrCL=7|{vKx;=X=rm zO-B3qt8KrQ5nT0)n?UvcruDc&uIySf10CKv&l+^`+3t}cjGWm$MOVXvjrZu;Mhk%W z<&7bc=sU7@u(<|@vf%hSU)f>CCX7Od%A%2e^Xy}XOwq*5xkonrTrT!o&|)k0!_)g2 z2|9zs&uk;lo;+MV9qfKSH^t4%Uo=41B+MVZp@jMCKW)sX1#nZs{AZ9bp@!F_C&+f1 zmzpZT3697XnjG{1?inhiH_d16ffm|9Brj6^4kvjc{J@`t2u!>8Iwud1x*eI?A3&xm z;Z2g|1S#4ev25QUa+&UiWccFYDZ(qY?@n}SPJ@R8T^fdk2WF*+2M+jrp!f#lOB9dL z1Xm&;JtSF1ASMB{ZG9(b7shQ88`#kVLx{5~0tPh!)mHk&XD6EUX|QX^uY0V{5P!b_ z84Y!PR0y_25I14dG}9-VUSn632S6d|)DEizI3o;~2=Q$MHtx#(ZYAFnEsk;Ww1&{< z38dZ`D*e=+Z;Scu$_>@DDnF+CA_>+&`KtA(H6CjD^3kPTU?prG**tKlfBz^t(!dH4eNT-cmMsH#ujn5e;*D1+yU5^@AzN;6=R3c z$D{4|pS!|Rw~X*guiK5>W{=n5u3d$D16u}ilU8m5{i}pUTj1DU+qAfE?f8TZ zN7q-T?K5MEYVziHe)1Y>S>55`A{O!?DB};S3!3*X8;bM=OWC=ai3tr(`ZnRbL)34_ zMJcoUv#Y#qGq&Rbghf&Gjz!?rA|{|x+?U!cz+B;F8(40YWKy>|6>nIDPs=#>@7oON z%IJM?b&1x}|8>5yfo>1s(nl=WGA3px8e#Wt6Ps_H7s$=-&g`DrziXDPR$YZ{({X6Uap_9a3DK1$JyV4ac4rRacTxEqhO%wK=~n3knZ9C z$KJaDIg?%IVf$V#xP0y7UoN@iVt0q!nIH2H-mfM9r7)Pm3@`u&7yttd_TT-5HyZEv zYx&zO%2818AYN~tW#GWDoR;=~nNk62M93MEB~U6#v|EIDy1lBh6FVmr1KB_+uv zRla+>Z})AW@t7GbmvnYn{0H5A`}R5Ko_o%@=bm$}?0uj+G2%&a@JV33O3s-e*(H1W zAT3&jJsfgL_PtQMNUUf=jNlxp4TWVeT>uhq2lHph)nLUcg*PSl2t5(!=1p3L0;XgG z>uY?CxC7=(3k5d`zC!HjX8Xm+eQky>v}A`yoA)t_a`|r+HAfzP_IeQxfBdgy z?-EA}+5bF!J`PtNlZZ@*k!^$5DDRMs?MFxxjuXXe49wGjjSnH=Dn@-sVnWs4RsN{HrqNIFHyw*TsHFt5J;7F=)*IktP7c1JF zlbrO?j{eSamO>R9g{M?8va`&&^Oi-4PUASgG8 z5s42V{Tb(#)4iuIu`;niLn`~DvP2hwQ(JYE%qN$7^nk=(vxnyh@aiBJoOK`z!NBGa z;Fxcdy@DmmGc2KH{b{s0-V{YS%r@7j23{)bbNXPN%`yCvClQrdlNo|6og>Wn+)}0q zBNm+|k4xO5d}Au#(g1Qf@i~7JRl(ZaCu1Y(Y3)WD-(EdoIV8CW`>s{P`%w(k@<7go zWxy;`NHrx>4nw72@d>^R7{o)5Y-`RH09(;Y9t6r#|Jl_cwa!7R7!5zga++W&P~C>A zTT&KA>MqVH7L8K`G1F6mV3yV;vs5%+iEUb!%?O=0PbD!cpC?bHgCS-`=5Nouxt7S>|GP4A*q5ou zT#|9g+A$kL4dJqS#^2l|gmbpfEL>V*T%*miaSXgDpZQ^xd2qU*fyP*^7Tz4WIpM7c zlkdh6vqGt!dCPLQ&Wnu3Tb6mLvCZU+B0iY7kxOfGB1p9adFMYQ6OanuM{lfB6U!&@ z8HztGo5Y%@*h(`+^O+1@U`$jYoz6zu$rlKe$A(P5-o-D}P$u0`#h zW{W*y3}g$nw^5{%XlX_~NmDx)YU=N7B-G>VSvk(jCx4#|_7V*qLztSl#6);xw@Fv1 zGj1&9SU`Gq0*RvBsy7e`h^V@OkndvwsVqXVlvVWlD{FMl>G!poW3EMK#EnXePT$AW z09zm_H`Js}&vdhv(*NSAOiu;|Rr>Fvn=c>@hmUe^CD0Gm8w_0XQw?Z+lYo9~$+*d% zoi1yofy`>{&C!k1-tU^g|K63;YN5dY@?f#Rf0Y;b;xytV*PPg2yS+RzRQP}8>d^nt z9Q2Ct|B1!If8pASuEA7$1)N~7Y76$aEWBu+CzB-LT?+;Lw?Clj@%pKi~5n=f{<1j!+dyJLnLshYd&6y{zn-4vP@wF(0HOI!9&koVkOLc?~BHC z&P}6`K#Z_jZFX^8D`uDS+Vtr<4#m3#aePaWsrNIic--_E@|a3%p zIoWQVgZMrd?$--q0RYvyLCRZKzO<{)A>oT`V2OuN1I#8;!q{M3yB~SzDzB1ZyHWWR z{w#CIqug5A1bn~ttMVj#nZBabr%O3SU91f{+2icd^RD3_B}$N{T;1sjwS3|2*1he? z4q0N6Y%+OI4ts*clPZ=FU^$W=Q~>0nT$0j)@de5F=y%Zq`CYkY z9aRYt)i&Yu_FfzW&>VYB0&)}nvTtJ0tus?rEytha2ZwQ<`lifA)HeU@Om}NZ^`BK3 zih)C=`orJ`4m*0O0kW21!1`gXX0-Xx3}10Q&pp!kii$8x-RY@K(%{qU@ji#lx^Jw) zary|EPi)Y|3-w@EHi_t*##4rnv#@TiKe;)QT;?qevMgsX4!RrK;)H`_Q45W)su*td zVEl)h91JnDaJlT`uv)9R28wGF_Whi2=Dw@CtDs8}T2AS=GYEorwEd#yU@ zgmk)3bnopuou0~p?1{21Id=z;?u{L`^>)nFH|=A9GCtcvK#7|#u)A{ z__8Q3ijjFJ4Isergi-;Lqe^QK;0SAFI!Ns3!_TD`$dM-EDbd7fMynB^T3WMF+GW+s zdd((ri?wRBt{C#Vu{F}b87kz%odP}uiysvU@JA}|AnwZW0iT6V2N1CZFEhZ2PmXx) zBsZSu`~rXddyAjUCY29-l&;#|PySqL_xZP;dYbuDIp$U*SnL!8mH9x@yr_Pstjegz z^6eB(6PMOQ(w-SLf3{d~0T)5AC5x+w3H zIxMPcEBZUAl-OyGP)xFZi9HuNiba*5@lJk1O;|q&dmUl@4fpa1X@Im81E~?-4A+7F zu)U|>e#80Z_A4{N0XyP)jo1axYQDrV;erO>!iyP3DL*lN0#X{18ns{U|ImFo@904% zV?X?oX)-0ZZ&dO#y)2$l)5p+zza!kAes~rkdN4wk^mH@u$KNfJi9twb+k-p&w?Tn< z3|2EN*SRLc{#8D{N{Ix~46oXJFo==?@~*=n4>J{;U$`dgKlCMeOgXYEy67WB;dctd z4oL|WNZl*OaT-r#&?;Xh9CM@cAFa)T#J5Qdzo-6=7CegF`oVcNU;!5-ZOkBYh6S;@ z%Q)k+HIi1gdaIagu^>uFVT^A>$mH>$tn%a6WR;hHS8He#R{3!yjJ7Cr5ROYK+0H0p z*=&SWBS-S^Zg_6Zj>uhk%aw-rvi=&)UYTSlW$8(ys^ewFq!pYoNQ`R0g9=?$)K}Nn zIQOpg3UG1)?n`-<0zxWW2yfZC6sVT266B41M9~O1zLtDXbJK87@8!KSBs@ke(}`*t z@V0cZ$;`Yc`Amh&0uL^Cc!9hl~*)NrMac}_qYE8tU=~ze^2qJBKlO!R@v7%TX@Q{(( zn)m{BjS>3>|U{MtpA_ z0;zalI;zW}ph^e1v5lS*LiU)*$eiwBcc4GEXC|GNF4Sm~QYHVw<;M^BbtVM|iZgBPz~8qYJ6pr)UaK}kl^Tcwf8mf zUz@_WWxL}lRtyLFH9NWv4nE!@qVac9u)kOUeO+6MLuOMwUI(k)OPO}E5Sm`@Jq-v~ zua!7)rL|U?zDer);mDy(BU2lrz#mz}U;_x%SL^ghDr^|{dSn&SZ;96KjJ1u`Nw2A+ zd(nuKrTO=gS&cnqF;tf9g&b_+Gu)_eraw^hH)dpt)@;;h^U;MEE2F!(jmCFZkEB;o zJlsesj`7dyig)uk|4rT+X=qfd;4-D&ZrsYFP!?AOOEU|WZ(+!5CsZju@OKvonf6q9 z{sD&eI-7#~ThA=rrH^W@KG~vjrYZs1JVd+*sh=tCrS#yL#=@R18}W{A3xlWZ(VuLv zYi`zTv|BLozgc7Q%(hXf`{~0#Tei^1Z}kxV#mooRve3>>kMq}HO=|; zLsFd4w{B~RMKwF$cD+X9`K~k8Byc`JF6a86aA7-~Zf zPYgE^fkkvCoJvr4x~=?e6A})#iZm=ouB|S`=CG|VG+;ZHD3uET4*X5x<_q406wr~x z1-S)1+BMVZz~9AuS4fkWyn8oqX8JfNh||eM_;QG6@8(U)8$|bhfCv+rEXoXA`WdnwwPTwc$T%& z__mtl56aRJztj`Tw@Grpw34}%uTR%#tby2aqOz5w8vTbcp_q)LzttpobCV=^XqR8M zk}C}))Zjf>WWeE<8no6XLHi`xlvpfIluu7rwOomkQmjJS`%!MF5&WJ_BKV;hImlr& z_h=;wD{P7%-X!32IWvlwU>ps;e;5*-Ly2ClL_;C`ijnxwH;K?Emg*Z0i4_gC&{I{+ z{^%mj#irEa1~MZ~7q`LpfB8~$kqT=s&`0IRD@1Hl|NPfG>OjAiJ8xVFa9!A_Kk`r7N6n^kSHTe`>M^AA6c`tn)Ltt>X3iW z9OTOKxu8*eq>5nJ47aF;bw=_F#42y74kDL_n#EMAAmUzFLF8NXH8th_-<6bGp3?9i z5b}v-K)At|P4H>iCaPir8~L8tjx<7+AdrSjS%fJLe~ zX;ylpBJ86xaIR&pfBB!wEWmJ(c0Vx1c^&sC-E1Hx6l=!}XBC9g6&BvjO#(TWdo~N& zY9}0rzvdJuk+s&$dXKR^En24R@poxNx#$$qk?`6Xmk?cRDuP9M=GC?M=qm~zu}@PzdX5W%;0eT`vapE;8d`IYeUI@Y+L$g) zep#?y;av?lS2G?*FplxwHS?j4LBFE;@YN4KyU={N#hVW_-|Q|+gStzU#9dN4e$I@z z@UoPM5v4^75UUB_N zj!3mNa{ErLQ0#4+4VKyFcO*0BPDdz}dppYh0E%derVIn7m+4biBmZ&E%2_lZlC@(t zEi!lBqXs;3_jHO7qn!8GS90ERbL^)H`z=#_E0h~*Ir398-K?bszh;+*kbyzf;7cn9h{I})#u{j9sYV6^ry8ACWCRYrD|ev* zwR&(KA>79N1>%KzP=0xngYuZj)*NQ+js~F1$;oCYwx5|bfys1dW3K&B=7Fj9bA0fdmthQg#+Bw&U2V5$ zZHKqpW(G{#X1l~2@^DhE`NRuX#^6`xFp%xFXy{W}Gc0YEFS5nYZG$1;dM z&y#EdT$VbSR+%lAZ{2!b-rwFtS8C+9S0caA|M^?rvv?xBLUEp920dG~@9BA@)@rMU z+Ie-Te|rvU#c^l#k-{D-^Q?%x7H%z0_N*}-wshpAoLX0JR@`u}tno6Z1=eZ~3GD-_ zi?^azYW~xi*Vi(~euvOVomip3Y?4Y8klHO8Yw4XG5`92c1N0bctOk(bjRc)`A6Y0u zrY73pn6p^G&~xHY${D4YVU!~r0Vynf(L9$z{*)?$)G{P9vX81zOPSa@fC?zNN73qdXkChx!2IT?`51Hi+Z1PiK4f^0l z<*&@ZvzSjSUGzJBf!1eOFq(X=hTl_onc+iu`Nb6@&VjhHsRs7T>B-r>K58#so3l7@ zH`U{HuzEsfbPh1?rbgeFT+;mX+6=>`f-ho*y-Q9+g?%skrUv4x#UBSYC;k+p?Im5~ zE~}LcVRBE7er;fz4(bXn7isrnjg~TQ)Xe;EK<4F!@^a(o8~>@SN;uGE$({NQ60X)n zo?(fEr%@3;Yc-ICj_gno;1rQ|#Bv!@fd)0VPyinVz0~P@shI{q_x0?1S+IglHy`7mzvG|%X|7$F-Q&- z8er6+*E~%qBwig>)Snr6*cq(pG?8w>SR^6oMAy*F(%e`MN=L0TVk(Nqm8w%SVP}$z zQ5*%=DIqzOW`}m0HJa&4vsKA?r7XA|KgAPG5u2ft3ZKD;h0_FTuv42IlFtf5wO&9r zDQX7RgsK=EpRF}>RkAnH)kgOC1u9%&Ah%?$#62` zkN>gE!R+%?f!sj0vj#JAXf0}?frys6U|-{mE3tIl5>Ds7zPhaj9BP8TAkGrvr=OoU zOr$Jtq?RWC_a+D6Vem4CFTK=2X*p>*O?GEep8}UJBl|Oq_S!SVkM7eBN{&MbK<>AMaW~uLf_<;vr(fjMIrWj*HLh_r) zersiNRUAOx)zL$U$gw|qm{w>+Tp&2O92I57N769}(nIkI&rwKKC*8wRwlyY8BZJsD(vsP1+(yF3jtVfNzB9o)py-Ie zrlRa<7eL|8n1I1O8SjpzClm55?#X0#B0U++yfc#D8O^*ilHVE6JQ<5mM6%#3qtPyf z1}Bm<2a^dS7G5Kfk>ZcAK35Pe1LZ3x7~CU|cfSJFq&pdgfx z5JO)lrDnR@Ai|+gLh1<4;UYf@xvu!QCLmq3w1*eAbF2rcB|ER+y}3r_;Cpk8P3rgN z+B-4V)cQ5NLcfwo?#fe8h?S@D4_WIyguhU$CwNhGwlfPK-;2X z=RCjvEOg6LA?KHaqgTrmI>s@;mlNAjdX0rut@Y)-1V1I;t zQLmSKap}3&-_+^fP(4y0(sO;%X39tTM;ye~H{aB~VKMEwoIu!aGwX>Z;Bc5M4u_R~ z)C_8v?Upxn_xtzmSL~qnm%7&6* z-!4D@=Ka~?{nIBgU??YsSUtr3+&_7cu$UgbsJSF7bIA;sMbLDP%RWxtzfobVMfYdu z@oQ>Rx00NFdHO^ShdbQuja!BL(?@d6e1ZDM|CDg8Vo7TCH+>yeoOndoEiPd97Q9)v zV3=`dmEDpGzTKiHgpr5zgfQg)Ap_uH8F(Tb3i0FO$JR;a>b%=KsXV(xb?p(%)cPX5UX=Q4Zor{V6KjByd6} z5=n5Hz(ByxuXr{AO=S~}Iz8w^03#mA9=vR*z9x|3u4EUgRmkCZPdMSwv{cY-VQK)nwx&7-da$VIu^cu# zd00C`0?oMDr|!Z`mR7108dY`_6ayOX?&*)4LsF@3SBIUnA1p$$sQ`2uB!5iEaGL0Sj zO;*^Cbg9sfSnRZtE=guqpJzgeK-|e{a8$#UsnwgP<}10MVIvku^*)j#twX^&GQ2cj zgA|U3F^Na|ChpTcL*RzvAuu*rV9;grEHO|g59JfdsKcj-b(9W6-|c6m9Z1}v8;nS{ zjy2Jg#19A<4)}lJ|3>PyLb>^lff4Ddf-b~U;^2Oe`on;W{$<2I(tS>p62=*L1P$un zr4fsSQONjES|ZCD*&EkRmCS9*xU@@+#s9m z6|?=vC5gc!K{%AOv?@r>HCC+-34|H=^z(;xN_i!)ct zAWQ+?$(W>5|49$C73Ue zidaH}o>E4wbu5wS3BAY?&NSc}*E9Q5-|E8}L`bQ)z>$n(#qc`Z2z(rSY^XyF#$T>s zZfUeR-888b2HJSn8d$DoxffTk-1mm1#UkSYTBnIF=%lC+w!VRP8X+9La$Q_-lAVo0 z2Bi!UN760y^G%6sbQ0H~RydX{Bp?M##H_$hwI(ZwVzX9j4#~7?s4Mn zH4HwDIzo&q0@amOJVcYc$_8H%9-*e9c>88ADxAXcTaaEsFe? zaLB3XkfWJG$U30jQ9^v`$ERT)AoS<1`AJUEUb`zuk^3{_2ngr=XBusG)<;}so#`cB z(tvE~fK$8wmcn7&Xe&Y2Te|RF;r4bWeD`eubw~}l9X*S|4xJv{({G1%lzPDHHI|X1 zQ9^$k#9XFuR-L^3@{wvwVvb!cV%?yzP{67Lj&y2MvRwnUDu;HbC$z{a=L)aN$W5>G z;Tx4-nqjV`x`qy+rJ+RuWeDG|8(|1BjK+{0A+Ne8!%PR{A6#=l_P?S9j=Yjgy(pD# zl}19h6{7W1Md3gVEJ*_rhZc^YR2Gz2G0v+s9aU_)t?*qF?S}{txwsOogStz$BS_Ge z7~Ia%^AK!LLccoow+SO}k+M|~KjigJp`H;)n&PgGE?S{q5r9xAKG{LyNfQP}7931rW%KfQ_;9>AD8wC1WJq+)AQN5JA)-dcbrd)5Ha2Q|qO%39x z(SDMjJPd#JO*J7tzDYtnt2ya8d>1s(Kx_G=<9O)B6(WWE`pTvnaHz@qw1#|QRMvc^ zCbn~v#Qx-Rxya$Ys-*_nYm@)O)TzvgU+%l}&osWICh#Lfcr%KM7itp5Hc7%KWG%r# z&D~rH?t?Z4D}Jc~Ep8Ifx!QY74X`ce)rKjjLpZ}!HY29rB&w06chSI*E;+4G@)eTh z2i3d??11`3)k!f{NnDhO28NLP4D>tPJ~}ZRfs~>o(H!Dhn!Hv=6$4V;Qj9xcD|0r1 z(KTHL!GNI!jU|sb=@TL59jJ3S5WD)VjC9Un4u9#2C=WHCDELa}zkLwj0J_SMPdC#a81Apk@Qv0?)M)bvp*#nVczx;qIKle*^+u6{<+?p- zV4;#4mH(3%RZ^kOS%d3GX6U(=roT`OE=Fr=a6QR0CWoQ=z6QL@N0FoYhi15)`^elQ zjqj-FGJP;3i>Hjz5nYx1>?X!Dr;oP zbKzia4(F_!!#?lkSkYL9nzG0L1(2`f=E(k$yrkj~P}Je?NIHtFbM<5~eA@!86el^* zvPvZClI(AYD^liA)@|8#&AZlJ)2?M#`L(yVcLzl&yI7bCdxbp`jmKUP)uE)cw(MJb zIu;WNw@MB>Z#Y-Cq$kUIqS5FkZXfCpv2*aLiYxdI)1_F_69FQ#hK@z*KmiVwQXo(A z*eMfls=g1-_{$m2P|KG`DP0)bNmuG|dR%{ng;q!R91DwO08sJ!>Gei{LulPMG*HzN z*$f(HcB#qnf->C7FE;RuO3NFmiTBA(67R(ooX1gZWm64usY&smo#BgLYNX7YL~713 zo*kj(qsS@VXS61r0{T?@`6@yzHBEw>q=fYf(t$(oO0R2Rzc#%;pq5NBk4$GCXnbR} zBIN`KC*2kG^s4BEw>X)8GMncVl#SC+Yqyutph~Ka0ltos`l4BugB%))k~$Y1>Ikf^ z)ud>CNmcD))z$6S5FL+A_AN8?k!zR#m+7JmQyi#yMe_=_pyue*C1+nfHQztSGFneD zTK8tSS}hpXP#NDl)4^I6`4rv+>T!NhJ~|q|)Fk-1O_E?v0n8$?T3B$b zqczJ?4}U~zVm({oXYNZcHe?M1jmTFq7;J<+9) zyju)Uh*0d^>J&3pDu zq$rTEkBlPZ#$n&FozT|KZI1(wgcTZJyC$Ob$rx=NjKr z3xX$P)@G8DyQ3Bizdr-`T7v&8ir{BRQNeG&(nR9$y;wA)ns`X3X&0q{#KLb zGn*vMDyIUDRR~8cUr8nN8yG;4TL)E;Jxp zZ8vjF&e_e%B6|mm?3x(r20lWl8y4HJvhJw^d_u7D*w9_#4K*i@L7eL>w7>dS<<%pH zioDQHec{0e9*B|c(2Qam>oX-pH7Pz|&Y=tYQcRRkg>rUv**@7lCHttPIH`IUv`)Gg z4S&&SCflGovHm+s2sL5OOM%DOQbnvM;^*|WR)v1wulBF6ZdhgPpxvA zJucefLv%%KaajMz?*InG4krb$05!GtNuCBxKi|`xBKMs6Y3TMZw>BW{-w0(o-3&s@ zGt`JqXRsJ}bGzK@wO%tC^R>N9uD;jol#Dr{C-#^t);}lUEG8G~Y1mM1iJWvpvB7FY zj8z4A+L5f3Nr+cs|N0}rasMWI!}R&Sndzw|#5LO7x)e)rU|;e@4G2}DeyQmB8#B1A zWtV^LXXGix@TPY8+=87w<-87a(Z5O?&RRa&(B$B#y0I=b=)IgHIJ_KJo2(ofSMA|C zP@{D5a#_K_x4NwcBKz$dYV!SW7|i7s0ja#Ac|!Bo{~;vTjfy4~ALWngsZY#vrztLOpoZ`NxjKBmG6$bx zb5-UK;z0@%wZo|OWxaQc{x#27VV1YvwwmwVa=5YSp&ZN%1lcJ(mW8MAd@Dbxrr{$m zuNvd!Rpx(<5K=s_gd1$x>YKh_+(w5lH!G)jsqV?(RBiwi@XRyh50@djR8!JGir@MZ zEg0UlY4h?*k}jM!-}v}P*PS+&RnvxRAk&ymYxC9N`=dGdlxfpkJZ(^=&f%8kjKOR& zTiqs`#Ws_rK&Fr7-pt&wu(@MhICs9~-&IrdyH-+j`2_kVA?cC{WnH{}aWpiC?%D4rr;4x=XnNVi1Do>D$9 z5Iv4vXL2wp*^?p1YLKO5R_G0dZUK=;SbUN_qg$tE`t7Yd%@!`Vc9iO7NMR%^-JZO# z`|NeT$Bpy#`oUPYX9h~kbk}I}K{d)8M6*vczA?j3BDrLKk}lQ!^gT0RuEkG(qVN+# zf%4PSS|cNWZ>srN1C7;O#{s}`og#~06x~KtnDMaRSIGG6;7^798R=;1m{G9N-XR6mOP$^}lV0Kgr6_c|r~ruXiP9R=n?&>jLZljtw*0mz8*F6ilP%%e7^h@W z&klkYu}QpTGMhOx2!cA45^Q4IRq{TH}RfBf`zkGAUcV9iDeq)meeNfH!96qy8G|a-sw})5OMRKjgrdCHZh*`R-RJ;4{>mj*St!RmWYpJ4OP!N!!kBh#0n{`@9Um$EeEFK}ra%J66b3=K_{6|@9{n7<`=NI~A+ zB*^dQloB@_s@od$UM?UQ2cp&OYbiPoqHA`ffrFZ79w9oF5nsGell^#;WLKmWlsAW^ z`o0FxYZLw>a|QwT8I6Y;-C#Gm)(9sH8f*rWBLPSmep=#% zwnz0BoJ7F)W>BNe6Y@B7U*>LV^sFZ4Q>WO~M1EXa5p#&hw^pH1`TVoWYND?6K+T_jyGbaQSZuSyqat+WtB)%XHfA7vcT4UdA!_rDl+4H;LHX3PvF~XFq;uMoK9VP3Io1MC}P# z#4!}PJ8D#SH;U?>0(SWaHNaf0Z8-MO)Hb0cVvdlKDxQ!?eh`+?$Ocd%nn(p>QqKV= z1=b36dcH6#-@(YU;a+7DSA2xLH!260p)%dx`-CFXIXWoL&X=)n;>y9zCZX}caqBdd zA*Q0|4B%eJ<@xe|B|D!u;ANNR^v~s#N$d@vlBQgl1It5F+)mW%q$XU66z(8t78qsJ z4yhwEO=#6{91Zo3;;cZi#5K)fDZyz-GE?Nt5xEGz)j~`X*aNgfYNNp23YD1A!|=#e z^*AI)uZ!i%9h^q_DsHnf#*#OZmew8#*!7oEw$*TuN@8>qihY5E)hgDFc%Gy%p)ga9 zBf)4NnxTO*bLJm`gR(Omq?Xb@PqM8guheY8hU(0lYnc?5-*&xeufN!+hOJm3BvCl}e z=o?@7kxS1b4j=cGCnE_-)}Z^G7FODD&>Jo@lV#4GUg|Xs_*Sb$Za#7nRZ#~|=t8$M zZ37A=vI)lBkpZQ`{lC1XaNmFI`K5dJ&x%_o*xn@xhB#UPwT=sU2G)Y7GKiI5Arjz5 z<-fa(AfOua?3NZ>3W;>O_U$)9#>|@vjrdzK1e8es=$b^z#gS{a4o{ z=oi1Lg`7gr4!2>~!4bR#Y$)an^h{?-0pQq-fj|m+eWRxA8fNJj9==p z)qUy;>%cGn5AuMr53jN?SUYVC` zu;ltL$b_i`2vKlO>1Aj`^~F~d2IQcB*8(Wdfxz-L*TMkGul^fMr3G=vpWx$;JH*eL ztIh`>uV^Jxo9f2G)gk@KIY<@t^w;J?DdlSC^UK@Ydimk4H>9ApM=>8A7W;n_#N7%A4k zG^w=wrR69{c`J}?akL&A67rn<(e{mZS`QOcu zN}cZakXf#@O@7M!HKh-3R37>Cx@#9Pckf9a6Fxuh=M`zoAfnRt5sIzyUGZ82?$txU zeS#Z;cgDyL-D->8Jh zpUY+46|~@Z*QVebE6KWW(fEz&<))x@F7-}p3UaMvYSSrLxjLkOGzY0N1^?zHr{JAh zq1fBbkfac@(a0|y+dKSKXXj2wD3yEbOiU|VPdXM(%x`-*)uT0DIao>`eEt#(G zqpLUMYOtBA+>imO{B<%rQ6Pi-xzr^6=NO{>Lkcxp0y`^v^CgNo{LQQm&Ou zZ8}MR=IW3>JO`;VNq_Qslayax>9^Z3AJ>|wdt5%cWO~}zM0GBlsNWH=sz>eTR*u^8 z$@(Z6y2X<<<$V}sOySTWb$?X89Bhw}7>e33Gw$lUbsT7l=nMFaa6l>!jx=YqLRlq)eXq8FFFtUS6oO^ zN9^5M7NUS>3%y|hF`;y+OiOvTZ<%QtT|>7etBBcGcRs7nVDm@sZPv47V^c(`+3$!u zoiw?XrtL|)ja&Lcql+WcNlXYb_i!i;;HRXdv_mTEEHX4hOUz@#3)v>hhLQHD9V^DL zH1!#s)pCnOv~-0M0YUQ1?diiL3jurB@S>5VT9iZ*-y{n&L_py%Uj(5H3cGr-dJqYz z$qU6Ik`GB34h>BZop(wEjJQ7rZy?g~;OavvAv#yT2SixUd%AEF3qOh~+L0nxw1_Qo zd6)ez`d*n0GT20`GlL^3Bq^7LYNXm}PsH@zHSsvn%2qY|L3sK49 zafD)}T+5#M4ymElB{g&3b|X<-@6mT#g`5D6Eh2shBP9|LDU=Ek$dHlI!(ZtX#0E|W z>JXYrr|41ECI|`*umC!v=RY7@k)C9PWK6{a`9z#eCT=;(-Gt8jwHckKavV&bGffnb1VHI*qx zjs*=?(PH|XG=FE6Dx2R6pR0%e_9n^pERkn(wg8W;c7v73J`8h$Ax3|zk%(*(iARZY z<>K>^kx6f80J(gEGcHh1%TF#hhZvTtnyCp;+9Uy9UTu+aL%L3D4brKJ^0;K-G3@1Q zHJX!6qWJ-pHOXN#^FRam^~N2oaM~%ccZju*zqEv?%0%V9y0WPT94aC%m5x8WNy@#l zhFQ&FwpMcu?AE688}FbA&*AZoe&#y(KToV+#lq&6865OW8fkocea`yDO>)*tD;Gr^ zMr$)`Y-mdYGN^ircg^>9Bz*49kPLt&;$Rf7R|5GgJw;@8 z+0UR}@KlY)2evo3*!cL~Vuu5V-O^?nNUzPk9!2C5C4U8{1_$K^I=c=ok4xSa4kG!M zM!zcVU0TS;vdIx&vMgi9_Uf&F&KbjP{VUNIzmB?HB()JO{Xq7Pi7lw({Bi5cLHug)QuP5HpCZp)ut3_rXvS{XR<;~ z=#6RrNcy0K8#Am@*VYKmLox22xGOt24MqQkY1jNF`O;Qvd$e;KRlMlLBw>1GJQ;BZKiS9rCP-dHi^`nz+ose_uXo7 z!_iAi+@$KLLgi6=-kCHZF~en=mMa}{%&Ky*Tv|BTC82_&=47!_$m^(dfG}XIV^0tmuS%cm>;?kdD~f(;*g3 zN*TfnL;})}%extp&lAQHHT&d#2AK{Kx4=LYY@~AGp6M1ctgvZ?pJx2DU?ZrPqq!r+ zi~wn@&(+9TbFf=c!4TlX3n^f$r`yB{A9bP8?CA24;xuWvtH{O3rpeCn`R4n^?D&Bh z*4C1m8f~0cdbv<`9%` zX#l*O%$#t4O=Rk;OcxH6>-2IR=wH9yjO8%6Zco?2f)gAZMEqTi-e*`+5;!tTvTHR< z{^llG@}XURK}N3D0h0JcKp8AjrT8l6AcBsw3N zQxqH;8V@zVUt2i5pI1RLPE*xwjs8~~7@U;TGBBp!9Y^c}s}+uwLcNd?gDA*ZqePd> zwLN4A=~=j?dPWR2A#LyyB028V`?rw-)+oV@7~O#}jvw4Y!+M1;aRk58>tEUai3jL^ zpxuofwRb^1tsjH?0yr_|VwdtzP?Pw@nJ(7SGdC4I!$6>V<^!zU3MC(h>C6KS(6!i# z^*QyFeLXImi7^5lu-L3=On z$k90*@QOp|Ma0TM;4Ki9f|!2;W?I=!2D|b_GM+aoU%1S$(oAbhLyy8GZ||-SU+&h!P*~c5kMKN zavTytT0|~dRnr6F^L>Qri8cO_M^7u|XHfPE_rycfhlN^=E+a_<9Tt~0p^j)Y9KRu+ zJ*+GvqZ|JsCuiP)&cSy-KErof+D4|<9XFskr)N<^3>bCBI z2R`Xs?%sYm-=vo>Bhs@2H|_10k)E&nEMUsy$=}ZF_>GNHM0(zSIY+A3bzXiQ z&Q!#IHuRr0_R6p8H5w2uGA(~>UjEp!{IQiiHUdH&fkT2f+suy{-1%9!aio~EF2OH7 z=^{_Sm)p^li5&C*6z*Xl-Qlg+96oQM{sz6>3sJ{n3s9s0^r zEKC+vx7w(h+-o$lnbv4zRX19Rg$14|k z!U`;GtH#1@T?0V3Ln0viwibY9lVuIwv`P%cdRmEv4OrM$VF3zC?7U>aupX5r#_~q1 zdDHEd+N_O*9auQlz(PIUw8=a(C$$@`HF;(ltsDynun-|!PC;?J7;&@!Tx;@Rz}DcX z*=e{E3n#D;xn&6!ZkIS*OU1FOqp|OBlJW$Z&f2o+I6v@K9wzk$I@=Guvq=vGbGfbXY$tqLDQSTX&YI;bE2$hgtvP^u> zkW_QjdxoT%9`6~FOKqa}3`t%b6JPh{3`yAoN`2fvztYD|;y_8Q)~)iV%Af9+UoGos z)qtCU1o3&QsyQjH?ca>UwOwr1P-L0-p}X`D4t->dbG#e$Bq%*jZAGnS_z#s}Fe$Q& z+>?UH@@ltuS2|Uiw9q>H<1BonFVOQ~#po~bds09dlHK#x%ei}%haXd#rT!ezg|ED1>~}jxIJu35#z5bq45I`0;G{7UQP>)zh@8IBVzD4Rd*Yw%9ReF+cZ4PO#F`3Xod+z$!GD*5XbUP{;tEGg;?{8H-QLo=$1MN-%eqYH;|9HIKleFI#4>?2Okh|M5 z9@tD>Yhu#3nCpg7(qfv_4vw>(w6SV%R$>`z#Bx*=($(v;AUskk5}3?%Hv@>TC@9#fqz2Gp6>BGOgjc`=sG)I6DX7u5Fkbo;utk zLnYWP#tN-SJ0G%{&dPO*^}sr4$0`YPb}%}&pO`(}V5uJ4@7l|j;Yn>AI_LyT*-FLP z4NV5ej+|q1J}^#V{WEtaB_w^LBUho(2^E{gdeA&<`b){eL1I`bCWJ!I>o%DN`NN($ zI>?^{t?^#=u-2;CglfDm80x)B@35D(c6)|$$J=WK3d6=xs%8iq2g#(Nk{q8qQz2($ zFtmmpqnM-K4O#bFr{+jIly^A%!A?D2I|v#3$EJei__Pt5jLeb3g)^IP`SuGP-)ZZ} z?`WAOgLJrgaz1RN`)Rj1*v*#C-R9G-*&e@$`-f(GbL@1vB9VH^RdvVWJ)b?}tah?q zo6S)@PSmooj-eHE2OPF+{a_r#v$`!+YvfKW?t0PHX$i%oJ?JQ>Qn5n&Xk_kJ9ODaD zqt=de4;<-k#F|AsNiUufBFS+i>ufrcO;a;8awl7c$i$nkv}4DuOvqx{HyvBfE1|J7 zX$(yw2V+yve44OUJGP*8;)uHz(rAR0(xGHT|!XG;dHw=ZsDA+D% z4@@?D@GOvWB_~$nk=-2cgbz#AQmXB$9mFQdVYzqUu~?6-O=qJY>y_G#i{!;|FHt>i z`g0CL&T1`Jv!}jRtCS2^jt?@4fYUoVP1;=J<7T{2fF%cE=Lc3+w5~b~+I92iXG)=1X|LeiZTcT$a3R)V**AEkkGK z$WrjOTKi^e#MO56{mp}(H*5(Uo1*T9tLr$wxX5@7hG6X|V-DMj$!u=aADCM1LOGD^ z4hlnOymw--^c@#wL&#dRmP{wEezk3^imO?Fev{i7~Pm^Ioyyrb`4b7F@ z*&rXc9%Taqx33vI*gu{Gtj=Tl2!HKJ3w193#Unf!ZPQuxmH6FAk z4W~7asTL?W3`s|_J2?|v9;YXi>DP~PgM!=E2>3n6L2I#A>DOYGPSa}hl#V)~LE2ug zrW?I9=2pnvkGVq!`2&;R>o{yX5+~V^wP1*3k8!JcQ5_VIkB;0qqp=u|C;P3Ux$ha2 zOj#=gsiW%XIo$d4RNY}eIx$X$!=WKOa`<}G%o5B6_Kn3%w0q>J z^v}np1J6M$c;YPWdwjm!@WMPXp<7?DFvuR{^ZUtz^5i%FA+H@CMS*_(E*|!c!uDqMnjakM4W?C4tNb z)%(lzsAp4sVV<2gdgIU}8Hh5zN`yRNZ?~R}b|)vph9g(W8|){i_?@jb1KxUW+zmVI zUEd&a;5i&x+ZIQ2WcL^9wOT53F(^mFe%Mp_vN3&BbvC18%#(w3&mXoI><8ezGq-O) z78#vc&suiNMIxB?CNma)vUX6drBmn5b9cJfgN|(vf*rf7dR{slc>~A6MbSD$BF&n0^5flvzEz`v1A7) z9rICBIBf+i4QNY4zhiECN(UFMg5B&Jxh=+UCt|EM&hn0Y>KuGkOJpyy4!E#V@zKa_ zbe)f*xLNI_)5nL9-Gx}B5}Opwen%}{@?0F&6OLwj>>d|ljj9l5&7)t=x!sO5c;SiM!v$2uoN2Xt7`oz8`a`<|F-6!!IB3YzkA-1igtDQ0ELuG2JA8&zt>43(=_M-Z zbT&xLxsWg9>?IRc6Kiwp7=q2FU$nyW9=C&l=T^J!L7SYSpqmVCb9} zGNnV0rGJ)4n?n1ZKsxBio|Y%4ql1vOS4y{f=JR3GWAfT-t#QSeIIX(-r*40t8uWrL zwL}MF*6@|hy?P^E$(qMeuV-}bwp*$w!9-@jpp0u z`EVrPv-EpD@YZ>*T{s=|3oXx}Zxp(Kxt<;r27Rly8Uaj)?R3W1IyL5u7kIfe3OLSE zdCD`XY{=HmqyvdgMDVrFEJDhhPABs9^IFQ05{|9Mra|q*)T#JSZ3cs*8iLsCy4t77 z)L3wzc6ycZnHj3Se^N}F!{b=M7Y_%cwUcPyn5&I*BZtk^I_;jhJi~+PB=2w=1D1*k>2d&Wj~a&hGBn9uF;e68OOo;r??ZN>5g_I_q)Dx96=>%M(U zv@c{VtzC&9G>07d zS|rp7Td^K+r;-WScV1_8Xujwhd;OEco;R5*<_(6($w|kQg$U>cnq;2z;;`K-^^B<* zx$qQEDyB-T+HM$(Wqa++1YOl}p66hKge;lU?m^F4b_c4hTK>c|teza4I?o$LpT~31 zOB6GfcGc(&pC;U~3&X_`_^?(QSi3{mFvo{RFXpW;QkcM&In2dfuvzvKjzZNitjD|! z_t}My%xjl<+%IAL0z**;b-`!deydyZ4o9K3CFpmYc+IIsx#aguf`zfiJuH^f-Sgv^ zkUw^G##TU5iqy`-wOY4d984VJPRJRwWMHv+GABo4>$x{jFIuwothtx27|zcl26qyK z=$s!~l4oOw!C**OI}v9xZ90ciG{xPuYA$XHWjd}xwi!=!GVT+P-)lLE_v+o)pw;R5 ztFE&~ycj+3=yIGUQudCe-x240vo4t8F|w9P zmCR`A)zO_=ARI=WF$lR$r2bQ)0_DtNEXx`Kjf;%!~{&I6ePUv+G^oVm|(b;#sszn!xLj%sF@nb~t^ zxz!k-<%^N305RY{gZj4n%f4*wG+R4&$9v^LJLE{ktF1vSnJg7!#rD{FXshSFxo{w3 zNt_%E_N}SHxwW4@uh|2^!GOF~a0|iAAnWg4w9r?D$OYJy4PsaNLbhOY6bKwa$E91t z)4I>?uUCyhzd^J$2j^Wf|9qBAu9(C+V{~q8_a}$esM|ZX1bl|rfu+$49%7Ij0jJXd zt2jRJRz1T={iGKg70!*#u+iR#IopM7wR2H5Ui7Qumf48)eYJZ$G)7KGk&_`Yzxv7G zf!*S^6k_S4v@vnqIdMi(f_dNNDTNZ&-r3;9nl_{@@x-Jsp0twIf-#!$drGH?cz;;5 z9^2!m9%riWthrL-p4;Lc8#|q|rl;vO3)b`fd@C7B#IiyYgo`wsrk=B&+xHyyE0aLQ zS9SZmp-I2rj$`ex5A}3jcU8Rt_$1`<)lOTWfIZLxh zd{@a#EEpcSd+z;{m^Ye_Wt(S3Vc>FBZKAE{&E^yP)k$m|&G)T?;)JZ5Q|A3dJs+|Z zN|vwy9T*O_9qqQIW0|B9`J_E(Jgx~YF!Vkcx^-Cbb!y@4dD<{ZjN|3ZnK|!togbH6 zSksKV$L72xS{KUe*tH>3H<|8a`_4h}z~*pN&s?qSVG|6T^|+Fy3oMq(p^-50MkC2& zJ!%bQz5A^|bYuxweEE^v>Vz(@C*sfr$I(gVyna|RI%}aq$~tsK47~%tCmKApop@ZH z!^7m5=#**`4&&_1)+zI62Rk&VBWsU~ipxYa_&V9~+9j-B<&u7ay(%ojp!Hw3Kx#E{K4W5L8BwP}do;vBgE0rPpm6ucM-4yL8PCL-+f`r|tCV zalc?ciJ3eptPe5{PxK&++L_i`c;YTL$`^r}Zn=NzN zOxCiNCLFl%<7Rr6i%~2#$|SH-OShw$g7JKE&^non&w_!l>0*$u*G%cSyKf()%|h_F z*^L{|%*9rE>~~g^XXRXG;x8BTjjCzFZwKmem50M=Bx1eIS-=6fNhvGp0^W|Ze`f_ zb?e^a(YRLFANI@6Kn1?-Kq{RKwkxOOqSv2vR$yRyBdum8-sw7O@NAzS)!>*48{o`~ z4$Z~0cGMDS`9igr-R_QXNvam`b$qR8Al<6B4w{8Ya^fybgi$FqsM@SPTdxuV z>v*c((J&b5xQdpjBUW<7gmE(|SR7@CpIIpyN6U^~?JQ^0#gF)OZ7=)yE z4V&;+w`Oi>2YP$kHcz?^&H(?-5omY7y#7RlNIM3kBZv94u^SRb z)qt&d;Le-`GnM#prC=|?h9a&svMh@R!|MHlB|4^Y0H?*IFtJ!N$+BnQIjve#-nh`| zXY0lNxF<4fMFmSL8nYCm!il-lJ&9+A`$55b{ zternf8Pn-_*5@JqJNvkj%bb*LM%%a&$O^^%)`druSqWJ7$!C2ug!Y*0qfbZ&$4gdW8L)D-2of-nFVGBG8oswuaWt42v*Rae&|$6IGg&!_nmXS*)4}42PK=np1%m*i`{mbUk}v?oNBxViL1P-Cfko~l59^XLoR=1%H7l;*XkL_jS-`gIs$Gg>gw^-Sh)ZMyX z;@=&l15nPrNspm0w;;>E|&Bm=krXh4mBp(T+ zh3Kem(GtpA)jK%N4RuXP9WxRk4;exXTG8^B%bZff2?5QVwJZj@D>sPAPS0(dvD!&Z zrCg^^4?jb-LE3wPgbPy}nY`1)2XXG&2q&bGU_r#}i_ye;dOz(DQP{+2SATw&ED&@k zZh|mv`VNVF&a@E9KSDqttw$q?!n%#r_o zW=^VQ;lrRZoB#B;di4L%%*$)Z!LNNu9&+|^DhD5>qsaj+-B=0aVKXh#QQ_YWv+1GSP*0E#8`KNZYt7|nh{&81SMmp^+RrtRS*@};aiVAt z<+bStMLlp!nm+e4%<;sYFy9QGD533T11z?u^fx3Uw)|aWtqw7@tBz>jE}Pkn=|?@X zH$zkbtd2IL{Ne^OVJZ$X3O6b?{8?sxlNEyr5Ptpd$g*1A+(<3FlbJ5ok_*48 z@FfF*>iD_Rq3kJBbjrkK)0Cf-WRc8uO;}!>msiT4`)M4X@QU6~bLEIt$tnxBkYR#+ zjIOTOY1Z|y#LANUlo)usdQyB*d?fjHrEEL#3eS`=$Ps267@fg}SD z^7aT0*j;^9JW1s4NJ@W$!H6{o3VToo0GWVFz8t2MzHzH6wIq%K(%Nuazdd?mTQF32 z-n>QZWb}0tcLe#0cGW2$8KyyBF*bC%2EIZP_H?7$NYoSY+Y@K-PoaiV7PG6 zQqJYW-J(z;>1;E1#SfFd$S)jaf<(a1-I3S|Kgpd|2d4vUi!FD_kO0!Tlt6-`grW2$ zF&9vvSV+M>xnmR|0GY%DKa%sfE%mu8jYelz|8nQn%VP2!%hGG?qTCWP z^-!%y%F>f^13Ry72{XxoxOJzLsn;`i%V99FB#WO3VUF1y`rcN4K-GMil%mld_cY-nIpZKTe8;5#7i(RJ7S zj^;i76U(x^#~j&|W_gdv-dX*WY*W8Wd5<;0q~tvo?B%@8X*zbDy0WpecB&f)<=V{- zvLk|#cCJ;;wL9(hL9m&~<;~Gb)g8>_9Ete2og5sNyxwZY9B&>s(~(3gX6qeR{kF5S z(^TRx&vl3TLiF1R7VfMn_x-!H?mMJ6-J%w+PF%uF&T2Yf%0 zujD%kG+@96q&D`<=YRNDcwoR21Dbf^fhPtG_$LVP;y(ADd+zO9MwfxsU=y26G9nm^ zSg~ToT3-Yk0Zt=H;BUd{e7`b_<<3n~y4-RW`n!6yx0)1q?yl5M-t2(iX^R=p0(GlR zlI4or?59~dUpw$C-)-?zw!K3PnW_udJBID%!(~&MVxsiB`}Vlw)9|u5mThoqVji4} zxDktd`*4OUhHtvvGsDJ(5ZYdUUBHE*?T^gUW4t?(o@DX(#I6rh-Gh7jovDc`x3}S1 zPM@#kLcYVPmXw4C3+Vw30W*seAOpA)@eMewl~+cao2qKVFPugp^ejaFW&s6Ef%-;RlPj+gB+Q&*Y+Pj{mpHC9kiVtrM#%| zwtpqI&j)4}r{S={=ev7icA6q&oiUNC6V1pjWR5qzV`+zK9ws}99yj6G@1jNA;Z#}b zej5k<{#u;Jv1=a+cSm}S*Rb=4 zFwoj=p7Rd#QZ|C`tC(B0vC8hbILsLzC7oLQh9O5E-}`3-(H>%Jo=G#QcI3d#`NBYS z9y+2k>C#x~IAxR#uNie3{_=a3!WY(`?I}(T2=}^bTWg$Zwl|==qrjxaGZ!`T6 zx7MD4SeR%$<{i19$I=Bq$qc%7{c6R@?`k>d+ZV(@j=tNM`)t2`nz!ZB=9CdR?Bh&@ zlWA?wjxdQ&?*6J@#`y^CAP#T{#CTq0X$HS@h$iB}VKS>nCa)PSFWj_qke2ApM3+r# zX!nnN-=DyRDH7%sCkw+T_=4W=(w&78@+tE5fW3`YtC{kMdS+Thsxfb^!zIF_Y`n`9 z;|ZwI1vp)rH>CF5J%aCh(iQh`&yxAnp(T}_;yEZuUcuT;fgkXq$l*TSyG-SCFPGY9 zP)$-|Ztt=*x$-^}r<3%swzMoxdysV^b&^2%(T|i1wmo|->Z~@f23ciXU9buWz^x_x z9pxdEeHD+{KHpD~2vXJ5#r3q>Ka3@xh)c7zRBS+kRi37d;(p5eUD%#-@%PT_zK<0n zr=-m>bDEfYe_q80SGp2jJvU+_h!4@TnBX!TUdN1hHq;V;Q`=^naqQAGUH&>Gn~)q2 zx{J+H6KYUqyLeu_1=qYlf(UOX2JiJcf_` z-FWvhIel|OiG2nxkTlda^pmF+%sPD9hiiz53%CSf(xJ{Ct^(mUaGI=ra6N^S*GYkf zXKkfqJ^i*FZu9l~=Ny;phX!J(xb^u910DQF+RgO)=9LeoA}+L_xmk_BF6jFF#pCnO zWA^WEqo?+C*TIuf6Tm+jgW?;vJ1tNGCO~^`<>zC4-*XYqWqopF=pXNGsL8MDxYW5es3G&;Zoy8qwGc9XD8d-!Z={drFhx+r?cDddu`W9IwOFN@qFUYCc?{IX`n4M zq|Z~Hi$UPc*<*})npMyvLeL`+&eLROFfHh_FKD3Cc`La}7KL~3coy!0NNsM+_BdMo zw%*r7EZZ-N%N~#Y^B6qSZ9oi?qx5@$?%b}&Rny%bpkEhfE|L=Gmg)fT$S%}Y#mJNN z!VSW#u7Ur87k<|LekxF=tnyA)&SQ1&+q))O+PRYD6Js6EGp^(GcAowY-+h}>KGDE; zW@-e!6TClDU4B#^{oXR+5xi&$`|XI#u^G5Q5cV7-a= zvN-SP37qlONwUt-W5dZZzQyh!>#p`$HGmZ$5+W^#rxWFNvn`xtz?`TE^E#hE#@2PS zE1ITG0=C9brz5vpac7-U`+P%6?fHy0kk7ffOG%(oGu>v-=4JXu&PeO~?VN*%JWj%> z-UVxCDbYT_R(bxZ{!$B^nUh?85OZ$cUA%p@QiRI`Z@|YYo=!TQPA(=;oBd+wWyu~p zd@>U!s>oGda>XsDb3sST6QL(t%z_Z=`DseblAVB2B9{v2kj7Az%l*1{3mCX8RdWy0 zG2cV1jTiR&^dXs4b}Dd?FSkb!ZxRy%xfPHy^fl6`gDB=nyvR4*^A9H*%3WMuva!6< zn~W}=Iky4{B2NohJWWBhmgLgBn73=T4MAVO)OG79TkElFZPTBQ=B9YL)zI}0l56tB zkQ)dl%|ul=pZ2lM%M=TukL<5NH!#g@d}%-z*0;Au7slg*oX!rXL&a<06mG9W$f6d)BG-K(hjC(GQI+SQvcc>%HDOM>eIA*4(Rv^h*J(MR_UCP?Q_sgSy&eR273_p=IEE zt~R8(CWXq0ZvBM%ZNb-WY&#?6s`WXFgcHSW(cH>WtBcWl7t(`a@IH?sduKWxc3j-| z{uD;hQHC)o-l9e&gkd1Q=s=Q8qNp5vB!!$~SZ*^QeB>0*C@z{fMhn&8Hym>Fhvvzt z>L@8apJk&FjB`)30v1H2GlV5UZQ7Rh42&zrIEtM91rQka#k1EzaU_7lIAepixAvwP zQ(_(C3gVHsQ;9B(T1-d70Fw$Q0i@v&Tq9l~&p5XU`%$Y{7fHzmdh;0na6~j~O7G?{&uq}imiBCJI{(eRxGUMq0It*#t z@4@DFV_TMJ6Cf;*z8?q(GM{fb@TstXv-{igIt~m`;xu}^nDZ1VyB#GPM%HlX_1HO2 zVober`_Pf4nIc!)mSbl^ObRg~e&`L0g>U0Am1^|?kwz1Rvh>r9nhSO8#D*9&KK^7)`W(Bd^9ky64p zjL0uAh0$UJ{{Wqw2% z71=x# z6zT?!x7RR?*%w11WM1$6aEbn5nteg#dperB`ISPc3cECCdc$P99bUx`XjP*)91m;92g!*+a z4GX4s^VQ|6X5SlkC)?dxUTKW>A#(KH5f(dcPgaHn(1}qMhJ(-;36#|z5TY&f>0%>b zOe2Qy@od|YQ^Z}V61J4<3d$xqKP;5tw7oAitOm#!rM-C-GG+6<*;{#q7o(Kk9%YU2 z^9x4hEnW}eJeh6b8OqE@yWY7r7k-T6`<*gWRWpU_J_S`6AWgas8nvF~6tvaOR4G=D zdFCdhiaEPWKr*$23njy3KCladr{f>&I}NaP^#8KV7< z2kr0}9Hj3=xjbh$cJGu7_nY=|a4At$d8fSv9N%!goSTPXxHw8ekXUdIu7*vfa)A(P z_sE6^@1L}uSFc%OyNgwo;;g+!SqmQ5X>t_=ZEJ{HZlkd(P_5Ui=S$R_He{g}fHCV~ z@I8(rkJ4;zTFBg5Z))G1>GpHqUl zpZ5id4mD%Qg~LSzV5giMv1XK}77b>T9HC2q+mm=?GMx;TE_5Tj$27$FhbqP2fh=Mj zo<4fhDnb%@fIE?4{0KuN$Ij;+U9 zb17$%1bhIu08_BFeBV3wF^hX>0Jyg#u^VJgt2A~gck3`Q9}UY0EuLavp@2t}0wX-2 z7cEP~R*?~gRm3(RKBj#fR$EOOn}cMOFPsO=#~%7z|I%LczC`#Y?(TYPQ*nHGfekoo z?h${uq3#VcZj>TvS|m%|Jp)>!r!b0CmXW-^Nt96I1$RG=%} zPmMChZA|f^$pRpNjl$m7c>F?Ew47%%N17a(pI|Dl^&SvO6UbF_3WVBGVWGf^<@sdeHY1m~0UR^tG{cmpu}JxFUeL zp_=u0gd}F4=3JEL9hSW4wt85|1;6^7zZj ztqv!HAUdK)#X$41yQNkHTu1bhKUhDO4g~0(pvO}eo&*pFw|Su#=9USOez{5zlYiMk zq^;8j*_f*VTQN)}F;2za6`JF3lmVTID!HMo_AN@KrvLJf_tQ46>vG6bJg8%R;y*bTZ4mTm>`7Yw)6(AWTu)g488H3!)&fWf)V^YgK)ik1O7 z6NYFW`RaRwy*|llgBQR?tTMch55Vd0)tlpO$>v1!Gme)W#B3jrQ=`soRm~lTa+k9u znt+k)@mqs&sN*6^L$l{zLSJWthG8$wkiESZ>j*dmI9FBE%YaeM4*Kvlu?z}g>_sg7 z3(V)?nA;VilDqQ~2sUva(48Ekt!1$nIf8XDw)Igi<2_1i8|d;IEy(ZPa_I?zs4xy> zAM((v<{ZYVT85+)1Gor9aia3sUTaX4x#A>=VF->_5MX<4?O|MAoN*_~8J5-pPy=z^ z&^fGcVw9s%7&2Md1gbYe)d6gW^_=i0X@>_B7W}p%u;PS6BJ|C9GNhuECem@}n6vIy z54yn!q1&3AIZL`>V8MxQrRE+p6u*^VJxw|W_>6f9s1GkFRWFWxPJ#ufM)khyFp{ob zF$26Kc0|XVreVeE>iWvA@hK!gd3r+QAqv^?aCngFc*X1oAIA71!K4IqDr*mz!8RZF zcFI%kC38^x>4yC<`WN}U41D+`_q$@);y|(Tb6)7%YZEz=VE{8FG*~`HMG;X#1oW${ z#^N?IL|(XWK~>)PU>-tt71%@NNOv%m)ZQ00sL|2*t}{95)H3!xA84Qs7)f!63o8L&388+2mh_uH?7kQeXRq z&+})+-(LkufGSL$1{9c;8@@GSP&83>?E+fSr8D{RaiivE&>i!-=23NEyW?QZmzO1X zQEEZ(^?4UB@y&Iyn%w}$ro6GLYW8u=aeVLJokbag6>A8(YIzU1ch9Ge@l;dt zPMoJ~82SKfH761}`V*oZUd*vtc%nV!6XjjP;BfJzyxpfGIR&Q^pjdOWc0u{)DAscP zdlOHX1`ty1!M~*V?%66U_Imj4RO}&IfLrrjv-GM+3d;;bxcsf<*%?^0wJtu-DGIah@1k zb4qa9<8=pvLz$QQ+LGZxN*-S`rhFqKe*F?>pPspXJIX#&|ajY zd+YeQxu!MSx8{;skEI)f=gST+$aATPTcA2*d@5ngq};tqDo&<0zARbLLJieGndQBY z$0(_lh{kfrYq7~02>y5Jv?0N`aHi8TS<;!<_%ZGKMdi}VLf_RuGo<|Cu~c*S^Hyy+ z^7`E3GXgdY`IKQy*s?FcHg(7rEL<84n>O2#cop#v5@AGXQ;1Z1a<}Mgn#ggi7m})vjQu2{Ff$k;&zmDpI)ZRk9f#o@khYY? zVnP++-u5Xu&y+@PT0FAG*{>*9!_e6quE)^_TWu2H$HFJei`)S3`J^wGiFGb7pMI4U zz2hs?X-KD)JUPdvO+}6xPwm@!vrKg#-soB*wQ zXP={|_FSh8q;l~z42-JfEITS1E3E4vZlGhMg_;PR2qRP6EJ0_<$S(@=M3%OT0f56l zM=C|34(WM#_(X@mSP-syT~%rf?8BV6@;u;oL=8hO8bLpA?S}yCJ@bS~Rtjri&UOM& zg@54)T%3Y^j&wkwzOth#gzcaJ7w3FgZwbK97LZ?erkW1U-6#fTJy*BFfVu-#7hrpW>05oe zjpLcEuuDts2`zC!`)dE?vwb*+vd406YRlqsA zmeN0CW3yT6XcXMrcnC5-AHhz?UK$mFc}0h3GV3*`4%W5q-VzZc$WI!SAQr72J*v+L z{-iX})p84IscGU{6&PT4GN28WL^2tNyO1Sd@`v>#3|e;6gE%$}X%nzdw;aiS##ejL zUc;}dOHF8ST{{Sk02;mZ?FyLscEOX7(_)XtLT;2#Sk2V<=e`#d#g2-MDJ{Q`Soi6f>s5Q~k@2;0u~hEtMJ7LZI%J;5gPT~ft_=#rL9dIzxHjcwc2 z^@v$*(-GjA*SWM&4)$=E!EX!H0n~ZK;DtfZzD-8mxzGSvV|C~$;Ru@r)hCvoQdBjV zfd#?#LX#>p7?di$nvj9@$i1Z_?1_D5`P3T=Jr-n%Fl0PCc7rR_SVp7X#lB`wyq>u*Vh^{S(ZDGB{mRk9}~F}TlFB5 z50t8X-A-d^y`of0z#!Uj;gOfNQ+mx7>%mQ2@*pJI-&6w@2iV*YSj3}_Kg^VmC1VW~ z)7>2Ml&k_f8|+unElm7#=NUMHca{)tovJ<1rAX;U-+@<2=Xi@@9QAQB2XS9LiJiB2 z7RQ~F0sNqtbQppwc&Lm7fsU|7kSN%r#~5X*yj&tR)=xf~ z`(iA-UL=WPhv&I&pKKRdFN|T>RBmjXD0>Fb{{Emdq{sUYyEp}4b<$zY@yMLD){kxg|Oa198^O+uLp2-R--5I5;kIB4#kzQ^C>OA=&kMK*jwv-xDu+Si)VT3G?mg zf!l^+qF|eCfb%F#CfGi-qPfyQmja6$1AYf3Im059PWfDD+2klF}5>J?i-F8=hqAxJ#d6096NU{_t$^HqPs0&7V(MBalk^^h( z%=ln(sC7~200AD>q;UvXwg;W$`r1e^BcEunf5v)oF+6L_?O0I9=<9w?^sEmB=sb>= zEZHWVUoeq~{~b{gRK)Kv7^Em6RRyT z#Y70w$M-BpX<)4>V85+7v>gnh3q4639(l*}%o**?9W$hpg^=jHOLB|t^9k9gc>sZ&sG#jM6=aZN%htkj^|Cf?oy~@mxLz$pq#-TD^)e z+O+}V-&=$UP+doQtncRd-JC52&E!ePq#5rV!pz4%g;EU9SZ>Plz@8;~?8zT=Rxpv8FO!WI^Qlt$6( z#-c4jVmwtlV+xoIoht+8*v)f{Ev;T`pB6<3Z6uyOW zzP6i*xmPU-b!rMN{es&2JsP$F9u)Qge+~=_9*7=amRA@@$AuiH$q~V-`JBfa+QqZ+ zxI7xKc)gl9?Ks?aE_Z(|515lI*lr^TE`3Y!6p(PeXYVj9@+2Jev4K^&y5D%_OXjub>Sj(`Odx7VwgUWTXK7s~=mMf#pYVX$MK7bEn zb5Y%?-Jg-Ed3src$ml?OB?->e8_z?I4(W&z8v~UT#$0b45leD_P-(rQmAJ_Rs@sdC?h6>bL}e52|Yb!Ylg+6o=-;*T=Wf9!S~}hjO=*7JsDuL3ovTYK@$Xgnx-rZq&<2Y zx}>?|!r7|*L;8G<$&;7#u{@ErffH|EtpxHx zA8>dF1Lgtz{9sq-Z2q1&ef^p?9U-|R?7{=~vPt^ZFL5KwPgwb)z}aRiJOHzdM)(}z zTLy#qJOA9=Rf#>Rj4_U87C*06x%%qd%i662c-QY4Gi6U&BGJ*91KT786=j!cm z@CMfw7Xu1&fN*Hf*=AXgr;c4`(R&8@E9y#>^yJv1K*4|!KYq+R{8_3a_#sN*w=GB~ z5xlNpLp`A4U#^jL1m8x!dhKO8YLBLzPA`G-uev2*IQTGc{biE07n;%IrCt5gZ?OHu z>nP|PcU-{9-PNZJR&Swl$_|!ff^3+Ky$C>k2Hc*(HLq3$c(%KOgRawPV`8ZZp7;ZC z#@gX@3a~6_FQCUs)ChRiMej$vN_M8%2t&s%bwVQ2QtwcAN7gxO=Uf>==q zyL~FZ@4smPd{%;~wZj|8j#|S~g!2X3!I9p$`~AQAUf9nUJjCelo1gdxU+@#Z2!;CV z&!JF12&MY};wOF^KlL5&@cVJPzb`-W+rZuL()%KA{eKpKwgUJ#ANEXJw-$Ym!hH`s zhuF-2`5uBEXDvVsn;Jqz|0>Bwh-zPVg?s-A;yK?#XW!{S9t4mU!#mZbuA<-m)z5Yi zsk$cBMkT-qKL!254c&@O1UgFw1ekC6F)Mcv{$SrX08_2_nRTPePw92l~_D{lk?Fil1fKU4xP!Yc8XGPX$QTGKW%9n{w_5ayuS3`a5-x(4-DTet=byiQ1$!$Jxi^1+ znL^zHoAs+TKL3jg(OTtipYvMbOy3pxons1ly}!v9dHvOz7hL?D*AL$6pK9N{)gS)w zt$s);fap+wIt9_k^k1xuj(_m>RWJY}wdy~7b6tD;`L|cr9hpCBZ-3f>wHZWF_wnsl zuqEXH0;l^e2)(KYrt8PIKfbOato!&se*A_sf@yC*O`ibt#gE5-@b-%iXjVWl z_%H)vpadfC+gDxRW(^Q}VM!l0v(@$5v{j?ue;Kzrc0J;qn8FKvQfzKCy4%;Nb z*2Eu*XpD-F$3J-cS?U#^Pk-|Et7y)kt^lGnbl=|eleeFQkv}Am-dEG7y*uHK_lR70 z`@V&}dROuP@!!6El~pT2IH~~H3pENmYYu(Hyq;cQu)byDj(l|^MhZ0kVO7R{}KX%zxtH!-+uZpzyHGz9)A1f`VJjb zR0>s8z&m|>`^8E+8~{ZDH4Xscw?BwrL(zZO!p_8P_~BdTZ?JY&?d^|)x&m$i{P)u= z`~ZxWIGaDFfBg2c8K&} zy!{+r2FBUy9Ww)o{^Fb4KEzo8F9-ekt0rnbz&imA7_b;?S$@7=@jb|TZQE~umG*tp z{g)^To4)<_(=OP*ty|dRH5yU4vqL|={l)skn&SGzhko7n96HX&w?BpJU;pPA1=aEu z#0vf(oAt_f+5F|V+4OY{y%aXljNh|K`?7#6e%gCJbb+u>KOX<|?KjY%$`7CW*5~4X z=zuU1ef*oZfAn4&5Wi8|12YcV?OI16G~_>Pz3KBQbi7}7uc`;Bm%@IxpZ2_c`=b>F z_wnuLUFku8dJgLjw(#UXd_Vtm`k|-+tNE!0e-or0^ptg9+xNZ)Uu=~>AK>Z7&_H3n z0@?FUrTC`1{|z*fI>@RRKJ~Z#|JSQT=m!7$_x(JAt*^rm@0-|mkkT(dox|!5+FrC!aNocQxlktC3^sDcR zR%T#ahR>7#H}Lakj?^FE%(o?2|NVac#_!7iN0R*=B^cg*{k@u43E#h?*7AP^+5KpV z^|c)9=ZU|4{OyldnFCe**B{^hWWD(5|9_tUAD}(v|NDCQckAJQTMz&DAHw1PS`Ys% zkk|9SUJrluGdTQaJ^Y(r!r{MP5C7RehQnX3hyUR>aQHXt;kRo7$a?r+*Teq;hvDs~ zYmO_e{ryee^VHt+)86ya-t*Dk^U&VY*WT0C-qY3I)70M6(}wh)Knr>=aQgLoY14oG zsi-xuC_feT|5;1^Uey0?E%|#<|JhpdPeolz{$A97x|aOCs4JT6y{P%B^9^sm_);vq z*V!+E>=Qb26+oY^tfKqd`#!byFRy&M5BdNIhtjW$&ywc-*8lhi7eC+q)9QMYVSooC&F_dc?UWRYz3YoR7q6^q50#i3v8spf$- z53C{|9wN(#VIe0$B3&bvAv=LSf;dKizyV?zL14r|kbES8;Upgkf&kG+KKv6nFkl4v z$tv=2IOm>w?z`{ab|63(IF~i-+Iy|F*Isk&`tA4s+LyodQdjem7r+1F$zOW$*^9^5--x6v_R~nwUR-|(S}3OFsFCKq`0+jji}a(JyrS-c-vAc;B+OfBnTCUjX=D zy8db)0fxy7^XF4py1tTQ494U_BA{@W(N$%n3>uMUDPh?41 zN19%=Nw2?_NJeq%h557B?>UyIy%2uk(e+o4)a_Pgu@=P@*R(Y+*1XD8lYrWuQ4#jP zT2GTAuQ&&?S9(C{G}8J$fK`c)M2bJOf~_aNFu!a5bSj&F?l6hxS@^l*h3j9Ud{?r( zcu(ZuM0*Rc*c0~K54AWG3xSa;Kqd2+fi&h{fEg*l-}m6}1Ni$jK-+w5{;c^#_{B%& zQ?m@Mp8;Ioxc&x^STZ6hFfSP*B7HBmR4pncrdHB@$MG{jxD;D%;AkZ+mx|wKrGkpi zcHb!RCp=9kT{ zm{0rWlm6=n`VkQH+b4n+&+UnN{;_!>sk95 zQhkOX&k*$E&py05PWWrvo#Fi|z&m&d%ImLseg@O~;&~<*T4MGKrc@Czos1!N4lI$;Pj&EOo`NInY;N&GJ zp~=;`2?*}HXngzn$>*lF(Tsj(_*}GE;-D4;u5P{}PD6TFH+}jp9Ga+m`%&lLK%E*iKUN!>j3DWNJEC zB=H{12>SJ1I6DD))A6&Sztq$60IUy9J+!zSA>MkvXSseFmoh&pfU^|yO7j5gU~eq# z`%gVZi@+L8RUirIZJ-1U4rI6)24vITX8iW`kEU?%Cq&Z=3H1{l1~}`#xfDHxD84Ia z?>6|+PjJ33@%~8;^9Fc>Vfcjq(q2pb)=!!nFVO$VkM+f9fV}yFIZ3kXFYxePD9^I| zD6TIha-r%bCnw9|(y|A{x4g=wJS8`o}2ue&TDeWa)@x(zomQb+T zz%MBkLIPZrLO32h!w*ZPD^7=&QAw9Jeq<$J;`y??Eks`8mr8MHNghg}GwC4~%t*^Q(>E>#u@#1YhXI^?PRGIxlYQ7W*qj4=2i92%YY` z|Kw;)-W8+Qq!a`Y?cekb^+G zG1>MJkGSN5)#&*Cy5v~vljZwP`Z{55|N4Fz+3nB09t+zUv_?1j`7eLz4#Kym2%-`# z2vOAF4?+|OoFHfswz%|xiYa=q-3ieB6fti%Mcv0)INNYk*kvd6e*IrOeLCK|2WKb_0T~kldf*g9)(+w_ppd1b^RxE>N{a6l${h4M zDAGGIxU){ZVf1}yZqLh!wAMZ>9c;pVnCEC4+zRJhSO^dSj1S>jh(nija5aj6^y4Ab zdGhq>$+0lMdLquAOM-$x7vVRE*nAbb@jc^GQT_3sR?Lqs@Sk1;PSbV$rxypXVYYYp z?A105tVKI3T0iN&I4{Q|pS~2(GygT{{do5nL_SNZSJ?5FT^B3;poPwlU4JV+NuB3s zsdE-`7x&Nd;Kkhl&V@iRKZmIM=sr=mx7Q1^yU1D;(nQgM1Z?x-5-fQo(!e%Xr1+%t z-m;ey!`c5{L74B_e-nNl()CB-`3L9O`WyR4&cbt1C?oI)AR4rf2tjn`7B(dak@$)w zL1+aWj>H5RdZz!0zJ)l{u8vXfz2gHkh_$5j!N)}cK$c5X>7&xepXMKb_CXO}DI~6> z6!E2tyvJ2RxZ{-W-7^>*a(~ZCaS=oZALoNb>0==Esm~9<^6-v1n0>!jC&J&vx%M8$ z0TviHwsM#nT?c%<`e;igB%72P5wkP`tpaCPac zKsF`P94K&s$e|t`VvpN{>OXi*@W46m4chU8#RpfuqNLG&nu-YHdj%>NOmR2|CU|sb zPRz4fd2|WGz5dbx^CK^O?)E3Hxc=Oa0HoDBkUq#gd(HLlpEcJJ&AsOOncGu!L6*CB z?jz7W;{4eAk@aq`r1uI=I1=e_a-zUqgRyUd*>PRG3c1!7Ww{G7eDOZsm|z#;`J+pI zdt;uz0RJsJx(A2b6Z+-FaW>)T_Ef6xaw_lU|1K8m1=-#|tn?Ec*EbjLLF4SQy~@+O z;HnFecn-h)@>Rjig^gBNaFP4z5V9_xJzjj2KRH(jJ>2L7=$`lg5)kYmf9W-`(e5Ap zl~WMv4DcDx>mQt5qqA$eFF63A`MmI}o*%u$oABJhNqoL{63;H|N9TS{{?MT+4*I$6 zpWWwezU1qk{lCxS>;A@@`np9N&GOPB!+z=QzI8vR$+Q1f!Rg<%|L`^Qcl3Av?tgrm zr$5*~a^de57Cd**lXu`gkP@PD5G4fNSQIv>Rs>ZAkTg`az*6=(wkwDzrib!~a|V#} zAY&(ihYXJYzGz_|1Gp41kp0=K+IwcUND>|#-F;oeAWlk=1oz>2Rp1Gv_MYF5YUzU?N#I_~ zKmOpx0rX0C8XuCK1v#Kx6LM)cl^H*Hn|VFU*6X+H2l(_qD%kZkF7`cbK6)$Gx~pow`j#QxK> zWIHm@-pc&ijUYIWaecbGAX=e)r)1AMX;}@4Q-2U10D~tJfm+T0{7s zy-S3C=C)+LK;rJ5djP*Lrf{6yeQxqti1c0|gD?6%oZr{u*|GZCjeI}y;pzM|z1OEp z(9_R-<+kX0kSq6&&#PFn@`eiK0wppy)Z3r z!Z>H21-ZKItVka_T3A}_|Cjf^445sSNWUqU4np_r$b5k(Pk8RhI{@;&jd$}8|EF74 z^Ggw`|8@j+uT{L(vnk$mfwDGf4Ml3tfYa_%`jNJOouYV^st{X;S6e_PTpf$l6w`-S ziooJQYUyF$V;lU4i9!c&lq4K`%K{WSmkw za3A7R$3Y4xd^Lqk6F>n$GwA6ePxEdtx>!t|chn>B<|lVn%Y9nno;Ji0^Dj=`3w+*1 zZ*Pptg*o}dx18zI3b}sUp6;5W`aeZG*v zxvPWI{!-B3>_mT_puu;hh2xpJ=}qYP!XrFtg@>A)=E?py3%38R{cpTRm>pgH|K&{K zzq)_q?CM|t@jyTL%v#|w`bD(+CL8?pen^Yt@ymrePfL%VJ|(Hn)2C0Kl|C32k#?xR zE#4w1x;wd}7Z_i?+6RVc`F(zH2`Z-w2?c&Oc=daV6_NB`dL;%IYxIFeK*&G1D@M+y z;j=fP!U?8t-~ZGFK(A^6(EQO|XzsDn?rHOj_fE{kkgsTP&xq&Mcb|$ca?tG>64n3u-n%FMo3u=Eki!^sKEyuqHg!%u|n>@WQR|#3a(ingI*})9Yj~AbOR{H1)N_vt{K79^9db0iO zH}k?S|IJT74kF9dK7**p>G*7^|3vz}z2v?HqHnZi6M-9`Fe6;f*-V}ca#-x*U1TC`_~G-`L6xJo3PKmc>Dk6 z?!)rzjD6>nK+>TQ_*3<>Pu2Xhf-lZ<`B0M+gnKE7zU7qsRCo`tXGXvN4md8)&${*E zE!8blFWzinuy6G$JL@GA?ra==9uw{thLIl>FF}H@1bKa!@KZ7OeYZ~3u?L6w6JA50 zqsjIQfBi&=?*5SrlWhZhc~Oc8Hq{ZLeT`mGHdw$_a*HHDTx`RkZx69V-HPCn?`goL zS5VAtfty^*RvS^UVvci!CVe(N?vyd=wi@v2(d2T(vXKRFyB=N0^lyC*F6 zi#L7^Z@w<``@Mf~i)Zh~Miv9G`uY;=egYi2g_@fL-Zf4gcUEfg0Wp6vM1l?*R?7xheslIY?U@eB8}SkOi86`q8v zDlA-3NjID66l=2cZU}p^DBo3&!0mtebF9jH+C2H(vwQ*e8$5ImWVfu->n|fmEe=Pw z*UDeJgVMtu$&I;>{-37>azyv0{OJ~po`<^rncK`;I8(Xe_|EyG#ua2_^j}LKCzyZehsRwO7Nn?$2b1bzCQO>t0x~nQ}dg4 zA6|V7uehJOJ}%RLp<|w?z847p8_?iw{3qg@Upe|uXL6or;rbWOmg#d}e;%l?pW4|- zzqnhd`kTAA-?Z$W&EU^toFkkY_^|f?ytQ%}3%hyS2vjYY7VfQE$65FSPo8LL|33vU zeb@fyuOa8rv>(?`Wcz3PM=nfz3QTL*Q{~1=KkT#s#cV!U?K12_r4*v^*DtqGdnHnZ zQSi-My;SlqOV6L5H$HfyXHKZ^*WjNAx<9-I z3!a575$taPl(#lSD7NK$(v^P%-1J?$;H3M|`IR52)}~~sAAL^?zh5v5Bo2XxzW2i) zRN%%Lh1a&b4feCQ1zWibwt0?7oJ1lN*6(NGv)dsGgiSsdR6(s-9Ze*Hw*(;(O9 zYxjWqdZBeekMkIEmu0{GmW=#6fBQ7?7l@wYvHwY-&LDMKIQN(Oy>O?~xY$+Fhc{C_4GMB0ZhP45 z;3m=kVX5Hn!)|H^SGov-d77pcHOz(E55*c1RE-Bg5e3_qSL~hbTjN0g#hynXkx#GF zf((LV*q#zzm9-#vaoPS*LjjBHPaoi?iM4;PSRLQB|Lr$fB>TAY@BO2DX7kML*HzdX z_F$~R4jkuy_v_fp*VY=(Uv)AAP?DTVj2A)<5%>`|(` z;_jJ>f9F8Ozx|pOax@YD-81d}gZ(2H;=Ej}0@$w^qChv1+0ty886-^N;sw z2~hJNyXlkPL_dSu`?hfS_=ciBi98(wsKX(_Zv(~)l9!QA)`3{%dF%$sOBR77fIKEBe|NYLx z53<-XEBbf;!h1)<=Q#M@Q21B&hQbNYGwsfUUcb7{Yf<^?fzU^6j;FT~`ls&_q4)Qb zeF6Q=h1Y`m{+>UMklvi#2K2qJzQN*t9pxV|(T+28f7tTtN9H}kdcJTQ+<*C9g8R!4 zt&|ILKiuxVS-4f;^2;Yyyl2TB5q`MQi3ryZw*y$7z7d6PwyJr>Qo6g{(%nfstMgZR z+!q~R2*0zhhuxzIUZn%_z4X5&^}p!jCwlHBJOLzo*a?5w1N(>cNf2Eid6w{2p|W4v z6@LhMArR;ae8Qm=IQ~ru@XdCV7fO6@Z=UyKIp@R9dg7!M_S{s6Z}BHHbDF{9;IH#JkL~UkXh*GZQ`~esz0G&ty9D*6?HBF>`1-|q zL4`9PUw_lx#>pq1eEe9**GbsPx({4?v0V%-qvHKS`>y~-*WWA}a9)rm_qKvP+P(=T z^5CX9FMac1@tdGG|02Y@iUr|VGL)tkAKbXQIvD&##d-ja8rU|$)!s=f!tJG-o08&# z2LM(h?1cm}EY7%OUK8rN;m%=DZb-Jk4nWo zFeu^MChDVS=ewC^8D{dRxO-4hmp5am{(vXpCW4)xff$1YqZTxO{2ckP`sB(@t8k(E zVfAWnpBE=^9WEn>gZ)(muA=*^=*`joa&c0J%U4Cr!V5lxN#B2O;_-77I($|t{(o|{ zDf)!FFvX9bKhB@#&(Wv(Qy8}lf5q>U%478DVf34yCr>H`FTmx%x^w4hQvh>McL;Qc zKzGQwJLK>z@^W{lJ6D?miF>+3p*s}1L(kpa0Excb-RaI1@aBgFpFYl?l{P?vNAmMW z&q~D!0w>Y&1cejh`J*TM_WLjOJdPfH`mwB+?&X;HGw7t?m||8xLV>8oI0awAEViG) z^wogxAMN=bxHO8tzjrbKvnu!%H+lxnkPmM9fgLiFkBSao?g?qVqN~D1Id_GAj;^Y& z>I%KpRs9uR<@=B@5C-bTA3b{s{q5;?Q9ScO=|_Sl{`gM2tADjL&ERDoc;QA;_LWjT z)PxjUR3|0Hu?}$~$YUM)IgXRknx1@A{Sav!C>}!?SGSDE zkBplL#fOke+fPoBH~8pLady+v^s~puBIZAnw0|aP|4h=l5_(u0ef#Q&d3+9ZBg zlJ>T>|NCGYKjdW=Ilb$zJCbLll2LqV3qA=~c!;&)OI!B8Q}_zswg0V?%Wy23y6xXw zUnyXGe_|EZHw4UYf6&doE}nkU{gdB6c{{&*(_bndZ1z}|k7@&v!C-#2PlObUOstEjtM3Z5UbFXN8{nP!M)AO^Bum9ZP!B3KH zP&5HsH*lowCn|hE5D4NzzIT6U|2+U3c1?VI{d4;q&L_q9`i%XCFYrx2DBdyQ8v@_Z zEk`?i((f}kgWX{atrB>~i);0Zf3fcqIfd^iR_qk!MvFetat*$us9k)>?-R8BN%g~G zm^dwl{RC1=e&%V}i@zGn*YDi{|EjRODuAQqy}16>A9O4Oz6}T)uq4m}dbb#H*G+9Ff(m0R%|+;FR_ zTw*fpXucFImRfRxJ5q3!>G~slz9M3>qjGU~k`0@@-0N7&nwEQUGg*zdJyuQ(x=U)A zHFG(6;kLO6og=ZmB)p-I+X*i4II)Iq;&g#pi=1ogshzg8q&m*p=5AzTi&~wchSQq3 zXsd3b)UakPS_C~ws*VYo9*u2vg-usDjgN^5)v^emGf0l-j0w&e7GZI?MRMfJzrr9N zPd4ss7N+7XMfgyKKT&c-u0ILmp43D{K9OX3w;qoso*QGRBThVTBF|du9<@ozSXrF8 zGqc?8VwBd2W42zK25H-!^YWT#&=j`}L~E$y)CjN5$N;f}g@mASGQkkrU3ca_Q?1bb zAwI>7EgLneZr&UBrgJk{VN@#X+-kCpTJ)riaqB6O8%A4}sC-0u)-+USGof79JGGio z6)0IH3_D-$YMn$(^lfu7Z%ZsI@wLe5aEZ%w4T|qH_*p+%Naa}=DV3ldYn^Pw(Q19R znDr-1v)Ls=6!BN1EyL!7#n=^Ln8`L`7I=6ehSc=txH9TQQ9l%Cl!)hjMsnB?K{Po? zCf(IKiaVIU#;{dGOUq@OsRV4+&+A>QoA@rnHvDomRh#o3XT@xFoSSs7gBe^cNUZ+Y zj5cjQs|Cy`t4vH($D8yZ@q9L@%W}||g!v*5g&m<13kQ!>3EO#$(Af#;dakH+ZQSFf zg~Y0xDCtY0ZTCc%YF3AQ98zu4NTf!t)H89)9n;9!P{#WPrcd16RA1X=^_MQUJ}x{;!F)~F;^Ees%`db z`EcX=v=OYPZ3P{O5xb~FDO+cIDLT~HmQuzxL8Ydk1{o&mgd`VIvz)t)vX2RaNS?RM zgzmNK+9p~lp0x<)b9Nr9?lwvySv1XEgfCWdx#e4EXBeTqrQG6XN|FalI&S4iv_ivL zLnqzshOm64j06-`TjjN8KG(I{pq!Ow1HGR5y5iTUd403Mn!AwW+Mc20$XKqG(aK~t zt1@|xN_;A`YEi5qTNN8ra9c;l&2@P!i#ivpbF)#ctmX0!t@vfvX*~jWQrx@V8(W)ojg6 z4kubU;1n!x^RqSNW__tqGF_(~g%m!ZAI$qt)w4tzyF}uVlGDHc*D?8~wPQ z^n0Q_wtbXFyp2RBd>VIK9?uA(;x}h0;cJ>`tw<8;*)gIh#DJW zG?YAfs8rC9);q>*(_FR@55=%`#l*UmO@rYrj>#Isj!Tz`MXYdZ78ewc&X0cPx`POtgw>BB`Ond9A&k<`TB-4u?&q<#G(3QxPo(qL68s+3QWm zJ})x&;B`aMH&o5l*>=lcFSq=j zPQ7%k?X1bB(ZQC=awxJysv-4eFp3zKS@>N>YkGWN!w1SF#TSEC8dUWlSx6f@Tu*sK zte{bpEXVdJr;_?=)e$#q$4&(aqbgNIsOD@Km$jB@4B8UtZVjEc)wGuDa_)qY?X1|E zoDzs_r?BZrxM_=~o-J6@W~D~fZc=kB9hS$+&P`N$!`0MILmy-VcDa^Xc3Up1e$ydp zJ*m1TX--yC-B40s1jlWwxtGUEyBYh9u2rwZa$Xx&#_djTz8e<`onQowb7^C*-i1QP z69i3-#)XQ%{cDJzF}#Se2?uMZyTT5jXnbTgApA&dF1t$w z@I<&>6(06GyPZ$3giI<2>oUt$GNYz0yV;tAg^F`LSlF|L-IQe;okuo?ZJN!>#?|Xe zwN^z33yvOBIRG(>cM!Xhn}#7~&1S9L-qkRku$gr?UXv6(?l(Z;5LPqR)jE+jcN#qs zOd+TD&-z==nBodOrAH<)vX>SvjH@GoAlZ&Z7+lt1s#d)-3D;TB5c|A1n=YHpzJ@Ft zN!k!6)GQ3Tv%VKj$a+?vlMtqd+E_HDuov`|FN!3R&Rc8&d=S{(maN80#hC~8B>Pk{2 zS=v=$Nsx>!;5%;X_qyv$PvcA^7qmzQK_?Y-lGeK|tu7lAzfixUiZ8As(X^8#FV0Pe z3C5F1tb%@aWNc>ST*u6MV+a9~^wQrD%><#O6>a3CtS()`=%@KOR&!d(^E8--Niw3B z?MNEc%V`y{LMPS^m9e20^v;~xyf@nQSj`y2$HNDW*~FPO@i=DI zjM8rF>aLqPWY_9|Et<1c%V*|kf@MtHv2AoP>TwAfiFnpyDwJb7tT=Q-S{Mn&a*U%O zh!BO$@!n8J-6bxot6pKD4e*Sb+Hq2$>SKJ{nNDO)o)84X_B$An z3|w}aFwm@9@brXY$2mi_w60N~DbO4^je<2}g1s$;jjXd?3!_eVLU!G*#TEQTG&%k3GXfI(*(jCAKa9fOF4ROmk$Wxo@6l-;6n4o(}gU(eba}&$=WiZWHM6*6xSh)l$<2IW;1+!X^aS2LX#j0*X9PZxNJS|?FO}^sgJ8_ zZD>}*#kx~nmp58Rm{qI&YBSfgC~V>@b3reb`NnI|^VSB>19!qDLB3UC;V|1MEDxp& zIjwJcKBgKS6CwN7n#8rJq4z>8X@pHoE5=G0svD1Ib$dqQUJG4iZ5VrDwK6n@MIlM9 z*IWorv=TduPD>wpGsK*CHrw(>u9wSHby8KA+n8neOv+dMl&P^fQXcM5#!y*}-6Y0H z#z%dG=C^n=C!ycPhVNOfA(`v;de8{vDvFTfh)klep=Y&<>#xN)%+Mwz?J9maw_?JJ zSM01aG|QdUd`9VkM$&i{CY0rZFbvghI-(aK2S>G~15&*@U~A^i#fFWwLHPWL9B?jU zOoS0f4HA1f?{!)OmqU8fnojQOAFoWiyeLKbjOpK6Ls5-na_8& zs1@^BEJa??2Pz`-aZ{(WsL5?pvL@Ft7H?$fygAR4)snR>S!M;+Y@kzq;O)wlMWd?f zcDvc@LCD381kI}InmpRB=lLdfxnQ_l5o7RhI>=ZAcL$TCFz}^;Y3Muy(qK83(S?hp zVahfUEG5y7vgp+MP08J4I&X08np#^ohN5nem8!NKlet2on&`(lQ!i!l2W)fMXX%iWhxJ%P7-ILInU!kBUSUL zx9rOGp^zs{eiEcX*bCFNX{xr>S*8X5rmMLq^H{hHzzu7LE_iqKW;<85W-J*NHbA7g zQ(5d(bv=;kmCk71kr^xPT5w^y<@%;; zM`BoE>XrF6k+8uoSUh0o#zahYTMZ_kH)F-l zG{wy9HN(&2b~9O)cbi?jMA5R)wS9TDaM~L$9*&K{Wa0FPHX?x&f{K`pwa-%w|a_wH;~RO5E)Znbi_&S?vsCJ6O(J>x4IwR+BM9GOHP^ z)!4Q+3^B}Oxy+`qBvVXQ&zb|RDR?wPO2{^e7{ge>n4PQ>^-!E_A!fw-dXg-vg8+#l ze!6mmWmU`tsEk|Ks8L<+9A#})7v#j%Ewi;*nc5Lb8b?^Z zo+F4_qxGlS+f%WUn1^hRJU?lVIy@o- zF3l=wm8og&u(_d{Tr*tMx>BzpH?pSHig~ObpmMiNN$WA$!#$d(@J4HBw?~q0bZfF7 z%)2Wp9@VJwCboOaxJgo2lVz~>X2DE+dP!lbjFb^_-J%g>8P>>chs<@%Lu7)^ynyS2NmKE_aY=S~Z(ve8Ii9C6>eJPrF`~(N zn&Pw2-_8Tq%nXCp__XZVh3rTcZYt4QrPuFmLrWR3WPM;r2EOPy?fz^rM&fQy7ZI1E zaeFEv6j}3qPO-PDn<^OEF9bB`lqxGC9kQWpg-y>fm@Jh-p2Wfs8&XXJ>o13$6`nM= zxiB@hq_Aa>d2`hAQ{H8koq<8~5tDKvDNUN{TC;N~3XodtlwtB_3z6IU+zne=p8;#H zECDlU(=|x6Tnij|rm$#v6V^2=?8ZEaBId5q7=q-rO>b(K-|!i;gmjiacL`&fl-!WS~Z`vN^oOfh}O84Ew`R+*^p@RArBBE&pa z8;3GN%vke-R*i|xG8x)5(w%^IlIH7G!o(v2CIjOgA!j8Pl_$t(LFbjBR8xjEqza!u z)V3h>{9dci&CN0CiD5KLNm<#{R>J{BQZCLkd(?Ew(vy^%$Ez*d1SSC(UjWMAbGiTH^@Wi(Wp__N5R*plwZ{u_VD_z7b)gqR>IyaI@ zy(1aSW?3t%$)b%j^UhjO)sC4ERXS`g*1oZnaD)$39IR?Cz(BynC?m91?tp#+mh; zq~>6@kV1a~cArUFzR6O|xDR&7bpISNHX>9sh83nc68CoH!S=%`Z*Hv8!aos=^%$>q zI9zAeeuRTfiEqh+{YV__M|}^c!2xaiMa-nIIg6NXUfbK8quH9vR>6XG<}{eO3#E|Wx~Vp zAP8w?Bm|xM%wd7R2Inp(a-(5~*>sEpkGal}3xbgp8$32^S(amkxgDA{S>2|47iN;l z)Bd`XS@i<~4zH+DS^zBn;^R z{s=amu6Il^aysS?U_aDIUI#B$qq zh4#d9HkO->Ony|%0W)ZJ7#d@cMcS-y@D+(>|2{9h( zvaT2cr!`dzHdlmhosp}}b7BJO=f*F9{6jDtBz<`!h3I15L^}iULv#3J@`1mNDRsy# zw=1l_X^#yd>k;a7hRq--$cJNy-P6fJL=a*)wZ zVK{OPe6ckfleOQ(rOGZe2*;qEo*%5TIkORE104ulmx4idm@&6NUIpVY*MRGKJ=B?c zAbM{o%f+@$wz$d| z!VUD2l;ep($tLe@>K$&n4QPCj?4+${1bDjWx!o}iHpjHr1^2fd6oK;YV7W|5#n5t^ zpDuu7mz8<~!GG7r=MV!L_-?$K<2FBW=_$#W+Gqv&86mID6lcIJN5Iy4w%U$|RO}#z zM+zi4KFKwb9c!bdI8QfI92^#L=hP&=Dn~QNZ*IlF-Qoh7ce~>`y{A0sdxH@JAvqkY zc|FC;7Jg@`8s^dhS`nOxV+wA9oy(0jI*ADk_|ay!OZp6*FD4NE)<<>TK)PY#bi?kP zp6mdg$=>HRx?N(lt9Ja2SdGBKoQ8O983nT6=&WIXsNO6jpSV;>12T z=rAg>@y$RSsf~2E9+Hs9m^TD>J|_h_=f+09p28H)s^*fy$#^@rCf=G`CX<6a3iuJo zRJt~wZ8mnKPsW1JWgfnE<(VKCb5HN^sZus-bg*hpmyS77b}2a3v@P=B1NFAj1pG^w zSBfJN#Oa~fZYVqbz+5Fw4mWJunRG{U)g%3EY?9-Q&z4%o;xgA+@xxUp%$8iXpe>PM zcDiSDZGxn`OFtxfBZ3d-?!eUQ6wFP{H^;I!>d6q3vgxTd7CPN*xQaN&cB{CO)2g@{ za0Xh1Tvn~ffoQ%JBr@5?7Z!qekbB#0aikXY5hPgT6W=C5Nb|9XBlc)iT|1=EAQ2>O zhtW7qwsYWuPIoa_`28rNC3UeewFaaB1A^+fTpA(HrYW_v*=#v7{d{IEAy6?P*KTz> zosFjBdDOPZI_TeZp)n@4%*J)HW9fL67*7BK+fpl0O%xD{Cxz~49XDWEOOrKC@kBsM zsv&zEr7fpADUPV2nS0GywcWD=T4|bu3;{3?bHtu23;v)_kE{$FvUvl%-NN1jN4vW1 z@3g|3Rd)&)nFy~3tdFpyoA0Ql=;&;>nV`zTK~&YW*N)fA1lcxbUYxfL#1P$GZjH6| zQcU_Sa?o&>{A8W3L@?vj9$3!g$`nL`uPtG!;vI}Next`-jx6*f&q1uF~^`_q-27245 zisNau+?K{x48DJ>ZTjrEW;T(OfxyCu8lkO?LX9fZ?Xp9D}TbxPjQ4jE3Mt2x?-=BI?b(B4}5EbS6#)6C8jY*vh`}TWQSw4vqG0- zMV^>lOJVd%wp}dNk?FT9YrH$;bj%+VslZGL1kKn|!(|8GptT)urEFu~9y4Hb1iVn6 zZe3(21j5{JHCj?mOEnaOHBUtPytz~&1slj~NMtUhY)%Z9n4xe(q-hL7aIq55|8tIP zPnb!k(RV~KP*Zw2Q^}=At;ykz)mucP(PGi2wyRgnzLMjqUkiuXqEZ$Ux`?@ynNdz| zhbxH4S~Ta&W==Onb7v;Ys5c+DtLb2Fwi~<-cpBTxtN8gctD!~wu{Np*iYU129ZurY zNJbqi)2TJ?&5@)HQ&~lYB{;(A%3FaLnw6Cta(3;?uo3!U;V1JT%2xV@cgCZ1z8;%% z(VHnn{9(RLL#rp((T)b8l5F0T*-@PxcD6eiRU`1PBMDOGZ8K(j+r|p~f?cBmrLSOq zua<336+3+!annXe;zbL>Q0rXmVN+Tdn7)+qWJvmz#RTd1sd2SWtwyyJf^~&Yhjwx? z*C7gDMbx?2QFa3~i4?$C29^5 zY3Ak2O?fntezoR7(Lu|TGDO$hkDql$t8!cs)0-N~Y*qV==^uoQ7DTqd!k zJ5Ad9f@s!Ol$#FoSqEZUeq=3UUuL#mR@SWCj0SXWZ1?dRSi;yKTs1a&Rq`RuP@8Kr zXG$lwZS#->MH+*V3Qol87=wzit&k=aH-^}l5_Gp^THi25d{XX|TXPpdi> zv`nEy`tHrE2%cE_jf`TDu(g=)T#mE(e2kZV&Lvs+Z>5N~gYM8Hj}jtDP6t z>?Ttg;totQT3@Zs|&6GLN@P742KLrSK4FJIAYxAX5^viV<9^4Yrm-?{MiGppt|2wxRocdBMj044K+XTrulVeOE0Hs}P{u5dwt1AOSmv1zlVB7Z96RK_IS& zE#@g(Yn36=66d(jaKq)+RLo(5y7RJ`3lx`Aei!Xk+YygIP@N>VEuq{RRhF3?*Kn_{ z^ILsr*3vX9OK#Y6gSzQfDl(=OG5bx_3D%>T$=Ebzdcw5KG-eK{DS;j|`hGu6hI&n7 zYvbBzlTM&gqK;d26(mk)#Z;SJr!o#ETuvC%ErAO_v^Y88ZTZc;ttC z)sA*mqdVsZwjwq%c7PzE?)f}c5BYUKPijeTvfgy+Ha#E{2;=VhTou80-eg^_VB571 zMKE$zY8yqIbh)Z{qKkzQEIOj$h;t#*EG{u{unX9@=Z2P9O?qNJU(9M|=0hfj$yU25 zI_-X=^bdnvR9!xqeBv6}GPO+-#ADPh21hPBGwX2qf81PONw zw7Ni64V+`mP2F_*NiQrS54&v)f?U~9^~z$~h(nR3KxskrX1o+IUn=jSWpw~SvBZg} zWz&?Ka=SB|wFYw?*)T~(-mDVAO$Xbpv6$7N`e^9aTia&E^LFE91tQ8kieiw*DAR3E z7Lw_xN49EdwvIRXYTk}wB`XgqilMjHyR8vnJH?vhmdf*@1lEeP)YT4MhY~`D>>5+5 zKA_d%YSOE;>g{rK;}2P^T%lY|?Pww%DQslQ!=af}D#J80^-86-a(1i5TAGe?jL^y$ zv1*h%Jl5c1ScVcgml$%QhIAeB*5G?b67VqO`k4`Kva@Mh8;W9?X}9ZLYN80af-P4z z)c|`m${Ldjr6?M)BeJ<^fXv;}Hl|a}!DLS9YR+&1sl_5T!($DPbTVGd6NnjZ%4OeT zQJVF=X_`=D!ObYGjBA^D28EZr+*#2)2fi1v?y^F}M`nhpT_}&E$97xoH6RJy+5j2& zoc7VpA`9n>af*;=FU3+blbg*o+g+pN7@dhwM3wF1OF?gB&9T*1z|@`trcN`XqGolD z%w}|6_PcE(!xe96#*G$I&mfis(XAquWq4!6T(#{gS4N~(t=6m6bIk3aLmj~gh&I|y zbu-<9OmlIzrYHz1LhKD^k#-NtRW=ngDQgXq5+p&; zp{htTR!{?B?_66>A@e%R7DQ*}b`24H(o{hDqR5al-i=XZ*dEFZ03R<#spsVldz|>W zv2nYj$g@b#j(WPCWmRy+M&m`^n=!EixupRSjqr6wjex+ND$EuH7Zifu^{0ynlld9V za@|4Zl{ur0w+1*h-Wc+E%<$=qPmzif z3iVctodn`!g4OK)cASJ00(>X7Qy;jnhH|Qyx4zx?Tw}lzF2z#QRoVfv6F$0JhUBbl zHZvP)Cw(>H6II&ae0vG@_GDt!rgK+MDY8pg#8CFeLny2rqrFw0;SOX%v>02pwm2Bf z!?-%Mh?pDEl<4~1u|$!(>3q|QtK+pfSVS&M2o8vvM4#1lfXLMYp9TdILAEz2r| z;pm_vmPwuNaJ1NI5^HVXGEk=!*#yK|&2_Nefef3JK{_?NlRB(rZahStBGv`rx>}cw zCt&|;3ddUx8SdIi67}#lHx36#WVEL%*_)>h#G_V&Scdo`*?}=2xtsYk1#tp%&^7Wb z%Xt&2S#xbElU!fO!a>*R@Vgl#QpzinkodfoWGSMBImDvLwJFt8rCqZuh@>=oTE|->4~O|^l}~QXa(E=UXmC7REFwRyQo7Lh%-Z2sC9JEEl-(U-u)YC$hg}&rDIw*4{MD;R@no#_7 zm-q=jvaDnQEgMA4iUM&N25L48h{kfds~O3t$Fge$(whd4MD+=j zR2YstZ|^z`lsjet4Y4^=S@t*~Bl{Q&f={0Yz8g&lV^$ABLgoihN7vew`*A<&ba+X@ zhe^j}HJn&v2(5DUUdwh-$Bx@&uCM1cnHp3x36e}^z|DKZr4U2O6J0Ksw{@(Mft9f9 zb=}@@G=O?Li=4#W4X4CHTOO489Wuy$o!I+|&J7%o+ zyt?Q$;>?FmMkz;wbcFc1FYh3uCPhuLJYteI?p<5stgL9kXdIm4X#mI+mNS zcm8H1j0SstWPG=0h*dwa8f1_V>m5U89M|BvxZc+Fey269a>8=66q-E<-!d(T6Ph&M zvNw3rqWA!v?l5pgqYdtL$52oOIaC4c)73Hwyx6xr&L%H3E{OD{=g&s_hhM z5ky0x$>xp<5*yP3VFuu3)OxsPvJf8$D3~)mF~Q;$J;lgbYB)=Gok?;bU!gi>H=Ofj zbnexnUPq_f#4aN&OJJ6QwrVt4fgc$mhfU)2TyMBpR(W>mr;y~q1@I@z zL&lv}Cq*cen2cHpF(I>R;xxKABsHvtfQ`L1J%$Vl-ePTGP51g9L~Y3q0nsj+;FuW{ zE%MSVO;Vm~O=_E=C2w2dty?>cn5Ro1*Fu}xd%aD_qv zZFv(+R1bX1Zr4W=4#`;FLHcc)hBrgV$v~LkQr(h4q_2k4>1w--y`kVS-k_^(5_Q35 z-IWGO2XGLPKE(c^qRTaKZ7jMTgZJZ393W7NBG*W}G3iO{qSt~bgUmzi#Ha@~tkY_{ z;aVDm0J&x_L{!^tpiudqav=@cVK!CAMsJa>h!s?6GEj@vD#yDf1OaCdNR0cjPjx3_ z$Sn!sd^X)e`e-gzM!Vc07$$?@2FZ(pF~}3}k3{fg%IbJJhQh;OxMGJ4Bdsu~v0F{L zd?BCa6|T2S`b&u4iCg$1b4cbf@ov_kDlA2A+}3`a{D17d39KaBc^<~)@jbpvQe4F_8cOW^-@i} zq1^kv@6F*G^-{f5cUN~;^*$MeU;s-5uO(R;MN!NsHXX^ZY{)SM#gPR#fg&NXBgr-a z!H{6d01XIE0>m(-*i!5``A${W*0*lod*8jZsDJ~!ce}f)PW|Wq|MQ=JKUBHiTroanb%#p-vYg?p8ADS;19@YLTUHy!KYp+o7u@q8UDX zb}?otOaon^z*gvBYb$M2A!+V)XA0#EpNXb@?nIATvZ=C240j*Xo(U-w2dpYcaAK%H z9MQFLxyv`5eo1Vsdl`?%_n7n?hK#LtYxoz-Ef6vj#-gh zm;!v0rRBO(93tbm5p7GUt>`WzS<%l%3*35(oDc6V+eg-8Wt@|J-a5&XkS55dhEsbf z&+6$?0(moXuGZ`)GU2>O-VJ=KCX52{KbAF6$=UjE{=`7q7g!MAadg}R1 zvrV%;=vuzjhq|K8O+rL zkL<2?Dd(V;Uxe48LdMsCNt8=1^SwN^T1A6}YN6uI#mb#Tq>+W1UzbCLLJabxP#BC# znZ_WL;dtJkrUM0MF^p8E-8@!`F9Rd4KBPQFc=4;%PJX%NxA6{}^_Ecy)GIVd02le( z<79=c(nw~hHU~>FR7UkhE5B}#qL>K9FUN6T*vX0XDz|FX+dGNL%5Kg#@#I8tx{D)4 zOHPl4VJsz7X4Jwxqfk8}_+?L9WJPBlPFKH3^Gj)&=R-Uzt}{-)7~LdTZ)_u#xIWXU zmr7Vx1viJxAaS`!q{Hz@v5?EI!nM^P8Fz=lRjU6x$}L;jJn;vhk}44^`trGTGME!) zav{YLeakzS9LhE=NT3@w*A_%h40F%v?5vkVz6 z(}h~owMMEKnPaV2UoFb4>7KOpNhZjpQIkrD~^1%WaYiNu2tVXtx>bZfm|? zw1Aw%=$1t$?W!#yP}vB=daiM8@K=wW`=IkPe7;%lmdg#g*>+W64V?nOpWaH(j5QznM)ndIa(e5soAL)t$6oQDS=Jv(cKE~&C zF;yjBlSkgP9I559J|RE$^cg?Zq$jP^wos1ti@R){=X)?o^6gxhi*W9Ijq_xC^JKHa z^fpX@$#We#-}7YR;%c4pQ;Qa#9~NawND5_2^dlxfa;QqNZh8pADmrSgts);DRf5;{ zp~pOONOU_r0I=eL=l2@r(G}#Fs-jc zF$vg7ZD;*jakCpsy_vVOO6A}P$rM7tX>(hyRb8zPy-4M^@SAPx@l7-97h;ecRCDKd zyV{MwythE8enr+$gJOr9>Xzk&I=$()oxa_o=cYC0_)y{6lnj!oo=cO~t5d3UWJ z;E-6xq&@R$8)WuH?-42d2mNxoUJ?C#~+rO@e=(ozqqnAGq3IFcK&sAjq| zdWe`vz9vXyx3znPoY-Bo)syHuCe4{nGD?%7hO71n=QR=_Z-&J6p)j{h(d&kvo2?Fx9P~(Lbsy{at`Z}e2u4NH360CE$VHs;HI%cj&LL)G}f+R zb;4lFDYMv%>WJHlH>87 z8M3{l3LM+~YBCxZ>)kQ6E!ACgwq4@7xn5^kOD3swgA!H^Puv;u6`i!~Z1jB2+FW8i z$fiSC=(Lf;{)sAE--zimUYDQhx_gMcg`A#rw^L4dmdy_9N33m}-Fn(|3kgJpM8MxK z1PD2J@bQ#kyUQUBb8SfnI(a9zm1q4Om&i$@?ry%DtTHs1EnZB5GmMlSs zLM*S;HT0!&V~MJl94y4bW;PaOxl>wI11$#b>W$Q1$+-~fS9j}ik#BUVE$0r?n~vX= zM$)^-9gj9#>vE4`_(s0F9J}DlDF>p3PNvc9WH^645a^6)DzI5m-ni7w)iT~xdFvJ8 z$O%If0qJSuVK9*5s#r)OiXwcaRd&;5L;0RKL723-j0Xpucp_gz;b za(uXiztGo!ByGa)8Ey&Psk2gzmh)LuUrO0kh*?WRR6tgSOp}$l<~+o*qqVdsbqa8# zv=>fEDp&b@Y!_PxR@t`K34yHm@+;eg7aZKH)16+m;-1&z8Dv_9J7c+%FKqbhUhg-hes(K!%PzyjGYP3sn#_V5|_r?Zg*O*7DwG?%S&}yF_bs=oULw?E$3Fw-gMcZGIZ4y zU(OO<+AXhIeY%yWXqOnMQO}E=vkDJ-vlScf&c!q<$`OH`Fj7Pqe-(4Kdn_UhYj)UK1*d!^H>O#VcirK#tM)RK@z#0;9{JUo zZ95l=I+G=5GSzUhBWAJ~`26l*s^t;|50#1ge6HZu+v%1fP@5)A56~OmljB$&oz+08WfXkVwwWSdb3%SndNdFvACM8 zk?z%ieI!ro{atV@&R|^!Qq5epyKGTUrZ&r*5gIsP`^1CG%bM2Lo4Ob!q)TI~8g(lP8 z4iH4xL?j9If1Mi`H#nw(J@k`#-^bA~-;91nzPNBzA9-$+{zqwA39NBfD$H(*a zZ7hl?X@%|t}Zl)gu|;@LJFavvy-osVf}ijSh>df+)i-g zpb|sfL^>#T^3u#RT&7}y@Te>g#%zt1CSl~Xk14mm*mYBUz8=|SE3se<@swdG><)7Yntv1TH%nO~7$5#c8YM{%RB zhoxuRjAt=)MN6GVj-m#2r$5vK2fA0Qq;E`bk<-{)czvram2-;a9`bbS!NIbWN_YWp zsPChEIo9K3qui`VxrX(X*!Q{HF2u_71*z?!a=onI%l8J-cvmm-J}cfWb5b|xTDW(W2(q(URSy2MwX-3FebsKtS8b-U@cFw(%R+iR*l>wV zy(fp+x;SZoufyYfrxz}JXW>mH>46QK<0BD7+)}wt0YpSc5jpLT`q_NhGlR0zVS1%* zFyJl^icu+A2#u>j837bJnsQcm%e23X-2VBZJRt$O$TXVFt^dz zLGXC8yZ(rp6-M=PK7jmBS3_Q{=bmn-$S?fk`fl7q2Ltl11|LW35;uHcNS_O#sIa{Y z)K|G)AdtW$HZIYduMFoqBsHWG?ly9xxo(|hQMxtAEt7*@dO<}eAr$4v-flQ9<{RlL zjl`FM*pD?(Gg%LE92a4`@YI)R+F##p$~kHq?$vsYEXGoj{orXjfTu zjwtlcSkQ^NFPW^t7oI{KD_xn-$0@HEM^TAOZjXh`8Zwklx(b7+1Z{D++;nnm9d5KL zy=LRlaEl{p8I3-budPbe!nWswn%tkbhy8G@Ic3M&=92d$P#1}6R+jZPXMTT53c3fJ zYr@8Y!$!Ei=s2;2y49H!*ahV(ooY}ewZ67Mx!g!9Y)=Hw)GbX#iODg|U6XQV)8%sB zL+7iTZK&k;S2Lkvf(p;pO@Aws2&B{Qau$AvX(A-25y^?sb0*9#ys#wt%?a7FkXg)8 zX|d97d4*gLZf_5hsG(H7=H9f>N5SRe>aE0(W?5+-W-DT-k}PH8(906Yr1$hUokCk` z)2qCYZ{^(yWO*U+upwt+vI~}MJ~dc4mvg)l(O{w9-xlV}UbEHlr9-7HH?C*u6<=z< zM+u=tKeljo3v`=ZI7 z<#I(g0|{RYjGVz(Jpe)!+@8%2{XDiUB*(jbJ5OUV*-d?DW0GMqRho9ig&iC_k!p_$ zA;D?0<)|I~_vR7g*UeBLNT>S~HtnaE z3Dhpc7*}t>$9=Pgf5vpPZg`W#aw!tvbCIa*k8`eB*A3Sux~P;J5wb?%;}I!Fp47PI zoadSO5Ncwtv=g`0h08rImnUUGEH0bbdIdq1)v&YM)wwE40TJ3Oa>YO_S>w1xL~@c> zx+Er=^!hn^JmHx}4_Qi5oy$c+^>8>`L)J~I?OFDO;UX!fs?}bwPPs$KdremJspgIg zjmKOf-=fQ!A?16tz3c=9lN8z zur-uQ%$@&VtV4~tI(fzcukeS`Cf&NgI?Gg(IYF!Bg{yEF`&K{Mja#83}30WRaioPWTM z#d&Wv?aX?cPHKm~G;7|KcL(`3aty;YX%mJ(i9;l&B&J>_FE2~OWO?IpdGaG6<4X3ZaF6o2kV?~YI@j@Cskhy3xveXb8%>(^ zSXi#*vz>NgwdxD`8QbF5`ToWYUEV48&>5j--O(ga-mGS3Xusi)7vb!-sNEtOpsL3oRqP5AOmNDNi2t(bx+Pl zTB}uq=GLNT+TcSI|Ej&Ktt*paVkIX>o3(R0n<4NTNc%kHYJTC9II7vp=u=c<|Q)-S=+&b4zr8u@yYWlg+G@U97(pLkFy}|h4@?LQiB{iKzsw6Gb zg9geS(ksc0z7nl$wkH8L=h9j1xuQM)Zcy_%r{RgSB(|4yT=I5PuGMlRNbCYPZ5r@k z&qpIH0ot~-3MT||aVXtmpHlJNReJ=1cxoXaD?!i+=J#C8)bXNJ_y z>37Cas~>N(yY_0c2^Kn&L^9^|HP-1_oA$)oBW|@I>A6%Eh4#JqV#d@fmFARm2iZbd zi~Co}>DHU6pk2ep%jfDGmR*+~JK1^)v0ax$dpw(TY0g*0)vAsTL($c+N9`g}6ADTa>L4|zy_k3T#wppom`*>eFL^amn%$@<)L?xLx`?69CRUz zgK{n|h>55NC4ED9KiMI=mc=shNjBjN1__7}Aypr*H;r1}S8GIA|2i@DQ_dw)40__s z!%``R;+?xL9qsNiOpDoY(Y6ns_VK7zXZ#aneIl0|3EKV1X1ze^^SXrM%d9YBQ?YO_ z2kiuUXd5kkGG$b`6ro_J6<_6)_ObIY6Y^Cj&RKwBGnr(5Hw-dJg+S^cn;nf;jl!^i z6qAU6QGA;yPvw^Bd_JGcfF`~!a!>0h+v2)ePp-9Vdt2LCGVMun-n_Iy!uzgXp_`+! z)N1Cl?rym*&Sp#`w_0+ZPKO#U7M>J`Qv664^_%`?an^QCH{p10I+c8IXZ`TdbBcUCL`5$bB0?k zv(<%&&4J?vE`PU}Nil)Bv)kEqYht}aS7)@hD#GuY>zCSD&&o4cwB$@X2km!Btrw|r zfN2$5HJ7u|g(>0N`LnA5=RuM&Hj+%WBC~V47ly14HNBl?U_4>MfoZCORL%anmz}md z6qSn1LSy%;ms_;CTm|Mk6YICh4%)wwaKoyjI44wk>k-OCrdl|T{_j=peuxc zRx@Zsl;yGcc)2zg5G94waKOulk}R$NqT5K z*N{hr<+fbkuwosBQBjn#EXRGeJ|E@%(ySYuI_K+cuO@h_LBHRhjY_LtXI3uy{qbmR z|6eqY`skIv=bGlLlX$LG$hkalaw5mfNx3({-DJ+o`PRgrVMREYJjp1PO+Xo3Hn(gN zaY=#Z0%9h&<5Q!xKc7UbVcAO1p^4M!-BB^W;N9^F_u9kHhA1S-Wpect%HNszwmkC= zlRG~O3Ekawr|frb`fJI9l9^7YwGK0$V!hDmci$D6)+@>t-A!07(&5<^7aHY@9CGo&LY*EzX>~W9>=Y^FXqS@qY?C7V-f+giJeYKu zH9G&uncAe*^wDF%n~_@q^0o#$Z@P!MRy61;>}sueEz82q?L;Cn6J*zLNi3Igp@H%_ zcH(AZK4+;QQTb`A!4_&GN}goWQ8plqz4`3e8xN2D?#*Pip`lG}CemgXie(zxU4FLe z$(&HC)rw6YlPxrJBe|LnP?a!JuhYEKk3z0e-^nGHHF&D(lZluU*`hjY6Qing7s`1Od8*!NcG|*pH` zCE5Y^P8?-NvU@dKML1_}I~txaJo$hn}#pz6{<7C767lLuXOZ?Vl7{&d_QY;YX|(LwX7qaU(CjTrQ;xjo2uN zNFDmK$+<+LTSL-*EWQsaR{uPH&a!m1fjxO4pe{7A}B}hw?K#6c)d8!A;9l zA6-w;EFjh_P`OfS<{G*pyN$=^T2;bRcdm&I)V0|T%UKVyGABJ`Q_{(Vhe{&y=6CD2SF+Mm(I;H>8@Z2QANqOeSjAoFI8P)n!FzKC{0Nz(UuSTAK#8`mf%GJR-vQ7JOZ&c>6ld%c`+#cY!F zk_HIme<6S%H-_F0GT*l0qOTAG3jBQxzTE{~Eu;!2cBChDBvllZ9@KcQi0&4iYE-#HtEbPgB`}( zc8g&_-ufiI-0D%N&`NY8LJTiV^*51u6J`AKwG^44@_Eke_)2hrD0?)tT$H@o#i}ee zg2{QsC#@<)0lAypmW%otvwVeZcyh^=$CW`<57UJ9HH<_e=m9~~Nc(Gqyu-*kjEXsb z!{@5cO(CHNF0EKw0jMf^GNOdMIp23$k*Npkby+mO%&TWgsNFXm2QQbIi2gGKc z5BQtCav|s|NX^o`-0lpbGjGA?oIu)4xV%UG9No2={@HSaoLX*7A(~e#FDmJIeN|aY zRk0&=!|WKXUFWSDe8(PKy_c!>JTy~?6Agb2kPENWvsP+n_X$j|D z)f?^-AByL_0-H(}r~W=0r5a*zly#@GOgWHmOk!+`T4(#4B<8-HqK!nMIiADUE}4At#jv9{7wD5ii2}6-lLp*p^kC> z;ESIpkKGZp(=G-Nw9_-JhvJ>RL`Jbbe)g&|vU(!LOXRf17X-8)Qb*Lz$+H{r?Ax^? znJzlVTED?^3NPM&7YO>~XUU5OCxiP*<2>lAoK^j?$OQ+IE2l%^aL9{q&`&H8{zRSM zzrmklhn5fs-wz1C{&)2wMgB;6#B^eHB7l=W(2{0vtVEEI{TR`EZo*{oNUP$*H4;r*WX0$SaRN00FExcyNMI?+)L&E_IWbt$@E0`iD!M;RhU^=%|{SIOH2Emev(XFSfzC`A%pC&~LmQFT0=ouz_mr^~yP`VaF{X*EGr78P5huK zr2zi7ZxitMm}RMspfk(QHozKt=b?g2cALjmVw2rQ-ExJOARl#hbiVQ0qeqU&e5r1I z%IT!aVZ$hAABtq_!TGo&+41Pnr*+lgTF>b7QSkN;0LF18LOsCkh42v~#c@m><|4e4 zd{*@6w^&G(1mGk#C0=O<6d@qO6c2aYGmNWrJ4b;lE2#{8cQ z#l@4?9AsN1qVdVY?uOjn=Er#cC|aI7o-A7ZXAFjiMP_=Nwi5pI0kLBJUtEfHak`dT zGgyl+<3#T^Ow8<_tp*t^k?$c$C#+@WDU(w62ekn&;`kCtQIYog6OI*Ji^Rkj4?Dxf zc>55GWCV+XC}dEtIxU%h=vecRN8_=hD@|u7L^T`2#N8;$77IlYnE^ zlAy7XcCzEG17~(4ZHe3<%S5dsTGy~OCYFj-J;OT134R#*8u|=%E@x;K z@ILpI(Mxu0qMlvE7%!^}+k_GA7n^BWnD^}Mq6RHK>2NB$ar`>)Y3kQSAb!+djbMH9L@HH@EZ#=Tt6Gm*ql zj7-{tOIH>)Z;G0_aG)%ZE4s3vam@7})Tg8{*na}z99Q>_@6N#=)a9fxF#{iGA2RKU zkM?exmZl9`t~&Iq2mVgOBXbo$k*}otS1_XLU%@skb`|wNam2t?)8S_e`JrRN!-r#a zCcWk7b-W5cO&I=;@KcwdR`WO&e^y7~3*`}$a`VeXS=jN?)U%I4Y?RuTXb$!f2aySHWOGm* zL?*?7G8Bis@OC&JI{?2~d2nnL#i6@-c%n_~+Rs^0a1SWBiQ3Tq4a=UlpVp^!r`K!5 z%4(T|DwZH2b|7scSGZFLUHBBC+#P|t4gnQEo%Dxx@EYD9|D|M*my@T@hL7pzZ)P2v zr$a)Jr^EXOL2fXDK0k#!qc z^LEC&_Iymz_>G&8$260hjbk$d%N}-l1ZsXj&@0LD9}nouLnF4L3%>o-nAzYzwE^yO zS#KKJSb4@{XI>+83{z@v+C0KKfpNe;BBsqF&9r$$)Qt1?md_aBddAVYBoxDFxr$Mi zxQ4;l(8qR5RRu+F*shs61ja+`0kX zD+~cAs|J`dll`>zvdtkQAP=ec;9%Ad)M<;v?z3Jp`G$2FM_u!62CJT3`%xh1%Lfa` zq~E^Z3apxW07-f7cOC2JFX0V;>VsWZ<>S4c!e^DKf291eBTWi)qv~lM#EeiW4g|0B-gxKTQk~5 zZv3E2ku&2ryz=Bk6_pwRj zhUxg^TdJ__xVE@P6LRHdieC=cZc)bEf_!p(il?@Gd{Ap zU(GJku(@Z7Z(&+Z=+db9jli^ZnMqh?H}SLn>VK!JM5d)<=+d9q>(VmxVz}6(=~S^s zq1~$f0a)B5KBz1v$Kxk54p4Ze@tggk*mLT0B`9g~)tx+eATOYYwWKaITWI6NU-&@N zoKGEzg=P^KGbP780*UIxP(iy7WqG{h_YOj11nmdnlIls*2|SLnDXfbfl_=owKq5?e zLX>~QH>qmzj@M;eZFOHKBPm()sJ2g)&K?Zor|!g#_5cAs^4ueV_})2 zal2o>7JPe~>LU1FzkJ1-D14Q>ZRU2I>biCD(X-&qg@Xy&+ZgR8v-uudIrX*AeMyy6 zU;EsDMP!u;;MZ&)Fbg)K2cBCEziC*&BZj*C92)E3Egf-aQ=AsScm#d5>wl(%W zmA>~XJ=!~N6=%C{#TvOx31i61ed`CFDywyJzEsZeG+)Kr{(4@Twp;BX z_PVVjYzoggqWj7;-7R~STXpIP?|2Vn)*az(_;XAt(fs58)Yu9BA8-(M0bTJp`z^AW zs#$hJvF}i7gc0sV#!&|w?+h8)JQA*XCA}Ko^y!$Rje4P-e0q{Vg40q$^3%RT5V_qX z>L{($$~h&q9@{%|?e8iXyhOt>kBbF`a5LUXD)o>}E-oIPtOr9XN_Gr}5dLn8J@=CxV-oUjMYi{O=8FG5ECOvb!8a7OOcE#9FcbyUGwDqr})c z!2V$hpq`M=d%)Y%?pB)sN=b-kYNlB=y2&%Fz<89 z5Jz7O;g5`)%inyZk?walmyUFmDTIvuL`A~UDde9HVT6-RqA|%N8j>lEFPhTvkst;h z6W`X;)|;Ezy~X|R!frlSnL>UlBg1$_l#MG)!3Ad%wqAu6%16ZFF8p_N3K-+Q;|WrS zTt`OGnejLyy@e@&7MH@0i5;DSij2H65n$yaR9uA$IO}-2n2N)WhRmZcR)7cU@=pag zYT)=FDQN_k8}h@!zvCnADM<#yM*-YuH{MmIkhNs4UxvH<)9mAm5Oy$uOQ?{)*S>#+ zp)6CN7JKQ6W8%=kL9gTb)^?)d{wUXcYdbOY2*oP-)^?)lCEwakv=wCc_votn)^=i6 zaQ|#?C%R>%SY?$nC50XD7=g(1JiBbgdZ>;k_m%nJL zDS30Wj|1+_6{YauS@t>9%r{4>@^6$rT>CkFF3Q?CyM%m~GW|qWc{syNMX+7L+C(WC@`in(CId_&t zSGpF){m@P)llF4OD|)VAPrGV_Vb4BDQgSUwH{r$R;-wROx0cSMEjQx_D|7zttxol@ zq~ma^#vW?k9kqRrl<%3aXslY}v9os$yR>z06$DJdvUeKWj=FaWW887sp2?QM^GFfq z5oKvjNLNC$v+Q_K=q){~(?R(6ga&tne}_L;i4uLxV6;C`9x?5zVax()DI_(ewQ!7i zv`ySk3Jy>i&FY5OFwv6IF==fbP$o#XSYA?Uks&~R8xt+m`dA|3($~;fVpKI-- z-(j8cxee!I4<6v;4V0}-EV|W$2g*#4igK9e@Ua6Bta%O}u^UW7iv2}>l4thULEcXs zyz{tF*=IX^+?crrGZ88m&qoV-7)$1&m1Y{6u+cf?#HsXMef*>+wK~t}=g-=YTF;+= zy%sIxF}3dRKeiujOf{L;dPc{YvP=4ao@3m9nNsrlU(v;{X*$L(8QKo{G5WvtO<_n9 zF6|C`ie9}?v!O`q2({}K>28I!fkX+%UDX9|Y=7T(gTYLa{YJxprD6vxW!>c7r9iFm z?f#n;>G^{Jj`QR`!-e@@bWCdis2km(^w+Lx8{OqRX&Ty=h>iyjh?s_fptaS#;({L> zOw_vIKYnab4S~mR((!tB{60`^dH~CDr0)fR+d#TD7dt_qT{BueU5<3q&?clCin3!b z2-J?tO8@11kBt7yhFNm?jXIW;CI3S}#7&lb@L%eTXad|=@}IfED!uy|*F!{mdW$Xm z^F%vS`UM-xvbM9F-DnN#__*0HV5*-wU@EI9I5B3Uv9tLn9SnsmfB9gj%yK@_=3s#Kv>I`AjA6a|H86dS~dfJb5ikZ-5te*EN9Ish{8rvNFs)Ho_ zuY_yv2!H=N%%gUS=-RaM^5{BFN9A#=Ib(X{Lrxy7XB z?WrBNEKq3tb)zwK3JHIta^u%8A(G~({PC~o#Q2xWBPNro6GhYDG3kh^`LsY8hdh0> zPt9J6LuHY`ak-zDWnvFWm66`^>cIn>xf^!MS^73#X3{iocU-LVx4qA5#90-p58KRA zqph=$DG_rK@14CqzXj23cPs2AQ&lKil8+T;I#hm?cGJ8YW4wxHX&cElDQE z-J~TdZE;9@Vp3Iuj4V>UqU6M%Aa51*J4)RSh=qE0_^^=~i}QQ*{>LJZFvJ>Nl*unz z)PhI_LqAm19`cj6fvPhw-7qu`nee?uJed~wTOI;Si#}LdR^9Ofhs4mh^85uWgMI2? z*yAf!D@lLbtC}9Efn{%8YFD*2YnKaZbI;ZiTX_EnN-Y=AW#HoZluQ6SpQQOq0IF zL2XcXWm0^QtQxEA(lL2vbJ6BqhH86}L-H%e(zo4Hx0l#&n(p7W?6t($JHJt&&=^i6 zRA!Ru9lWp8jbI1~c;)#JX-WZqdp_Q7IIg{F$LwKEFWoCl8yH3d>lAhxpGd z{5owF7JvEMZl-~}{-G1i&La};kj3lof%o7XBja3082@`OfYPHMee_B1IH)KZPb;fo zjdN%psjcVsrn}w{?lC+pcTxVTbkEqION8SeF{m`{E^&w|SxtJQ0~h( z0uZEw|KrwU(jIR$+?}dvZ+e&C6SXi5PJ?|Vw-RO6qe}Y~iquXc*9zqoID!e;TFL^S zDl3)r)JWeZQcQ-%?T!m2?xSE3^JZc-)84D)ClPXJV#xZVmES&bFx-`#2@G0d?Nb0X zaO|B4+SOyu1e<$ux6DN*dffWZmy+a_Jqv5p(7#&=@u}M+#JAfn7ZVyTxWQ&JcDAfR zGLu{3{*@P_365(#WCNR(_w^0zF|Fa+{F4>k)!Rh(do3bGf6*5; ziW2C9;}YzSq`UB<3>_Wh=jjyi;mp)9vysDlh8V{f@ihSHzA%3eCfHXxCskg+wO($EUP zUN61*KnC4D@_vPGAHttw`l_~@ZVYO@UwOo|oBluv@fwFZfrEk%z1V{kQ<9?y_Z3`X zYq2CL6>?`tic9qam>un*IGvC~n(dT{Z~Ti4{JgH>$3gy>cCU+9F2NM3CE8grbxwSB zlq4M@zLYTFUQupIQfvGCS?9R}=ZZdYKy2aEaP`N%Z*cqO<{teBzQbqYqYV_`fjnz< z_-C$DPiOLc^Vs!}eyH~O5e<3vALLy+&J+Q6dI>{aCg48*?{u+1810;Z`z1v$aNOOZ zfr)xlm3ehTfrETg4*G`h+jodV2vI56RWz-|RF;Vrwl7%(KjM+ebVYt61R-CQF3%^p zWE3~zWcV)H)~;LQ5vg3t;yg_Zhia$0Nb&(7rixRW27^Wo2ReX}QYq6;ul)ic`so8^ zvu^NjS5-fvKW&ZY6{N=w9z4pWTIt}AfA@Pd+d_M>vaLV;1|!yh{p=h5DjTHQ>7UyC zO`f<w$z1gb8<;GF7XHyY!1wzTH#Wu#6iRn)lhWUP70%U{_t}+hx0#)>sb8e> znOMpqZLg~Tq>e;L0 z%G2S3pPajF+Nc8&9CC#U%nbr{!wFj3s4IQCL{odBCE_d{8RHNH-_1g-iCun%eTdws z;@Oa653W9x!NF(Oc?t;pi30>$mdV-MvzpqDPdf6IRq~~S2d^X#f673<_F_dIe#90L z`U_D^VvDHr;9tHDOd$N&ehQZ;XTpz=`|c-APkvEq>kd%z#tTNT)EB@G&?T9n+vWhEE+q0&&5-?VU!ry7{lo`zh|)Tev=P%&6Y6HA2w z5ZNEg_c3~BikA?LXbb}rS%14c-q*{bhskPLxMXn^pyzmeT%L)mPNkO=KoYo-lFa zYo!k)IYTL#fMO%@q-@HO<=5!F`Mt6}?GxhgM>&QvW8zcK-F*13eeS1?7nmeV=H^42 zASWjU+#zT+`6lcv8=HGx(I%}E=uH2~W>jN|T%^5!*-Ec-9*@EaNoKwO=49VxN_^~k z{^sN&{|7ESafs*rAFVgV_M6Wpk3>`9>o;Iz9Vv?7WG`Xa%e)z1PU_mjkJvPM^I`S^4yf_@? zaXl`hFtu$Kd>W$!Nu=YGZ~3@)X3bm{-^^ae35Y59pMWHOn15P`TG0btGOagV$xuR z!k!gusRz2zpxZMfZ{sid_DK1t(DE66e6IV=_g5@C2olgBgl=(U9UlsTe(Htj`2iX9^Eq@ z(PYQRUFY}wEoyAVrI~)@s{=!88wi3S^mBYSN@D(WUan(RA^I=fkm#@fXLblSh#n=I zhpy;igOPD+#9%Sr5~IE|8X}U2eWuUjJZmJ2lJ<+H!>I}O$mVNmtf;h-yXJVNedsMc z4ngtj2b^cMX+NN6>+S*8w4w7Ctl0mpgJF-#A1xZf{Jf5G4J>EAq z@$3zgxo9ydO_nEAf=8Ou+j5V|?0jq*#}Yp^o1H|r&<3*HbUw;$*kM<(Ij>Z+l%Eb| zSuw$^@7{+yu4HlU$58An>nJ)K2!BXe;EwRGE?I|KblYPP|Nm4TFHMnrCWl~6NJXO(qcmrxnGJKLykA+(y1^Q} zIdrCld>f+y?f>t=0<^5_qv5T0e^51&w8eF$rRy`Or@dKOy6=SQZJM0&)egFsOb6_p zz4As|a!~p~5yp3&xfBWi9ajeQNY8IGrc7yJiQ8in9q6-L9MlGfhBUj#Nnj!pSz_m$ z1Vue9LQ%<)?mKCBap(=v%%3~>H&IQk{&Xz$;rsUYI6m!g85+SiVrU()3OBgH4aYoN zm$?ao|5)FAOvo|z`y_lvivbC8l5Wdw$RkBgn9N7w`66tiZ{nn@DzZ}dssP+yO4||s zp|*+M=8!rvgeX}ScZBejSBI80Q~YB)3>YfqkDfOMwN`56{O(J6hNRml9A#l8&82}u znzYgO<#!tYDfWYATReZf|Jkq#zv1w`Q{ zn&wCB9xw@M`|Dt-_5n*-_LMV2CEUMKWApPDtOyz%411*wM~doL(ZI6T6}79{c6Pa# zG!1Pa+<5HFZ_@EBdZ0;HoT*CIBiV9;p(rY6LzwIBEn1XWS=^5Vzq45l!APbvBMjZ? z8s!DwRLbIy5gxcB{KzG1MN<~H2KB$FJYpz|^`C(%5kOddA3P;VX0zFN*ijokk;u1s zZ#N?qant3vOT5734y8ploGvH(C&cBX4Wka-_GsKX9X8TrX@L5`?U4pv9o zD3otbkqLu(0W^$TO30WQlCZB@K(IjK2fnL4hLrcYCF9DjtUbWSDEuiYvUYWU2R6JRkLMX|PhztSrUcUoQQN=@r+(#a&j(ziM;`0`5!BFfH( zYje*B&#{gPNSli`Z?ekRmsQTwB&+t-Do=mm0N5+Z)19%Rw23J4G+u3!V zvVqP}Q!jD?m;^mhoz6J{zJxO0A%e^{BJKIj0)J))!afaQL(b;a%)U!4NW-1*%?+eZ zO~w9u2==~-W8(7@-O@1#X3&|`AG21&Lihp*YcUWEefb&&!nbF5o*W{>JD>||PL0xVPesJS9A)s@1A{IP6k}~Y)hsYO03JH-0!r09!Y2V13y7^$ z8j!9#GR&0mc)B)P?tbvxL`^$_%|&3ldw^~0uKda#PZ|^H-*x&cVqkJG$dz`vpERhZ z0ikH+FA>a`;8wq12C9&Jx1q9$#^VZnpSw-?&K-TGL9gxc*hSy4Bd6nv{A2)s!*OhI zX1Bu|@SCiN51wOc6IeDEZQf;Nr4Jmg35}=DU$8RQe|?+8ds$tGrnzXp*i2wB(uy0- zPK=eS!EOFYhuC`K9pNk20e&DLJN2Sv@ycFcm_XNmvV$FEd?&`e$}+Ge^mp#y!fS*GDm`K%*N0q!4O2UA*9{UT(&OEDCU>7VU?xC)Sh2}r>hLILt? zw+ZBbbdfmM5p#CoEjAM|)TWEnV-vQB&Y|v;*8V@&YE87akgxTOJ~suQ{}x~z*B?nT z@sV~$U;Y)SQOHNVU^)lgikQpV8JTXd0($b{8v^=Q4*@l`GkS5pozW9adLT`ng{G_L z_poptK6wZQ;J!nt>qehqRL(%f7?Pl+@&%vwNA2Fn?}F)fLHm9G7pZ8bR!0oNor_lg znft<4N8g;lS*i0MUrL?hZIFJJ5Jzo;bP*?Ai^*@kFz#PEqe~XXSH5<1VSKmV=Zl|z z3L528V}CohMy_e!Ugna1zalyW0z9!_>%f1Lcqf%WwLQ!BC!{3r&Yh`00<4d z98$eT{+J3-j+zyUCHSkaew)o(jWB%y z-;fAjb=jc9&=bx+Jb@QP?Q)|#K@4}x*+3891AxTO+7^KyolHPXwm?upJ)aE|=VPrU0 zZa5ycq!Z1nhg!(HWa2|i++jQOq0;SZuW?mdlA>`DpAC|m(MO0>pfAZfXe~}ie3}3; z?e&oTUg9ir`OrR1)FymyV^z8uZeVqgfSjF`=rfg_-H6TQuig2 z>!j{WE$s#B69@aF-A;CH$24}FtL&I3Fan8l8NF#V{x|=mV@deegrn~We}q5BjB0J) zJ280qUn!3WKm77xKaYFDUpV)h@Z+YR>c4}Or0;ell*V$TjEjIeUCQWS-x;;~ynLdh z4H4nGk7O( zjo-JX-?!@TB=KNK2n-?3vX`w#AIKQr8a+Ycl0WK&Uq zp~RCDrAF0taFn<5ZXFlU#PC1XuPqVDg z;b2eQjLXN-F4jT2PVo~>a~$Vzcuze(+T&(C47rD4Tz?!AU13)sA@6^jOJ{QNbhig1mi7T$ zjOyiZn;U?5F%o9PurztOd4}c}vc6L{2Yk2yJA)T8J|FAzaSob3_4+uD@wzzjJ1+Y% ztQRk5{HL^=^?1Ere5Oxvw~KXoJY*UkKPKe$`W=kx)aPgYUbokw%-oDp(+n*y^k7&Y z$NF5D2Y_PSZafdtxKF)a#?NqW8ZW20QxD@~SeMW5pxILo=O+{fF+mQO&qJn5erISu z?Z>qCXg6qRLaBL%<`)9(Ue@oT@s9uk7UCEW%c*F0aV}7n28dpO<>D|)g_A%>;K2_9 zdQZVEjEnYo_cPa+#!N#qO3gDgzmWV+`&q(>=`x%-Aj#XT-einR6*p(yP2PW9l+^w%d z)1ol*sF`IzbAy7uQw^ai%?T$fGgP=?|3WM^hGnoOJXi+aQ$IL?tmXa8wPkN!h2}+J z=20`tm?@~vTtlgOhUOQN-#vuIJYMFrpFMf8eEvfCHHgR`mfJ1iH}OIEE%LvANdBkG z(0`0?Ul6{E|NpS*{=vIc={xxN^B4C9-vtToz<(x5e)e9-*x7OcKk`ysyhy#B>TM+#piE<8+!CrwE6pX{;!9Y)DkuCT<;@!jVJV- zT*wkk-x1RIa}`_Q^*_?L--Pmr$p;p*W|b_aXoX2Kkkn!@rKz5B`GEA>>H)h)0vzC^HVf8j#5`69)JZ$AoGouqe+BYz}Yv4?K zx#9~r5`5O~yAa4@!ROU&0{PB|j(a8~D_<|g;wyWiYG$bZUFSPRgZ#p60(xR%ApJFG z=3i~VHWu`upaT7rNP&rXgy9dJrS%$`Diq*C;ElUVGNCnujI zHGf(}!hz7O;}QNpG=9|LxA@)oQ497e4>)Zu7`JNA@58@#uhb&L);H*29gJWC#CVGZ zAZaLJbV;cQyPmJH_!@etk}q8pE@8=&k$)eV&Bimo8M6XTgTC-N0i{woLj%C)xmUpaXAN?Uv| zs89U=WA9C%rMs^3K+U#Fk|j%)JUkC2=^?%MzoF);SF(PYdh<|ksyCN@>30pchFkOa zs!IF;j60ZgIgRb#3~L2~4NVA6H!M4ZPH+P;P7GP#fJvIP=`;%y+Ca#n;{Z(q>GXHb zz2}~DZ{4a}^{QmqiM*Eezq%qb{wV2 z)stWW0#5n`O%JovkU04Bh1*J8xUIxKqw1-%JW6B4UK$>hsBZ%j;}Es_vnD8UChR_I zcJw5kg)Pub>eU9WZ$RDzl53I@ zbb4}+138zH@E?jFs(cir%ThH*ZWOKCaEMh$ZF5vQBT4qizX82*)m5RKRmf3_rUsH1O$wfq{h?d8VSjD=noI!pLAzc|K`zVlJByl2bl7(L@mx{QENg_vONt6#p zDRXozHjr_jMe$~G%}lw0aoRQ=h$MN1wj=raIPp@hcSc@+8@c$%yiZEVyvHs}Q-o{< z38p&!F3{6yYxLBFg9>Jh_t{HAz9hm{JD-WLMCzsqKjifqDt5C^ew+ z6)8hS6Lv_@h5eckNdcTmM$R>o3j-o4zo`De$bouw^e&G&?(QI;wSfu*h7>#&`G&;v zW!5IbD8gPkp#iaFg~*B!@tIaYXA+~0j0-zF0>SU&48P+;K3BOkTzbc)l8=kAv+q!--!3gJFA&1JzwI(exv~%tqsx zS&#N^4NMa;d!^|dU9-3N)b|(!??5||W^8?sYa>h|QzLPN9ZI0_D80-mW0Lp9pyCH8 zkgX3JH$_gFo>wN{;o56I534{HqNEu;tX(9cyh5^MVLiE(RM{Kzt(!UZ&s$t|w{EC` zPPO%aKvly2^JeAk_~^Zlh}xwBILEg;11X_s#0!E(ya0{3Zzwe_iN*U_Y0|pbjhN;Ep?Rz!uLupbw3h$vnaybca{M)m)X~J7~m~e}zozl>7w?dNZy4lk*x~KTo>| zTKjK7YsWDW)kvW)(;(ZLgcx3;uTkCd8Um_n(1>Zs?={W-Kmc$So+hGDA_9ykp=!IN z?HcYJ!WBc;pr;-~?6s#GPwX?3!QVU$32dyR=xdU$hkIAsg?K4X%V^<~X4&;9 zOj`md>IDYVX5WC(0;>&n0HFmeF%>dq;wY8OQne-25#3|6(fPjmpt#=Hj;epCNrJBaIR^f! z0qp+Lm`Deb_xz(=Ixu|bF8cHkOI^TlsODyvo9vqm4q@Nq^tn%w5{xqJC#MN}f{*=| ziBThPMPVjT=*mM}ooY{X-_c)~3ZM;YW%hMG8#XTW*o=se_^gOeG2}a+&@Zp6^XXgr zYy<*&eVdr!HXJ`b(On*YqY*%y#AxGSvo?`EPe5ow1CE2!b64Mi1w_UfWgO`5AzQQn zhw|HGMEz;pV$E-`9~;Y|L`QK`Dm{~&Og^Rdusyw z(3E}e7`nay)>y+_8GhXibsz1uJeUwQd!?75|LbI@ke&FkTr_c0cvMr;`CAhb=#hI| zxq!!DFfsi4yw#)l>yt$B&P6`^nQu1%pZkFN`MiW3h`2a-T{uy*;&b&hZklTHKLc4IU zQ1@qWzF4jj#|=3{58hRM0+z1U94$OOUQyEF0TeOGiIXR9I$xm|h zih6%a6)<8mBuG6)cnzq%Oq@g7h^!L2Qla;n>P@0|Dqg!rOE*FDE)FWk7oH^eoHx6Z z9T#(T$6NJQkeR48Y4b)#Q2{po%w$~M`X5-a?@DwwNVEc>ag6uQq&PZH7l6kZijVNc9}Z6R}4a~MCMxHBkwGZCzNrh(nnJ;uO+ zkx;nASK;pIH&^c*xUx79gWH*)Yc0G5kccGeIk4CgV!mEciq)g|4~yVL#6h;H-W21y z^-A%Ua`{V+Q~@sHj6>})pA$|tCOD!-8Ol|Mn36%l*Xju5(?^=CULXaJ0(<*0JfBP= zvMrySTs=p5ha`F2Lz)PjsQkvn#0=~rR9SpjWkNP0W5k~48n)e@SNMW#_`*QpL7k7E z>uC5g@TlathoZ#4ru;TR!kW8;PY5LCVQn{Y1Cdhm?UYm?Y0cVi3}z|RdE-2#3wbv( z=j_XF9&q@oe@CMh<-`w;$%$Y3gf=q***GUI(>pw}I7z8h8pP*cEuk1dT%v~slt~d~ zm5f!B*r=O0e^HNsuyw1N!!_=pe~-mj0ykSW1&`b|u%W={q>S@Gs2Jy4H`K`8wQdWb ze#iin_1gH#FKaWvFrsUtM_p!bS>&_znh=KOlgqnxpBwh1bwN>T7r2VZwe0SDwNZq# zF|!CpGu^l+dXnp_!$eO8hu6!606G#7$2ee&5j572e~HZcl>ARE79-Qi|A0^V&(kh~ zPX4nOr3UVaqZh^%b3|h%Ye}hzB?OcxMX}UyMXXF5)7Hs#KFWQRN)2lS_9>SJapyfz z%;5y%4~Sxq51{6TRF>%RX^m+9FbBv@L#XXkLpMt~{b)PS)PP|GQ8cg_mW2!0iXkC787luCkpZex-zY?% zGxQuvh~D+qH#6d}FH<2pAkCe%W165I!a+ARgeM7MkA`Z5%S^DFw0Zm(6R(JMaauJV z?DlD3GFR5(Tp+i=i`-6pzm45nf3qNpjN;4gUa2v|#e768~^aQ?gCpY2e9!gK*`P{B5H!C#^E@lw<ZSP9~>8Sj}dfXkN&L59$m|(3$d5o zSZ938?OkK4pD(XC`gC3y(={fv$lo$;u}IW|xRied#m33L%}A*3-GRP)_cu2Z`q};o z%h?{hr~Alc8~1cBe!EMWSHL2QdjW>|f?(MSo`s+`hG4Opdlrn=eUD#(+uXzW6|N8O zS0GwTAHV9Dqi7Q*|1%;Pr{rIISpJMQH@`@`2)fo0qGT2K0HU*NCF)%;fX_m0 zUv|^`yGRiCbfJhqWCZm#vq^Hg$sGuo4z7VcJ;dOGCN@-a;Qbo}eIZC!r|)#%$Tn=t+9USg?x@>1VD z`5PZl{j5z}&f4I8_k>KEvhQ;KFSjzSyJ(tG$IZrHAF;722t;%XPOyyB=PX>e0JK#!lihD z1l|aR#Bj&J`~~h9(3}HjuM$zX=Uj{Rw0FiZD6G-$5%DptokZt$sFTGSaH%#wPs!9CLN0}&KQ%_Zs zhm|lDZSe@$^t`eJ{$az)V`%g|*CUjhBtktmEi!b4%%LZ`kC})B0d>>Ymgv8kp|8ml zMgWsHdJ=qKq9iZ|PjV9MWoGw`HCqiOHL0^iU>Ck~a7C{Byk>1#S!@v53(8i#z?e+1 z+OBKk=*@(liZ%+H8jKGNWVru`TQkF0Ztol3a!Vk&m7H|q&T>+FCL@)Q{>r9z>~S<^ zkpCWGgem!d#6N?AhM4u16dZV7rC#6@) zw`MxC#GWIWv)bV;j+cppT`57sc4c}AGby0Ml2v2Mt;=PSnQFJ;z&B=BZcxx?hAJti zbT3y9g`qI;ja@y-R#IN+NMyY#eHa(1hsgj$xsQY0-Yj&YCMdE@QIQ9bD=Y+tL%AMe zkg4iSqlOm9vQ3l}jqJZ1Selcd2j z!|}d=%&h^Ld{xJA){|j-hh706Yvn0f)PrT8fYngVO;8+~un!2rS@^E*vB~%&lJJ>HlJG(7 zJ#a=UJAnYR{<#&<0|iZRlJGt|1c|G9WsFCRf>=?-pZ@_lYo^m7i^xJDvOGCzc$RuAEE zG-y-K1{ELwtygZ4i_H+gBSiTR*I2`c>QS$NWP@~Zs{sD$jAnWZ2=K%3-$H6qAy#a| zfd=mwPgRhD13z~gwWoN5a-U2mH zN%1Rcpz>=|-lvUZX=$4pjJ>utw>^ikwVzv+Xeyu@^uNNn)V_}Ly3}h-S?Y*M+Etb$ z!1kkYhTwDc1vH1o6}erHy(ris?}xM?SW3Hvkv7k%m&-A9ZF(Ob3tii|Y7{mCEF$iyI|tL@HN z@!Oz4F9y~OD-15o0cY567lR^su$E~||)RBXO|YCP8e^yjrX70Aw6 z|II`lW6_jwQS*RGlQ$Y@@*Kbd8_be_gs7SREJ*gn>)^4^{d+TbI2(MVmkn6#4avxz zQ#iwo0Q*6l@qC_S>{^Eg2rc>q@^Qxa282wT56UWmFtB>6MmP|g^H^LHfx7_NI_@&F#x zip=3A8hc)FzI(0!ry$_2)E#SK!>|_gTGGH^tOG;Wfy;>LMqdeP)5ShbrS;o%in>5= z0muGrtPmMk@*y!vJbJvz3`^laV3`?{SLYvrDw7z^ihkYu6nd#CX;w8-+YqL;Z;2B}nvug5;gU-YRLj z0(=}Dsfs&#$YDLIZO7?-GciNHmQCIJ(^ZM={n>g(8OJQbV$m)*ifYt_snqaB?I^e> zYv{w=j>%XZ^`fNuyy}1?iU&NBB>bSbK*8dWs+D{7+K&>ZfZ#(?WL)uw>aPOE&BF)+ z$wHffcwEHQS0rG7I$BAYaf*aUBb2@pm8(J{k+Gw0dX`+JgChsrs#CW~Da1i$fd%bP zGxe~x<$h83Du`t)6`o`^73(A5iiqD z-(XHqom|Q`QHtxBPMzi|raB;*)lws!na3T$a95QO3Tk6fogj!BDMFGhRbLlZ2;ovD zg}3nq>PsdnBbY;kfDWjQrc8OYRKsIvpSW`f04eTglzu>O0rr|Lg8~8yJcwI?W0N?m zs{~TqbWKO%fbb~J`xHhN^aAz-0{P2^MQ3&nV$$YZNIse9q7a~b^}aDO-oknM&wi7x zT7j_Nv?z=-Zx88&mOu@|i*dfOG67L2KsJ%##=+;EgT%4`=-_taKrlPB>=(cpp_2)0 zdY$HOY$?pNp?~Xjmbbri1b-1TbpM2_WlXeEwd`KHbqR>553GQce_f~s-QxYJ;y6D^ z2yJ{*<)7(_PfcJQyrl@DRlKo5OcB#RH~E5Y$_7$nW0KVHl5KueMM9w4)%u&@KQx7} zYkJ33v={;OF$Wq4hjmdSBFd14(@46MfXt*u90#lUkyJZP2z5v6X9A(Mtt5ymZY%L_ zT@(=Z>75?(_d~1HIWM?9|IO&U_?tv(OvxX_Kf^dL{y#3?zms+moEI;V(!aP6Ggge{ z+o=6ZEJqw*qPkjvUYLq-lzN?*Y>l$Q&O&^E;!ehmM>ZPif+&1i^hLEn5V4{J;*+zy z)k%CtSR#`d4>bI!K>(YHE|WHI>x(g83jN!de3$cYKNrCr&uQ*xGK)P2(%)uF-Avkr zawkQT5=la4=PSj9Bx-011u{(wEr>1VlI97Z{0!%{1wx}e)ii$6VtH7_hkfn+W(4Oa zdxvJGIH{!u#S@zctNO*jXt(%OdgLh*_q(b!m63*uwdeUGQ{FB zw$bTE-MfLdrp}VT^;7r-!v}`)GT!weZQj_&he@pxx|y!8kEv0NU%#VK7B`76vH+4K z$UipZ(+K^aXcw+6oIj+du4y*`P_YG(mdfLn040)6JW+~E^-BqoPE?U? z%vVbDzlgp;E?A7w>j9IbKnc||lz2RHfBIetL9|3MftwRLg>5={-HDvB=@gCK)2;$C zq#&XJ3u{2BdUzaR8YxG$=m}A4Be`c<3tWDL*uZKP9$4m0MOhUn^2FbK?OLpXdo2aU zhaHq%yG9ovQE(n25?dn+7h}d3n23AcrMJ;Xl86r(Iu9igpXO7_K28n%#nEO?z-rW< zCTN>!S`0dNo`W{;=+7?Fzkq$P9nuXl%NY=YQeqB7rx z9{szqpx8!2|JIY>TPI0^yXHkl3i)M%gdV&*Qw%u#r3dY3lAyhtMB4NhC;Zc0tCp51 z@#046X(WH3M=&)>1RplYK>?$lSC%MPC~oaZ0^Sp-!o>vRXz=~rkmv$R^rs~nobVPi z@x7Bo=v@Q%8vzN6hGyvLZY+6QznzOMss0T#M(p-)gYW<7NOVyzHtDk;W$x2HN)0$Z z&BG?12?G<|MX`}z(^`^02l@>1(RA-4ev(-Iw)__8R+*cb_d^ep?pN4-iE(#ta3PO!4$)rYA4l(pG!IuGjjUg)71J^lW7OZpA27Ud)4Q>sOAF5pUeS5i)Z$u$8r>dGS#_PFz# zY2C~vA!@MYSQdq$xJpa%D3PoNKVM9_A&gXQb}2CnRN>~w_bU_loFL*RG8`7j9~uOa znI>e?<}nk*1?Ws)n|w{DvdG_m50{{r254~Fvo~-j&K=vdQ8$sh%d_Ui(fInXXyc;q81Fx3x&+Xw6 zjQ^dhXVsDGI*%WHETGc2i3u8JB9MKLt!%V$j!b@yd9Kjc1Wvw?`>lV0 zV1((u0ra{o<^BG%ZK>Bqb|BKH%PenT5pnl`zE=|r$@gVv6nWFbZ2Uf zi_(!1C9db4-vy1LGKBujPnQaQxpu5i^cuU8YV-^fd; z`iyJNZESu+)h};Uv*}EIR!fB=K6XXNWWdy84eELqKQ5@B{ia1#LtV~(dg$xaK%nj| z8y9Po|GwLj{|4*HCxrbJJ(;g6VR!mtHT=0IsorGO|9ca~(}=9a*&OyKQeXs5U*T+y zY(+L*0I_k4qxWhdqM0hxG-ckNLUBr{X4AMyrZKJD=w(B^aH&y*o17?Z7*tfi@%3I; z`68(SLA=mtovk6v8DYV?;mII9-f032cT7KG#F|sR+xrd@>HAdy%XSF;W~e$$ZYoFn z*gg0Iy)^j|!!Z3tB{6t^l^DFU+wrP4g$xY3F+OQIK>}7oG&VugY_nuAFjAmR;EIeO zz<1>#OrX|J&OLWep@%lLbO*inJ!7I$Gor#ZxNgBjeS^3`#L)m9OVF0g zP-mKwtDmOy_5P}!o^P?F=U|PbLC9&;Nc7CU{QQ#(3-&E!OTi+}mue(~h?a>Wxim@v zG~C!5L&8&%=Z*a zhZJ81!o)Ua`pSsf!H%K(P%7I835^sUXP>7kThE~#d&_`>MsPo;j5c%PLlcy&cNhU6 zzQgct-R-NVQV%GYy~9TxHP)!t;n!0>n>*bUA0#OJ0MiH{`Qd7w$vnaybjQh%R^8U) z453Y>+#n1!CD$z0A#*KuIV+WE7h$>m{(7}kpz^O=$|AWGLB`Fjbcug$N-ZImQ!OS$ zYT%jpN@izCj1RH%&|Rv+&O(mk$o3jLPCpF?YSlzENx&WB)&}8fpx1)bDG{XoU zgnrDhIO0O&>^o{t6U6!M)6c;zfK5bSPjLT}w&G28iv@(qEiKN!h?8+B8E~ell6#1j z8gA5R_)UCou>CVw$^Gb8H3dKbT?>;x|7Ey#j!Q^CPm>r?D#DE#A2DGyS6LSBF7*&P z5hJzYP`eaY6VW3vo%4nH!^vKtx$<6ivkH97nd`u&z`*DVpqh{}$` z_`J;&=`u8al6*t<8d`85(bm#$P&1ZvM(G5y%jxzR7z?D30B%~YrcpD177eJC^0WYg zVm6=!OXI=IcCaAxPMx!Hx9N1pz;SSTVa(k^6Aj&QM>4^}TB#D` zI@e6}?zg8D4^)zr=uFv3r5mz+rtj}MlqpA6lyfJXh{kE8@A0{eE^N@ zvP`z0DLG?7dFFBWDZcYdw2S!4HX+BMIxeLCm^ina)B zI?A@@0TiCJ2^hkg_Iz7?(;?py-gM?W>YJ9KPfP35GW2O_ecFaMZRL$Z7JQ}Eny1jr zlTUU!j9}zVo4jdt=$kg)TmmkTtchsZL~cgq5`yT{%4nBBOlg9CGx()`1P!EY8ny@R zPO81tWwFeP2-1t_Fq2>-s4dwYTd%J*vIbvYYiv=!zSdri zwWjT-RE_yIi_MfIt;nCihA4j${~>nuNANFp;WpWf>2Va(_Vw1F{NrdBGhA~jcS+~j z?N9qOqr9n((}>HT!b|3HR<>vPr?p4&XYl7sx8k4?#E$H&P-1eo#fX9d5KHpNn@5fVYREwS^m*0&+d`muW z(C4?g7yZsa(B(%Tmpg#3`t0sS_tKJo$s53ko#+wGoi3Nt>kK&k0cX$?^!jWs zzKHEu{ifHBPHY_Vw>m)ZC7b<4-75_yznu^2Qk$_};wu5>z)LULUUUT(J)WS`8E|>* zL>~ycU4GzCKI#j&0$!(Y=_T9k#;x1(=Rxxi)#5Sv*YJn@Me?72N&cfv%5UJ;_sCzu ze?KI&&)lm_XXc%^aF+G%mu?$9rQHWHZO|(b{fZd6+dFp>M*As@qUV+G)p*6gYrli0 zJ-qglr2mx67>u4{&h9{I=ZZFgL;k;voxArZa4p%*db=#$?%tDt=1Wf`zFQfO=#qNI z=i_ykNb7}q2}PW#p1c6141Y5XY(deJX)$O08?NmuV-QP4)V28-MqQh~!5D^{dASNa z%+cbTBJgwKAa0M|)~cLW!Tn-TuAHw?H*X!TOjJJ2l3MrVsIM#~aJxM`ooJetY%`cV z)d%V%q;$<9D-(@jp};GOlK1LSom!B9c2euUDo#>3PoZ(s)|jX&bsyvWuPV(GomX)S zUzVy#s5zIUctN|=pg!4HoK}g=7IW<0QU)~oF4{Lsm!wMUybZ^dmoXf50ya`10iM`K zww8fs&_DueT_~Tc!MLaqud|*S^R#dRE=;FRboRAmHFk-M^vJoYb{Fu>23+p7Y^*p- zzsZW~k|8<$h^kI679eFC^q22ZA`qWFp@>}rM=3_GPFE~nDB*Gg)yEIzP$HFcNi_&t zS*nuhrFm%N9vx_rq`Gbi&((|5aP=RV8(0?9H(?|OYSf~1F`0EZZec*#FcY;#Ts`K+ z6MBk^vJyunG$oNXSxg6<>^NjVkqJ(@-hqJ;8A`?w%9Y0OtE=N-!WAbzLWk*LGHzDD zh0O#F>O`jjzl2c;K`1RzPXeWU;e!VnNdQqy+knz8>KMajj#cy8%C6eMLOJeu-=5qG z5PVIO92KkmS2g*kB<`9yXieIjzB)@%!1LAm!pJx?g$R_{nwZ285S`$l&y060ElY7ZNuh;CA2p8V1`zA$Y zT~M`C!PrsXFx9@-gyBZRFeZ#UqBCLUN#+#-0`0|EL3++!u1Sq#$)G>86N;;J;ETXUe_3+<>Z$ z$aaPF>Kt>ec5Nc?32Sdc1A_ePprvBV_t#}j+U!r7RGg0{KC}szd|~!m&;MG_ZpwNV zSnhA`DJ}wy2WYuJYAvgAP0VdW>*3ON-!Ruqf3{R3OJZFJOZ~(er!z1%R?}pNgLnQ$i&&} ziUXKHY|TXf#*B&NzxA-u$vY$e4?WKWUV9FcPvhngrHulP+(iP>q`5G_SA<7s^fwNl z>@Pa!T`wsj2<$P=5S(`7i~<6Fn_%?a36J6pKf~UN9N5C9;9SkENWqBgB*hagsa(org(Xr(`#-N@ZL+1s9l|I+EaCBypYeJRcV^ z5jxVa3Eb08LN*yqzi!{-6Y)PO6Y;5$C*pVbMEt~P6Cv~*b|T(ICPLd)bUIC~uB~{B zRvhWiD@cECWTbzWBmE1bAuaUeNDmaJ^7r&CYoZ1AsM$`vn!TVXzY9e9T~M~$1$_%a z5qImC`cRs4&v^q^Q-@L3ry`=p$aD$VF_FCuwhjii;nVns$~1lz|5%8~%)^k6U*(hc z?`RiczsVkh!Kf1(=Pw1gq;-VhP$~*dJVpvipj8cLKD4B;Eu1Y%F;al7n69e%N5mJ+ zeB6qHL=Tsg+^#3O?;G=zg0?dDP!Pp`rt+2$x!e=%Y0_qPc*M1d>yFUL1hRpvhVG$% zpr2_~ljS#NPuuoxX0Ol0_HMqCMd9_i#H^jAV(jj(-m=f^&hiTohHI=LM-SK^dTKCB zT3uA|rSH-X%?PXZsN!y=VqZHe!L-9s4^_;`85NO}dVL6w=>2_cZC$0ShFte5y)lLF z0zC*4jJXDG*mMfN@{?v1;8Xa3t%WJXG&***L>b*P4Q4ta^J7lP*M7qc9G(*Mo;#5e z1KO)IVVmBiwagXaKxai&BZ$itcgAz89AeGOV15khQSB2BdcU{*Z-@r0Q)e_DS0oU#uX=;!_^&Y zn2`x4oL1cpmK5NiKd(HVehTge|FTJ-f9t0qJIQHSWK22SIuS4)wWkSj^k_dQE*^%z z{-K@_-!@4?JZ`$^1$_H7FhOhZq7!)NJr*KG__}3N6FBtbeau8YF)EwB(-Zp#CQ0mf z50;Ap-c~J5&>ounkI-WeLHr8e?R{tRB|U-fA;OzcRQaJN;Xj-t3Gdf-2?1*1p(VI? zdKs+vOAqK5CJAUy)myd=Fs;T~F%|X@uGjHy-6@@=wxBxOOVx#HF)f&FYBQ#7XwB?O zGebNWw|j=M&zuA7Gpdy+iVWghl;}MzVr=w|+FZ$hOy+4y{v-S|j3xIV--^FVy9k!t z?-T8UCCbw1uNt`yT%!@x9yOK>3JpqTt5{Gk7enp6P?6w%v?(!1q>eTT*;0HuL=P&U zs1GU4tpt}b4-u1r2n?f^By>P}KZANQL&ih`NfjCq9N9JdbWFWSJb{1VS&GM!(3BDx zeYD&t0-^|7Z%Frk>v`X;_m7_F(!`k=^| z0*3nMCh!iPMS2!0|71)d$u9CNuyO zygLOjG)Vy6SCAB%l(M&&pHusQn36 z=|Dh0b4+yqmAXd}SAm`Q6Rx|lD;=ZwEZ-8zc1h0J6r-LUY}lr~^R9W%ymQ_?&;MFn zT)ct8%{AEe*+prQgxsrzhD$1e6W|&-$0eQ-vZK*pf(Euj1jxd- zuQ)-fY%hgZga{CgHEb*#4;$bmFRJvQh#g;eUHx-#M$5n%diioMr3+&_^_PC0zSA(k zP%eX~HnhoM08sJ!%y2UxAT(?b6I9JaHiL#~u6lC3lTSDQi%mSE(%?pV;{CuRiT550 z&J(C++0=wwdQ#l!WBB4PJyM^VBvL)Lg>i-k&!VvLzQt_OanQTw@2v_ z3erJ9?@HZGupgS<59uY7#v@(B3zKhHZ=`|%5u`ico}N_>GTZ^SKe=2z8O%4iZ@J;GeInF@#L_V*k?5JDSJglx-Baajq9BxdzupceWi~nVN zQH*UIsH;Siho-U3(WOg_q(^(l7g)yZEoSTgF>tkBFbuI}+%bIxjeYs!8mSlnbjx^1 zM+pIX!wXBm-zt(%`I{1v$+^Do^(^t&gpm^_P>-DW!UQ?9b;=0Gb~m)SmokMgviiVe zMEyM9>1Kq%UwRTaCP{*x4Zw(mwXhIahp#f;t*Z|d&^woCaw2noEHKYbj4Al6uc^n$ z+$+=*CcvFG!?>ZYS-GLIkO>OFY=TDVqRpgyOlEOPj^Lj`B95gqZu0fHPrGo})A=2D z;Sf+sK~zEG7egqHJ+5=pVs1^?K+44wiW3KgpbJQGj8|i*1V{1?NoE<*gOPKHC|~>_ zRq+Z)<$XCgO%4F*$szI-_tB`@KW0G@f0XxpL(%}5I55A9M6UN*SeU`EtPfmQV+G>Jf{B5Kg#Ot3&gMNy?S zA(04A8$HIX*=LXkNPvg;OgX;JBa2SCcNxJJRPGZBAfe6}Ut!a}KD%gJ2Q}2481+t& zmx-ieoQ)S^D18SLh2Vm%#E1*hIN@%yPv@tRC8~y_YUfC(l%kSFiDfLHFq!ej!e|mQ zMZ{<#KQ(Km;5pTZD?`vb`~I}dieOxCVXT-Ba?6I$#OR~NJbd?x1Ka#oFr-9pl-wh z=-Q)U0F?zmWj+YqSblesfIeZaCGbyn`?at_W1u(YPbZ1Po$~^?_+bJWw=kHsAQmJc ziGsq;OLXR*aLieFG4e_{Cin>9nDAym%etixLfeIw$EI$C9(qoE@LL9}`Bv`s$Y(Y4 zoTI`i(7mSU`D)IiiH!xbWkEGtxOJuWVmh-XY{_{(RXPP@r^l}17RfMn)!YEP3NeLL z6<76W?PPzXJ{rB{SaZws?b7D<|jwq&&I)^u9obSL`Xp79q#?Hsu;06t*kDN>URy5DI`W zZ{#820tuyN3F5rtB~tQ)=O`eXrcI7L@(pV2(9$M~iF1jeh=~KE3i)xsfS5O=EF++% zMij|&qjBSlwtW;vVg5xLwjh{Xr2UJ#v1%=b)SMV)lV}V!)=M*)dcFLd!;#D{#uA0a zQZ?;JWb4X^iB#czS=_U^6ma>xC<2(t0&9W|j67OqrVjA%+a!pcu07&STONNV1fepC z(ZFRs!fZl>vDw~e(q>^KmJq-mv7-rux*c?&MBgyrHk7%O;LC~OP0gJiM-zK1c*}YM z|9Kn12-%p>;t;4hu^~<9J(wc|y!=;NtO6QW9bp`(ae2XDSs}n@-PQyW{oOE+nMfYC zJDa}K_JywLYkaUaG@C2e$qX&$#H(fcE(_z`wWcgTKa#-YD38|9g!o*==%-`}h>`76 zQL^-^0n7Rwps~*t8^EVg?@@+>1y=B)3nXgjr2jBYUJi8p2eW{wTm0?G83$mSHuy*=q9iT}@y2@9Js#$Cfl5yre!(NIGCig_JFg+|f*S0o)Cw z-cj1XFpigbgRP1w&toA=x`+w>M}2BR%XRr=`hcmgrFkSivon^t6%OZAPs5 zc(#6-tw{)4g#AxWLl^cV_L=D$r80g_&+_W0NFXQ9hPq~3KR?d*gk?0|I3S+iunx?u zCzCdB(xWUuWPD@t4a0I($fYe;^`|z?bjR5=fH`n`XUp{`_=GbQ=yH9`Y-Y6YbxmKJ zputyXKV4k_fN)%oL-ak0LzM1lS?Gn7Z|pPlH{7C{8`QF$20SHJjB5?MJvKmFsH zm=nO(!nn>q1dZboXZgBCU?&&T!P>wAVhcb^P(-E-a*z?~1$S@u7P7gi+ZUJnVGSv9 zUpS1nO(O@I4oji|c=H>ucl-5lA;vj`eG9knDJ7E0wHHFjc>)C-lrio6^L{lSM;-LK zi;Qv%P*T}y4Hbg%J!Lb*@+QeZfDpBT6b_n?w37t z?w8&8zw^4wBW%j=95f@s`W)O2Y+f-ewJWUFj$w%YtVk5tUnL6c?Dpq=P2)NS0$r^S z8`wy|rRS9;_zxR+kV&1M=lT`(;YlL&COzK^_!!@qpkpSV8M&CYp_?)JC+`7y)np^# za$hPber%F>Jt(eT0W1A;6P$GLb{|!zNLcr5mdsx1C+Z(f5+UPsXrGe*F8PeOR0OwT zk5iRT4{N1ESpI%tf?S+#bb@|$lK5O3URZK4x})^c(L|}bsKd2;KU;r(HmAZ9jlLB1 z|8tV4s|jA(7le#2K0RgtV~3`j6?O>*vG_i_c-ML@O7G!08cpy!jO; zagH!Ae2&Nu{Tv-l62*I|vdF*CRUeojqX+X%di|0CY<#Q-JvB+td(JJ5^4Z$#5;RFO z`=$GHTSYqp(duxF1aY+?QPNdQ-l&8Vg9hjE6 zB~ezgDCqm|=#PXj?}J)_8UBW0=Jd=k)YANJ!w^FW-(TUnJ_CX3`l4YznC=3OBXlxB z*=#X0nAnDbHur1uEPPpbXfm>%n2)kzL7Y9<>N0z!UtvEwNg}^NwTJ~ov`1EG$iMei zZcP;U2vq&~N0WqdfW~H=9vz|O?Kg4=iv|dPd6E!5NfRjst!4i8?huWwXy3hag>el2 z(lf}HCy7{(1;Yt0=#LK@q!fp!+w;m2wfi*@$50fW=u!QT6Ge5AgPr+y6ELlJ8$p)w z-G+A~*F6V$O&{Wtm!F26p!2kI*YpUU_9q91_(ei{n$kQ(OO3|z<1^H@eGLB$<5m9+ zF3KOFT?DWC?inK9kjSrG&rSXytHmV6hsV>A`v*uB9NeCqmkRK^Nl8{WigCt-N9CA5 ztziBn`Ddh~arUqOhx&%igv~R-E=*&w0^F0{aZz zO)c3-p!~2sOeVxk=`)f9ZFVNevI5`}9d=~wgf0BN>MHumcl_YU>qx*Sc;&@N@(fJq z-lKrqpW0&bGsvTGl7q9?fs7Zg!L#$R9?;De%tQ#SY-|sdf5UKo@jtl;r_R= z#0KrcR>J*j%bI8qK;gpuaplwqC)*@z7#9QKrUEI+!0Pi>15y4FA_1o4A09;z(BP}P zWHY!piEOsY^%r*?v6ncF#77zglt}+zOd>t{5i?*ok(5%o$`Ojbimv?g3IRSlG6A0Y zU(CMA3E;L>?bq$QH!`(yEFrz(Ty!N0x0ne@iiQWWuk&}|==UNy6%!ZZrlDVY<*2Lr_rw**loQcd;1;b=wmtyC37 zL@BJu0xs;+Rr~Yyir_cdn%K7m2{^$)v7Eka;3l)(%GgG~f!|qSOBjFY=k}|H!H3c? zmhXEz(=gbFtuzeQ&RoN|v#J4DH30aRlLYWBRI4!X1pi>y{JqH>=;?be55VP$FuA()KYiLbqh z>n3wEB|GuYpv{#9j%{=9U!YwC6L;pgM9TA%Yxy9TV5N{tpXo)`RGiU}5@O^ip-gQ_nO8yhb?GsnJf@lfGC>!_}zCPY6Sn2$&8rc^)4}M zpi12JiCk~$fJG~93aFm(;<&IMQP>5Lg|O!j_J%!c7nk%p46fU?mkTed)|#X8(ylI* zR=MAVClxR%uvlns-&p8x3}E!smo2G3I6(S@5MK$9<~$>;MTHc1_e%hzS2@+K}Tt7o^{pd(l z2odUBQM}1|6$mFOU51`R=`8VMZNAx;sm^krGG78p?1>eO-8Zs1W;;KBpy$<( zPZHps&7Yye2x+DtnzVV-F>$`Klw`X=0OK1=LQDw^xoco)Mw@|c^yK>KNs{Yn;w!XR zQUdNnH8&y1V4^cOg{}uijMhBL;H2n+O zMc6qPam+*ZOzgjim%bzy_}bShi}slpUEY^wo<=$&(>!Kpk%p@6MQ`iZPvE@%Z2#r|E{9sAwMW$BIX+BIBgh2bf>w8V#~j){5FA` z^HD$c6Fx!6Z>I2$l)=jqZ$`-!))1k}@B*keh;b|x`RXe~k(c|SW2Tu435hBK7OnIk zKR+(WH6zG^{{B6a(BEf>TX=RDC0Gi2(F%a?DL)XZ|} z&8(46BDg8@+FN0NL`2M#{0A0fVp5S!Te+IJ$LENHQ4&3szl^nO z_F945V~!f*D5H%6L3x@MOE#pLs-psTBnjVAyoSobDM@-S#p|R3pE?49uhdjlHWrQH zBH6t(9BiI@BJ~a6hP2y47@xa3)qz-Fs??||F%C4NpXMs7aR$?NsaR_u)t4UD*l~#;Xhum%X@~rM zBQi8CRY~4Oesdf(7}QdKDJ6QXWRKZA?gbLdR?DUd2&(^h(Y{AguMoWgZ!f7NfKq(q zOXPN88v9t3(g;6mO7nK5Y8?rtOJ-9kWL%Q~JQ|dwIGK6un{qM^uQhUz$(_`6aD6`@ z!bV=S?UBQFaxO)HAjK7FO?nhIAOz@}4*{-0*$}mEr9^K!)UM$zmw+E`asp$K67gyy zH6=WzFIumpwkgF%NI>2+IWMHMtrWg@FS>4!+Kn|*0{@jDijUYs_F7p=WWlj1L=Ix6 z6ape|oD+de89@pEsuyn;ahqb5#FMHQH&fOo2xg050Srd(%R-7az4;Lt=-g9&|1p|T z4iFT2;USjopOe)qCmTZc=YKH_*WV!_q)q=47YPg;>U?(nIy=MnMhOtcGK4; zNSK+UZ2pCFfw!26YTzx8t+nk3=g)^B4G(COdC3Z;SW=;KM^ z(c_LbnYNw)NZy9Itib?}n{K88Ir=oPqDA+u>iRWqs%(AteXpPX;v~uTIFV;Px`2qR zc>_yi?}j?T5Tk$Vk@(I@B5^O-Ttx?w`oILp!3&&mfqq%Od$2mhu(WEXC%_L(k^oOx zYh=Qd4%6C%bb6w^LDldW_S$bfnxC2^nh)u;NdY6n3lrdnn|HK&kA;dVeATk42^=~i z4wQ~xm?Y(%9zv}aFdM4533fwM`NdaJg%|L6RX;Nh{%I@s%M8ZzXXVe?qUL$j^f>+(z@@PpP-ulIIpT8n2!Q-eHxgc zGBk28?H0z~wu$$0wdzK6!*s*1YuL%;LQO>(O5AzGLKqw?Dl z$j9lWU`Df_ZP|U^>d|;%l4wi~a5xCq4QytD^w8WJ;v)BoP7MLd2@Ez4E^ko1D*{B? zBa?A;+&i#(Sz?kiKENzv$~N~y_Y2byoH4{dtAuIrZq$A49@BlzeZV8Qub+v)bBZWc z)g8cZo{8*j%-cz>I4yF*7TmDSwG}9TH<^nm`M<+IgQ7y1Bl}-*uhj==7x|<2-Eqh4 zciz5rdnR-5`G?`lM)h?1KgTs2`_q2yno_8-QKZEtbuY9=#MS7Wnbp0-B7$%Asa?4J z-~fM0?~P=>O1Lf|U=L!|9Cd^5;+A5msvG7AenPY&6(JSJsZzy--TL3LDSJH%a!9SvT4;st)MoqnRwzzs9V zG$1a{SRUR=xS3TWSqBese=3)h;_6QI=FX&qOlp!OO?>;>z>B(mMElb!pHwCIU5lWk zy;01PV?+4T=@9IbcITp#lFqg06vuJUF_Wc695rs}?BsFvjQtscf`afX?5m`FCr$pw zSFYP#{v~H%-d@0;ZkIRUUGn(7_+25d+<`#A^WNTmByY}*hVynpPukMs^#zv#enVpw z9$dwW(H0#A?KK6Cuv1QZq_(vKyPEcp&cMsa(!+POhdGQkbB$u=sAx}V)9d!wwHf-? zf<1Swg0n+=^&0<%!$G6Y3q((4j(WlG&oIrVlrf&SJ7*Opn7eN0zyrYRv4ZlQS^f8o zpepmpQMzRZ2y4aUbHbFl{0R4?vPx?IKSKBIK# z)jVkVd9oQOnn%xlcU(nK^cN-7QC8~h#gw>`aGxl`l99P?@aqn9- zi{oT`0sE;GD{3d#WGEXBfa9@vHlMAx>G&uEKre}iv3Z+r;doZb#3sksRcI{s7oGF2 zm&li<%QLOn>nLeWsY=p}LSrK&SPK&v4D<9^m7Rstv7TcVlQz$fLs$Wc@x~b$erB^^ zE}pcUTmj4>8k@kPx7mLEE-VbS;&h9TO$F3%8D?RqYX*w)aV^S4HGZ)@ z&{!31oMx;_#4RvT1RE*izvx^*%?%XY$Dc0z=|+H1JwdApq+(e}V|yZBBEdT)JIeV3 ze4I{a5du^z;l|NIwpgm#6ypeJ*0@|em^9f1KA-&9SRHpRDEz~i&&-2m(k8&BfYEeF zZV=G9@(?Ca>*N#4TPZBZ7PapVn4MR zpi1LM4MPmIz5EH^UKj{;dwGbuT^ZE`1Pw1tKsVziHa6S!_2|9DY)%-m<}dZA|NTj# z-lH!YfwyL7fvTLHdAF_unx^VpSSY0yYN~T#K`{+`d?7XN{-8JT3Ehcrf_3kwfRpY* z;Uw-i7~#BUWVeQDuZ`SKn^^gaWKyT(U&TMeoB;h9=j30ZUATSHeQuounnMJbyDu1< ztH&lpM9|oAJTFoChuoU3ZEkLq}r0aP~lTHGih-BMhazfUUA)e1=kld?1yQp zC(d6}&gf4P%kr0>(R^+K@VpS=dyo%|eT6WT$&QrOyo8qRG_d72Ez)K1Ao)i~4d{;p z@ef{y=k>1NHiMNDdex@vD%Wq+D%JWc+Mf8bTiq2GFcB}iZ*kHq4PEYAx30s0U0U+< z8j+J3Ov9RT@;iX?pp|bmS&!Z|#d5#+WN`+ihvy!>XqCSJ2GL1NE>^y=rKMkC6R!o$ znDh9lS&cR>+C`9-nPaf8>ci-}rx0feb>}GeEuumly|plgI^5()7Av5N#DsjFdND|1 z4}2T>Yyn9!IH;w^(}EY{aN=JShA2 zKJ^0J_sB#m+MjpSGcVXp8W6^D4u0(#{MtSEwTHcS074sqLxne9O12r?Nh91iZB;E{ za_~xqND}b1b~ID|sTc4HH!68(n?a3&L6_2IU?b0xbt9M48_<1DL5osfgN{)j4OK59 z?J^Jxr&~9yIjYX!5RJUfAsTt~jV!Tn!xyU1c>or{B^ADbWDX9|$mKKuXhx4@#jfPr0hDMfi;RhB9go7!l%oih$8Gu7A9!%H} z9A#XFmRJOUg~BZZum~3}GA$QbG@y zFvvQmi!$fHMi_~5o>e1C+F`L!J(ECW;IOcD~@`4P(Ag(9mP>|a#Htx)WTJ5S@8E6;@q5) ziT_%0Y;u1n_3eB0zJ2l3^$N$P++#k%LBQ-0y>}FOO$CyN1i!c%rHC}Sn!SO-Wodi4 zUC)%1b4ECkN9duEQ*IIxOv!Z%iZbW_b?z0e&@O`W|BJ*GpDN{XFBSo=roewdVWffe z_Hw?2>$Tu+<ERfV6957r-3$yE5K@Piw8(K?kB|KC4o*LtaDrHIXt#Up_ zUeicG@*yRt-LCkq5h#k%TSa#CkjP6h1XU`5k|67UZD{ei|DZDWA0Yn-=MmQDgD>d0 zKs_7ykdQWsWlFLlI zvq!j2l`s-QZ5IpqSe(2h|C+omw@E|Npq#I>_e!LM&4$|+l)`H)pAlIgO5iNXKtvR= z(r}UdJu_=3cg7aMy-3i5yT)l#4x;e0SY9Oc0BbW!gIQSSHd1;nOV|x#q$T@|Yo3(K zL-%>RYxX&srK9wJG5ZpRP`{-7gLF~AM%W!8%ylKK7@-<;)x_#C89MGj?%${EzWR z_d#{LxtYXby)FM7o@p(*j}#$HYB%G!Xfln9o{P!b-FtC5nyKHGe*q0|-Io6;8AEcM z)Np~dqmYqN3REgOj!7L$Y^si3`mYqm7Ddvg9LZ9`5k`6$icpd|E;Yx^cq5xnI^+g) z1F3pbYDtMkU2-6#qz(a*P1J6>0!ufYi)ECZt~Kz%&*Ot1s>S7hrUTSgms)iPwoO!x z?>_nbdNxhUT-J!F^m^Paco!8>>9U7fQtgG?-TRTuo|YVB*z+HH#~pWMPnY*2m(HDy zbSZ@Y?H!$D)=tv+>!ODLtR1a{F39uUY$`|o4eg&t*3UL0$8mSmnRKtWqle3T7w3`7 z_(sqf-^gdTHlz7OajzVAdplwIq_KN+nT~BnoQcg{f4Cj2i*3V&U_07&TwJ7ff@JKK z^X09x^IiN^JH~&)YnN-GLiv&aaC~u+UpqXFc#Hd<1QWqWzmSw4!a zA0Dm;)(*<9aGyE_{A;z8=hYea*whe(JR9JjqM@QoR^HZIn{A&6S$t zaM$fE_}cllT&(RRYTFyqa%k;rIkK~Mesr;(T@5S+JF5+8?ZneAM%SFhl}(@HaAjrx z$gy3BN=@Hp&Ku}7J94!U00tMn4M(L4`jrlHTPv5#q4kZm<fQIHo0-u0ekf?+vzs?!E2iVcxZoJ&$D?Ilm|DEc#Q~UDt8LRXhy4F3Xqc z@McKLc`m%s^XP^zn2XfWEwL5w$bs#nrBwCcB75FWZLhgII}X{m)p2d?`Sz>p{);v5 z;d&?AS~_fb0_XeLIsZkpQ8|s5&Kre|YT327Bjt{A$-^DbX;N;uJS$5bPgVAkIFyX4X9jmcG)fcYBE;~&?e=%2XxscJ*XvEw{yPdf}GZVZ> z_>+6#&9#nCZq$A5s@zJIo!j;Oo$dX&|Gc`g9c}vqh2vz_vF^^g9mVr@aJzcE=MKj= zq#0% zIIkUh%2Kn_a&3E3txis^W|pM*Wx~BH9s66GQrH`eHeH@X!|mLcE;{kFzuxHVCFBl) ztGqv#Och=A{iEPcCf#tHZPr~I&iF~pwRb$%Sz6kUEF)9t$XQHfHs(@+)N1Esean#w z*J^I3%T-vf&7D-k#|N=F=W0EeI9zp~c@8{>ImgDviBvz>^g61JW+7ib0IY@8UH?+W z>5ZlR2hx5Jn75SMdu>m&(zNRdzqC`{iJ+!Uf$hr*H-JEV7|PSY?UfUabNXd z^CJnN&y(IW zMvcTeEx7{Yb$#hqQdMjl+IQmz}5~U z>*p49?Jl%Fy5)McFxUo~abjkz!uCBXJvB9jI?(H8R z)WWOTHgH}$jclDotB{Drn%u6I3-!F;y&76RtU4?HQnD3vEwviurFx;BiSI~|o$*36 zc@%SIqf$Vs_;>b0%h9mI84Nn4OV5G75!jFq!k(}@wjOQP8>vQpX)|-|%M^= z*>KfY+vUi1z8sJPa^*026fe&?;^j_Z>3A*RaJYiOs`sLDaJJt}J5HMi>m~nX!L#b` z>?DKf1Ba(v4n)>#o2T`PBktG=?A6W+Ypq;3;%rrST8`$nBjqm!1EH{^?2gyAwl^}3 z_WJ7C+)DO%rB(};Pm+7_!+hZ4Jik>q38lBor^(~!$!T!A5-%(VPF-7p%|yfrpt}`JIMBrmHl<^30~QhYbQ<~cfC563;{shvC)re8ig-MXxG{LYd;*_5R6 z#%{;&jU1kUtcCN_&HRa5PGMcNWAW3~^OLkcx)DuA4->nQ)=mSZfA&{fj_^*dQ%+xo zPQv@;WAT0%$>=*oUs#6Y^M-&h0n@T&L^Gb@^ z!)oBDF}HMb?py7+59$?PJsXd1IhQY@?(FvJnXhwD4_7k#mCfo=G~C#^EUcx@PB+&I zu5HPEu!E^`6@u~T$!a4rH9# z+NxA0>o(jD?1U~Y=dzOAuha^0cip#K+0Ivv8s&AD#}U}^$I{RRE61f|MGpP7bS8PSy(29rk~`7kla((^dvWYdrTBKEvK>4*&4Q>U&AY+(B}8b2pxkoNQu@Q0vU!$!?|A zch@7!=O@dd)yRqSG+zwNCC<0wPPyE~g4{Zd)R&u;$li8C+Pgf9v@Sxm^_87Y+T%Jo z3$(J)eDK7zPIU9V)9_*3pV`~?Kp3Zs+uL)#t+}e-7sEO$>?aSRC!v*4>on|*ucSLt z(6PH&u0|vEvs0{D&}|J?PVhXDb~GBG`C2QD?__t9x!t61BbH2^Z5P&DOS_@%bTg9J z%eoS+gfq7aLA2}HUftLT9frcCM)sl=nLG7_BIQVMtDX$bRqE@Y@7hIKYE*0czO6c9TnTGU+^s7HV7GY`EE!S8A)Uj;j7`c|GE+G(1gT=%kiP27Io} znIpM!w9<~A9XHm}b?B4Me8H7*ohES$258qPg!6%5q}Dp~rA~6y<7%KLW#a1xM~9w- zV|8cqFn1m)H+DP8O>gVM6)5GxM@!9WuoLtJ8mBI(Xy==OR;?QF`&~)bsed;T+p6ti z;b+3fTk&QP_Nk*@DWno7fr|@&)!)o`e0!Izfb$@K5!v)qPFm5Jv{tR;u)kD~nvJda zxo0_8T8Y%pleHs^lMWy6I3pJ^_x|==HWa)(_a@}zvM=mEDtUL8bJdLl$M!}Z`bbQ^ zXoYt>wLm*q+IKX3t+q2?imx;SYuPOHlE>zlx%9l&w-BhKM3#>>{ce1|P3Am!s z>|W*~+&Ep$X9IIiZz<-L+Ieh@k@DH;oD8L6t+Klr-@6R9lZ9Y9(K&PNv_qZXQ6d+E z<=62nMR(g9OQpTj1IS^>0>6CPO7At32fk2lH_(U_oSDODF(&&D za=Y3%3YK$V%h1`1L+X(IByqe%_nTk%W zLDq!(^u!rnjVB$+yled|?mouK2R}Pc_SPGfa4hP$XhfT5`NDxOa^i@)E}(1eog5$5 zh4b0OzyWWCjHxwrRR$7`9L)b5^h zGqln^D>bE#v{Efs%SD)Y?$qh}Wihn2y1E{AmI5tjXWzH#T<+`z_BUGx@$_mawbG2O zCQqSSo;uUXMkQ2R&h8vnLyj|7ZsQONYWqSui^|a!c)t?QRHF6ZmXxiOx1~Jv`lV{M z1AqVGD<OJ0rOtiFP8nuU^f+0F z=AHTU+)2CEIo(b`2Pnkcn?6@{mFS*3fm$-OySlzpFYP6dw#$2+R>ObU+FUQd9w;6q zb^=hN&epxDoldTmt6=35J$m`D=HK!hI7+3uBb_^5DPNq*wZv}hI9!Fz5%xOE`|VTb zvELPTHpA^&HP%QZcjvI4m%N4Z*j6P}->pX0Gu8N3d?PCdHyeJtsO)3H|4cd{07rM6+o`b$gI{iVtpmSdutEF8DMNzJ*nxzpsTBblonmi=+*=%|>Q z^Tiv7m(873tXNOw5IWON@ZxN4Ti77HRHyqH{6# zp~BfsZ_X$AmgH2@k=m(MmZWky?rH0Un&iTxIGmI`f>n z&U3X^?cm~Q1%9FPcC{k6E76k!$i(IK-R%`mD%FlS^YxXJz>z_0E2Q@`FF` zJoKOMR#!ab)}AX6ZN?kUz5Vm;@aaZA zF6P|Tf_uB3gAJVd|Ji%@SVz+AK5X^am3FjxIg%x3Jt zh!7_+3_C&$8wn6t339$7i{!n1Z$EZtq_xru?DS<-eed&~?|kR+J6m-gGi#mnDwqTpgKd8^-C2j~5b$j7#%crLyXe)3DPgr*N^;Tg7BcG_o^u#W-cEwJhyIlIW0F8EdvnTP5%qvp7iR zOTE}K6?_(T@QLEe6J;9GdQ5k@`tYK+@B${GdBNp;a$`4!{oZ&})$8ga)y9+Vp+bSO z446RE$H;yET4%9eF|Al8RwU7**RxijIt<)=8gSNZorYP`X=WX5%^JO(@!pWH41!tI zEcu`d0Nzq zCD-u!L04K&dR-D&8Bfrj;L=@OJBW%m(8;dI<325}m3^CA&qr}6<84y_mv@dxCX$Ky zl};p#`mILL*bJ-7jk~GTJbcQH{6E}-(hT}HnhDdVejsneyUTrkp z7Tcbg6ng;CjI+T8YIC->YY&`}zMVLXZ%l&5fp_|wZ;jTTe6iK~mO+e$DF1LNtlOz%B8IrV_m-xwi)f2E}pwBF~>Ie8_v~RTLGlSH2 zTb8s|`#x6RbZAB@PmAMTWHq8urDMohz2V%cG+b9+4@|GG3}?=M{UEM1EA>f#*Qqxu-Kw7H0pCC;BJmZlD+~?;QknCnUWotzxK34d0pzS2S(%$P zr%{a8>tgIQ9D8C+Nw|U{$Q?tSZO;ZL)pxD!a$|EEFZ2PP_hMOD(t_sCwXkXvJZ zcKf6EzI|o*y82VL|0Xhm{kP~p|J}7Y%>G;O>sRc*4gdY~SKpgoJlX`!pF>d5{}R{~ z3-JFd`{IkQ_;Iv}qvx4D{oCE|L)OaQgj#MJ9Dn0%aJ*x%{2lo8C4=Q}pz`nAxs@_Y zQTeC~;m#KyCe#o6@82!_;>#*T)jp5*8-%!-VPm5H{JCR&$erit1(I7&FZI26badu< zddnFJ;ZK0iMEEpwMtTZYapa67=aY~Zdf9^s6}s)g^b+Fc#n0$_6mj!^Mbq`Z{rBLX zR|T5qepA)-Y+nAItjNW0N)o{bW^AE!iYO=K(Fr7ny2}%dWneY?jfKFo_g8pyfO!q* z)c5&Col*OryoU-Ovkw|EDh_~}`UX6sARrg&M+pftG))gy3cxl2f)jop-EU+_qX<^z z=oF%T#?Hx{QS>ZeJM$I^0^P|R)SeVP*+nqo=nFugdwNQC2zAC0{PNFVUVxpCt=`5O z1*e;Wyh5oy>)U6An{RNR-28&R{SZ}htOH?w%g&=m8PZ;$r-21YBq6^g1dl_>BU%E& z-uU?QoY|{T@z1v%ptOH{-k*K*Q9py&cnLG~o^SBCT>Pscy>-#I?q$wtV4a4aIn7;- z>s2S>>!4Rg|G}-3@-&nSPL6a;30-?$L@3XNk&aFnIBp=CG;G{bc>=(;Q|=dhQlZ^!w=g3rxHJo6DyDgYCq5 zvNJyM;=AM%!T)~V6ju{|<`dE%gS|5WArvwTJWT*&K1BYL$bI<(V1*xK$nqboKL%+R z;GPk@<0)S^l3R}=_!<2;JQ zKmN*Xf7R>Pe0WbEZtvh9J|6hb`}y{`Jh;6<{{CmVL4FFc%$L~Jxxp9rzrSZNuRpS{ z*vaJtxfII+0m~PC)@Oj9deH*CMIhkMR?bR~;{lN;AIR6`;SbK!W`CuaT@&Afe_kb= z=jy6|v3&YCRYf$F=U;Djh7bZ}nOGq-z+BCsGVLXE@l5`_oK z5wuc}5Qf4q0v-$_j4uS3q6UnsP*_(ddh=6IMJi28vTneaU$fb^Fjrn z6cCi^@zqI&JVihrf5CecllVqak+;JhA^C@K+L@>)GANpFcA%$yQdl3;FFoI#LJ~oo zgc}Ng9A@ePv;i+MjIgB&-qZEzOQbhIUqiaTo832VENuPglcz|EhPocZ6YKmdtLl{9 z4;8_^_uliM6%<7I-tHp^o;;54*>NY|pb(>vyhoY37&N``ux}HwzadB?30xS2%i(NC7%~8rpRlPyli=jeM zBe&lz*{g1i4q2`Ufk?qz-EL`}+R_^`a;XSEcwH?R%w`1UjVNO#d9%h;sSoR;`m8lv z)qQEzw%SGCsIC?em|IB)qxxjMXn{i`{9L8N@hAM)3$4|#I`eG7nZ~RAT#%JPv)`W& zdu5@iM#DvEw-JN|__en*ch*hTxDP=O>b5!W3p>-E%)_xYEpBwT*6r-Uy@MIf)|$Fe z$BhaEU#=^P*&Na1nGC+q<$aOhYHfjcW^HZNPIsLsX_VFNuD;(>G2aop{U$B!d*i9x zAx6vjf$EQ20&fntlc^Q1#J#)rL-cGdu1sA_*bdj>6k`ci8@AX;Q4D^W z*xoLpl5v?b-M+v={1;a3yE{)R4|@IWL2Mo>rLa_VhZvtM&7GK$Eld!t4bp6V*QiTW_hyh-wVzplZ|2Ve4>{8W` z7t+?sUbTwVek-t>b553ev_L^XskjTnAyt$6hm?s0dJ#sO4MblhQpe@@yV)2bqf1&) z(M$1myXtLw(vp+RP+o9^Oscj>1nTfm-EU`2v$5>-eYI%T+1lQ&X_Z>968ED@t5l<= zjp~Ts)JaUV*=SZyxtXpndR&!jY^G^FWZA9E&AM%~pKt;PR6-Cds#(V8i&n7TYq2pC zO~O$zaYn>ryWT|Y1x>11>DOxQ#2>NAXr?symAu_@1UOZ*bZ;Vnm%To0*z3hgZ8ioj zIb#mv=s>fZX&JCuhV?}C8odG5?~EaOhpMiWpg+JnaedP$x9zr=4xBV71)ExLvY8Yo zrEdQa>x1Gz-qS^EIH*FfDUY=d9y2c2+g9?0YKS;fb<6ZQ4#nsZ7&Ot34BW?2tBtq9!bO zv9~v(uu9rRQQ0SH!{?>(RI?^)88=)aRix&`=+C(_IgJu<8V-Djci}Zb1@}khK-R>~ zF0^TpVB-M`UpHkgR* zEINEOZBs-z9IeNT%4Ap_4#;jj>WzzBy|%O3HqE=DkTCJVsLf?(q|`(zX{SNb@JhgY zwtaQBPnOLRv#oGqs1l3|F8ls=Az(y1q88QmXfr)*l~OloO&Ybixkv(U2=$tD19;1} zWKSDG$SNhEj{A5PusVLVXtk}*Uf@^5`m%20YTYa^4Y_W%h>^Y)`Sqwy31!?s5F zmamkt2pICT#I+67*R7!TdxF-rCoQ7F1DmPO*IPL`SPRP!*Bh)H^RNTzR*iuWgV1IN zD~Q)lcI2YC>u=Sl0(EKAQrX=s))g|KOl`%FJc;eCdX7F7tnR+s-aBm=H$?okgt`f_ zqejzAN9$p!Vh?$@vRMtIv|~@&!fq2z7e%JCFRT8((Sb6p_GUyury4b_-|q)A$6vKw zp`!IocU!BB8JJ{pWx5V~%)S2`^0@h8x8I|TrU zQ5~4g3hljiI)I<+g?P^y+G%0Fzr>Oaz-?1TGkgp>^+fh(qtEWb=M7ZzOg4gWx5JF|x8)GG9HFWSSsxLPROX1^%zZDB0SEmmGs;Rv=4 zO^DN;Z)fwV-!|)`@~k^3^($4M-@rk>7|}z1Sld?2K_oCfy#gU3AgXC`YYg3vRRiC< z)wpFEyx0mL?9dh6`OfhL*aN;f+~^XY4mR6^wAKLcp|Yb!`-R8UH9~4g;I%!P&S6N# z+79P&i|;h&`~d>Vc|^27`w*Dio3CNMr>eB((f$@SS}0XXg|TQ+n3`}t6!+Co9Sw%Wg58xW-LB1= z%?i&(ngDxuyV=#;&9qtBtzgrOl@ZWDvs5vQb$&m)m(6&a1Rf?To=N z;(-Tkrh+{iZ?Rc28r4Ug;np0ETYwk5qxNM6qKs2=x~Y$NGG130p!H^|l$z~r6*pU2 z=dwrF+7f~jcAKcQn36i6>sS+oT9l(T2YZ8lBE83`zgx1invpmq`3TSdSvL_IBOwe|Fx`wq>EvKalz!H6*Fclo?QqfW&h3@e4!225XquJ7T0b;(VXO4}6F5VhI^7U?+TQMt=V8UQ z28RY7a}#Y{X^#5>l4Z9mp^WyJ)t!N>cy%;bRyBMByuMqtW5-qSlBEzn;G!&iIN!RJ zv9K`?y9Oi6$~cU>jpa11nvGFFb_IDfACYcX0=V<^DAYe7V# zoUOB_xS+nfdh;_C@k*?jIzV^2gELV1s4gy;dw6WVH{jZG&-u;Q4z00Y+;PJSU1^RQ zo7#HcONA9p&pU0eLl4vqItLqF++D7AYR2jku}P01FtO6yfbd+R61w#;ud70p5Wlpn z^vfl@wQB;O6XlYcj_Z@=h?O07y;!I7lygaqac?S&keudF?Yfzk zD#TD)Z+H5Lmgf`C~;MO3@skBVFWksMyydW=hvsosqacrq2 zuf6ScyPlJ>{8kQ$a!aczLqVg$L<82^Bq3N(YDV2|8m1{aQTjp0osI7{B>96a&7Mo0O~cwVtD#<2kWf2nkdVi)RVtBy=p0AyvO zYMvnu6fD|Glqrn3>6%sHJUsJdVwwW0BHjDXUK*`J&Z=pKVs<|SS-Z)qe z+S^V-Pbj{WLL`JFsgWqM7?##N&)n)IxRZ7q4?qkc#$#^DfHNl@@xd7tD&ipi$Oh zuRW{}rQ$)atb98eY-wgouFA!LA&Rap^-6HroYR0LHTP@X?YJz*&Uhgd;08YW6 z%0+xxqVIOYQj1qrC9uW8dR+oQl9(y8I+d`T zz+y#C6~%NX8koE+CBE6P*k;QM+AYSYc35vqsJ!c@!eP0piQShwaqcQ3P`lBn`SGTw?5#p0@HXw(?**%T|-RouXh>C|VY1Wq_1#ITn; z8b6;!>;1GF5OB#)$)+fGM9~6FD3+#i$~@q7x5bnxJauEq^?eB8iC4wJ&b9H~sL`U^ z982-`YII<05MvDUhsRI{U&7tmil8Xb&`WGu;`;qvy&+9jAaxA@4oeSWT88@MjwW3!rd@zH^7;W)e98`x?w8cTCPM6gwT8Wl_VDtu@x_L6Gis35E5Rqo`*DxDX~2 zf@y6Xsk0|IELP3saxaMn&T&ba;yB}Aqf#$U2z-5@xPcVWG{bjC43&DufrhI=B`W#^ zr?4{$PrR`?Sc!lW*3x==dhXyj*VRk&qy>>?Yl~sh3BGP%I3Ci5$X8i4(zG(gR2W6E zXxN|(t_~m&m{BB&5?vxvy&fJDNqZg7&AvhG4&2srIW}c+yxb9EJ*DF%JMX66vLuj; zb(!)oeMw1F_h2&&9h6d*^#}bV8PE4h$7?T2SSM%{6{*M>_57 zJ4_6zG?@j|pcv10GEVU#07KEmZMoNlRu8cwh|I>CP^~zDz;fK6aG4~rUY}RCYvQQC@}|tZB{pR+ulveTwg446kn^2JCluTbGtd=VN!R5<2wtIcFGkqoUNapa;e0`plYL;oY)TT!ZH(bmvlQ`2`13> z2KH`kbxNjT$jgb#g~R~DwimQvutGm2)mCwYk<_xK$aCH3O#qcBN~!Tu)Q0j7@Q$XU zlIWF6afo4Sd(BWdwF8Zb7M06;Y33BusnqGH)ONP7><4iI7)*wwGrJuQk;EiKpR=kP z;8>$k9FioI-z*Ia!ah9>WLExwg+&_Z+wa%a9*l4sw)k~pmjW1u1UfK)8UyA;k^{I> zTMYD>9EdxWOXM`h4|@_cf*Lf}>xp<2V)cWkF<6gc8Q}d%K+IH+0Nu@Gxmpz?eq{sD zR6;TbnP3Be4lwYb9pmh9vKgCNH<=s2o7aE|0VrKcY;#E*40_{|&?;+bne6OV6hkCN z5kx<#x7(G96O3&eYi?ZDy%w&hlXz<%%6kaWrY!v6_76U*%>#^+Mx+Jjm$&aG$)F<+ zFjY11RbuR#%l?`aLDK{nQ8>l|rljc(2C#n)uvajAz;P37JR0GkH-HTe$Y(}^B?&n% zd(>nL`j~`M7(?4?{*>x6#D1(=DrPkCNf%)2$aQ(yRn>NHkl>RsHjt#C-%1G0@#Mom z^bBU=l@zI^=%7SpMiAm#s;=0*VBAIbVB{M(euFDVu#!Ahw$s>Fw09*q5c2JLv(RVWZtansHuT@s(C< zBbxYRGJ!R=OaSs~;g~?V<)Kw}V3wkC%cZE{lEqw)P1<#SeTb8l-i<+JYV$g8Ssb+q zWCAmByHeTE64pzMij;&Eb+6GyoY{?W7NTph24lwqx7O<|szHDw5yIc9qOwe@IKCZ- zyt%3;33d<@ERNL<@RusDE78H5(yLx?RRe{UuIp(D78sa4uli)Ofx|wRRb$UFhojFvP{ zd7L2?B^6*4aa;$O5kswW5kRFK*>z) z=;nmN;vOwcCd$Yvni%eheGcb&XbZ5((0DrUw@J&~O~FiVBfcD&%>L#BB!2Hs@JLfBZn0??I1z|Kx8n&`2b)qL zY*H3&i3;D6-1WY__RNjWFcTSouQ;5>!)e{{q=cI2WnpdMpgzDF!<8O4Dy=o#^>^Kh zzN$ie^S0}bIKczZf<;?*CreE&Iodj$;N4P3ElXu)=`G8|SY}#Gb;Av86);Le;ed;) zp$^s=YVVK?wrJECy4H*Il7ks!iccpMqVEO=W!5hD0%AH~N6{2tk4B7HcC5pw9M=zr zs21QvnVpWY+CY~VNmUazwNgpv6FA1PQe|4zX4t~3`g&=}$2^>$Y`=jIjDgdWxVF7K zgqXHH0L&3RgmY=V@02!;T@6ckd11vxzSdRzj-r>>HbK*vS9D~o9vphX*xxdxaPJyT z_0Tt^am3E2xH+QAn-tCsz1M1Ks;YtgK=vA&3IM?NaSE9Bc8Blc7$7?bgW(V`XA_4X zHcbwYJc9#>jg>=uXybK$Bv*QqHRxF3e0LK#E0eeuS@9+!so4xd+=*_&mB*WArL~Zq z2`8lHjOj=qnFi9EQ=h7$p~ii)mdT$=Rb2<|ZvV|ZRf7$Zt;^eDxzObu(-HzO%@}+@Mau=) zFou9{7b~nc(;J(uJK5uXJuI;yHAxtGJi!NzRS^?5o86d9dKB(&#)iZU@v_nDjTQ@l zYodfAoTn+1g!K*U>HQ_h%PlZv+M<~Blb{mDDrcImtUI#zB8M3iw+~xdonf$@IKX$Q zA+fDiw`Obz8fcWGV(V#DKsVDutpRPXIpwue2S8X(s0Pj4F>SzW|$Fi zn2x38ayXmI2{^~HiCS*8Fg8iz5(dcE%q$%kaRZb;YZe5`BHNR^@zkpuSjzi-T^W&V z2?JC+Tmhks>uFj^Wx`E=Jfrkj#gtO2H))zn6+G!WEu0y`F_AFbcCUh5ov;Uhh8sy* zR8bUph?fAxw6_Jl7C?q#aM|K^vtnm2X~l*q)I8a*x>#L;dw(d>2T4*!m|q51#|9g> zaB(=9EIX04ZVadrua}Xbs@1~Bt!m0lN2IYBuqBEj4r@4ff$c44v`Pjuf^Oa)5=tK6fiQ+X@LW;uvKZ+t6{Ec6Qn(vX%6woSoMu3j!FVkw(~TH+ zdYah4fj!~7&6ZF$q1U3^hS_tlO|s|8!|oRLJ5Lc#zYOjH?H&%&d%Gyt>9jY*2(ylC z#(j=S%X>m;IAyQ3UH5p$cMtXPT1*=im1fH0@tPb6`-QKw7~|F3s}|QwMij!?G!CLT z9^)mc@2KOVJZRH!j<^G3KF0|KTL{!Tl_sKL)Fq;`?XiGsr!zh$wpx^w0w)h<__kjO zf@q*n)}dcqHI&^_h{3X;cgM8mQoC7t&{RK}kMW5BNPe0IZY0xrb=9cMQs{@iaZdDlI=7k+>EHJIO;In`6``2a*SeGsl};1 z@A(#y64Ay0-3`7e&uI*Elik9p0Ys-%@j<|X`}blx3CCK*syY*jzVA5=t{%iu+bfPDt|O^H*Fb}`jvm_$ri8JqLnWhlZmjSh%INvU&Xmu=OT{m27{hIBw!9NwHT z<2lo+0Sa3UuT_hr>zRynK%9&KgvJijXtXdb?n|+jctmlg6+!vhTs!lsu~fv4*DM0I z4d~9`_Kl5<^swU_Ha_r3GNF8TwvCtOa3lhN`Lc~$3Va|m>?qSP z&EhnvMWBTu8k7fj)*@i9^*ymc?qywsOXl7z#~4}MPMWk5guHiHL{e9VQMQu>O>T?9 zUh^av;wCM#3g&Hv@?brk_dt$RMA4fUcO)t6GL`Hpko~|d0kHYGK5Hhr>oUP))sp+8 z7$fFnmE2=SZ*kbJqKMsV2SB4$nDHn`fJ~{$0XYRsI>j#02a^K}c&9szYw3q}i?3E3 z#!#X*J8fVf0jMlC;P%x>UArY%`mi;n7wrl*0%=GFbxm#GEhP)N$@V5Rmeg>9Bufh^ zU6%0jqy!4a6dN3tSQLN@07-Wv!(L(-+@Wca!$@ zkRG*P^wkJYs3i1dm`+)vlC=_rKFF8=p-qJGV1NasvH*9CEy-}2axjaaqfMF|$AKDo zU*5e*A(OFqwU9j?EmX?lN(rlPiTbvX{SZJ{7 zaJhzD1r#-g`b(vv(Ocp|eb1YFUn~bJyr`>i%}qfj!|0x|Xb1Zce17ILUD7o;^IK#i zrFe!;tM*Ev@B@zbtzE^$M>~s3+&HeyxS1fSvC!HUW1?IMXnBX1)||QpF^Fx>W_WP$ z58*Oq`vcwCRi}-?#2}^40K-f8u3nW}HAN8W;;!QgNwi&wb9an$p5hs@KUI8vKvCgb zq;#q!D~<~&*^)$q&I8lH;|h2R>4AXOm{qkv6(mWYh~R|5Vr3^zm?Ds79pogwB?gD` zGFfqC&{j3mPDLEICp(Z~JY!9GK~Mq3BgIx=E$tFJXn_t9F78Fu;EjW1lmIhoZVdy| z7#{FR0xm#2XeYdm$bt(Wj;)i_cPHarl?H`2NtFZX>S4mYV|+ce};J5bA~~(2Zq|5ob+`O5qy4 z9D>St5vhYg9|!de9r_EgSPeti8PXsfD4Twt>)<-mZxp9|rL?PfakV`#NV-~OCn!^a z=TYN|+B4veKiZ~#gtgGVcMn^VYILYLkvXerAE=mSK+(_wM=yf|nQsWm7slxn}@)jI>gS0fp4%vqO2SD0|77zNS zc_Nk}U%+PNj6roUBc#o=xNY%?Buds&DDre|&{mDW)pi4HznWkv%P13e2@ZgVjz{nM z{Ax1A8kQCD0&f8XYKZ}t%RN9$4+m)7CJnB%i{cGt`^9B2mk5kc=~2g&i9=ecaViz; zmrbI(-7@oy@6^0jvq>=vWw$HO47}NE239Q{H{0aJP@j#^1K{VXclx@ej|!DGG>pk*kFi} zRVD>~CYMMYkmuH=Pkotfmw5rqWa%FaJ_R|e%43?Hwu8}p}0G=wl-mVTz zKrXIKf{S>ix@(XcBwOg=Ymlc^e>doiCZXD@x-F0<*Whc@?ciPTc{XNDBF~hqJx>o) zg;^~`p@HwA@~%~DRslzQ#*l;NX3BVbGA##S%QwfXuxWbTWxvS4n;y)F7Kd=L#lc_3 zADSz*2;hq>KHEA}%kDZwFMIVOcp)`0db%^XtwalgA~HHrTr9}#ib~`5p5G;N4~wi)PuB=6 zu3;EA8R?_SUYrb^nx(Hj$6fR#9sJQME(Y+*ZHKlSlS+TsG?KKhO47)~z)Ozgmar5! z!OoXdqFbbCO&FOYN($*|G0R0}WCMVtEomlaHfC^6j2+1LumndLp$ZxfUQzii;AzjL ztzhxPM%!D@F|csb+m1oB+1)OZtHc-&QtxiUi3To+|*PdTvq{zp7(3LF(_GM z+8UUZg)|-Z_r!c|$Lj{$1xUtq<*=Lvr7PR+m$dO z*`BG?@M6RBc^qsi6EWUeyCh{Rjbe|XjUeFmUBAe0+wN`=ICFI%xmu5iOX|Wet+4$h z!POGE3x<&4#;?uXg7zqM;D%RLfsF-)WEmDL6=RF=(y=L1k~v4#hgb#0>2jb>|6 z+2G1FPDE|i#7uA*UkzfXoh0>vjC>Hclii_R>souabB}N9l}{nvw!o*~odv!y8c4M< z0e*L2(HBx3K=8Y|6$L9wne_=k#T-#?wvhP0)| z&1HqCOZoyAq_FIEzzI8ZT#WkQ>(?GSqk)2aI`={y{Mp;q{r-&i`)RTUJKRH34Xzk$ zNfZ!Lsdh%way?jgR;$%V528ovpEr8s_ajK46ME!T5YqS@gmfo}=~d{FdF0Y(g&vuQ z%wFodiWvXx3ZS3>zMBFWW5Za3G>CX!9H6TV5RTThQI^^@r!fl-x$^)(;pr%-W%#vY4!8ZsP5dIHY z@BlCh!NQ=loyYpZEZiK`g91D6g(|lJ z_5RlFH9X-g{3QS(&fy@Xzx(Acd;uX0;CP{sA$R2aC7by8wP+(~S+j_JQ~_e@=Y>U! zcMGBGLhxCE>_5M7TJ*x#jAMZA*Y7;GAP&s4HZMQE|8o^VJsdwirfo+MxgnrIppI$3 zl=t)q6$~|1ytz5*S~(N3cA3^95&%pn&&p#I`(k~$z$pgk| zoq=jHN&{FMEmlu(HW&C}guManzyJz1Oq1_jIte9fM+}^-^;^;k>JEaOxCkxi$$j~= z@2yXELjOp=fDUIFmYNGIyG&d`Ie`o69`eJh~#a0+fxT!q>i5_-Yl}oQ43G@?qht=s`xD#ZSRL9kBjOq2>)HH-z~u`ekZOjMoz(~M*UlBG6##?9if)KUSI@3cQgtWP zZ}szv{6EUNMtpLA$!w=S^8s%A=Bf;k++{vsiko_LLNTlGHQ2rd3&U=& z&efJh=qks$ZnEw4=+Wa_`}BH%86g#AI@SB_C(?Kgm`BP>SGh z%s&0PO|4g?bsot#>`$Nx1Yne}?1My8I3CZ4RfRghbB2Z^ufiMnP!(~&Wo)0eL*by^)XrdyPd?Z>Op zADNfx_@RDtIwi9o06&V-T4b`yg$hn6PsL-GKFtnQpfbdTk-Tw+jLR{m-^qFJF9uS30XQ&KmZo zND+}Kx}P5Peov1#?58W;(*t0wLHP8j=zeNJ9y9#{_k63q^PMNtF1(rI+{zT^FKO>D zI_x*m-v7)zQ__$6&0G5TU(OZs557N7z5PF<$$H=Zo!88M4*mRBfAc)ee>W>)|LTul zbhEIKKlI7BZ|uML(zA;yUizz$dI3BS3MQyA<$~$}VmTPh90zo0j~^eG;ql`m^87cB zKaU@Ma$|x!%7-|_!l%#FjT49H|Ia|5go8gC*zW+k76Rfu4IVrKRgo9LwE{KafEonZ z79B{UfKn*HjRR&3-oWhx&|*z%WkO0axH^Gm3gtc1o)yMEXoKK8P>X@yF#Fn+6TJYc z#{H?jqrx$S%gY+s6(PA8d>rV?{`gTS8%W89R{6RXxagqkTxM55IN5ptmsA&3aO@>a zgc=`{rG?Mnc3#-X0hlS_QE)VcenS9lr|yC7EK02~0;S$*j!wEE-22k+azcc-RT8XN5Nm^|mdzR+{tlMFKYOGg5{8bto&zCPbdSM`-^ zqRo4L`{AYkx1U4ZKS3OsS3VyPkK&lm>hYUzit8*_4~_fp{Gr`AS4;Vac#yB9&Oh-+ z{39pZH~jiS&u>@&y7?#GlF+MfPUsJDv^UuRKlu{ZyCR%>Ufwt1fAgA!efi8Z^GUsW za-O(M1p4rervwQ;r}SSB?d0#f3wodPx16(FgrkQ*@2{%<$0z3c8aurG7vSUvY3!=x z@19G(QY?7!M=F|jJZa&K6pz_rku(AJ^ZQ<%XU_fv&D#6+H{NFQGF$U+UwFTCD*T4S zyDE7Z-Ye(R{uP**e>?b3zmWa!_6#9G>Lq#gkDkO*Z}pG_`ZFg%6J&>zGe#y;{_@K% zAs3m=Y;$QUtX5!&m5QOPs2a2nPv0GVSfJlWpO^uid-bf z7up1@m4@#)eu^X~BqAYU4TQz4e}_tuv4^9SCZ8+h@+2Qb+G z=}xl`lLlh=rz`dUav6EvZN%^&9#WoV<3cJA38Yt5qe;Dw;eQPn{^LUC9#c5E$5?Kz zQOO;%k(*qE7elEAIMB&2+MoC9{|BPnIbf2bx7ygdRAyS`$VzzV3pAiJZL^Eh&pTp&@MhHJO&U( zL~SRU%3S0?0UDqTWoTk@Z941)M8uDu6bj$y0676GL$7P5?qnrpUhuFsm!XK%LvIkSJ;VrMFS@wO$Q z`#*N4`wx>hIu&iW)%~Lj9p_`uE(1RR^m8@Y+0T3C$G)X#efD+)cb=lREOs?TZ&?yX z@YOe-qN6$&qOCI<$9K6Yt~Ff`&G}0TqI^Z(`~r4W^@S~6j`0^?NzMJ!obOzOyDV4g zkHWhv@k=)U_~%XZ5&z^uxqMdSiu=C3JU6{V7PqY)4+&&PZP){E&m((O+p@`8ocX)ODU$`!6B}^uGOX zzGiCk`~468zvuh?uVzIq=YjMKz_ZZp@uH$u(XdZ9%~vPGK3e(j3B@_Hm9sa0mZ0|h z7*ul*@Qj-M#--iN2m2^#hu}G}vLZ89GM9-OTzgN#Igb90k21LIoF0-ma2y?9nNK%J z=Engg85fUPy+gbQTJ<>4&%Z&@j?#UHc=e=C!S5^{_-kw)okF+K+M@Zm$nEOy!(?4a zm%lH~0V(}^h@!5PHgH4vzV|Nu$aeBQ-~1%Hj^A3=OPLqncZi8 z;w4(Y%*4y@?wRikH-1QVx@sCRp!;N}|NJYTair|o6nHdhyc9)w)Qiav$1q-OED+w3 z1*_f-lYP6OS{3Xlj-}kK+rVSAqJICn#KQ5$Cy z&fPeeI{~_xB_+4AAS2ah9iEG73Mgt&EquK| zJi3bW&7*l=4rjdE02qZH@JYXF5@rUz%PYWLN@Orj6lJ+lS)&Mcp&x<4D+XCc#xzZCU)mjv$y!JcLd8Ab~a*jSNG^eUcE zy0IR?*H@vd_r<%OgG%oNy5_-n`6}HX`f#_`mx$L(y;pIlSCNYkmprxj#-XpL@AK$L z81lL8yK%1>4LlI}ng^(#Nck$(HH(2h@7GfR#JM>X$oN$-(Vv6u9}IWRT7Ua6SG1|_ z$h>d3!;rL>5!zLx>)m;W_}6p1Dmo}mvw2U{>$$e;kk`A_-HCujHNx(R-NG>n_GbO) z90hv=QLv|9S5%wR-8ud>$F8}t5j8&$2Ya_07dpHh(fS?4#J*{0>s3JPn-;mVs%V6F zqGI#eIK@X_GiZG$ga6SLn?A}5=p?yQ@0nSjNc*(JwF@Q#0>(H+&t9>ox1gGQBYKZo-HT@`o?9F2Tddx1cZGR(g#k~&cUPEq zR~X-Ywfp9kjBpLybN3*4cZGRV^qzND80407rAj(WeCJEYTL`1?t}u6Cectpw^6m;_ zWj5+}SD5?~^6m=59}N%RV^^57$tSb){jJPO{IH4ZH8%Ty^1&bfLgrfYzI`$GT&zSd zYRIIDyz8$l>zSARm1X^@Z)A_|-2BgQ2p5z8vAXZpQ2!FT!Nq9)CJy>PIX7hpGXb#g zyH5J|yg5&{{kzB-_P+g(UNhghA^-b(=ZXCXS&@q&|HY3!ewR(RX$8MFpS($>jy3)$-8u)qgMXzZ5*|(sz#G^kFoK^ z-vPfSc@J6}STpcj&m6F16nBUGIZhCjN6m%&fY;X15gwF>NHKJi2EMm)_K%J=f)~@d z666ved%2+lJdn{#1>CUC?#j6f$;;}a{7q)Z`QT#&DFU9-A0rH2#rT%+>BnF?geM;$ zvO`Go0878m*XU)(>f7cX>pAr`ZLcGP_S-p8S}a^;UcMjEDX zeQX4>`YqzqZ+V}7?C3^x^YW^ElRT}<)0f|!-k?ta$Rm36Y3{T3;&X53_N@Kl>t^js zpbib>&9{H$#g~p?9pCPsKx|9_e53zJc#9F8_Smn!1f}xoFzQD8=slJ1IJ8-=whHV_ z6w4CmX$CBcc1|AS0$y1Ne-a_h%27`9pH+3|sj`0=v9|Z^kKTsEWzn8r{ddpv^WmxR ztB4da##1!$B`W4AM?5s$%W{%r|jSFX3wjav4=U# z;j3mI$orLqPX1Ttg}j>7ub=tDi!=l1{{T&5#)ywbf-`*6(QWl6Gb|tnRz;5>F+GG& zolc0evEI{n5JP)?QXF^1qwI?h^7T2kaa~h}oqhZ^+XyJQoq-_~Z7BZtfI+^>Kd!eyIL~^EBqoXTC?v+}StZ_Q(|=^Ys0$r|fF*pJywt zozNf7moA^w%Y)k!`>%hN6Z>=7#6CnP=Z0Ur`n!7ucM;&uq86npU#De&y4 zR`^h`#ZRL5w?*k&&b${P_${1y?~%e!K^OPDIZu!Mm(iNMZ~w>e&#SmdE}u6qWd0vz zMc!II|0{Qh;4_fV|I0g7zIwx+0%Kd3k>p*vPd?Azy^VZ+RW+KVd*pNJA7+6RARV0f z-p8xek;Nh@;Fw}5k7Yn&@&`vL?E~=HK`D_;-_f$@1tEsS08Br{8*Y9$Kx@^7-e-RWWk@R=>yJ0E(5$9WVx{K&;MlkKM?DC-~Qd#3_Cwr7MJn;!>q_#pDh0jHTc|kb|quKNBjlE=f=L1!PI;Rp3uPJ<-!Is0A>e51el!Q z0`v?4E68V8sWWFqTsdcy*GCw5o1V%656(I0DP%qG41h?XPWo^b0DsRS{y>`y2Oc;n z0ZasdH)QTHr(Z}lb!6t*Nf3K*Hf9BnCrTE^cYWgk42SG81BV?{1_vh^6a+oVG3xK! zglkK7`kgx(M*b#CEQZ?7J)|C}{LJOwtpF_D1C#VQufT1N`!B-oeU(uA8jkz%WglNQ z+Z~R}-sZS3UMJdLxZGPX;2&$FltKs#B|~P&uUU5=p9gQ#h;6-ZmtHgeob|3Q10}K| z_N^3ee=XxEybrr2^H+EY$>j+Mr9KMU$S_lKT^9&*$TJ4*EGT>2SC=T?9A*b)d&*G1 z(6`7JQPWY>0E`tvYJpGekvM$a>?yhpRXajCrBKDFEEI(nL7OHAfxJhrd%nLZ_yCiU z$&G$|GF@a+VW0J@cZhGgHIDP%G# zyZ~I|473JBTo7%QCr2sw$&H0U1P7`c^=xuWX1_<`6+LhIOvbFfX2-vVQR&x= z=#mok^yn)H;)|iBnkf@9p#1+4A)c$9jF1wTi zqfsnR25@s1MJfYeABZSfZYCL!NUSUcBzUp|IMB1ZA;y~wsx@PXuMIR7fOP;mc~6%E zl#Ce%E~4PB42=c|;8Lu6%+M<#e~~UXec>?I6sia8fRSE-fp%wlkvq>yGzF9u0LyZTs~tx=15J?V4+xz1EQF-JxMb_ zPKndeC^#86ZWO%L8U;Hzp(jd*P%|IG4iV6ddlSv*yd_d*!iT$<37-}gy4JtHX6K~t z8j-+XzdV>~`(~LkOhE}tYCDOZoko)IL>s_U&W*fS2k43?_^o;0;#}RTvsbLRICE{J z%pt}D*YI5825gw<|4Y6U{771c**}as8;YZf*SH;9yj$|Lth;=Cd}Lo_dXRAfLBnt> z7`?ctKPDa%K80x;2t0Ho9!L)AAPl$Whd}IS0!$jJIhM(jQAfZZHd)_NhQl=bmOt)P zk5$2qrf|6;jTs}g9m!mRd@h1LPa+~C*Kr-j#dLsHuC~;*zWmBRQv&K+HkD!s+i{0K zQ#V!SNBxJUbPR)j#BB4IYqS$aZDM(XBh~??VB5FM9PZ`71DkkPT}{U_PAlyg>8d#O z)TX-C`dH*v&ZazMtF=#Oe`G}6Jgl?guZ@P<>xi*NFqRIWzMyRhL-Zf3HA;>h**Nua zYCAH@0K^z}Kkj6E-4C&{1^pO`QPHjCYrGv2OJSRigtwG9rs@qH&wLrN<6?0h)906t z9gVlhtV`x8fGLF`=MA6vK@&Qggf7- z2F3TOK}4A}N+7jo;9C> z=kSR0jz3XfhJ!!FL%3SR$8G%5r$#&6c$3JLM22=fz0bA7HU6=DrG>D4EvTo!(;NK| zQwD`Kc=)Qa;+(VPDjYIp_hxq$iyywCxM#9BzI$>%WJJ6(eb-1k?1AU3DSt9QHQhea z4xb-9G=Amoy|CZDflIQy?V8!XaBkb9L{Y9$qFwl%>6MoWts843H^4eF_{nk8V|wW5d1BH>Da%=+XKPNfTx`JrPXRk zO6Q-1>(^}<)(rlg;SKxLZZHSa*=n;5=aE2`KR_<=@&1|_?*zWQim3DO<*Q6T7-%Hv zbdD1IFqt^)ner=@T=PU7BY!qkwPhdiDV3k*tJCrev)Fe-Fp-T5CbHc0W<}?la)~q* z?lF~c(Grb$+S*p+uowZ#mOCIsytak|cHm|`I`!APzw|&e_k$mD7zTsa@UxKkTnj@c z_nHa&eMw@4A>mE&dQh$z2@|v?0#2dC9g9c^>a{vASHoRvay%v98q(MMbmf;ZN7LeE zt>$3xUlAH>*R646cIO4V@M_F~Lc9yrwyx9@4*1Yb<=uyVAynS0M2Ig0p_b{B2XR^%T%|S97dOY6EBFq2< z>n|6S?BS0iL+ReLMccD$qQqTrTI;DgDbF$~7gqOe0o!>414 z&Fjkn=R`B#j~sT1vw3!I)amSNTz?q3V03hA^dKY#M+wm&O?riU~9Lh~u5lHEm2PC_e?2JP4wZ_hgi7WQ*-m~ZO%Xf|RipCh^^hjT5@kRztPSIC@ z_ZUoWjbUwYb$)LtNY2FIKB)ooIg%-?Hc&aD@ehU* z*AnB1joVDP14nRgZL;Cd9?SC%7^ps#{APYAx-Db|i~>#ywGvf9S?no|R=>$hae+%t za*{}4rjdwf1&3EWuoVKPGzzF+0F^CJw@D~d;Y^VUDjC*!Ha{ozhTr0k^0qT|545Be zj!&y5IOQqdP{>A(|41gG27()padO)$_)CMsp~GnZJ*r{2syK5icFo{#aCq1Rrkj)z zS2HV%vtNMrN3ZfQuL7XFaRLXQwVJ45DVL&%qdOZ`hoYMns{=|GC(P)iDL6Q7pd)de z3NMaBO6dLK^z$fI5-5{Ft<28^bncFt(KDws+cd_sg`LVGCR^o70jb$1Rez3#l@13n zkiZCsbbqB#iM9!K1W&Qg;ok^lVPTNW73p*_ohoza23W4U5jYWFf_)OTk)O zk#K40Qreq#5UOkDECcHu#B+*|eNM?e)|=rPg@>9%=vPA9rMTVu@mC^@V$1n&_~(;?LKa`16t>tOIP{49o9zsGVncSsV4 zS-%jPc@f=?SaWcF;u-@c5@h+nC>nuKWVZ}9SYq%yxjb@wWI7dpt3;uqL<~;zR+=@m zaAluj?4v+2UjW+)J!G-d1N&YD-wmD;G2}NdzeuyVV$HvA+4}cTDgVIX2yuh0V;piih>e9eE)2*YN zncY1u2GCDXojAR^mIxYgxk+(ZHIZ^rYsI}54|K`Gy3mf|bIV!N`NEwIg7Tc1ucGsq?Q`@`Tv|e892eYEc7Vo9y zY|a`*U7h;tFI_9V-l534&arRtYX9SMR(osu3SdeMJ48rnl;tWqF(VE==DHk7_^lhF z%X<&Qc(34VK@k=z-O)- z1v^-IegX^9%;%=F@syEgr@MBU>#4(cxfIh+GEDvGq|+Iu&pngYWpc z61?InZV{&r9TsyXi>Ng^zMb_UM1<5AyqP;5 zhpYbG?k0Ljc?>R=t7Tjoe!w0weXwKo9Qw0BB+TAz2{el@2j`@;Qlo8ZSbTUcO=P~P zh2qJV&6w!Q3AeUa__QVWuG16mG>4RKO5-zhZM7UD-j&-H9%J3B-J-=ic>i*C@IVsH zOj+T)pp-7@PWPRWO(lvy0y@L)9JmO#I>S&S@EUPOCr|Go+aAw)rX+b~M_%@gfW=1F+w%xSv*BW#cOJ!D=Q}y3r2c);i%TAsadd5BPw?1`-7nE$KH!U zFweF3N2yd#Xw#1m0*=Mjcz;5)iT=fpxsAw!3z|2#r%r}Sb7 zb?s)Dc}!Q!Mfe~%qeObWQ?NszW1m5sUr|))e}BQ6%S0v)-H7uKx(wABCeDA6xlo${ zsWx>d&Q6l=sBVZ6=f5(<*>t5L!<~t9pvPMXV8TXN1t#cmf;yTqNWSOMm4aTg;^30ujHzMri>9S_q+4`A*E5V9+#i*A&oB_KkY(|x-1+o-)N`@ zNx{5@qhBEt$ar$m7%(B777R;f^nzhYQ+Snj0LAM)pf^34pDb6(%@bMde`~WRvXBC1 zp+nw;F;5vb9$6lL;bXpXqET+BwQD%+Z~Dh~1^MH-^3f`Uh3&APS0Xqcd>RqivUpzX zl*O}SlqJFwr!1wZ;gl6W*1u)*rE*#}SUO8}S7$ywT+_fg_Y@BCcTm}2W!OK}f176sJ+nH(m z1Vc@{pras;g+41@)~jM*5>=hXYj5=0nyuh%L$fxOqcJ8!Q5?)ao3kg{;pQTE1xRFl zC-A_^a6*{cmf4q#o0vfa$I@0QJb-|x(9YucqbIKzR?^^fs zGi@(;0Y(w0!hSJC&A~BmjmoDmJZ&|L*$-tQacYO>#{+X>{F;NVL80Q)(v@|bYPQ3H z$P&}$vRZO!hZiJ55?KUSeh5aj{VL!2sn3rGBoc=kIU)`8Pzilgfw^ou+`#)jTKS_s zx*CjGxXQ1#!*j6VuFV#5+6~-PS-N-)oNyG;OdvwJkgG$8UOwI~tqJ>idrr=N3RjhZ zO&bcWnR?D(9C}nfi1Ib28pmuvzQ8!L+Tgg`PxXf1D%5hvXNXH1VJ2H^_&GPFpvP1* zcdXnfE8HB&70M0jZ=)emE!XOqP}&jpp)r{4Rpq=7=n_TC(O*)7Cd2)8zn(*zpc)Rn z5Z0xSU#Oy;BT|PMZHX~AHwWiS(5bH~gBJhTPQ+~NY=>K!f;lopt_cSu70j4+xDMa5 zmyGX0xAe~zrxL~Ri!J7ST@3t!VtSVSW>JbMHD@X)qNkak1nw7_rS^e!;RQgbnVgwa zruw-?ox}S;c&^k2-m84r=+vsfTlP_*eJWfJU32q_8Mm=<0=^B8=SsLUq{4ecV3u3K zg){B250(*_NJKr@-?} z=X_ZIR&x150WxKhhEw4tX355LjaKyPf$%K9daUiWCc|}#PGEil)nImB2J$y^FdwAH zFe1h#)CQ>26i2K;qhg~C3+r%T4pT%-sk3})v|%dxfn-#k9HC^#WHdZ`&-jOTYhj;y ziLbhInBr+?Yx7HVw^2b0$+&i)Nt+4Q9Ta_=OSvb383^`>Dk~g z_87s(2_7P76Z|f0M1lti?mr9QK7t$JeJS_|!CM4x5`1wrz~cmO!4f@qlVEr)z$FBq zT?gnqyh-o|!3|pg zt|Q291-J|#92V1PGEw5f7{mw*y*e@CS%bZP4taj#14#9Cf)~yM_%njXJ_zsyf=97g z4t@_H+=nR^%^UJm+DUP&A2nN*Faty>GZ!MCfZ*#HfaeJ&E&>=M_&&k+2wvOHSAvfY z0o+7z(Io)e0Ky$g>=s!EXABdRnWeRgQYMZJd$>|uv|w}uj-zH@9!2g?0faj-HgytY zWn~7k1d@Z(whp-vYrZ>%#IF!MIS%j`!7BvcA^5}uz#PGg1m6M(H_Vk_xMc2$^McoL zOjHG_Xz%(;BjaK29FT@3iL7pkKkdj^1(v{|3L6}1bv);Jpiq+ zhx3wN9b~@C%=Ajnc`_+InUJ1LMo%W9CzH^V3Fyh>!!zcbCzH;T3Fif$!94S1qItpN zC`C;oFL*+pIS)LU1D@c&7d$E7iNl`YuP3M#qzZ!kogWcrrl11&PBE@q(|& zGrQlDu16cu2-3IUzJ_$+5@-;`2QYVFZo=-l35SMT8Nr=lHQWzmFuklHU z%fFD;khlc5lGa@KivUA>T|W$P312TA0ocgbpYSP5@akm%KjqWCz^>qRzLJOp_Yu69 z1$c%}qofVr=Ib<{CJ2OH+|8$zz{B8GJ_+Sm%U7WsPw`18$9MTe$`PC-*bm$c{*q7k z^XVf5Bp!0tX7K24Jn`P0;B`LnGK63UDF&T%D=I=S){2VInTw(#v{qGAgv#)WitqqX zQ4va)g^C0sISeY(2{Wdvh^@V#69Z#`q?iUpgOdPn|naNtku*wp3OX8!6 z-4n~PN0%yzHplYE{&AMRbi%F4yrPg5VJ~(@!Y6VIxPGcuA+^V9hHdfM>*$IH-yZ}^ z6WoO9ePDCr{`PI$jpU)jo&(#|5SABB*ladRvCr$xXJKJ`3*5U!+Z@Ue!i~k5oXd@| J-&&Jn{}0t|DTV+5 diff --git a/doc/LectureNotes/_build/html/_images/statistics_181_0.png b/doc/LectureNotes/_build/html/_images/statistics_181_0.png new file mode 100644 index 0000000000000000000000000000000000000000..ec260ba1d7a73b3c8e2635ea60b394535a7b2c39 GIT binary patch literal 5097 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 literal 0 HcmV?d00001 diff --git a/doc/LectureNotes/_build/html/_images/statistics_188_1.png b/doc/LectureNotes/_build/html/_images/statistics_188_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b13e4947fbc92ef72452f125285cf81f4f43e2b3 GIT binary patch literal 9758 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 ISG5TJKWV-}IRF3v literal 0 HcmV?d00001 diff --git a/doc/LectureNotes/_build/html/_images/statistics_32_0.png b/doc/LectureNotes/_build/html/_images/statistics_32_0.png new file mode 100644 index 0000000000000000000000000000000000000000..5adbf9cac8ebb8be16a1feaf148ded1c82ea19d6 GIT binary patch literal 18480 zcma&O1yodF*EURdhcr@(fYMUZC5?2qlyrA@NC*f>BOx*L(A_!o0Mgyv{U3bZ@BQ9C z*0=t(n1eXy+;i97`?{{Z?}_-L@EH@06b%Lj22)x}Tp0!iHVAl8qaXqQlTk5z4gBJD zme6!ou`_daGjcSAkvDR-x3+V(wlt=4HFb2dw6o=4{>aSsp31`6+1`ndg~jH-Z(z1_ zG-sJLI%@$MLA96Ca)NYjd>;o(i*liHT`1AE|Fsunj) z#0(?cewJz=&K_CvZ7_^hoHdGuR7GNiP*vJ{&6LFh^Xew8&oq6uvj}wb6%o?mHXbe1 z)NIiHStO?&xKF~Y*|702uc|h$BD|$8?|(P-fyT)N!Z>MneQq!~CKuHnU9EJN%dSD5 zvX&rR1Q8rbZmnG|VH^YzDIpr9Kq{2L@BrXKW&Cpazh7Aolw@ubl}nP84`qrLWs21E zRfCj^JO3W5$$$&yA>v%J`Pf|9ezMt^KT(z$7)JbuOJ8xnU6WFE#;uCf%Nk1jc<>&$2rwE7u|t%BhJ!4_L=w2n@Z<>9YXsCn|qP zF*d}=@n8_M(ko9at`jPprzAo^!CfNI6H_*(96$nra}wE!y+y(;o>?ErVl{zY(U*YS z{A&D!wfDL5RWZM?ahl~*f?PZrZKQsFE$i^iRcJI%F1z39eTqNfrbG=-vq&+z{e8&n z29Ba(LLMhK!m0H1|GryGs}$Pw_#1PV1Vc!MA`89}tJV{_Fm%2!vADbdNmSxEQOEJG+15JuypH30H;4fjs9?J%oIXFcV%2~Ti8GO5KNT_U? zWvuS^yoMXHPFpaZQ^!oyydq2Si)v==3u!?jnrTD$vyp;csKhXhY1l*mMdsFD`}3_z zz$Vni1^x=(t^0l_TZ+L{NOyMAio$Qd-WQqqFxK6V{Jv!O*^SGe5#&M@s8{yXYwP>_ zHx>xo96FAE9##%YrjPLasp(ScYF$!WI~_{C59_LPKS(pHvOil(b`nBfN2-Z8$_A}< zE%7x#vo1$sB)``d+jn(XZdUg>gxq5%@;))=T)$iRSl{B?1j$9YawqRo)mc7lla}Bl zBX_kZi9Yu{@Y2oLId1>{sC1+lZ==y)Ii0huxM6p2^%Pr>TpuCHVgvQ6HkoJNZ!w4# zv9iHwAeyjiy6oOuO<@|+a%(?ii{De6a4mPeAoqW@zc@D^+4D_qz68{Gcs}*%0PW3@ z*T$gVf5xLh>cZZR{m9~62yAmwA=@@>imV{aeCXeDu=?NeH?CYr5iy@;%&r$IK;YyEPOl-)ugOijmdALkC|7&H6^9=1B1jpy1&89NRDhx z+gJDxXYR46eTMUtA&HGRcn!W*TPI%xisl7Iul{`Q36Q-vSu~$7%X^}XczTj#1STt? zCq*$pzYitO9>bnig7XRb}C;FB9nU9DYw(3f=iV*+4ik zhFGcOuIeylC*F`e-d$`#V876T|2ogM&@ftG>zH4~l~8l`P`hVmb*vK?mIUM`__wZ4 zdSBk)m8voJ%mIBT6g<1_;^bR5V}~p(TY9bBSF2hzb=z|qr)2sO!gcz9MdfhcwPfCR zJxFIl^D;W-T}lXD`G$UqL(nuiS>{a4u4rW#i6<(_(e}F;f8OpgSf}R3jMoLze_Q$T z zYzlz#95wV6w@n-QA@+r`{oTg)!n7?D+R%kq>EWGmJL?;Kf)6v6Y>tIKxyEcFJN}&z z4yLZN{b$FfX)_L4WaQUP?>18EpL$Ohp2shgp(FpiJKNe@JiyC~V*nQfTzKFD`#-J$ zN^zZ@z0o9|R|j*uTw*u~)Q2^-wMSFhqZoB|-BBF}bJdoXB+}t^D6!V4;!Jd`c2(Fdw;#%g=+C|hL!fSv8WqMt3UGo1kZ>Ti7AS_jexO=}qIL@B znNy)KZ0#ty-`mt*Y1iNFJ>5UuX048JPnslCiHmg$<0ua=wQSu7BHACfJYEajy(8|8 zOQSd`Zp^^|6t%i0`gHcqNuKfXhFO!+exr@7UgO^UiRXt0QQc$ z%yj4{O$N1`#BWM6U}qPXH+K0{-2q1JHI@Zb!NyS?M~h;X@l@S!7mW=Kxek;n7sQ>& zZS(m+U|8a-+PHNffV|P(|B=ek#eB_x5)^6_?1md~0nEvpMdPvI%B27z3;QEg8MRMv zLr8Jv0+-iL^r)h5sb6LY7_RodXS)?*j6jTV)dw`NaC>DNmZm9%%GMt-9CjpJcq5)4 zR}11XxFWuNwaWVf?UgXq%YV&aY@o8i!u>oL@Cu(kJP6{#Q>#eVrAgsPl8<{LO%_mm zlEh(01-6?M+jzI(gL?{(QnzqF|I2!WkPCb(vwtOxA*`&7k{SVEjyxQ%5AeVT)dM|3 zVW87yL?Z**!~eI8G(aac{yp}xjD#;OQqv%H+Dp8wwiLfHl@%#UYVf~C>Ws(c(UGw* z0z?8=e$*8HCN3imfYGtCvMej2Zu=A7DG@b%czAf>?B=vOk-tGCE!eUury`Fz*{tu` z*aVxRf$PfF>MO1@)ZUx=gXXWpz?ccKbxFy3f?iX7b0eQCtkD#$aU2z8dGb(6iAPCm zCeUEL;XoxJ&v#+}tdZ2N#lu7Q<}NGD%z|IPd}r9T=Ty~tPS3YhG}T`{w6?Sg-U#50 zL)j}FB0Ea87})AwQ}_xAga(W+QQjMhRN!zcq4i^(qPjQhpG8GlkcKLL{q!qs(neIW z0#sIJ(B-$4D`8!N+4NIcC^tX1g5=<<3!>ob5K~il-{e3XOklqH3yO=K)8cTQYr&Ya zKMzmGRvYPnv$H^55yF01IqEfCrfvt?$M{8M@59M&w^ z*GY}=_RSlD#Gh3@n=)ubA95>7-+yZW9^ukZi$6SNEw5s)|1iIv)4q-V^U&JHG+;fV zwvW}_V~#y0OQ_8t0~n9j`=+#S--bOuy!NPJkGHm~GG-7675OX%Po%20dg^IeT$J-W zC*Um9cb{0IB{{96xZd}2Z>5&7r)Od5@2`i~jBo;riyIr42L3D;UUZ^8?X_*ypzi_! zFmsgHCIuS~_<|U;u8Lwfp=h{41Y_f4!V3D7z!T(Eq(}2QIzg}-mr+Dc9TWKkKa-R+ z)qA@d8WyZR1nR7uv(;7oDA@bPTvB#KWD>5<4D5%7q$KOIV&h*kR*eNRGB?Kyx`Sk- zfy^<}`T39Di>_k7)=$3xZA7ja50a5FoZRkIQmToWAdL?OSNmA$QA{>3W!uA&SM3S@ zE{(Qy=vG=PE>C?gZC>GfY7A@$%H}1wtXLZ`m~Dnr3hFB& zg@7AGO-0Ybvg27v7Mgi<^n_`hf&`Iou*WPpm;QU}q1dj=3E918e$Ntnmv>Yk_vaAU zjOgF2=CpN&%!UM1mu6GOR1RW(zB-eY30(d}N*dVZjvSTV+-#`W+xtYhPioCpv5p1t zs;0*={58V_*f5Fo-=22up;?$_C~05Ly^Vob5wvkoK2^>{!hvn3Twfr2JbKensz#Tt zz@z1YSW@U(o(@A6VU59La`jqe+z$QwH#<&3R+`$DhMFQz4TC)D?|qUop$tP7 z^zZR3;QlQ^R*A}LG7KzV2taZLM#zqbNQ=9%M<@5RjmZl?qc&UZk67L_{kEK|^2IE| zMX8|2$!_27TE9ff^3RyhO^W#X31>kFFrC@zilF_<-u?L*5=I0=!3;YCFq$I5j5_1O z`w(=Zt0-{u%vihbXIhFQN}d_^6ZaNtw*{~J%-Kr`e0T?Z)Lp7YfuP%VnSCdi>KtsY z1AwVy%l`{A`~J$s?Aob0ohS(IfL8*HWnSagRpj=8uHFzfaY4gG|zXef?EFD~9WxexlS$*(S4 z*IdcQ!;Uf>I&C`!IHwddL_S!wQmb&)w?7W&C}T->K;_7CMwQ1SI+vFPC4JwCH3M!z zE-o7zn}E%y>L_(w-QCrDGDcKn*Fwo}H?Gq}dCV1r(w2+Mw>M3P0%3i2vLa~!iwvBY z$UX$j`B73F)2yly=o#OG?^4x~AK;}C1+#|3iE?wDNvlm6^1lUW1A%rE3#~CwH0Io) zG;F0fT3%W@!WMumHC8xC*xNfra^0?Bb2VTQ2eyZ+I{U}V@gaS$56-TE51b)6;tbQp zU}n@hmc;}J2Gtgf?GPqsA1+h4cCX`W@Vk8N#>Pfvqe9khz?YhOGsccl|FQisH77-C zMLj81N6ZONxnE7R!;LS^pax2;qUb^@KoS1{5Ae20?PLp(tQjOd)w3i-q_FFFJ5j_H z@r_tLOf3LR(xt72g!y3Rx|Ld=dX)YQh(Sm=WRwtP$#I#Hf&$sGSt)i9n6dhT+sx#h|i~ z>`;&gbZbKXJ+~57?~}WfDe$0DclFPJ?;G@Z>=A#2^gx&JGDS=(4m7|&ivE1YVUKrL zR+O6k{FC&sKJc( zGsZhLnZ;zr8C=#ZlgeP2FB=O*FS}+&%b+F3L_mhYF47t&I1iYj&`*_;_&H$xqnlRVvP0*J$Z#hz|$4I%2$=u(9nQ0LlyO= zqxm=6(sTmwT2_k|mz1O*h$d(q>f?X$LO-3rVdfye%O5|u#{zbiEYQ@dq1oO>V-5TC(^I`zwTmKfhP?JIlEv%c?8x$ z63(_e8?#;}^9hlfzX%5&G*Vg^7{{#J5Fw6&K+Qf78PHMy7)wHm@k)BYfjGm*X|%UO zYqPGt7VTO%l6(;_w#dK`EJvN=0q_bHw#CnHc+7CDKn5M@@%*3O033*wD*nGLlzQ9) ziBNlg5++eugV)UhLU>p-t%D7Is%)^WT&igxtDMyTdS4R* zrgXsKN2Vw-nC`{aUX~n|TTAvhrfx!f5T(|#)-FGqy&$7?$n_=!nWJHG6z`)9 zPAK}oe>n-*IxX4x(otI#%aAlLDiqon)d&%DbF^sOU^;syB+7PsGAeZ$fnU)|fvmbx zNyOI6nQ$fu)TqXh0UuywiY#M7j^MTTuX71>GT`PBsMi5z$f|5F@T;Gcw+41t+(li1 z2D8QjbPY&Yp5aB{iWXRRFw}+mp5K4Qb7V$aqlb|eMNFEpM;OY9Ga)U?5eI&;8#2&< zsng3kcw&}SlDc@UdL=5i#)-W$W-iyVJ1nbX z7Q-1}1c!49UD}IzlKVOB-^bvGu!CIk=h*r;y2!5qF2Y=1wgtNL1lYh@ z;2YV%dw@gyH`Q4Z;e9q7S5=uj)|O=YZ!&XP|5aHDW^8_F0TX+2K&WclpbgH7QX!W; zAvyWOKE3|X_Ao4t2u?2E%z5-bd!&^q($6M!N92*W5-_l8;ST`+NPBTMcyH&60LpHq zXX3-`sM71mlJuX@N>V6&nm{o@`d>^b@`N*W;K0IGp$?TqBw+Njk=C4lo6S4vh>omh zjAVV8)!)k-FbVyB#aM!O?>YwMJTZa<0)*Ra&Ka4)Htm#%wHNY!^C&WahX>`fV|h6Cv-JDK;5n&A9+;U>F`O!aOjtN-l$?48e6SIOOtTam zlbQ(8e(k|<(q@ZMk#)yrf_Vk->qYEg2bH%8tZ=Y=^M5rfym?^&#sF~ENfTmVkY=uy z42XhGII3aGqg%y{0J?tn?t|(5U=jhdwz!d&)|4Y~H^6FW=GTq%O-=1}YWu_jMv30f z&;1x2URO0<~%&e1WQ7352q{Y#4l`r1jawXt6W0 z0Pv!~#7yL_*Es{=<*cq+&t*xhyq=bl?(iW9H1M3G>~GYb4%_yn&v)nvz-w0sa9-0|whdl=k!3h=G#C^m7XWCPXig+UpBwX%)uf7DZX^X9?LmU$Bs6JUj~6^%8C zhnJTf$NyghFSI(i7b6$oQ1{SAK7eODl4gskFPbMNv3-c)83fSn#s&pCF3Eo=UU_MB z39kNZULS-mhBD%$#30hp~d`)+PCWTze%z76W>!JovKKf&HfuSYKA=UY*U8Ma8w zv&$B}BJ{PXa_H2(-yvE!QVZf)7hBo(iEQ3FHZ1eV7N&M)CT-iElL}z))&^ikV|zCB zRQuX%XSeFssviJ@%RXN0H9<|*Inb9lX*3C;ViV?DDSYa4lZOwqe=n~K`7oZM=D(HVmN z)#lPU$~o)p4bJRztEq`IP{w;$8XvPwKVDL zOoA_5mCM3va)nh>t1yHu)r57UPeyGmDhTyRN?N1A)5TT8NL0SI1hr*F;^$YDtpW^w ztwPZpQuv_yGpd`jJejh~ewt?%w%>hl*7@d<;KsXy9pKAz>Ka7Xanryic04<~)3X9B zEO2v(4K5&DAUekp|M0JAYZyK}EzSvX4Os$Ev41uL0`B?*M-!u%)5J zSs4k1S)pCnF$K1sYhTN;_k#nEcS@(7H?6e~hqNT>Svp}d37M+C^J{wMMZcR+{g?~~cA2;DPEM!JID>JZhEjKSuysoAuuUQ}X5Fipb zaen^@&pVNDd^ae=@3eJcH4Cu&6!Y8ZwBiyrIM^*Ub@sYknpqf0Cgc|yN%7%>uDYK5 zYG+7uvo*=c$B)CHKP!R7i~zCwRa)3LR9q7DJxJgmx15s#7(88DJu%gR1&ujL)67DZke$Urtx^w!H37;tgyp96QvqG54q$)Q%E#CYh zrpx%FfP)kSsjZDx+%)q33KQ&tf4M%bvD$JSC??&-=2SouE$H0;_hgf$%b_n|nEX{J z3Lx&$?w;K9z6tVKkfdtQtkh40>+=Vll|}fbVdB4S=Wd1Fhju_g z43%0qxd1r)O6SDHSZ}{O;hctx3wZSHS(>vmL%CA%-&Ql7`N@)pqO(nnjpSs<4ajfh z13#M*Y8jopFt;CL5w@xQkPK#B@#ALr@|IWA5(s^Js8<*;j!vu9Ss&K{V%Yye37;*DStldq%DTkDf?|NU?QxihOBBRNVl{#KFre8Il+^Jk);27#JA%CoIGT zzoRl-s+9NmSFD6lSus)Ut@Yr&R__+u zWrn9_$_oa+i1gDP(BFg$z<2p$lC9`0J7y@*q-4D#Fke{tsj~*;Iu=%C0Dq$an9lbt^ER&=x3tH!xXoEI9>aIeLnMH|LrX7 zYOyt>P8^(%X4#3_81E;wpWlz;Ywo}GQ)D1?&Bw}DO;sK&OhikIo&CFvQ)L5CA`u2c zgFtT)DO@Elq|Y%amUOoD9dcr;K*nI?Bi`Lz=Rsn90BgVaV?IC_tw7gwUU;C(O#8sx zM8@i?d8_x>Qj)*HW!NgF|H*+Ql-dB2GSHMxU1tFN*1;-I3R@S3Oqkx9))pB`kX+~Q zh(zUT75k^#6cLM3w>osNXQ?5WDlepr*=cbt0>A5^#z%n2fLtR3mp)VExjujj0}eGJ z0K6mLq`W8CSF4hw3{T|tJ%)bc-Z^>m%-=SDY7FGfjDnR55nQT5G#d>~P>3vnRNO{b z)7esCut!{BXtRYSmsN6GfR+&fLi4jnDK=oPqAvv6s92e5RxO;$6+9Rth6LiM8}t>3Zh{g}2ntcHmKI}>uV_I`Qcps+|kr{HZjIWMUa zhTu5~(NI>1`PT3|0r)sz6IcLxOXzvjOQPFX*vg0WOLF@k8WCbH@pO|4ueyd}EjVVH zG!l;73k>0xwU*2^UeS>G5EWNcL&8D)9)HRxEsL_7xi~QOf=enCqBwTz@gKtv1Tv|eq zR-|9GGZM%@j!h*dM)jASuZWxz;{IEi;nMsf%?>$+j~`rBqVQ?3B}?2TSsPd)a=Axp{XuY z@WeS0`v^vK6Vrr0Y;s#D1fO^;iE!(qNnnPvu-AK21@M5Nf=I_-LlD>{Yq}A~T0Gmp zk!Kz!?%4Q+pOS+Pr`nv=2#$bAc0pK*L>lB=kk~jMN!wl5nni`7;^{Tw5_um1teqK? zFH}ocTFqm0NI;-=s?3@V5(xUBGpr#uh#q2|#VkPgG=3 z!!`92<2OYxs@T~JWKf~{MCN{L>cknFA;Bq8KdAWCsh6a{Qwm2*>PIkqKlCB+yao#J zSx3;NXkULW>F^YRP#*@@XX_p6`W*rFUs1k5)ztb2T9hCOjbvK)W(V4Lh{^iDCYmNgW9_hCc(Ud`5En&Zj>NoJ*w<&fGwQGvkgY z_0qY_NQQh=VeJPQ3hV!{`vNKh2n^<&nTj(|6<^Jj*t)uM1(-#H{jTy^lz3q%6F_5Y z8~I>dIk{E7Xb(0=qBSG*s5wgq(h@QcY586q z`zbA#X%tjo0SW`z7_)fnFXb9NY0kc-%YI zRwo%*#M#z&L4XTjgi(F<;s*w?vs($* z48+8%*Gr>*{MWD3?+gmh%F~{c5S?C~6qY|n7%bi}mGM53Dx|ui$rM#o$5pGoGM5ty zdg*GG{=Ldl>$Q!oz_q&X%^G&9(_D$SpEtUImn&lI^7usO!Nf$jT_9^QP_Y36a`}Ea zemtwbcXNR3Xp%HQ_dn9(iWWc?>Vg;v$iS!SY0CtRk|Rv7URMKr=HUk(Ag0Z=I=%^s zdIhAIUx9Vab;y83cK?-oiiQ@+0+4wB@{)~ot*yP<&j8wBVbSRYssOG_s=JQOV@=&u zgtEK5)KItWgzRrBr@rq|@ zT~Oa}et8aR7CC^>6F@$qx1H5_sA#?NfDggefyn#jYN?o?&SJ)%jwt#iAZI?HUEgcF z-^5qn415>bzOWGhQhrkAvQhi{uOzuGiGt#V|9?p?WNARUxZx-ITGig3FI%X^=1W#k zM{59(qyW{Vz^XVe_!%;i-<%WBS;Y>cp8T`wrTk&hR?3N=5^ZQuQ%P6O!-N({84HBM zvQnAhfaG}Q>!8zsT!V>5)J|P;#4$LS^6E4BCO|kH&tgKtqlKv~%;}&SlIhTiSb#JR zIGlc6HX#P+d-~(LnTobt>7SLvO%XQ)0G6k`49chm{0CIF7r3G95?fv+;=zEi}>>W zk?Hv%SxxM9(+CfhsB&_Ope#pa*A1l`}p`k0ROF7y9 zQCNU+Sl{J0*xXr>ne?Iq8YRz!Td;)R-7A)dO~jwNHNi4IZ^|>SI5f7wi{jd8jq8z7 zEM~{}iYFPhTnZ02ejXL4B3GoK_k6#OtKf_{X^mMCO5ZVW-A$JubN>3D8qLmjYeX;w z|M$XZ`LJch7ZLMC$+B^AalqC(w6>z9XDMF>yWTv$*K8%H#R;G7l1fUm@bVD=99_r$ zjeAsN>yyYCKDDBSD zHve4)AWq@yH#RbDLj0n4u7J3hNjb1wc5r%A&8zzGTE39}CA;aZJ+4?usBAt-B1&<4 zXkHO;a9RYaE^b#GG$#?3pUqPQ=JUsi4CG+H*!Pmyj|%9*kS80o_defI)+uO0A{Ci` zlLN4ip9TpPC<16!GZ@Vj_CI7A=~?U)xZNTmRI0Z(vUkR82XrsX;xa6*AM@X=08QuD zw{IyrN+L0R_|-4Y4u}_9ayyNDXhh5#K>8l$MHNO=Qv+ z1djKqZk;MD)dI&hFB;_c@W>Djp?E8{6ag{?KGaN~S4RzDKurR<`xc_vVOINyj=+M; zidjA8;3%`3O&DwBn0D-rhJ!=pt5ABOEB6T-Q6bxUk^N+Py&M;%cqouxA|<^$^xMiX zcZRfW?=-{?PwOE!{@|O5V)=%tE%fM|j@Wjm1}apTzB^g=uAQ&!m*`oL!V>xP+T8*U5Z~uCLj42ug$f-utIp^v$@;V|g z@62__;Kz)xxR{vty1kQ_eGo4L>ObAj<-_AZ&e{;p%!WgfEefI7 zH1);q*UL{Pj=gBKa6s{&y~uT#fOja-?Tv~COa;h^Y(~I?0&x=UWO-Gw2xqo_K#}05 zRr$wd+6ycgeqKuGa&2a{dFF_GiS1fQTXS4Wd}p`_pf>5+ugtxDJJ!|ug9+sT%l;By zgTv$DD|ES4(6lV)iy1_&!rcCDcZ(^K7-mDE-*nMtKjov#D}$R$BKODj8GH^^Vq9RF z0@0`5a_Cp=2a3Kb)ofo~>MCvX5h#=+OHaC>LgmIyX$ksHw%Q)>Cyau7m*-_fj=fti zpLPC}d5zDX^RE;Ffk^J#Qoqxjlh$3bgm=v|ZRXR&WctVRQV{|3PFot*o|Q3bi|CsE z6*h$tfh3nYkje8Z;PWc|Gm!BGidfTMswp%N=KH$cYEP!q+)g1&Gn&=*m|2;ZyCOn| z(IfzACuxpJ8)6O`NLa=8vv;{!cxZSy`nfz_Sr|0>ymt=ZJfVODv@Q~0cEdZy!B+L_ zQDK%sm*o!+cLpa7lY-oI+hF?49w{Nh%+vLpnyF|q3%4PE18sW-rXlr-D%y$i z1}8nDru~Pe9llwKq_)Ui{DSk7kJ!I;S&D&5(TOFFFEU9C`Q89FybbR<)Q~w;m-+ZE ze@!-y1;ybch{(77THhn3{9{+*^=nMQB5Xp`ZTc$SRfKnpk-XiU>q~=SVFtcDsISHvjscbOe08C!lSrpf*sf?zH2y4+DT~E(`!9mPwsNSJ~>fy3nT9w_ewa6H? zJ`$$a?EB_GTINRNoW{xKvTthPvP>x@^|^E%F>wl}m+n1~PS>`AXSLQ)PI>$%kcmC= z&|~QQ60}%rq%SwAHRtlXnV6J&auLvVL}l?&ZI7ot+3m>EX7xvB2_8vH_(R2nUen}!VHYIr;pJT=$o6IT%ryRtWKA4j+;qa_o0~5s#S)t(IoJSZ|YJ; zhNU^??6;8=(j95C?x(l&!dN@M{M|h0UX}SzwVHGtiD>AH5otW0F#-;YYpEd~PBDPQ zUf@!dXPf-0-22ypZvC;KX07$k;r>2{3E_+$a;#9MxP-w24gWQH^RuAbuf#<8*GKnp zqfcwq-WAvI(8byqS%n6=qPyT6vHvb~v!xM{BC~l7UcJwcwVa!Dzk-;{Q^UBgB36$- zOeDJ>@$z_H%;MjDNk~G>dMr(~V=mgREoPilyQt23V>20{qVRP+gDe&Bf>~Z`PW&^c zx)UyFyFgVJaZ>ZyIMa>qu8GVQL1xRjmYJ8?>-pP#gRWpy`z}oDS;KR_Ym?QC|bbotj`)bvi_Lx)nOCXKlf1zVEv$>+IIWRGy-^wYzaK zxtf>o1A``rxBFtjDW~x-hGd@qI{oX>-cQ`@^Bid44lvcR5YjD zHDYCJ_9T7ovC71PK>#G?#2XsyFQ=^+EbewE30W$X1_|;o$$nUOC9#_z+cn3Z(AC&) zC_=Vxn=-f8RG7D}z;)*=WX~b-f~=-=K=oF%d(0KZW@h1W&Y(e0XEo7;y_eVx;(^c& z474od%#m0qvscn-WdxB3qh%yV*CRjm=NfqCN2$d)4S@d0Ns~H}KDmi9k1kwc7ziE@ zd7DqV)vrGvt&EL}F_ah(djr#fJMz?Zf4gSa+W#9ATeXq7DEXt)Mv_pPZzP^HO;LlvN`j260Pw%@R=dmP;L-5ez?Z${WCere22)I(lZ zjHAy(1`3b5&#ubq8V*i}Zq`5fZNyu>&S|Xq^`3B*{y9uY*hk=DQmDhS@U#Q@WGihq zmS{HJyNcwK6rU}O{fwTO%+%fIxtDMfYCn zvB|Ps`6i9HSUlXqjN7-n>uxD;t3EPrh|p z5>u8-NAbIMGg~m6uT7kNH8`@pFdX`c+wg*zV1`g-Mw{Lt7~^G0l@9poqpGG&7ap4c zwFw$xeSgPQCb0f@C#3aW&;44@eFL{2f+XiAr%ySY#*HA^v@ytJv@9q!5PaA6sFT7^ z@(syOIu4+l;TntvtGNj*xo6i&y4M>n2eWM^V-R|}FrbLg*aCx-{d&CN!S?>x{m%t8 zsjZzMbV_R+z2y{%{{m;h0a@1p(XdyI+nUw<$;@=DEpF5o>a7UO(pGrUpv=vP-Ac=~ z@)sj_Gx?03#(C)J`siayuNxWfcHwr#)uS0B$&Z*#%|)8^+#tO-)_SSnK4x(JMn%7yq*ammh zNj*t5>NSo}sM}2?D@1Lq33by`7dj2SSQBQ-&Fx!*Oe0g$S>8Va2LWvUbhtd+e#_mK zI+0VbdNVbwc)F%xurZ(PlV)K1_@+?En-9C~fi=tv8+*?K5h$aRvFi$DbG7+5KE)f{?d|f(<|nwyS#*&qkY+&afY?) zwi(izt9unyBZDmH@uS{Po`G_3OHaOiVZH?2YaUEe~3?uQA}|YGg{E8Uw@Z z@=da#3H^DTa!|r2B1PWOkthaY$L2AkajMy86kqIVK|Fxv^bvYyFXPY~<3DLIsuak3NF z_9n{;@^eF$7cR)KD0%ydG9TdH49U9Z-Qq@5nn)es$h~0qd?4(-5(1~-``ObN_}%RT z$ZmJrZ*cy)b!1V(jf2a|+MBTTuDIc=mQPD+%xcpzg}v00Z!K?RE3VJiBbma}5z zO%PqD8&KVk<`j``R}+EDL`ypvph~!M`^r_bx>uLoDg4n?+e%yL+vc{7(DqFE<1b)x z9krJ%7rd`V5+MwmlhuMFfQJj4Du@@YNrC`#P?H0GTk*+XXvJLbo{tp%`@yH?ShjB% zS-iI#3yzQv3!XOMcU zr{}OGoO!0@Uys!g2EmTcuT!N{mpu9|q!;~!9!8c^IwGmJR^o%E+LT63%K3Ypj)gvF z9hpqjOY5@Tqsg@7-!uzCetD=HW263#i+%-fW#k2a@(r}Va1g838xbyIb}|sJ=-#sL zQhPKz2!()}8`srpU2IK8sV8TY0Hjm0tvfPZs5hcksGpP$L(Yeg#+`N>3N2-;j(^&3 z>zv4kH;cEl5j0x%6Ka0sy7Au9?y5E(R+Hr}(dcTq7Bw#l^h8Jnrs!ME;Z0g0GjJ!_Rnm)u-c;UQRFo zkXaqhY7$aEnyQ~TJ>_{j(r^4oOOQPZ)-8z6V*lp(D)l|mbh`|2XhC@p`Q=PW?jdr) zXC{0Z8sihsAuIl;*(!17fsdz4E{E@O#AK}UgIxCFo~`o7E$&L$eJt)&U;A8)TeVy> z$iMa>S8I9sQTog)Q-1mQPCzS+HxFwv!6k*V@BWDmnYY-p>u=g5cjkJ`M!X+q?0U?W z<3hZyf`B)i6V}LDUf1M6RUfm(chR)t#?jN3*wQ81XkO2h(xt9wUdM2@maqXn&+zoe zPpS28$oSU>hMlbnz1QScFjt#|V-66obNZu);QNR7pL^x=3j3y_f{^9E1F_fjfc3ma zKFijX^c4$N^(XAlPiI6oeSVw*hJ6&~o?UO{+0V!4j`8WQ?8-B2vgTb`+a3`iHV?Rc zb#3i=03LatYxw@L<$eZ zaQMDw9v)-y#aZm*FA5Vk-2SIH;VWcsp0cR2N~G7Zhg<6oO}BJR4|ixL&aV>g-?CP^ z!SQWR=7z9H|r*6U{k z8SLh_oAnBWTfdwN$@_%Vp5N`Ygo|^sNnMXFzYwgRc>8;kq>eo{RhV?gK?Vo1%Wspi z4^+=H4#{LO(Yw|9q`jA&H~Pdg=B=?p-)z&|5eg^+)??fAXt%B-K2u%e_oJWlS-#%z zbtLY=qPp$=+Va&Q+!~7`Q|xPX)NZq);HP&v3Er;u{23ePcv)K`M;u1gfvo%0v1D$g z0qL9r&X@u>RC2PNv`MJx-s}%&$tU0KQb_8vyvo{6@{c@@Y4#CSW`|On2Y{bK&*$OP zPfK67Vwm4nM-3d%C&SB`38~Cx6(`V-ELq6}-~@kzW;foZVk_^TBp{kd^AxRE|A8V?}DzazJS$Bt}D$NF$ME)S?^#H5+Zz zxSlAy-Qa*Y@5hzjL@UZVrY#bt_^vuQilIQ%mhIO(<6M<{X97HGJ7 z-cB9_#G9)GKs^or>PrR?(*fVS@n(Xx)H%-b%71p_RV4#gsu^}Pb6U4N9nkE5TBSj% z3~#hoAnoV$61H}Xnk7h+t45ZLm&fA(zU~9(<<#}do#NsQn@TTVEHGF~ICF4l3Y>Za z`$N9WtD2cRyI9YI62ET!?Wo35$|1JZqQ}v4>~nFPgy4AmaW(G zzbCg;Cr-}XFDbn3;GE<{od%fN)`0U5RZOi4q z1vdws0uCOzzIevB)YomsWA@&NZ@l0Bb~Xwg+qPx$vuYt;=AH2qCBBqpgmgQuv0wGI zef>r|alz`d&m6a^_tc6ybYI)0JGIQh^Fh1)itidzGQRO1{o8qP!aZ*DlmoV%ZFkmx zFyryGR>@n$5#cy9YiY>ppjDzLyubfCeXY{_4TI2zQ@8Tir?ma)RK2pS9rcU+n#BuxpDO91V@{B@6O3q$CPNVVuj%c$25N4!`PJHY$y=W!*>d|Yjww#}2- zSiE*Ba3fA8XoG)HPtd8?Id7&0Nfpc9^@((G6JP@!Bh%b5wRoRn_S#Fi-M}sVKpPBp zOkw&fCV%q6(HE_OeW1N&5=*ZL9lvh0;Oxfr9L60w9Fncz9o^ZLN0xeN_CHnPinT5e zY}2XN" + ] + }, + { + "cell_type": "markdown", + "id": "9268be0a", + "metadata": { + "editable": true + }, + "source": [ + "# Elements of Probability Theory and Statistical Data Analysis" + ] + }, + { + "cell_type": "markdown", + "id": "b24d433f", + "metadata": { + "editable": true + }, "source": [ - "# Elements of Probability Theory and Statistical Data Analysis\n", - "\n", - "\n", "## Domains and probabilities\n", + "\n", "Consider the following simple example, namely the tossing of two dice, resulting in the following possible values" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9fa7c59b", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{2,3,4,5,6,7,8,9,10,11,12\\}.\n", @@ -22,7 +47,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d1c9912c", + "metadata": { + "editable": true + }, "source": [ "These values are called the *domain*. \n", "To this domain we have the corresponding *probabilities*" @@ -30,7 +58,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6626ea89", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{1/36,2/36/,3/36,4/36,5/36,6/36,5/36,4/36,3/36,2/36,1/36\\}.\n", @@ -39,9 +70,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "65c54c5b", + "metadata": { + "editable": true + }, "source": [ - "## Tossing the dice\n", "The numbers in the domain are the outcomes of the physical process of tossing say two dice.\n", "We cannot tell beforehand whether the outcome is 3 or 5 or any other number in this domain.\n", "This defines the randomness of the outcome, or unexpectedness or any other synonimous word which\n", @@ -55,7 +88,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "84e29b68", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{2,3,4,5,6,7,8,9,10,11,12\\},\n", @@ -64,14 +100,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "8ae71934", + "metadata": { + "editable": true + }, "source": [ "appear in a random order. After 11 throws the results may look like" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c3901951", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{10,8,6,3,6,9,11,8,12,4,5\\}.\n", @@ -80,16 +122,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9c659ce0", + "metadata": { + "editable": true + }, "source": [ - "## Stochastic variables\n", + "**Random variables are characterized by a domain which contains all possible values that the random value may take. This domain has a corresponding probability distribution function(PDF)**." + ] + }, + { + "cell_type": "markdown", + "id": "eb18a204", + "metadata": { + "editable": true + }, + "source": [ + "### Stochastic variables and the main concepts, the discrete case\n", "\n", - "**Random variables are characterized by a domain which contains all possible values that the random value may take. This domain has a corresponding probability distribution function(PDF)**.\n", - "\n", - "\n", - "\n", - "\n", - "## Stochastic variables and the main concepts, the discrete case\n", "There are two main concepts associated with a stochastic variable. The\n", "*domain* is the set $\\mathbb D = \\{x\\}$ of all accessible values\n", "the variable can assume, so that $X \\in \\mathbb D$. An example of a\n", @@ -104,7 +153,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2589c0ee", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\mathrm{Prob}(X=x).\n", @@ -113,9 +165,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "ef71f105", + "metadata": { + "editable": true + }, "source": [ - "## Stochastic variables and the main concepts, the continuous case\n", "In the continuous case, the PDF does not directly depict the\n", "actual probability. Instead we define the probability for the\n", "stochastic variable to assume any value on an infinitesimal interval\n", @@ -127,7 +181,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9c5efaee", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mathrm{Prob}(a\\leq X\\leq b) = \\int_a^b p(x)dx.\n", @@ -136,16 +193,15 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "cbf1d43c", + "metadata": { + "editable": true + }, "source": [ "Qualitatively speaking, a stochastic variable represents the values of\n", "numbers chosen as if by chance from some specified PDF so that the\n", "selection of a large set of these numbers reproduces this PDF.\n", "\n", - "\n", - "\n", - "\n", - "## The cumulative probability\n", "Of interest to us is the *cumulative probability\n", "distribution function* (**CDF**), $P(x)$, which is just the probability\n", "for a stochastic variable $X$ to assume any value less than $x$" @@ -153,7 +209,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "be829d81", + "metadata": { + "editable": true + }, "source": [ "$$\n", "P(x)=\\mathrm{Prob(}X\\leq x\\mathrm{)} =\n", @@ -163,14 +222,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "1f193798", + "metadata": { + "editable": true + }, "source": [ "The relation between a CDF and its corresponding PDF is then" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "3d29d961", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{d}{dx}P(x).\n", @@ -179,9 +244,12 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "fc5b2c18", + "metadata": { + "editable": true + }, "source": [ - "## Properties of PDFs\n", + "### Properties of PDFs\n", "\n", "There are two properties that all PDFs must satisfy. The first one is\n", "positivity (assuming that the PDF is normalized)" @@ -189,7 +257,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2a465c1b", + "metadata": { + "editable": true + }, "source": [ "$$\n", "0 \\leq p(x) \\leq 1.\n", @@ -198,7 +269,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d69e520a", + "metadata": { + "editable": true + }, "source": [ "Naturally, it would be nonsensical for any of the values of the domain\n", "to occur with a probability greater than $1$ or less than $0$. Also,\n", @@ -209,7 +283,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2208b590", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{align*}\n", @@ -221,16 +298,21 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f3d91dca", + "metadata": { + "editable": true + }, "source": [ - "## Important distributions, the uniform distribution\n", "The first one\n", "is the most basic PDF; namely the uniform distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "0f431dd2", + "metadata": { + "editable": true + }, "source": [ "\n", "

\n", @@ -245,14 +327,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "155c6cf7", + "metadata": { + "editable": true + }, "source": [ "For $a=0$ and $b=1$ we have" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "42993dcc", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{array}{ll}\n", @@ -263,20 +351,22 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "749d5c23", + "metadata": { + "editable": true + }, "source": [ - "The latter distribution is used to generate random numbers. For other PDFs, one needs normally a mapping from this distribution to say for example the exponential distribution.\n", + "The latter distribution is used to generate random numbers. For other PDFs, one needs normally a mapping from this distribution to say for example the exponential distribution. \n", "\n", - "\n", - "\n", - "\n", - "## Gaussian distribution\n", "The second one is the Gaussian Distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "6e2110dc", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{1}{\\sigma\\sqrt{2\\pi}} \\exp{(-\\frac{(x-\\mu)^2}{2\\sigma^2})},\n", @@ -285,14 +375,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d00fdbe1", + "metadata": { + "editable": true + }, "source": [ "with mean value $\\mu$ and standard deviation $\\sigma$. If $\\mu=0$ and $\\sigma=1$, it is normally called the **standard normal distribution**" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "23c37b45", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{1}{\\sqrt{2\\pi}} \\exp{(-\\frac{x^2}{2})},\n", @@ -301,14 +397,18 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "07558d2c", + "metadata": { + "editable": true + }, "source": [ "The following simple Python code plots the above distribution for different values of $\\mu$ and $\\sigma$." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, + "id": "b99f544d", "metadata": { "collapsed": false, "editable": true @@ -358,15 +458,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "617597ef", + "metadata": { + "editable": true + }, "source": [ - "## Exponential distribution\n", "Another important distribution in science is the exponential distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "18be0515", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\alpha\\exp{-(\\alpha x)}.\n", @@ -375,9 +480,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "cafcff78", + "metadata": { + "editable": true + }, "source": [ - "## Expectation values\n", + "### Expectation values\n", + "\n", "Let $h(x)$ be an arbitrary continuous function on the domain of the stochastic\n", "variable $X$ whose PDF is $p(x)$. We define the *expectation value*\n", "of $h$ with respect to $p$ as follows" @@ -385,7 +494,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f5c68a26", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -400,7 +512,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "291e3ff7", + "metadata": { + "editable": true + }, "source": [ "Whenever the PDF is known implicitly, like in this case, we will drop\n", "the index $X$ for clarity. \n", @@ -411,7 +526,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "294080d7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x^n \\rangle \\equiv \\int\\! x^n p(x)\\,dx\n", @@ -420,9 +538,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9d493962", + "metadata": { + "editable": true + }, "source": [ - "## Stochastic variables and the main concepts, mean values\n", "The zero-th moment $\\langle 1\\rangle$ is just the normalization condition of\n", "$p$. The first moment, $\\langle x\\rangle$, is called the *mean* of $p$\n", "and often denoted by the letter $\\mu$" @@ -430,7 +550,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6ca38798", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x\\rangle = \\mu \\equiv \\int x p(x)dx,\n", @@ -439,14 +562,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9a779b37", + "metadata": { + "editable": true + }, "source": [ "for a continuous distribution and" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9fc21016", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x\\rangle = \\mu \\equiv \\sum_{i=1}^N x_i p(x_i),\n", @@ -455,23 +584,24 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "a146b327", + "metadata": { + "editable": true + }, "source": [ "for a discrete distribution. \n", "Qualitatively it represents the centroid or the average value of the\n", "PDF and is therefore simply called the expectation value of $p(x)$.\n", "\n", - "\n", - "\n", - "\n", - "## Stochastic variables and the main concepts, central moments, the variance\n", - "\n", "A special version of the moments is the set of *central moments*, the n-th central moment defined as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "0b282f14", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle (x-\\langle x\\rangle )^n\\rangle \\equiv \\int\\! (x-\\langle x\\rangle)^n p(x)\\,dx\n", @@ -480,7 +610,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "512e6e16", + "metadata": { + "editable": true + }, "source": [ "The zero-th and first central moments are both trivial, equal $1$ and\n", "$0$, respectively. But the second central moment, known as the\n", @@ -490,7 +623,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "e244a343", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{align*}\n", @@ -505,26 +641,31 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c0d8e272", + "metadata": { + "editable": true + }, "source": [ "The square root of the variance, $\\sigma =\\sqrt{\\langle (x-\\langle x\\rangle)^2\\rangle}$ is called the \n", "**standard deviation** of $p$. It is the RMS (root-mean-square)\n", "value of the deviation of the PDF from its mean value, interpreted\n", - "qualitatively as the \"spread\" of $p$ around its mean.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions\n", + "qualitatively as the \"spread\" of $p$ around its mean." + ] + }, + { + "cell_type": "markdown", + "id": "12fb667e", + "metadata": { + "editable": true + }, + "source": [ + "### Probability Distribution Functions\n", "\n", "The following table collects properties of probability distribution functions.\n", "In our notation we reserve the label $p(x)$ for the probability of a certain event,\n", "while $P(x)$ is the cumulative probability. \n", "\n", - "\n", - "\n", + "
\n", "\n", "\n", "\n", @@ -539,17 +680,15 @@ "\n", "
Discrete PDF Continuous PDF
\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions\n", "With a PDF we can compute expectation values of selected quantities such as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "7d318e93", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x^k\\rangle=\\sum_{i=1}^{N}x_i^kp(x_i),\n", @@ -558,14 +697,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6ef87b82", + "metadata": { + "editable": true + }, "source": [ "if we have a discrete PDF or" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "d11f1bdb", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x^k\\rangle=\\int_a^b x^kp(x)dx,\n", @@ -574,15 +719,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2a8abb3d", + "metadata": { + "editable": true + }, "source": [ "in the case of a continuous PDF. We have already defined the mean value $\\mu$\n", - "and the variance $\\sigma^2$.\n", - "\n", - "\n", - "\n", - "\n", - "## The three famous Probability Distribution Functions\n", + "and the variance $\\sigma^2$. \n", "\n", "There are at least three PDFs which one may encounter. These are the\n", "\n", @@ -591,7 +734,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6c14f838", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x)=\\frac{1}{b-a}\\Theta(x-a)\\Theta(b-x),\n", @@ -600,7 +746,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "62149f95", + "metadata": { + "editable": true + }, "source": [ "yielding probabilities different from zero in the interval $[a,b]$.\n", "\n", @@ -609,7 +758,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f8f51c0a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x)=\\alpha \\exp{(-\\alpha x)},\n", @@ -618,14 +770,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9a038bf3", + "metadata": { + "editable": true + }, "source": [ "yielding probabilities different from zero in the interval $[0,\\infty)$ and with mean value" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "bdaf914a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\int_0^{\\infty}xp(x)dx=\\int_0^{\\infty}x\\alpha \\exp{(-\\alpha x)}dx=\\frac{1}{\\alpha},\n", @@ -634,14 +792,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "74226a02", + "metadata": { + "editable": true + }, "source": [ "with variance" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "32215b82", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2=\\int_0^{\\infty}x^2p(x)dx-\\mu^2 = \\frac{1}{\\alpha^2}.\n", @@ -650,15 +814,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "688f69a2", + "metadata": { + "editable": true + }, "source": [ - "## Probability Distribution Functions, the normal distribution\n", "Finally, we have the so-called univariate normal distribution, or just the **normal distribution**" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "082e6778", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x)=\\frac{1}{b\\sqrt{2\\pi}}\\exp{\\left(-\\frac{(x-a)^2}{2b^2}\\right)}\n", @@ -667,7 +836,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "ba9c8bd4", + "metadata": { + "editable": true + }, "source": [ "with probabilities different from zero in the interval $(-\\infty,\\infty)$.\n", "The integral $\\int_{-\\infty}^{\\infty}\\exp{\\left(-(x^2\\right)}dx$ appears in many calculations, its value\n", @@ -677,7 +849,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f9540188", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\int_0^{\\infty}xp(x)dx=\\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}x \\exp{\\left(-\\frac{(x-a)^2}{2b^2}\\right)}dx,\n", @@ -686,14 +861,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0507fa0a", + "metadata": { + "editable": true + }, "source": [ "which becomes with a suitable change of variables" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "74ee9f1a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu =\\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}b\\sqrt{2}(a+b\\sqrt{2}y)\\exp{-y^2}dy=a.\n", @@ -702,15 +883,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0cf42992", + "metadata": { + "editable": true + }, "source": [ - "## Probability Distribution Functions, the normal distribution\n", "Similarly, the variance becomes" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "e3554ca3", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2 = \\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}(x-\\mu)^2 \\exp{\\left(-\\frac{(x-a)^2}{2b^2}\\right)}dx,\n", @@ -719,14 +905,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "728ba052", + "metadata": { + "editable": true + }, "source": [ "and inserting the mean value and performing a variable change we obtain" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "60276744", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2 = \\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}b\\sqrt{2}(b\\sqrt{2}y)^2\\exp{\\left(-y^2\\right)}dy=\n", @@ -736,7 +928,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c5b45c52", + "metadata": { + "editable": true + }, "source": [ "and performing a final integration by parts we obtain the well-known result $\\sigma^2=b^2$.\n", "It is useful to introduce the standard normal distribution as well, defined by $\\mu=a=0$, viz. a distribution\n", @@ -745,7 +940,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "a005fdfe", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -760,10 +958,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "12c13ae4", + "metadata": { + "editable": true + }, "source": [ - "## Probability Distribution Functions, the cumulative distribution\n", - "\n", "The exponential and uniform distributions have simple cumulative functions,\n", "whereas the normal distribution does not, being proportional to the so-called\n", "error function $erf(x)$, given by" @@ -771,7 +970,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "68e56af7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "P(x) = \\frac{1}{\\sqrt{2\\pi}}\\int_{-\\infty}^x\\exp{\\left(-\\frac{t^2}{2}\\right)}dt,\n", @@ -780,22 +982,22 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "99071464", + "metadata": { + "editable": true + }, "source": [ - "which is difficult to evaluate in a quick way.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions, other important distribution\n", + "which is difficult to evaluate in a quick way. \n", "\n", "Some other PDFs which one encounters often in the natural sciences are the binomial distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "08b3b2e3", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} \\hspace{0.5cm}x=0,1,\\dots,n,\n", @@ -804,7 +1006,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "57d2b4a7", + "metadata": { + "editable": true + }, "source": [ "where $y$ is the probability for a specific event, such as the tossing of a coin or moving left or right\n", "in case of a random walker. Note that $x$ is a discrete stochastic variable. \n", @@ -817,18 +1022,16 @@ "\n", " * The probability for every outcome in a single trial has the same value, for example the outcome of tossing (either heads or tails) a coin is always $1/2$.\n", "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions, the binomial distribution\n", - "\n", "In order to compute the mean and variance we need to recall Newton's binomial\n", "formula" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "4ce5e39f", + "metadata": { + "editable": true + }, "source": [ "$$\n", "(a+b)^m=\\sum_{n=0}^m \\left(\\begin{array}{c} m \\\\ n\\end{array}\\right)a^nb^{m-n},\n", @@ -837,14 +1040,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "4b87bcf7", + "metadata": { + "editable": true + }, "source": [ "which can be used to show that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "29e93603", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sum_{x=0}^n\\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} = (y+1-y)^n = 1,\n", @@ -853,7 +1062,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "524d4e2f", + "metadata": { + "editable": true + }, "source": [ "the PDF is normalized to one. \n", "The mean value is" @@ -861,7 +1073,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d129841d", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\sum_{x=0}^n x\\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} =\n", @@ -871,14 +1086,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f68c25df", + "metadata": { + "editable": true + }, "source": [ "resulting in" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "f19452aa", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \n", @@ -888,14 +1109,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c75f2dc5", + "metadata": { + "editable": true + }, "source": [ "which we rewrite as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c7b760bf", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu=ny\\sum_{\\nu=0}^n\\left(\\begin{array}{c} n-1 \\\\ \\nu\\end{array}\\right)y^{\\nu}(1-y)^{n-1-\\nu} =ny(y+1-y)^{n-1}=ny.\n", @@ -904,20 +1131,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6fc3e294", + "metadata": { + "editable": true + }, "source": [ "The variance is slightly trickier to get. It reads $\\sigma^2=ny(1-y)$. \n", "\n", - "\n", - "## Probability Distribution Functions, Poisson's distribution\n", - "\n", "Another important distribution with discrete stochastic variables $x$ is \n", "the Poisson model, which resembles the exponential distribution and reads" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c67cc7c9", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{\\lambda^x}{x!} e^{-\\lambda} \\hspace{0.5cm}x=0,1,\\dots,;\\lambda > 0.\n", @@ -926,14 +1156,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "3988d52a", + "metadata": { + "editable": true + }, "source": [ "In this case both the mean value and the variance are easier to calculate," ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9b3e4562", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\sum_{x=0}^{\\infty} x \\frac{\\lambda^x}{x!} e^{-\\lambda} = \\lambda e^{-\\lambda}\\sum_{x=1}^{\\infty}\n", @@ -943,16 +1179,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "88138c21", + "metadata": { + "editable": true + }, "source": [ - "and the variance is $\\sigma^2=\\lambda$.\n", + "and the variance is $\\sigma^2=\\lambda$. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions, Poisson's distribution\n", "An example of applications of the Poisson distribution could be the counting\n", "of the number of $\\alpha$-particles emitted from a radioactive source in a given time interval.\n", "In the limit of $n\\rightarrow \\infty$ and for small probabilities $y$, the binomial distribution\n", @@ -962,7 +1195,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "36ecffde", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\lim_{n\\rightarrow \\infty}\\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} e^{-\\lambda}=\\sum_{x=1}^{\\infty}\\frac{\\lambda^x}{x!} e^{-\\lambda}.\n", @@ -971,9 +1207,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "be4e015c", + "metadata": { + "editable": true + }, "source": [ - "## Meet the covariance!\n", + "### Meet the covariance!\n", + "\n", "An important quantity in a statistical analysis is the so-called covariance. \n", "\n", "Consider the set $\\{X_i\\}$ of $n$\n", @@ -984,7 +1224,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "93522854", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -999,7 +1242,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "e667c0aa", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1014,14 +1260,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "44f76dd9", + "metadata": { + "editable": true + }, "source": [ "with" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "1041b2af", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x_i\\rangle =\n", @@ -1031,15 +1283,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "e42984a2", + "metadata": { + "editable": true + }, "source": [ - "## Meet the covariance in matrix disguise\n", "If we consider the above covariance as a matrix" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "a46f958e", + "metadata": { + "editable": true + }, "source": [ "$$\n", "C_{ij} =\\mathrm{Cov}(X_i,\\,X_j),\n", @@ -1048,22 +1305,21 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "37763243", + "metadata": { + "editable": true + }, "source": [ "then the diagonal elements are just the familiar\n", "variances, $C_{ii} = \\mathrm{Cov}(X_i,\\,X_i) = \\mathrm{Var}(X_i)$. It turns out that\n", "all the off-diagonal elements are zero if the stochastic variables are\n", - "uncorrelated.\n", - "\n", - "\n", - "\n", - "\n", - "## Covariance" + "uncorrelated." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, + "id": "aedc8b8c", "metadata": { "collapsed": false, "editable": true @@ -1098,16 +1354,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "4ad05ea1", + "metadata": { + "editable": true + }, "source": [ - "## Meet the covariance, uncorrelated events\n", - "\n", "Consider the stochastic variables $X_i$ and $X_j$, ($i\\neq j$). We have" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "3f643cb0", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{align*}\n", @@ -1124,14 +1384,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "bedb81e0", + "metadata": { + "editable": true + }, "source": [ "If $X_i$ and $X_j$ are independent (assuming $i \\neq j$), we have that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "8a8f5bdd", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x_i x_j\\rangle = \\langle x_i\\rangle\\langle x_j\\rangle,\n", @@ -1140,14 +1406,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "cc3e8c15", + "metadata": { + "editable": true + }, "source": [ "leading to" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "cf107fa4", + "metadata": { + "editable": true + }, "source": [ "$$\n", "Cov(X_i, X_j) = 0 \\hspace{0.1cm} (i\\neq j).\n", @@ -1156,10 +1428,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c3d6eefd", + "metadata": { + "editable": true + }, "source": [ - "## Numerical experiments and the covariance\n", - "\n", "Now that we have constructed an idealized mathematical framework, let\n", "us try to apply it to empirical observations. Examples of relevant\n", "physical phenomena may be spontaneous decays of nuclei, or a purely\n", @@ -1173,7 +1446,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "11084473", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{x_1, x_2,\\dots\\,x_k,\\dots\\}.\n", @@ -1182,9 +1458,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "ec3bb41f", + "metadata": { + "editable": true + }, "source": [ - "## Numerical experiments and the covariance\n", "We will call these\n", "values our *measurements* and the entire set as our measured\n", "*sample*. The action of measuring all the elements of a sample\n", @@ -1198,18 +1476,16 @@ "interested in finding the few lowest moments, like the mean\n", "$\\mu_X^{\\phantom X}$ and the variance $\\sigma_X^{\\phantom X}$.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Numerical experiments and the covariance, actual situations\n", "In practical situations however, a sample is always of finite size. Let that\n", "size be $n$. The expectation value of a sample $\\alpha$, the **sample mean**, is then defined as follows" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9654f276", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x_{\\alpha} \\rangle \\equiv \\frac{1}{n}\\sum_{k=1}^n x_{\\alpha,k}.\n", @@ -1218,14 +1494,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9c339ccc", + "metadata": { + "editable": true + }, "source": [ "The *sample variance* is:" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9d523f50", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mathrm{Var}(x) \\equiv \\frac{1}{n}\\sum_{k=1}^n (x_{\\alpha,k} - \\langle x_{\\alpha} \\rangle)^2,\n", @@ -1234,15 +1516,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2793f264", + "metadata": { + "editable": true + }, "source": [ - "with its square root being the *standard deviation of the sample*.\n", + "with its square root being the *standard deviation of the sample*. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Numerical experiments and the covariance, our observables\n", "You can think of the above observables as a set of quantities which define\n", "a given experiment. This experiment is then repeated several times, say $m$ times.\n", "The total average is then" @@ -1250,7 +1530,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "b0432b14", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1265,7 +1548,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c1981b2d", + "metadata": { + "editable": true + }, "source": [ "where the last sums end at $m$ and $n$.\n", "The total variance is" @@ -1273,7 +1559,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "679d42bc", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2_m= \\frac{1}{mn^2}\\sum_{\\alpha=1}^m(\\langle x_{\\alpha} \\rangle-\\langle X_m \\rangle)^2,\n", @@ -1282,14 +1571,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2bb94e0d", + "metadata": { + "editable": true + }, "source": [ "which we rewrite as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "0611f240", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1304,16 +1599,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "624f9965", + "metadata": { + "editable": true + }, "source": [ - "## Numerical experiments and the covariance, the sample variance\n", - "\n", "We define also the sample variance $\\sigma^2$ of all $mn$ individual experiments as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c0d8ff9e", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1328,18 +1627,26 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d058f856", + "metadata": { + "editable": true + }, "source": [ "These quantities, being known experimental values or the results from our calculations, \n", "may differ, in some cases\n", "significantly, from the similarly named\n", "exact values for the mean value $\\mu_X$, the variance $\\mathrm{Var}(X)$\n", - "and the covariance $\\mathrm{Cov}(X,Y)$.\n", - "\n", - "\n", - "\n", - "\n", - "## Numerical experiments and the covariance, central limit theorem\n", + "and the covariance $\\mathrm{Cov}(X,Y)$." + ] + }, + { + "cell_type": "markdown", + "id": "76e956db", + "metadata": { + "editable": true + }, + "source": [ + "### Numerical experiments and the covariance, central limit theorem\n", "\n", "The central limit theorem states that the PDF $\\tilde{p}(z)$ of\n", "the average of $m$ random values corresponding to a PDF $p(x)$ \n", @@ -1353,7 +1660,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "bd4e286e", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma_m=\n", @@ -1363,20 +1673,22 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "877355c7", + "metadata": { + "editable": true + }, "source": [ "In many cases the above estimate for the standard deviation, in particular if correlations are strong, may be too simplistic. We need therefore a more precise defintion of the error and the variance in our results.\n", "\n", - "\n", - "\n", - "\n", - "## Definition of Correlation Functions and Standard Deviation\n", "Our estimate of the true average $\\mu_{X}$ is the sample mean $\\langle X_m \\rangle$" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "abc25d1f", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu_{X}^{\\phantom X} \\approx X_m=\\frac{1}{mn}\\sum_{\\alpha=1}^m\\sum_{k=1}^n x_{\\alpha,k}.\n", @@ -1385,14 +1697,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "29a4c67d", + "metadata": { + "editable": true + }, "source": [ "We can then use Eq. ([7](#eq:exptvariance))" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "46b6a9e4", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2_m=\\frac{1}{mn^2}\\sum_{\\alpha=1}^m\\sum_{kl=1}^n (x_{\\alpha,k}-\\langle X_m \\rangle)(x_{\\alpha,l}-\\langle X_m \\rangle),\n", @@ -1401,14 +1719,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "350ee280", + "metadata": { + "editable": true + }, "source": [ "and rewrite it as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "321d0a3d", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2_m=\\frac{\\sigma^2}{n}+\\frac{2}{mn^2}\\sum_{\\alpha=1}^m\\sum_{k\n", "
\n", @@ -1508,23 +1836,24 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "03919ae2", + "metadata": { + "editable": true + }, "source": [ "which gives us a useful measure of the correlation pair correlation\n", "starting always at $1$ for $d=0$.\n", "\n", - "\n", - "\n", - "\n", - "## Definition of Correlation Functions and Standard Deviation, sample variance\n", - "\n", "The sample variance of the $mn$ experiments can now be\n", "written in terms of the autocorrelation function" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "f4edb79b", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1540,7 +1869,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "209c3c0a", + "metadata": { + "editable": true + }, "source": [ "and we see that $\\sigma_m$ can be expressed in terms of the\n", "uncorrelated sample variance times a correction factor $\\tau$ which\n", @@ -1550,7 +1882,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d0c7027f", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1565,19 +1900,16 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "8183355a", + "metadata": { + "editable": true + }, "source": [ "\n", "\n", "For a correlation free experiment, $\\tau$\n", - "equals 1.\n", + "equals 1. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Definition of Correlation Functions and Standard Deviation\n", "From the point of view of\n", "Eq. ([10](#eq:error_estimate_corr_time)) we can interpret a sequential\n", "correlation as an effective reduction of the number of measurements by\n", @@ -1586,7 +1918,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "04f300ab", + "metadata": { + "editable": true + }, "source": [ "$$\n", "n_\\mathrm{eff} = \\frac{n}{\\tau}\n", @@ -1595,7 +1930,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d9bdb1eb", + "metadata": { + "editable": true + }, "source": [ "To neglect the autocorrelation time $\\tau$ will always cause our\n", "simple uncorrelated estimate of $\\sigma_m^2\\approx \\sigma^2/n$ to\n", @@ -1604,18 +1942,13 @@ "autocorrelation time poses an efficiency problem if the set of\n", "measurements is very large. The solution to this problem is given by \n", "more practically oriented methods like the blocking technique.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Code to compute the Covariance matrix and the Covariance" + "" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, + "id": "93013c0b", "metadata": { "collapsed": false, "editable": true @@ -1663,9 +1996,12 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "65e8cd76", + "metadata": { + "editable": true + }, "source": [ - "## Random Numbers\n", + "### Random Numbers\n", "\n", "Uniform deviates are just random numbers that lie within a specified range\n", "(typically 0 to 1), with any one number in the range just as likely as any other. They\n", @@ -1678,12 +2014,6 @@ "of this section, is an essential building block for any sort of stochastic modeling\n", "or Monte Carlo computer work.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Random Numbers, better name: pseudo random numbers\n", - "\n", "A disclaimer is however appropriate. It should be fairly obvious that \n", "something as deterministic as a computer cannot generate purely random numbers.\n", "\n", @@ -1698,18 +2028,16 @@ "\n", " * the algorithm should be fast.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG\n", " The most common random number generators are based on so-called\n", "Linear congruential relations of the type" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "4daecdd3", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(aN_{i-1}+c) \\mathrm{MOD} (M),\n", @@ -1718,14 +2046,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "fd1c5e47", + "metadata": { + "editable": true + }, "source": [ "which yield a number in the interval [0,1] through" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "d8c06853", + "metadata": { + "editable": true + }, "source": [ "$$\n", "x_i=N_i/M\n", @@ -1734,7 +2068,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0d971106", + "metadata": { + "editable": true + }, "source": [ "The number \n", "$M$ is called the period and it should be as large as possible \n", @@ -1743,11 +2080,6 @@ "that is if we were to evaluate $(13)\\mathrm{MOD}(9)$, the outcome is the remainder\n", "of the division $13/9$, namely $4$.\n", "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG and periodic outputs\n", - "\n", "The problem with such generators is that their outputs are periodic;\n", "they \n", "will start to repeat themselves with a period that is at most $M$. If however\n", @@ -1758,7 +2090,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d12a26d7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(6N_{i-1}+7) \\mathrm{MOD} (5),\n", @@ -1767,7 +2102,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2ee32cc9", + "metadata": { + "editable": true + }, "source": [ "with a seed $N_0=2$. This generator produces the sequence\n", "$4,1,3,0,2,4,1,3,0,2,...\\dots$, i.e., a sequence with period $5$.\n", @@ -1777,7 +2115,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "441be869", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(27N_{i-1}+11) \\mathrm{MOD} (54),\n", @@ -1786,15 +2127,14 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c0803129", + "metadata": { + "editable": true + }, "source": [ "which still, with $N_0=2$, results in $11,38,11,38,11,38,\\dots$, a period of\n", "just $2$.\n", "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG and its period\n", "Typical periods for the random generators provided in the program library \n", "are of the order of $\\sim 10^9$ or larger. Other random number generators which have\n", "become increasingly popular are so-called shift-register generators.\n", @@ -1807,7 +2147,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "43aef6df", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_l=(aN_{l-i}+cN_{l-j})\\mathrm{MOD}(M).\n", @@ -1816,9 +2159,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "1c7bddf4", + "metadata": { + "editable": true + }, "source": [ - "## Random number generator RNG, other examples\n", "Such a generator again produces a sequence of pseudorandom numbers\n", "but this time with a period much larger than $M$.\n", "It is also possible to construct more elaborate algorithms by including\n", @@ -1829,7 +2174,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "fed2dc23", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1844,14 +2192,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "dc9d8537", + "metadata": { + "editable": true + }, "source": [ "followed by" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "aa9465e9", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -1866,21 +2220,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "def99a7e", + "metadata": { + "editable": true + }, "source": [ "which according to the authors has a period larger than $2^{94}$.\n", "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, other examples\n", "Instead of using modular addition, we could use the bitwise\n", "exclusive-OR ($\\oplus$) operation so that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "61c8f9ef", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_l=(N_{l-i})\\oplus (N_{l-j})\n", @@ -1889,7 +2245,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c59c90b8", + "metadata": { + "editable": true + }, "source": [ "where the bitwise action of $\\oplus$ means that if $N_{l-i}=N_{l-j}$ the result is\n", "$0$ whereas if $N_{l-i}\\ne N_{l-j}$ the result is\n", @@ -1900,20 +2259,17 @@ "\n", "In Fortran90, the bitwise $\\oplus$ operation is coded through the intrinsic\n", "function $\\mathrm{IEOR}(m,n)$ where $m$ and $n$ are the input numbers, while in $C$\n", - "it is given by $m\\wedge n$.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0\n", + "it is given by $m\\wedge n$. \n", "\n", "We show here how the linear congruential algorithm can be implemented, namely" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "06587f00", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(aN_{i-1}) \\mathrm{MOD} (M).\n", @@ -1922,7 +2278,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c3255e8e", + "metadata": { + "editable": true + }, "source": [ "However, since $a$ and $N_{i-1}$ are integers and their multiplication \n", "could become greater than the standard 32 bit integer, there is a trick via \n", @@ -1932,7 +2291,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "8e3ec364", + "metadata": { + "editable": true + }, "source": [ "$$\n", "M=aq+r,\n", @@ -1941,14 +2303,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "4b7c18d5", + "metadata": { + "editable": true + }, "source": [ "where we have defined" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "4e58c88d", + "metadata": { + "editable": true + }, "source": [ "$$\n", "q=[M/a],\n", @@ -1957,14 +2325,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "1fecdb9a", + "metadata": { + "editable": true + }, "source": [ "and" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "aa126ce7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "r = M\\hspace{0.1cm}\\mathrm{MOD} \\hspace{0.1cm}a.\n", @@ -1973,24 +2347,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "20cab2fa", + "metadata": { + "editable": true + }, "source": [ "where the brackets denote integer division. In the code below the numbers \n", "$q$ and $r$ are chosen so that $r < q$.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0\n", - "\n", "To see how this works we note first that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "904a6320", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -2005,23 +2378,24 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "36c6f816", + "metadata": { + "editable": true + }, "source": [ "since we can add or subtract any integer multiple of $M$ from $aN_{i-1}$.\n", "The last term $[N_{i-1}/q]M\\mathrm{MOD}(M)$ is zero since the integer division \n", - "$[N_{i-1}/q]$ just yields a constant which is multiplied with $M$.\n", + "$[N_{i-1}/q]$ just yields a constant which is multiplied with $M$. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0\n", "We can now rewrite Eq. ([14](#eq:rntrick1)) as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "319af13b", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -2036,15 +2410,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0c426357", + "metadata": { + "editable": true + }, "source": [ - "which results\n", - "in" + "which results" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "52547452", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -2059,14 +2438,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "86bf958f", + "metadata": { + "editable": true + }, "source": [ "yielding" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "d2015392", + "metadata": { + "editable": true + }, "source": [ "\n", "
\n", @@ -2081,9 +2466,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "83495015", + "metadata": { + "editable": true + }, "source": [ - "## Random number generator RNG, RAN0\n", "The term $[N_{i-1}/q]r$ is always smaller or equal $N_{i-1}(r/q)$ and with $r < q$ we obtain always a \n", "number smaller than $N_{i-1}$, which is smaller than $M$. \n", "And since the number $N_{i-1}\\mathrm{MOD} (q)$ is between zero and $q-1$ then\n", @@ -2095,52 +2482,7 @@ "the starting point for each generation of a random number. The period\n", "of $ran0$ is $\\sim 2.1\\times 10^{9}$. A special feature of this\n", "algorithm is that is should never be called with the initial seed \n", - "set to $0$.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0 code" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " /*\n", - " ** The function\n", - " ** ran0()\n", - " ** is an \"Minimal\" random number generator of Park and Miller\n", - " ** Set or reset the input value\n", - " ** idum to any integer value (except the unlikely value MASK)\n", - " ** to initialize the sequence; idum must not be altered between\n", - " ** calls for sucessive deviates in a sequence.\n", - " ** The function returns a uniform deviate between 0.0 and 1.0.\n", - " */\n", - " double ran0(long &idum)\n", - " {\n", - " const int a = 16807, m = 2147483647, q = 127773;\n", - " const int r = 2836, MASK = 123459876;\n", - " const double am = 1./m;\n", - " long k;\n", - " double ans;\n", - " idum ^= MASK;\n", - " k = (*idum)/q;\n", - " idum = a*(idum - k*q) - r*k;\n", - " // add m if negative difference\n", - " if(idum < 0) idum += m;\n", - " ans=am*(idum);\n", - " idum ^= MASK;\n", - " return ans;\n", - " } // End: function ran0() \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Properties of Selected Random Number Generators\n", + "set to $0$. \n", "\n", "As mentioned previously, the underlying PDF for the generation of\n", "random numbers is the uniform distribution, meaning that the \n", @@ -2156,16 +2498,15 @@ "Two additional measures are the standard deviation $\\sigma$ and the mean\n", "$\\mu=\\langle x\\rangle$.\n", "\n", - "\n", - "\n", - "\n", - "## Properties of Selected Random Number Generators\n", "For the uniform distribution, the mean value $\\mu$ is then" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "268aac30", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu=\\langle x\\rangle=\\frac{1}{2}\n", @@ -2174,14 +2515,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "25bd4ea3", + "metadata": { + "editable": true + }, "source": [ "while the standard deviation is" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "29e8d709", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma=\\sqrt{\\langle x^2\\rangle-\\mu^2}=\\frac{1}{\\sqrt{12}}=0.2886.\n", @@ -2190,13 +2537,15 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "90a07c88", + "metadata": { + "editable": true + }, "source": [ - "## Properties of Selected Random Number Generators\n", "The various random number generators produce results which agree rather well with\n", "these limiting values. \n", "\n", - "\n", + "
\n", "\n", "\n", "\n", @@ -2216,16 +2565,13 @@ "\n", "
$x$-bin ran0 ran1 ran2 ran3
\n", "\n", - "\n", - "\n", - "\n", - "## Simple demonstration of RNGs using python\n", "The following simple Python code plots the distribution of the produced random numbers using the linear congruential RNG employed by Python. The trend displayed in the previous table is seen rather clearly." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, + "id": "3c296708", "metadata": { "collapsed": false, "editable": true @@ -2258,9 +2604,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "7a028dda", + "metadata": { + "editable": true + }, "source": [ - "## Properties of Selected Random Number Generators\n", "Since our random numbers, which are typically generated via a linear congruential algorithm,\n", "are never fully independent, we can then define \n", "an important test which measures the degree of correlation, namely the so-called \n", @@ -2270,7 +2618,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "bc325e1a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "C_k=\\frac{f_d}\n", @@ -2280,7 +2631,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "a7738ea8", + "metadata": { + "editable": true + }, "source": [ "with $C_0=1$. Recall that \n", "$\\sigma^2=\\langle x_i^2\\rangle-\\langle x_i\\rangle^2$ and that" @@ -2288,7 +2642,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "b647158e", + "metadata": { + "editable": true + }, "source": [ "$$\n", "f_d = \\frac{1}{nm}\\sum_{\\alpha=1}^m\\sum_{k=1}^{n-d}(x_{\\alpha,k}-\\langle X_m \\rangle)(x_{\\alpha,k+d}-\\langle X_m \\rangle),\n", @@ -2297,24 +2654,33 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "273afa83", + "metadata": { + "editable": true + }, "source": [ "The non-vanishing of $C_k$ for $k\\ne 0$ means that the random\n", "numbers are not independent. The independence of the random numbers is crucial \n", "in the evaluation of other expectation values. If they are not independent, our\n", - "assumption for approximating $\\sigma_N$ is no longer valid.\n", + "assumption for approximating $\\sigma_N$ is no longer valid." + ] + }, + { + "cell_type": "markdown", + "id": "70391792", + "metadata": { + "editable": true + }, + "source": [ + "### Autocorrelation function\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Autocorrelation function\n", "This program computes the autocorrelation function as discussed in the equation on the previous slide for random numbers generated with the normal distribution $N(0,1)$." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, + "id": "2b08e1a4", "metadata": { "collapsed": false, "editable": true @@ -2354,529 +2720,17 @@ }, { "cell_type": "markdown", - "metadata": {}, - "source": [ - "As can be seen from the plot, the first point gives back the variance and a value of one. \n", - "For the remaining values we notice that there are still non-zero values for the auto-correlation function.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Correlation function and which random number generators should I use\n", - "The program here computes the correlation function for one of the standard functions included with the c++ compiler." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " // This function computes the autocorrelation function for \n", - " // the standard c++ random number generator\n", - " \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " using namespace std;\n", - " // output file as global variable\n", - " ofstream ofile; \n", - " \n", - " // Main function begins here \n", - " int main(int argc, char* argv[])\n", - " {\n", - " int n;\n", - " char *outfilename;\n", - " \n", - " cin >> n;\n", - " double MCint = 0.; double MCintsqr2=0.;\n", - " double invers_period = 1./RAND_MAX; // initialise the random number generator\n", - " srand(time(NULL)); // This produces the so-called seed in MC jargon\n", - " // Compute the variance and the mean value of the uniform distribution\n", - " // Compute also the specific values x for each cycle in order to be able to\n", - " // the covariance and the correlation function \n", - " // Read in output file, abort if there are too few command-line arguments\n", - " if( argc <= 2 ){\n", - " cout << \"Bad Usage: \" << argv[0] << \n", - " \t \" read also output file and number of cycles on same line\" << endl;\n", - " exit(1);\n", - " }\n", - " else{\n", - " outfilename=argv[1];\n", - " }\n", - " ofile.open(outfilename); \n", - " // Get the number of Monte-Carlo samples\n", - " n = atoi(argv[2]);\n", - " double *X; \n", - " X = new double[n];\n", - " for (int i = 0; i < n; i++){\n", - " double x = double(rand())*invers_period; \n", - " X[i] = x;\n", - " MCint += x;\n", - " MCintsqr2 += x*x;\n", - " }\n", - " double Mean = MCint/((double) n );\n", - " MCintsqr2 = MCintsqr2/((double) n );\n", - " double STDev = sqrt(MCintsqr2-Mean*Mean);\n", - " double Variance = MCintsqr2-Mean*Mean;\n", - " // Write mean value and standard deviation \n", - " cout << \" Standard deviation= \" << STDev << \" Integral = \" << Mean << endl;\n", - " \n", - " // Now we compute the autocorrelation function\n", - " double *autocor; autocor = new double[n];\n", - " for (int j = 0; j < n; j++){\n", - " double sum = 0.0;\n", - " for (int k = 0; k < (n-j); k++){\n", - " \t sum += (X[k]-Mean)*(X[k+j]-Mean); \n", - " }\n", - " autocor[j] = sum/Variance/((double) n );\n", - " ofile << setiosflags(ios::showpoint | ios::uppercase);\n", - " ofile << setw(15) << setprecision(8) << j;\n", - " ofile << setw(15) << setprecision(8) << autocor[j] << endl;\n", - " }\n", - " ofile.close(); // close output file\n", - " return 0;\n", - " } // end of main program \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Which RNG should I use?\n", - "* C++ has a class called **random**. The [random class](http://www.cplusplus.com/reference/random/) contains a large selection of RNGs and is highly recommended. Some of these RNGs have very large periods making it thereby very safe to use these RNGs in case one is performing large calculations. In particular, the [Mersenne twister random number engine](http://www.cplusplus.com/reference/random/mersenne_twister_engine/) has a period of $2^{19937}$. \n", - "\n", - "* Add RNGs in Python\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## How to use the Mersenne generator\n", - "The following part of a c++ code (from project 4) sets up the uniform distribution for $x\\in [0,1]$." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " /*\n", - " \n", - " // You need this \n", - " #include \n", - " \n", - " // Initialize the seed and call the Mersienne algo\n", - " std::random_device rd;\n", - " std::mt19937_64 gen(rd());\n", - " // Set up the uniform distribution for x \\in [[0, 1]\n", - " std::uniform_real_distribution RandomNumberGenerator(0.0,1.0);\n", - " \n", - " // Now use the RNG\n", - " int ix = (int) (RandomNumberGenerator(gen)*NSpins);\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Why blocking?\n", - "**Statistical analysis.**\n", - "\n", - " * Monte Carlo simulations can be treated as *computer experiments*\n", - "\n", - " * The results can be analysed with the same statistical tools as we would use analysing experimental data.\n", - "\n", - " * As in all experiments, we are looking for expectation values and an estimate of how accurate they are, i.e., possible sources for errors.\n", - "\n", - "A very good article which explains blocking is H. Flyvbjerg and H. G. Petersen, *Error estimates on averages of correlated data*, [Journal of Chemical Physics 91, 461-466 (1989)](http://scitation.aip.org/content/aip/journal/jcp/91/1/10.1063/1.457480).\n", - "\n", - " \n", - "\n", - "\n", - "\n", - "\n", - "## Why blocking?\n", - "**Statistical analysis.**\n", - "\n", - " * As in other experiments, Monte Carlo experiments have two classes of errors:\n", - "\n", - " * Statistical errors\n", - "\n", - " * Systematical errors\n", - "\n", - "\n", - " * Statistical errors can be estimated using standard tools from statistics\n", - "\n", - " * Systematical errors are method specific and must be treated differently from case to case. (In VMC a common source is the step length or time step in importance sampling)\n", - "\n", - " \n", - "\n", - "\n", - "\n", - "## Code to demonstrate the calculation of the autocorrelation function\n", - "The following code computes the autocorrelation function, the covariance and the standard deviation\n", - "for standard RNG. \n", - "The [following file](https://github.com/CompPhysics/ComputationalPhysics2/tree/gh-pages/doc/Programs/LecturePrograms/programs/Blocking/autocorrelation.cpp) gives the code." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " // This function computes the autocorrelation function for \n", - " // the Mersenne random number generator with a uniform distribution\n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " using namespace std;\n", - " using namespace arma;\n", - " // output file\n", - " ofstream ofile;\n", - " \n", - " // Main function begins here \n", - " int main(int argc, char* argv[])\n", - " {\n", - " int MonteCarloCycles;\n", - " string filename;\n", - " if (argc > 1) {\n", - " filename=argv[1];\n", - " MonteCarloCycles = atoi(argv[2]);\n", - " string fileout = filename;\n", - " string argument = to_string(MonteCarloCycles);\n", - " fileout.append(argument);\n", - " ofile.open(fileout);\n", - " }\n", - " \n", - " // Compute the variance and the mean value of the uniform distribution\n", - " // Compute also the specific values x for each cycle in order to be able to\n", - " // compute the covariance and the correlation function \n", - " \n", - " vec X = zeros(MonteCarloCycles);\n", - " double MCint = 0.; double MCintsqr2=0.;\n", - " std::random_device rd;\n", - " std::mt19937_64 gen(rd());\n", - " // Set up the uniform distribution for x \\in [[0, 1]\n", - " std::uniform_real_distribution RandomNumberGenerator(0.0,1.0);\n", - " for (int i = 0; i < MonteCarloCycles; i++){\n", - " double x = RandomNumberGenerator(gen); \n", - " X(i) = x;\n", - " MCint += x;\n", - " MCintsqr2 += x*x;\n", - " }\n", - " double Mean = MCint/((double) MonteCarloCycles );\n", - " MCintsqr2 = MCintsqr2/((double) MonteCarloCycles );\n", - " double STDev = sqrt(MCintsqr2-Mean*Mean);\n", - " double Variance = MCintsqr2-Mean*Mean;\n", - " // Write mean value and variance\n", - " cout << \" Sample variance= \" << Variance << \" Mean value = \" << Mean << endl;\n", - " // Now we compute the autocorrelation function\n", - " vec autocorrelation = zeros(MonteCarloCycles);\n", - " for (int j = 0; j < MonteCarloCycles; j++){\n", - " double sum = 0.0;\n", - " for (int k = 0; k < (MonteCarloCycles-j); k++){\n", - " sum += (X(k)-Mean)*(X(k+j)-Mean); \n", - " }\n", - " autocorrelation(j) = sum/Variance/((double) MonteCarloCycles );\n", - " ofile << setiosflags(ios::showpoint | ios::uppercase);\n", - " ofile << setw(15) << setprecision(8) << j;\n", - " ofile << setw(15) << setprecision(8) << autocorrelation(j) << endl;\n", - " }\n", - " // Now compute the exact covariance using the autocorrelation function\n", - " double Covariance = 0.0;\n", - " for (int j = 0; j < MonteCarloCycles; j++){\n", - " Covariance += autocorrelation(j);\n", - " }\n", - " Covariance *= 2.0/((double) MonteCarloCycles);\n", - " // Compute now the total variance, including the covariance, and obtain the standard deviation\n", - " double TotalVariance = (Variance/((double) MonteCarloCycles ))+Covariance;\n", - " cout << \"Covariance =\" << Covariance << \"Totalvariance= \" << TotalVariance << \"Sample Variance/n= \" << (Variance/((double) MonteCarloCycles )) << endl;\n", - " cout << \" STD from sample variance= \" << sqrt(Variance/((double) MonteCarloCycles )) << \" STD with covariance = \" << sqrt(TotalVariance) << endl;\n", - " \n", - " ofile.close(); // close output file\n", - " return 0;\n", - " } // end of main program \n", - " \n", - " \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## What is blocking?\n", - "**Blocking.**\n", - "\n", - " * Say that we have a set of samples from a Monte Carlo experiment\n", - "\n", - " * Assuming (wrongly) that our samples are uncorrelated our best estimate of the standard deviation of the mean $\\langle \\mathbf{M}\\rangle$ is given by" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "\\sigma=\\sqrt{\\frac{1}{n}\\left(\\langle \\mathbf{M}^2\\rangle-\\langle \\mathbf{M}\\rangle^2\\right)}\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "* If the samples are correlated we can rewrite our results to show that" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "\\sigma=\\sqrt{\\frac{1+2\\tau/\\Delta t}{n}\\left(\\langle \\mathbf{M}^2\\rangle-\\langle \\mathbf{M}\\rangle^2\\right)}\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "where $\\tau$ is the correlation time (the time between a sample and the next uncorrelated sample) and $\\Delta t$ is time between each sample\n", - "\n", - " \n", - "\n", - "\n", - "## What is blocking?\n", - "**Blocking.**\n", - "\n", - " * If $\\Delta t\\gg\\tau$ our first estimate of $\\sigma$ still holds\n", - "\n", - " * Much more common that $\\Delta t<\\tau$\n", - "\n", - " * In the method of data blocking we divide the sequence of samples into blocks\n", - "\n", - " * We then take the mean $\\langle \\mathbf{M}_i\\rangle$ of block $i=1\\ldots n_{blocks}$ to calculate the total mean and variance\n", - "\n", - " * The size of each block must be so large that sample $j$ of block $i$ is not correlated with sample $j$ of block $i+1$\n", - "\n", - " * The correlation time $\\tau$ would be a good choice\n", - "\n", - "\n", - "\n", - "\n", - "## What is blocking?\n", - "**Blocking.**\n", - "\n", - " * Problem: We don't know $\\tau$ or it is too expensive to compute\n", - "\n", - " * Solution: Make a plot of std. dev. as a function of blocksize\n", - "\n", - " * The estimate of std. dev. of correlated data is too low $\\to$ the error will increase with increasing block size until the blocks are uncorrelated, where we reach a plateau\n", - "\n", - " * When the std. dev. stops increasing the blocks are uncorrelated\n", - "\n", - "\n", - "\n", - "\n", - "## Implementation\n", - " * Do a Monte Carlo simulation, storing all samples to file\n", - "\n", - " * Do the statistical analysis on this file, independently of your Monte Carlo program\n", - "\n", - " * Read the file into an array\n", - "\n", - " * Loop over various block sizes\n", - "\n", - " * For each block size $n_b$, loop over the array in steps of $n_b$ taking the mean of elements $i n_b,\\ldots,(i+1) n_b$\n", - "\n", - " * Take the mean and variance of the resulting array\n", - "\n", - " * Write the results for each block size to file for later\n", - " analysis\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Actual implementation with code, main function\n", - "When the file gets large, it can be useful to write your data in binary mode instead of ascii characters.\n", - "The [following python file](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py) reads data from file with the output from every Monte Carlo cycle." - ] - }, - { - "cell_type": "code", - "execution_count": null, + "id": "5848dd32", "metadata": { - "collapsed": false, "editable": true }, - "outputs": [], "source": [ - "# Blocking\n", - " @timeFunction\n", - " def blocking(self, blockSizeMax = 500):\n", - " blockSizeMin = 1\n", - "\n", - " self.blockSizes = []\n", - " self.meanVec = []\n", - " self.varVec = []\n", - "\n", - " for i in range(blockSizeMin, blockSizeMax):\n", - " if(len(self.data) % i != 0):\n", - " pass#continue\n", - " blockSize = i\n", - " meanTempVec = []\n", - " varTempVec = []\n", - " startPoint = 0\n", - " endPoint = blockSize\n", - "\n", - " while endPoint <= len(self.data):\n", - " meanTempVec.append(np.average(self.data[startPoint:endPoint]))\n", - " startPoint = endPoint\n", - " endPoint += blockSize\n", - " mean, var = np.average(meanTempVec), np.var(meanTempVec)/len(meanTempVec)\n", - " self.meanVec.append(mean)\n", - " self.varVec.append(var)\n", - " self.blockSizes.append(blockSize)\n", - "\n", - " self.blockingAvg = np.average(self.meanVec[-200:])\n", - " self.blockingVar = (np.average(self.varVec[-200:]))\n", - " self.blockingStd = np.sqrt(self.blockingVar)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## The Bootstrap method\n", - "\n", - "The Bootstrap resampling method is also very popular. It is very simple:\n", - "\n", - "1. Start with your sample of measurements and compute the sample variance and the mean values\n", - "\n", - "2. Then start again but pick in a random way the numbers in the sample and recalculate the mean and the sample variance.\n", - "\n", - "3. Repeat this $K$ times.\n", - "\n", - "It can be shown, see the article by [Efron](https://projecteuclid.org/download/pdf_1/euclid.aos/1176344552)\n", - "that it produces the correct standard deviation.\n", - "\n", - "This method is very useful for small ensembles of data points. \n", - "\n", - "\n", - "## Bootstrapping\n", - "Given a set of $N$ data, assume that we are interested in some \n", - "observable $\\theta$ which may be estimated from that set. This observable can also be for example the result of a fit based on all $N$ raw data. \n", - "Let us call the value of the observable obtained from the original \n", - "data set $\\hat{\\theta}$. One recreates from the sample repeatedly \n", - "other samples by choosing randomly $N$ data out of the original set. \n", - "This costs essentially nothing, since we just recycle the original data set for the building of new sets. \n", - "\n", - "\n", - "## Bootstrapping, recipe\n", - "Let us assume we have done this $K$ times and thus have $K$ sets of $N$ \n", - "data values each. \n", - "Of course some values will enter more than once in the new sets. For each of these sets one computes the observable $\\theta$ resulting in values $\\theta_k$ with $k = 1,...,K$. Then one determines" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "\\tilde{\\theta} = \\frac{1}{K} \\sum_{k=1}^K \\theta_k,\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "and" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "sigma^2_{\\tilde{\\theta}} = \\frac{1}{K} \\sum_{k=1}^K \\left(\\theta_k-\\tilde{\\theta}\\right)^2.\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "These are estimators for $\\angle\\theta\\rangle$ and its variance. They are not unbiased and therefore \n", - "$\\tilde{\\theta}\\neq\\hat{\\theta}$ for finite K. \n", - "\n", - "The difference is called bias and gives an idea on how far away the result may be from \n", - "the true $\\angle\\theta\\rangle$. As final result for the observable one quotes $\\angle\\theta\\rangle = \\tilde{\\theta} \\pm \\sigma_{\\tilde{\\theta}}$ .\n", - "\n", - "\n", - "\n", - "## Bootstrapping, [code](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " # Bootstrap\n", - " @timeFunction\n", - " def bootstrap(self, nBoots = 1000):\n", - " bootVec = np.zeros(nBoots)\n", - " for k in range(0,nBoots):\n", - " bootVec[k] = np.average(np.random.choice(self.data, len(self.data)))\n", - " self.bootAvg = np.average(bootVec)\n", - " self.bootVar = np.var(bootVec)\n", - " self.bootStd = np.std(bootVec)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Jackknife, [code](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " # Jackknife\n", - " @timeFunction\n", - " def jackknife(self):\n", - " jackknVec = np.zeros(len(self.data))\n", - " for k in range(0,len(self.data)):\n", - " jackknVec[k] = np.average(np.delete(self.data, k))\n", - " self.jackknAvg = self.avg - (len(self.data) - 1) * (np.average(jackknVec) - self.avg)\n", - " self.jackknVar = float(len(self.data) - 1) * np.var(jackknVec)\n", - " self.jackknStd = np.sqrt(self.jackknVar)\n" + "As can be seen from the plot, the first point gives back the variance and a value of one. \n", + "For the remaining values we notice that there are still non-zero values for the auto-correlation function." ] } ], "metadata": {}, "nbformat": 4, - "nbformat_minor": 4 + "nbformat_minor": 5 } diff --git a/doc/LectureNotes/_build/html/searchindex.js b/doc/LectureNotes/_build/html/searchindex.js index 25d4af919..f0005bdfd 100644 --- a/doc/LectureNotes/_build/html/searchindex.js +++ b/doc/LectureNotes/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["chapter1","chapter10","chapter11","chapter12","chapter13","chapter2","chapter3","chapter4","chapter5","chapter6","chapter7","chapter8","chapter9","chapteroptimization","clustering","intro","linalg","schedule","statistics","teachers","textbooks"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,sphinx:56},filenames:["chapter1.ipynb","chapter10.ipynb","chapter11.ipynb","chapter12.ipynb","chapter13.ipynb","chapter2.ipynb","chapter3.ipynb","chapter4.ipynb","chapter5.ipynb","chapter6.ipynb","chapter7.ipynb","chapter8.ipynb","chapter9.ipynb","chapteroptimization.ipynb","clustering.ipynb","intro.md","linalg.ipynb","schedule.md","statistics.ipynb","teachers.md","textbooks.md"],objects:{},objnames:{},objtypes:{},terms:{"0":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18,19],"00":[0,1,3,5,6,11],"000":[1,3],"0000":[],"00000":[],"000000":[5,11],"00000000e":5,"0000e":3,"0001":[1,3],"000148":[],"00019998":5,"00024087":5,"00028369228101198006":[],"00029012":5,"0003043256065368937":9,"00031535148309580783":6,"0003153514830958081":[],"0003153514830958126":[],"0003153514830958235":6,"00034944":5,"000417932":2,"00042089":5,"000464088":2,"00050694":5,"00058016":6,"000599":[],"00060705":[],"00060708":6,"00061058":5,"00062582":6,"00062595":[],"00066668":6,"00068734":6,"00068941":6,"00069103":[],"00073541":5,"00076495":6,"00076919":6,"00076925":[],"0007698473260556325":6,"0007698473260556334":[],"0007698473260556339":[],"0007698473260556344":6,"00079123":[],"00079130":6,"00079968":5,"00084705":[],"00084711":6,"00085883":6,"00085884":[],"00087697":6,"00088573":5,"00092645":6,"00092646":[],"00096314":5,"001":[1,2,8,13],"00100519":6,"0010479245355337968":[],"0010479245887943952":6,"00105081":6,"00106677":5,"00107405":6,"00111756":6,"0011526":6,"00115999":5,"00118504":6,"00118527":[],"001263":[],"00128479":5,"001323":6,"00137823":6,"00137835":[],"00139705":5,"00149311":6,"00149956":6,"00152117":6,"00154733":5,"00156379":[],"00156382":6,"00168251":5,"00174276":6,"00175331":6,"00186347":5,"001988":[],"00198806":[],"00200":8,"00202624":5,"00202756":6,"00217499":6,"00224413":5,"00228741":6,"0023548":6,"002381316302584885":[],"002381316302584886":6,"0023813163025848865":6,"00242999":6,"00243186":6,"0024401":5,"00249435":6,"002526":[],"00266858":2,"00270244":5,"00274989":6,"00275135":[],"00289724":6,"00293838":5,"002948":[],"0030828":[],"003083":[],"00310113":2,"00312361":6,"00315593":6,"003215318065760509":[],"0032153180657605125":6,"00323332":6,"0032542":5,"003301":6,"003395515459204093":6,"0033955154592040944":[],"00353823":5,"0036237":6,"0036367":6,"00369758":6,"003704":[],"003717":[],"003759":[],"003774":[],"003788":[],"0038335":6,"003909404072811217":6,"003909404072811231":[],"00391839":5,"0039987":6,"004":5,"004091940707753948":6,"0040919407077539514":[],"00410387":6,"00410478":6,"004113634617443116":6,"0041136346174431284":[],"004113634617443131":6,"004113634617443135":[],"00411363461744314":6,"004113634617443141":[],"004155986345861364":6,"004155986345861374":[],"00415763":[],"00424909":2,"00424967":6,"00426027":5,"00433417":11,"00440346":6,"00443743":6,"00445655":11,"004579219539673834":6,"004579219539673836":[],"00458878":6,"004610275230656187":6,"004610275230656294":[],"00462287":6,"00471782":5,"00472199":6,"00472512":6,"0049544":6,"004999999999999984":0,"004999999999999994":[],"00512927":5,"00517114":6,"00526348":6,"0053018":6,"00554552":6,"00556826":6,"0056799":5,"00577441":[],"00579953":6,"00588657":6,"00607783":6,"006162":6,"00617499":5,"00630331":6,"00642221":6,"00660427":6,"00672607":6,"00673393":13,"00673407":6,"00676387":6,"0068011":6,"00683748":5,"00683964":6,"007012403613997257":[],"007024126888936694":[],"0070241268889382116":6,"00719176":6,"00727646693":0,"007315":[],"0074331":5,"00751823":18,"00759119":6,"00784393":6,"00803064":6,"0080866254785146":[],"00813803":6,"00817631":6,"00823002":5,"00827728":6,"00831018":6,"00834567":6,"00848904":6,"0086649156":0,"008675369724975977":5,"008675369724976501":[],"00894639":5,"00905423":6,"009163470508352211":[],"009163470508352218":5,"009164545680330616":6,"00917248":6,"00934499":6,"009450756365829578":[],"0096208":6,"00990475":5,"00992331":6,"00996754":6,"00it":6,"01":[0,1,2,5,6,9,11,13,20],"010018312644139205":6,"010018312644139347":[],"0100706":6,"010331721306655144":6,"01033172130665515":[],"010516485576646513":6,"010516485576652856":[],"01066519":6,"01076611":5,"0110":18,"0110407067093945":18,"01104071":18,"011076219011339788":[],"01107621901137465":6,"011225":2,"0113104":6,"01179792":6,"01191824":5,"012073649439965807":[],"012073649472576395":6,"01219292":6,"01223198":6,"01231917":6,"01290947":6,"01295356":5,"013121573975499602":[],"013121573975499604":[],"01312157406137079":6,"013121574061370796":6,"01318643":6,"01347916":6,"01348565":6,"01367553":6,"01397146":6,"01405935":6,"01416528":6,"014209325470380275":[],"01433809":5,"014436800088896274":6,"014436800088969727":[],"01449782":6,"01458337":6,"0146081":6,"01463049":6,"015072388895177088":[],"0150723888951771":6,"015072388895177109":[],"015072388895177239":6,"01509543":13,"01530715721129232":[],"01531845":6,"01538461538462":[],"01549377":6,"01558197":5,"016285782696017055":6,"016285782696075054":[],"01633913":6,"01640891":6,"01655318":6,"016587414993037307":[],"016587414993045405":6,"01691985":6,"01708781":6,"01708852":6,"01713366":6,"01724499":5,"01735584819559184":[],"017355848195591845":[],"017355848195593354":6,"01756972":[],"018232":[],"01831036e":6,"01831130e":[],"01831200e":[],"01831207e":6,"01866537":6,"01873344":11,"01873869":5,"01898855":6,"01905883":6,"01908936":6,"019587":[],"01963611":6,"01969145":6,"019754165271682844":6,"01975416527179247":[],"01975848":6,"02":[0,4,6,7,12],"02024962":6,"02054837e":6,"02068067":6,"02073509":5,"02098261":6,"02123176":6,"021250026482402":11,"02159270458799264":[],"021592704587992645":[],"021592704588021164":6,"021592704588021167":6,"02198702e":6,"022022882954618364":[],"02208512":6,"02228115":6,"02229529":6,"02252765":5,"022556":11,"02255619":11,"02299949826036602":[],"0229994982603662":6,"02348765":6,"02365049":6,"0245528":6,"02492265":5,"02493054":[],"02498832":6,"02503753":6,"02511518":6,"02522069":6,"025709":11,"02586427":6,"0260906":6,"02625193":8,"02625928":13,"026408391362671896":[],"026605727637176654":[],"02660572763718461":6,"026605727637184613":6,"02707227":5,"02723445":6,"027609773491022314":[],"027609773491022387":6,"027609773491022407":6,"02786488":11,"027865":11,"02857":4,"02917662":11,"029177":11,"02926396":[],"029613363972682966":18,"029733":[],"02976145":6,"02994311":5,"02f":6,"03":[1,6],"03032441e":6,"03056589":[],"030566":[],"03076923076924":[],"03077640549":4,"03099776":5,"031":5,"03187339273559067":[],"03196357":6,"03251863":5,"03256632e":1,"03267527":6,"03278964":[],"032790":[],"03279636":6,"0330308045180234":[],"0330308045183163":[],"0330308045183219":6,"0330308045190182":6,"033657685071527485":[],"033657685071527624":6,"03382304823545749":11,"03447512":6,"03562355":6,"03568439":6,"0358909447132981":[],"0359565":5,"03630548":6,"03707133":11,"037559":11,"03755944":11,"03761519":18,"03781367141738885":[],"03781367141738886":[],"037813671417388985":6,"03781367141738899":6,"03794112":16,"03814292":6,"03815288":6,"038300":11,"03850557":11,"038506":11,"039039":5,"03981057":16,"0399676689527968":6,"0399676689527975":6,"04":[1,6,11],"04010697":6,"04063602":6,"041":[],"041148729430502":6,"041148729430523":6,"0411487294305246":[],"0411487294305746":[],"04220758":6,"04284519":[],"043":[],"04315108":5,"0433816":[],"04346721":5,"04355837":6,"04362":[],"04368707":16,"0437499":2,"04389027":6,"043927769551648":[],"04423486":6,"044334":[],"044613":6,"04483457":[],"04537385":6,"04543942":6,"04566964":6,"0458":9,"04615384615386":[],"04621521":[],"04648335":5,"0466":[],"04683565":5,"04775904":16,"04784395":6,"04818727730430296":[],"048187277304303056":6,"048653428302840175":16,"04892055":6,"04909093":6,"04912436":6,"0495569966278238":6,"0495569966278269":6,"0495569966278315":[],"04it":[],"05":[1,3,4,6,13],"05009826":6,"05087958":[],"05100875":6,"051649":11,"0517473":5,"05227921801205691":[],"05227921801205692":[],"052279218012057004":6,"05263":[],"05290417684691035":18,"05302":[],"05364854":8,"05383795":6,"05434571":16,"05447415":6,"054585":[],"054785":[],"054963":[],"05505310046362":[],"05505310046363":2,"055137":[],"055320":[],"05533":[],"055676":[],"05614483":5,"05623":[],"05648":[],"05651951":6,"056528":11,"05667":[],"057088709963182":[],"057163681553428394":6,"05716368155351588":[],"0572":[],"05756733":[],"05785343":6,"05789007":6,"057899":11,"05796251":6,"05807125":6,"05883":[],"05884":[],"059013":5,"059294":11,"059378":11,"059601":5,"059783":[],"05999":[],"06":[6,13],"060080":[],"060183":[],"06020587":6,"06021285":[],"060213":[],"060228":11,"060309":5,"06043581":6,"060507":[],"060655":[],"060781":[],"060841":[],"061025":[],"061048":[],"061149":5,"061321":[],"061390":[],"061509":[],"061604":[],"06160438":[],"061701":[],"061745":[],"061898":[],"061917":[],"061923":11,"06200174":5,"06208238634231944":6,"06208238634231953":[],"062136":5,"062142":[],"062292565":4,"062294":[],"062391":[],"062409":11,"062411":11,"062435":[],"062451":[],"062534":[],"062676":11,"062706":11,"062834":[],"062884":[],"063052":5,"063078":[],"063250":[],"063343":[],"063364":5,"063513":[],"063631":5,"063657":[],"063752":11,"063851":5,"063872":[],"063874":5,"06388888888888888":[],"064052":[],"064108":[],"064110":5,"064184":[],"064274":5,"064384":[],"06444":[],"064469":[],"06453579006728315":[],"06453579006728322":6,"064538":11,"064604":11,"064648":[],"064658":5,"064681":[],"064838":5,"06491736":6,"064918":[],"064931":11,"064964":[],"06497046":18,"065020":5,"065106":[],"065249":11,"065314":11,"065348":5,"06547790180152352":6,"06547790180152353":6,"06547790180152357":[],"06547790180152363":[],"065514":[],"065557":[],"065575":[],"065641":11,"065730":11,"065826":5,"065892":[],"065974":5,"066110":[],"066194":[],"066309":[],"06637":[],"066449":5,"066558":5,"066609":[],"066670":11,"0666807":2,"066729":11,"066753":[],"066789":5,"066837":11,"066954":[],"067079":[],"067213":5,"067236":[],"067240":5,"06724062":5,"067282":11,"067392":11,"067402":11,"067432":11,"067544":[],"067597":5,"067599":5,"067612":5,"067620":5,"067622":5,"067675":[],"067714":[],"067723":5,"067769":5,"067956":11,"068059":11,"068093":11,"068094":[],"068103":[],"068120":[],"068318":5,"068363":5,"068376":5,"06844519414009438":[],"06844519414009442":6,"06844519414009444":6,"068461":11,"068538":11,"06858699":[],"068608":5,"068642":5,"068659":[],"068735":5,"068806":5,"068809":[],"068831":[],"068937":[],"068965":5,"068991":5,"068992":5,"069085":11,"069091":[],"069181":5,"069275":11,"069408":5,"069409":5,"069441":5,"069455":[],"069584":[],"069672":[],"069685":11,"069754":[],"069796":5,"069847":5,"069877":11,"069884":11,"069888":5,"069912":[],"06it":6,"07":6,"070028":[],"070043":[],"070071":[],"070074":5,"070150":5,"07016":[],"070163":11,"07017":[],"070343":11,"070379":[],"07039":[],"070419":11,"070429":11,"070491":5,"070492":11,"070576":[],"070612":[],"07062318":6,"070630":5,"070635":[],"070889":11,"070911":[],"070950":11,"070972":11,"07099747918547346":[],"071022":11,"071086":[],"071112":5,"071136":5,"07115":[],"0713":0,"071387":[],"07145103":11,"071467":5,"0714956":16,"071529":5,"07160048164232467":6,"07160048164248561":[],"071614":5,"071632":5,"071698":[],"071705":[],"071767":5,"071921":5,"071935":[],"07201957":[],"072216":11,"072242":[],"072348":[],"072442":11,"072492":[],"072530":[],"072617":[],"072620":[],"072750":[],"07285":3,"0728785":[],"072928":[],"073016":[],"073062":11,"073136":11,"073225":[],"073230":11,"073280":11,"073362":[],"073368":[],"073423":[],"073436":11,"073449":5,"07345504":[],"073531":[],"073575":11,"073583":[5,11],"073598":11,"073629":11,"073695":[],"073699":5,"073719":5,"073761":11,"073810":11,"073816":5,"073827":11,"073907":[],"073949":5,"074034":5,"074067":11,"074111":11,"07413172":18,"074149":11,"07421084":5,"074237":5,"074336":[],"074375":5,"074488":[],"074530":11,"07456491":5,"074573":11,"074666":[],"074693":5,"07490892":6,"074945":[],"075195":5,"075241":5,"075573":[],"075594":5,"075760":5,"075820":[],"075959":5,"076130":11,"076204":[],"076216":11,"076338":5,"0764924":6,"07656896":[],"076589":5,"076604":11,"076628":5,"07678":[],"076780":11,"076804":11,"076895":11,"076905":11,"076938":11,"076955":5,"077003":5,"077013":11,"077015":11,"077022":[],"077083":11,"077211":11,"077349":11,"07735703":16,"077402":5,"077425":5,"077452":11,"077467":[],"07777777777777778":1,"077793":5,"078040":5,"0782":6,"07820":[],"078253":[],"078254":11,"078269":11,"078299":11,"078314":11,"078436":11,"078548":[],"07864":[],"078667":[],"07871":[],"07878641":16,"078911":[],"078992":[],"07903849":16,"079157":5,"079281":5,"079347":[],"079383":5,"079389":5,"079405":5,"079406":[],"07944154":16,"07968918676726029":[],"0796891867672603":6,"079729":[],"079839":[],"079847":[],"079893":[],"07989327":[],"07999999999998":[],"08":[13,18],"080106":[],"080137":[],"080256":[],"080297":5,"080312":[],"080319":5,"080334":[],"080347":[],"080370":[],"080406":[],"080410":[],"08041015":[],"08043851":5,"080517":[],"080582":11,"080593":11,"080647":11,"080706":11,"080738":11,"080801":[],"080847":5,"08085812":18,"080916":[],"080984":11,"081046":11,"081072":11,"081140":[],"081144":11,"081233":5,"081253":5,"08131003":6,"081388":11,"081431":[],"081483":[],"081533":5,"081540":[],"08156108":6,"081773":[],"082174":[],"082183":[],"082295":11,"082451":[],"082503":11,"08251519":6,"082536":11,"082896":11,"082900":[],"08299273e":6,"083015":5,"083053":[],"08318298e":1,"083220":[],"083227":[],"083276":11,"08328216846752691":11,"08333333333333333":1,"08336233266":4,"083404":[],"083441":[],"083506":[],"083527":[],"083600":[],"083692":[],"08376632":6,"083766322923899":6,"0837663229239016":[],"0837663229239025":[],"0837663229239043":6,"083799":[],"083829":[],"083977":[],"084000":[],"084101":[],"084184":[],"084224":[],"084226":[],"08426840630693411":[],"08426840630693412":6,"08426840630693413":6,"08428156":16,"084282":[],"084364":[],"084400":[],"084408":[],"084414":5,"084444":[],"084484":11,"084536":[],"084549":[],"08455":[],"084570":[],"084604":[],"084629":[],"08464758160254343":5,"084670":[],"084683":[],"084702":5,"08474":[],"084777":[],"084862":[5,11],"084904":5,"084909":5,"084965":[],"085018":5,"085044":[],"085163":11,"085167":[],"085184":[],"085185":[],"085361":[],"085416":[],"08551306":6,"085764":[],"08576932":6,"085879":11,"08593216":6,"086074":11,"086076":5,"08611111111111111":1,"086112":11,"086303":[],"08630331":[],"086567":[],"08673755293381497":[],"086807":5,"086872":5,"086890":11,"08690":[],"086956":11,"087501":[],"08758":[],"08759":[],"087834":[],"08816688":[],"088176":[],"0881981":5,"088212":5,"088526":11,"088611":[],"088631":[],"08871404":5,"088809":[],"088816":[],"088825":[],"088853":[],"08888888888888889":1,"088926":[],"08902":[],"089059":[],"08917679":5,"089177":5,"089212":[],"089329":[],"089425":[],"089501":11,"089614":[],"0896981":6,"08996":[],"09":1,"090028":[],"090229":[],"09085624":16,"090929":[],"091051":11,"091060":[],"09117221":[],"091224":[],"091236":[],"091340":[],"091349":[],"091363":[],"091414":[],"091416":[],"091426":[],"09149881":[],"091630":[],"09166666666666666":1,"091696":11,"0917":9,"09170751":0,"09172408":6,"091891":[],"092066":16,"09216046":18,"0923":[],"09251":[],"09297039":[],"093247":[],"0934597075922044":[],"0938":[],"094082198961999e":6,"0940821989624095e":[],"094082198966615e":6,"0940821989673748e":[],"09444444444444444":1,"094472507965532":11,"095510":[],"095702":[],"095871":[],"09609807":5,"096173":[],"096472":11,"096623":[],"09672929714683368":[],"097360":[],"09744":[],"09744272":6,"09780":[],"09791":[],"09849763":11,"098498":11,"09856879":16,"09861229":16,"098802859381565":16,"099":[],"09903804":8,"0991919894927399":6,"099191989493334":[],"09951287404314545":1,"0n":0,"0s":[3,4],"0x11da42d90":13,"0x11e031e50":13,"0x7fad10f9a280":[],"0x7fad20f69be0":[],"0x7fd098df3280":[],"0x7fd0a9063be0":[],"1":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20],"10":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],"100":[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18,19],"1000":[0,1,2,4,5,8,11,13,14,15,18],"10000":[2,5,6,10,11,18],"100000":8,"10001":10,"1001":18,"1002":18,"1003":18,"10030":[],"10044225464078282":[],"1005":18,"10077114273548984":6,"1009":18,"1011":18,"1013":18,"1013904243":18,"10141413e":6,"1015":18,"102":3,"1022233262115424":[],"10222333":[],"1023":18,"10230":[],"1023111":16,"1024":3,"1026":18,"1027":18,"1028":[],"103":1,"1030":18,"10302062":16,"10340":[],"1037":18,"10378326e":1,"1038":18,"10391807":6,"10398646080125035":[],"10398646080125036":6,"10398646080125037":6,"1040":18,"10405456":11,"10430":[],"104411":[],"10455924":18,"1047":18,"10505137":16,"10520":[],"10555555555555556":1,"1056":[],"10589577":5,"106":[],"106095":11,"10620135":16,"108":6,"109":[],"10913":6,"10931453":6,"10960":[],"10th":9,"10x":0,"11":[0,2,3,4,5,6,7,8,9,10,11,12,13,16,18,20],"110":[],"1100":18,"1101":18,"11022302e":5,"11046771":16,"111":[1,7,12],"11100":[],"1122558214":[],"112383":11,"1124":[],"1125":3,"11297834":[],"1136":3,"11362930e":[],"11388888888888889":1,"1139":3,"11390":[],"114":3,"11402309":16,"114437":[],"11462415":5,"11482289e":6,"11499517":[],"11507992e":1,"11547777218875695":6,"11547777218875696":6,"11547777218940905":[],"11547777218940906":[],"115822":6,"11590":[],"11660":[],"11666666666666667":1,"117":8,"11744554e":6,"11780":[],"11790868":[],"117986":[],"118":2,"1182":[],"1183":[],"118318":[],"1184":4,"11840":[],"1185":[],"1186":[],"11890":[],"119":2,"1199":[],"119936":2,"119999999999976":[],"11it":6,"12":[0,1,2,3,4,5,6,8,9,11,12,13,16,18,20],"120":[2,3],"1203":[],"1203284":8,"1206":8,"12069773":16,"121":[2,8,9,10],"12182967":6,"12196674":[],"122":[2,8,9,10],"12222222222222222":1,"122439":[],"1224392":[],"12288563":5,"122886":5,"123":[],"12318726e":6,"12333649":6,"12345260617257443":9,"123459876":18,"123711":6,"12380":[],"124":0,"12400":[],"125":[],"1250":[],"125000":[],"12552073e":6,"126":[],"1261":[],"12618549":5,"1265":[],"127":4,"1270":[],"127043":[],"1271":6,"1277":6,"127773":18,"12777777777777777":1,"12790":[],"128":[3,4,13],"128664":6,"12945452":[],"1297":[],"1298":9,"12adb44b1c20":7,"12m":3,"13":[0,2,4,5,6,9,11,12,13,16,18],"130":[],"13003291":6,"13055555555555556":1,"131":[],"1314":[],"132":[],"13220608e":6,"13229545716505003":16,"132360":[],"1323603":[],"1326":[],"13280":[],"133":7,"13333333333333333":[],"135":[],"13519106":[],"13535942":6,"136":[],"1360":[],"1361":[],"1362":[],"1363":[],"1364":[],"13646574":5,"13661243e":6,"13679863":6,"1371":6,"13740":[],"137400784702911":[],"137652":11,"1378":[],"1382":[3,4],"1383":[3,4],"1384":[3,4],"1385":[3,4],"1386":[3,4],"13865173":5,"13876586436927824":5,"138775":11,"1388888888888889":1,"13890":[],"1392559581788775e":[],"1392559584983597e":[],"1392559585048734e":6,"13925595925919e":6,"14":[0,2,4,5,6,8,9,10,11,12,13,16,18,20],"140":[],"14021063":6,"1404":[],"14042769":[],"140428":[],"141":2,"14100":[],"1416398":6,"14174745":6,"1418":[],"142":2,"14250":[],"142857":[],"143":[2,7],"1435666":18,"14360598":[],"1437":1,"144":2,"14400":[],"1440501043841336":1,"14440":[],"1446729567":4,"14484695":16,"145":2,"146":[],"147":[],"14710":[],"14722222222222223":1,"147400":11,"14741468":[],"147420":11,"14783702":18,"1479":[],"148":[3,4],"14812206":6,"14818":[],"1484256":[],"148564":6,"14859":6,"148768":[],"149":[3,4],"149213":6,"14932651":[],"14988578":[],"149886":[],"14g":6,"14it":6,"15":[0,2,4,6,7,8,9,12,13,16,18],"150":[3,4,8],"15005476":5,"15098090e":6,"151":[3,4],"15130074e":6,"151986":[],"152":[3,4],"15200":[],"15258907":[],"1527777777777778":1,"153036":[],"153106":[],"1533795":[],"153760":[],"15384615384616":[],"154":[],"15454301":[],"154720":[],"15483121":18,"154911":[],"155":[],"155491":[],"155687":[],"155883":[],"156":[],"1562":[],"15629539":[],"15680777":16,"157":[],"15717291":16,"1575":[],"158":[],"1583767":16,"1586300629904382":[],"1587":[],"15891336":16,"159":[],"1590":[],"15990":[],"15g":6,"15it":[],"16":[1,2,3,4,5,6,8,9,10,13,18],"160":[],"1603":3,"1604":[],"1605":[],"160539":[],"1606":[],"1607":[],"16111111111111112":1,"1612":[],"16211139":5,"16220":[],"16231451":4,"1625":[],"1628":[],"163":[],"1630775253":[],"16342407":5,"16343471":6,"16384":3,"16500":[],"166":[],"16660817":[],"166667":[],"167":[],"16740002":16,"168":[],"16805821e":6,"16807":18,"16827044":18,"16832385":18,"16b8e3cda33a":1,"17":[1,2,4,5,6,8,13,18],"17084902":[],"1709":[],"17174962e":1,"17222222222222222":1,"1726":[],"17300":[],"1731":[],"17339342":[],"17446471":6,"1752":[],"175300":[],"17641709":6,"176880142835407":[],"17777777777777778":1,"17801022":5,"17861098":6,"17917768":5,"17930649":16,"17949575":5,"17953942":11,"1797":[1,3],"18":[2,4,6,7,8,9,10,13,18],"180":[],"18029127":5,"1807":4,"1809":[],"181":[],"1810":4,"1812":[],"18156717":16,"1821":[],"18276924":[],"18327677":[],"18333333333333332":1,"18393678":18,"184":[],"184519":[],"184895":[],"185":[],"1851":[3,4],"1852":[3,4],"18526":[],"185278747229417":[],"1853":[3,4],"1854":[3,4],"1855":[3,4],"186":[],"1860":[],"1861":[],"18611111111111112":1,"18613217e":6,"18660":[],"18673098":11,"18682538":18,"1887":6,"18912963":16,"189496":[],"189622":[],"18it":[],"19":[2,4,6,13,18],"19003":6,"191262820314401":[],"19166666666666668":1,"19207979":5,"19213479":18,"19220":[],"193":[],"19354258":18,"19394283":[],"194":[],"1940":0,"19404282648955e":6,"194042826653172e":[],"194042826815498e":[],"1940428268204826e":6,"1943":12,"1944":[],"19444444444444445":[],"1950915150":[],"1954":[],"1956":[],"19569961":6,"1961":[],"1962":[],"1963":[],"1964":[],"1965":[],"1970":16,"1973":9,"197370":11,"19740":[],"1979":6,"19800":[],"1989":18,"199":[],"19937":18,"19994371":6,"1_1":12,"1_2":12,"1_3":12,"1cm":[0,8,10,18],"1d":[1,2,3],"1e":[1,2,3,4,14],"1e10":14,"1e4":6,"1f":1,"1k":16,"1n":0,"1s":3,"1x":0,"2":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],"20":[0,1,2,4,6,7,8,13,18],"200":[0,2,3,4,8,9,10,18],"2000":0,"200000":[],"20015436":6,"2004":13,"2006":20,"2010":1,"2011":1,"2014":4,"2015":1,"2016":0,"20174121":16,"2018":[0,6],"2018906331":[],"2019":[],"2021":[6,14],"2022":17,"2027":[],"20277777777777778":1,"203":6,"20320502":[],"20500":[],"206":[],"2060":[],"20661216":[],"2069":[],"207545":11,"20756638":[],"20833333333333334":1,"20867052175006306":6,"20867052175109335":[],"20980":[],"21":[0,1,2,4,5,6,7,9,12,13,16,18],"210340":11,"21058097":5,"21130":[],"2116753732":4,"21169159e":6,"21265216":[],"213":6,"213103":11,"213743":11,"21472683":16,"2147483647":18,"21519063":16,"21596432":6,"216290":11,"216683":11,"21786964":16,"2188":[],"21919813":18,"21944444444444444":[],"2195":3,"21985165":13,"21997099":16,"22":[0,1,2,4,5,6,12,13,16,18],"22044605e":5,"22094791":18,"221":8,"221180":[],"2216":[],"2218":[],"221805":2,"222400":[],"2225":3,"225":4,"2259440937":[],"226124657522696":[],"22612466":[],"22690428":5,"2284246870217459":6,"22842468702288576":[],"22842468702288582":[],"22847924":5,"2299":3,"22it":6,"23":[1,2,4,6,7,12,13,16,18],"23002365e":6,"231":[],"23103285":[],"2315033":[],"23167717":5,"2321528":5,"232153":5,"232435":[],"23297056":18,"23333333333333334":1,"233528":5,"234":6,"23522201":[],"2357089093":[],"2360682191515046":18,"2361111111111111":[],"2364":[],"237038":5,"23703839":5,"2379":6,"2397":[],"24":[0,1,2,4,6,13,16],"24140":[],"2416":[],"24175744e":6,"2419":[],"24276315":16,"2430":[],"24390":[],"24444444444444444":1,"244858":[],"24485843":[],"24512498":16,"246":2,"2470":[],"24770094":6,"24829908":5,"24906604e":6,"2495":[],"25":[2,3,4,5,6,7,8,9,11,13],"250":[2,4,7,9],"2500":[],"25000":0,"250000":[],"250154":[],"2517560119":[],"251879":[],"252436":[],"25259666":16,"2526":3,"252866":[],"25286618":[],"253775":[],"255":3,"255001":[],"256":[2,4],"25617654e":6,"25617657e":[],"25617658e":6,"256962":[],"257":[],"2572":[],"2572495066":[],"2572e3a4b38d":1,"2575":[],"25792767":16,"25845e8df859":6,"259153":11,"2597":[],"25976336":[],"26":[2,4,6,13],"26153846153846":[],"26186844":16,"2619":[],"26290036":[],"26294938":[],"2629493813057833":[],"26301436":5,"26306244":[],"264":4,"26409315307910025":6,"2640931530791003":[],"2640931530791005":[],"26409315307910053":6,"265":[],"2650":[],"265109911":4,"2654":[],"266":[],"26610075":[],"26666667":13,"26710969":5,"26780278":5,"268":[],"268227":[],"26822717":[],"269":[],"27":[0,1,2,4,6,13],"270":[],"2703":3,"27092897":6,"2750":[],"275341":[],"276263":11,"27692307692308":[],"27700":[],"2772":3,"2775623201":[],"27760":[],"278036":5,"27803645":5,"27n_":18,"28":[1,3,4,6],"28001319":[],"28047021":16,"280647":11,"28067036":16,"28097861":5,"280979":5,"2812":[],"282727":11,"283":[],"2830637392":4,"28336218e":6,"2836":18,"28390":[],"28475098":8,"28590743":[],"2861":18,"28634473":11,"286345":11,"2871":[],"2873":9,"2882":18,"2886":18,"2886847885377843":18,"28868479":18,"28875373":16,"2890":0,"2892":18,"28967287":16,"29":[4,6,7,18],"29149329":[],"2915":18,"29167186":5,"29229741":13,"2923076923077":[],"29512284":11,"295123":11,"2954":[3,4],"2955":[3,4],"2956":[3,4],"2957":[3,4],"2958":[3,4],"29588901":13,"29592539":[],"296247":[],"297":[],"2971492148":[],"2972":[],"29822833":6,"298273":[],"298375":[],"299267190588216":11,"299748":[],"2_":[12,18],"2_1":12,"2_2":12,"2_3":12,"2_i":12,"2_m":[6,18],"2_t":13,"2_x":18,"2b":18,"2cm":8,"2d":[1,3,11,12,15],"2e":6,"2f":[0,7,9,10,11,12],"2ff97f4bf03b":18,"2g":2,"2g_i":2,"2k":3,"2m":6,"2n":[0,2,3],"2nd":9,"2p":18,"2pt":4,"2s":4,"2x":[0,3,8,13],"2x_ix_jy_iy_j":8,"2x_j":8,"2y_i":10,"2y_j":8,"3":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19],"30":[0,1,4,6,7,10,13],"30000":0,"30010":[],"30119421":8,"3017":[],"3018":[],"3019":[],"301927":[],"3020":[],"3021":[],"30258509":16,"302m":4,"303":6,"3037":[],"3038":[],"30384239":16,"3039":[],"303m":4,"3040":[],"3041":[],"30466214e":6,"304m":4,"30535506":[],"30552077":16,"30559547":[],"305m":4,"3063":[],"306m":4,"3072":3,"30787294":6,"307m":4,"308m":4,"309":0,"30940":[],"30b53504a633":0,"31":[4,6,12,16,18],"310":0,"311":0,"311m":4,"312":0,"3123314713548606":6,"31276579e":6,"312m":4,"313":0,"31318084":5,"314":[],"31457796":5,"315":6,"3155":[5,6],"316":[],"31605061":16,"317":[],"31718909":11,"317367":11,"317m":4,"31866499":13,"31896852":8,"319m":4,"32":[3,4,6,12,13,16,18],"3200":1,"32047562":[],"3208":2,"320m":4,"32149601703519115":6,"3214960170351912":6,"3215":[],"32179365":[],"32320052":16,"324":2,"32458459":[],"324m":4,"3250":[1,6],"32512":[],"326238":[],"326m":4,"32721178":11,"327212":11,"32903042":[],"3297":[],"32992274":[],"329923":[],"33":[3,4,12,14,16],"3303":[],"33066907e":5,"3310":[],"33166055e":5,"331939":[],"331m":4,"332331":[],"333":7,"3331":[],"33327369":[],"333274":[],"33333333":13,"3337":[],"33611111111111114":[],"33711888":18,"3384":[],"33900713":18,"33m":4,"34":[4,7,16],"3403":[],"340782":11,"34114547":5,"341m":4,"342680":[],"34305928":[],"3436":0,"3437":0,"3456":[],"34568872":16,"34569596":5,"3457":[],"3458":[],"34585355":16,"3459":[],"3460":[],"346810":[],"3469819128513336":[],"34740615":[],"3498":[],"34it":6,"35":[0,2,4,6,7],"3514":[],"35140":[],"35147135":16,"351636":11,"35182854":5,"35203688":16,"3522":[],"3525":[],"3528556":[],"352856":[],"3529":[],"3530606977":[],"3538":[],"3543":[],"3544313922":[],"3546":[],"35470445e":5,"3548":[],"355":[],"3551":[],"35533773":6,"35533774":[],"3556":[],"3558":[],"3560":[],"356399":[],"3567":[],"3572":[],"3575":[],"357508":[],"3576":[],"3577":[],"35771842":6,"3581341341":4,"3585":[],"3587":[],"35892474":16,"359":5,"3593":[],"3594821":13,"3595":[],"3598":[],"359999999999985":[],"36":[2,4,5,6,7,18],"360":1,"3604":[],"3605":[],"3606":[],"360688":[],"3609":[],"36102113":[],"36117602":18,"3613":[],"3615":[],"361556":[],"3617":[],"3621311":5,"3624":[],"3627":[],"3628":[],"363295916323784e":6,"363295916414895e":[],"3632959170548605e":[],"363295924430451e":6,"363834":11,"36383443":11,"3643":[],"364418e97433":1,"3645":[],"3646":[],"3647":[],"3655":[],"3655222":5,"3659":[],"3668":[],"36689784":[],"366898":[],"3669":[],"367":2,"3672":[],"3673":[],"3674":[],"3679":[],"3684":[],"3687":[],"3688":[],"368m":4,"369139":11,"36it":[],"37":[2,4,6,7,18],"3704":[],"370782966":4,"3711":[],"3713":[],"3718":[],"3721":[],"3722":[],"3725":[],"3729":[],"37307168":16,"3739":[],"37396662":6,"37415316":16,"374291":5,"37429133":5,"3748":[],"3749":[],"3753":[],"3759":[],"3760":[],"3765":[],"376559":[],"37655936":[],"37703055":18,"3772":[],"3773":[],"37732":[],"3776":[],"3777801602":[],"3779":[],"37835429e":[],"3784":[],"37900111":6,"3791":[],"3794":[],"379647":11,"37964744":11,"37992857":[],"38":[2,4,7,18],"380":[],"3802":[],"3803":[],"3804":[],"3805":[],"380739":5,"38073947":5,"3811":[],"38135733e":6,"3815":4,"381627865854956":18,"38162787":18,"3817475779":[],"3818":[],"3819":[],"3820":[],"38246359":[],"3827":[],"382951":11,"38295101":11,"3830":4,"3833":[],"38336316":16,"3834":4,"3837":4,"3838":4,"3839":4,"3842":[],"3850":[],"3851":4,"38533184":6,"3854":[],"3858":4,"386":[],"3861":4,"3862":4,"38629436":16,"3864":4,"3867":[],"3869":4,"387":[],"3871":4,"3872":4,"387482":5,"38748219":5,"3876":[],"388":[],"3881":4,"3882":[],"3885":[],"38868469":16,"3888":4,"3889":4,"389":[],"38901478":[],"3891":4,"38916861e":6,"38962192e":6,"3898":[],"39":[0,2,4,13,19],"390":[],"3906":4,"39095416":[],"3914":4,"3915":4,"3916":4,"391602":[],"3917":4,"3922":4,"3925515884752442":[],"3928":4,"3931":[],"39311435":16,"3943":4,"3944":4,"39456996":16,"3950":4,"3955":4,"39560937":16,"39579407":5,"3958":[],"3960":4,"3962":4,"3970":4,"39706038":5,"3975":4,"397700":11,"39789527":16,"3979":4,"3980313467":[],"3983":4,"3994":4,"3996":4,"399836":[],"3d":[2,3,4,6,13],"3f":[1,3,9],"3n":16,"3x":[2,8],"3x_i":2,"3y":8,"4":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],"40":[1,4,6,19],"400":4,"4000":20,"4005":4,"4011":4,"40116777":[],"401168":[],"4012":4,"4017":4,"401842":11,"40214433":16,"4022":[],"4027":4,"4030":4,"40340043":18,"4034668048":[],"4038":4,"4039":4,"404":[],"4045":4,"4048":4,"4055":4,"405890":11,"4059":4,"40599799":[],"4068":4,"4069":4,"4075":4,"4077":[],"408":2,"4082":[4,6],"4084":4,"4087":[],"4088":4,"4089":4,"409":2,"40927184e":6,"40a38ad763f1":6,"41":[2,4,16],"410":2,"4100":4,"4107":[],"411":2,"4115":4,"4117":4,"412":2,"4128":4,"4131":4,"4143":4,"41433969":5,"4144":4,"4146":4,"41511965e":1,"4155":2,"4162706317":[],"4167":4,"4176":4,"4177":4,"418506":11,"4186":4,"41876267":5,"418763":5,"41882036e":6,"41882037e":6,"4192423635":[],"4198":4,"41990268":[],"41it":6,"42":[1,2,4,8,9,10,16],"420":[],"42078103":18,"421":2,"4212":4,"422":2,"4224":4,"423":2,"42394972":16,"424":2,"42441033":5,"42449643":18,"42450":[],"425":2,"4255":[],"4258989918":[],"426":[6,7],"42631342":[],"427017":11,"4275":4,"43":[1,2,4,7,16],"43054282":5,"43135183":16,"43330971e":6,"434932":11,"43493232":11,"435163":[],"43552433":16,"43579948e":6,"436462435":4,"43761347":[],"43766686":11,"4379":4,"438060758":[],"438136":[],"439230":6,"44":[1,2,4,16],"44089210e":5,"4410":[],"4411":[],"442600":11,"443217":[],"444":[],"44970586e":1,"45":[2,4,19],"450":[],"450257":11,"4504":[],"45290829":16,"4557763":11,"455947":[],"456":[],"456418966187335":[],"457":[2,4],"457770268480242":[],"458027":[],"458078":11,"45960079":5,"46":[2,4,19],"4601":[],"461":18,"461175":16,"462":7,"46383925e":6,"464424":[],"4644244":[],"46508305":16,"46567887":16,"466":18,"46602982":[],"469":[],"46932688":[],"4694":[],"46984697e":6,"469868":[],"46986815":[],"47":[4,19],"4703":4,"47042744":5,"470714":[],"47075725":6,"47116868e":6,"47125748":5,"47132891":5,"47387858":18,"47400238":[],"47432993":[],"4744":[],"47478057":[],"475311":[],"47531107":[],"47610036":6,"47815203":11,"47920156":18,"47942814":5,"479465113":4,"48":4,"48089797":[],"48133064":18,"481979":6,"48212873":16,"48257387":19,"483257001":[],"4837":[],"48420165":[],"48476997":11,"48574149":16,"486873":[],"48687342":[],"489":[],"48994188":5,"49":[4,5,6,11,13],"490":[],"491":[],"49152":3,"492":[],"493":[],"4940954":0,"4959161509356135e":6,"495916150936645e":6,"495916150936654e":[],"495916150938325e":[],"49636583":[],"497":[3,4],"498":[3,4],"499":[3,4],"4990":18,"4992":18,"4997":18,"4c4c7f":[9,10],"4d":3,"4f":6,"4y":8,"4y_i":10,"5":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],"50":[1,2,3,4,6,7,8,10,13],"500":[1,3,4,6,9,10,13,18],"500000":[],"50000455":5,"50000553":5,"50000718":5,"50000855":5,"50000969":5,"50001063":5,"50001142":5,"50001207":5,"50001261":5,"50001306":5,"50001343":5,"50001374":5,"500014":5,"50001414":5,"50001422":5,"50001439":5,"50001454":5,"50001466":5,"50001476":5,"50001485":5,"50001492":5,"50001498":5,"50001502":5,"50001506":5,"5000151":5,"50001512":5,"50001515":5,"50001517":5,"50001518":5,"50001519":5,"50001521":5,"50001522":5,"50001523":5,"50001524":5,"50001525":5,"501":[3,4],"5018":18,"50227564e":6,"50321091":5,"504167":[],"50416731":[],"506":0,"50727059":16,"50769230769231":[],"507d50":[9,10],"50846111e":6,"50846112e":6,"50it":6,"50j":13,"50x10":1,"51":[4,10],"510":1,"51004249":16,"512132":[],"51214899":6,"51265232":16,"51289697":11,"512897":11,"5138":[],"51389553":16,"514219":[],"51561271":16,"5177783846":4,"518030":11,"51803019":11,"519842":[],"52":[3,4,13],"5222222222222223":1,"522758":[],"52307692307693":[],"5260627":[],"526744":11,"52723079":18,"52799362":11,"528115":11,"52811546":11,"52874252":5,"529":[],"52911941":[],"52945798e":[],"53":[3,4,9],"5303329":11,"5305555555555556":1,"5312":[],"531280":[],"53189647":[],"53312754":16,"53423784":16,"53611562":18,"53697476":[],"53703498":6,"5378811":11,"53794784":11,"537948":11,"53846153846155":[],"539261":11,"54":[3,4,6,18],"540":[],"54016188":11,"540162":11,"54039921":5,"54041041e":5,"541605":[],"54163136":13,"544439":[],"546166676":[],"54780216":[],"54it":[],"55":[1,3,4],"5501":[3,4,14],"550321":[],"5539":[],"55505907":16,"5555555555555556":1,"55578041":[],"5566":[],"557795":11,"55854694":11,"5594":6,"56":[1,3,4],"56033697":5,"561":[],"5611":[],"5615":[],"56198284":5,"5625":[],"56302854":16,"5639":[],"564":[],"564374":11,"565":[],"56536":0,"566":[],"56636616e":6,"567":[],"568":[],"569":1,"56912044e":6,"56939714":5,"56992937":[],"57":[0,4,8,19],"570":[],"5700":[],"571":5,"571105947979336e":6,"571105947979394e":6,"571105947979395e":[],"571105947979439e":[],"57154252":18,"57174058":18,"57201944e":6,"57266138":[],"574465":11,"57673618":16,"57it":[],"58":[4,10,19],"583595":[],"58428804":5,"584804":[],"5888888888888889":1,"589":[],"58986647":18,"59":[2,4],"590":[],"591":[],"591317992":4,"591594":5,"59159438":5,"592":[],"593":[],"5944444444444444":1,"59591979":[],"595920":[],"59592669":18,"59766":5,"597660":5,"59833875":13,"598392":[],"59839245":[],"59955801":13,"5cm":18,"5dd54edf2138":6,"5f":8,"5x":8,"5y":8,"6":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,17,18],"60":[1,2,3,4,6],"60000":4,"6019067271":4,"60236938":16,"60293962":5,"60420593":5,"60538875":16,"60619654":6,"606439":[],"60673226":11,"60685864":6,"60791699":18,"6079169911277265":18,"60943791":16,"61":[2,4,7],"6111111111111112":1,"612939":[],"613579":[],"61399851":11,"613999":11,"61463451":16,"614808":11,"618":[],"61808351":[],"618982":[],"6199381169260247":[],"62":[2,3,4],"62168613":18,"62364974":[],"62373464":11,"625":7,"626635268":[],"62894215":5,"629961":[],"63":[0,1,2,3,4,6,7],"6300745149331701":[],"630224":[],"63025821e":6,"63249532e":6,"63270833":18,"63498144":5,"63675140":[],"6371293350711955":[],"63860687":16,"63901111":18,"63it":[],"64":[1,3,4,7,13,16],"64012627":5,"64425009":18,"645":[],"64615384615385":[],"646283":11,"647":6,"64742912e":6,"647473":11,"649339":5,"64933923":5,"649382":11,"64x50":1,"65":[1,2,3,4,7,8,9],"65136857":[],"6562":[],"65626043":5,"65628853":16,"65885453":5,"659306":[],"66":[2,3,4],"66054752":18,"66087937":18,"66204648":6,"66226149":6,"66247212":[],"6628996975186953":[],"66292841":18,"6638":[],"66410989":[],"66560":[],"66619972":11,"666200":11,"667":[],"668172":[],"668186":[],"66818635":[],"66it":6,"67":[2,4],"67047975e":6,"671089":[],"672721":[],"67314874e":5,"67588315":[],"67697934":11,"67838309":[],"67882608":18,"68":[2,4],"68192193":5,"68246089":16,"68279358":16,"68534263e":6,"68542204":5,"68545647e":[],"6869":[],"6887363571":4,"68929213e":6,"689519":11,"69":[2,4,7,18],"690":[],"690569639355314":[],"69061276":11,"690617":[],"69069n_":18,"692":1,"69295955":[],"69484813e":5,"69493539":16,"69504801":6,"69634577e":6,"69695259":5,"69985355":[],"6999536":11,"69it":[],"6e75736fdab1":6,"6f7a6bd7d79f":6,"6m":[3,4],"6n_":18,"7":[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20],"70":[1,2,4,6,7],"70127680":6,"70179437":[],"70205195":16,"703716d317a7":8,"7050":[],"70598996":[],"70653767":4,"70710678":5,"70769586":[],"70832814":5,"70980493":16,"71":[1,2,4],"71131626":16,"7119":[],"712018":11,"7134":[],"7151":[],"718697":5,"71869727":5,"72":[2,4],"72174172":11,"722047011333792":5,"72271878e":6,"7236674":5,"72373129":[],"724":3,"72522848":[],"72859758":5,"7293182":[],"72981762":8,"73":[4,6],"731000":[],"73174557":[],"733096":[],"73484667":18,"735738558766299":18,"73573856":18,"73752910":[],"73it":6,"74":[4,6,13],"740":[],"74081822":8,"74368436":16,"743u":[],"7448615806559786":18,"74840212":5,"749765":[],"75":[4,5,6,8,11],"7501749450963715":[],"750445":[],"750u":[],"75106135":16,"75118364":18,"751699":11,"75170092":5,"753846153846155":[],"756352":[],"75838233":[],"75it":[],"76":[2,4,19],"76060096":[],"76066069":16,"763u":[],"7643536":13,"765":7,"76674796":16,"76923076923077":[],"76936315":5,"7694444444444445":1,"77":[2,4,13,19],"77034458":[],"770345":[],"77152076":5,"7718":9,"774300":[],"775":[],"77627886":13,"77636e":13,"7767978193240488":11,"77714169":8,"7782028952":4,"77865169":[],"78":[2,4],"78011544":[],"78156479e":5,"78184120e":6,"7846153846154":[],"78941903":5,"79":[2,4],"79009329":16,"79111643":5,"793167":[],"79394867":18,"7939646":18,"794282":11,"79602861":18,"79754246":[],"797e":6,"7c394b1e8b71":9,"7d7d58":[9,10],"7f2b3a6174c2":13,"7m":4,"8":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18],"80":[0,1,2,4,5,6,8],"800":[4,7],"80315282":5,"803153":5,"80354994":6,"80469739":5,"8055555555555556":1,"80561191":[],"80609615e":6,"80609616e":6,"8064":[],"80734875":[],"807349":[],"80738685":16,"80747253":16,"80842254":11,"808423":11,"80847477e":6,"81":[1,2,4],"81048318e":6,"8108619":[],"81160425":5,"81187794":16,"81333804":6,"81333805":[],"814":[7,11],"815563":[],"81633628":11,"816454":[],"816847":[],"8175":[],"82":[2,4],"8219235992494145":[],"8219236":[],"82198978":5,"82650876":[],"826509":[],"8265786":5,"82747653":[],"827477":[],"82773778":18,"83":4,"8305555555555556":1,"83512277":5,"836874":5,"83687444":5,"83698677":16,"83999999999999":[],"84":4,"84062065":[],"84228957e":[],"84232163":16,"842436":[],"84292394":[],"842u":[],"84355903e":1,"84443254e":1,"84569271":13,"84780262":6,"84854738":[],"84923989e":6,"84924834":11,"84994524":5,"85":[1,4],"8503720991789538":5,"85091337":18,"85263220":6,"8527777777777777":[],"85278920e":5,"853241":[],"85324115":[],"853u":[],"85601992":5,"85758696":16,"858":[],"8583333333333333":1,"85953586":6,"85959007":18,"86":2,"8608479":[],"860848":[],"861":[],"86117291":5,"86134827":5,"86145244":11,"8638888888888889":1,"86478158":18,"86546962":[],"86623151":13,"86630":[],"8666666666666667":1,"86810":[],"869":0,"86925797":5,"869258":5,"87":2,"870":0,"8702784034":4,"871":0,"872":0,"8722222222222222":1,"873":0,"87381451":5,"875":1,"8759":13,"876":6,"87625493":[],"8768":[],"878297":[],"87940752":16,"87it":6,"88":[2,13],"88017651":11,"880177":11,"88046261":5,"8805555555555555":1,"88118231":18,"88168312e":6,"883":[],"88336879":5,"884":[],"88477619":[],"885":[],"88512489":18,"88529063e":6,"8855417382991412":18,"88554174":18,"886":[],"88679947":[],"887":[],"8879":6,"88871662":16,"8888888888888888":1,"8894":6,"89":2,"8916666666666667":[],"89274639":16,"89288636":11,"893489":5,"89348922":5,"89410423":5,"8944444444444445":1,"89550839":16,"89565264":18,"8962476":[],"896248":[],"89873772":16,"8991514":16,"89944994":5,"899450":5,"8f":6,"8g":6,"8n":16,"8x8":1,"9":[0,1,2,3,4,5,6,7,8,9,11,12,13,14,16,18],"90":[0,1,2,6],"900449":[],"90054363":[],"90075537":5,"9011":6,"90220243":5,"90266948":5,"90268858":[],"9027777777777778":1,"903824":[],"90382431":[],"9040":9,"90475506e":6,"90540529":11,"9055555555555556":1,"9083333333333333":[],"90884627":16,"90895045":16,"90940378":16,"91":[18,19],"910":[],"9111111111111111":1,"91128596":5,"912u":[],"913":[3,4],"91379157":[],"913791573406831":[],"91383439":16,"914":[3,4],"91416375":[],"91479093":0,"91492986e":6,"915":[3,4],"91549644":[],"916":[3,4],"9166666666666666":[],"917":[3,4],"91760278":5,"918":[],"91812702":5,"918992":[],"919":[],"92":[6,19],"922u":[],"92343595":[],"924018":[],"92477093":18,"924e":6,"925":1,"92507116e":1,"9252772":11,"92578916":5,"92603747":16,"92626212":16,"92754397":[],"927544":[],"9277777777777778":1,"92819235":[],"92857143":7,"93":[],"9305555555555556":1,"930583":11,"931":0,"93155188":5,"93158979":5,"93248252":5,"932483":5,"932u":[],"933":5,"93414191":18,"93492130e":6,"93579127":16,"935u":[],"9361111111111111":[],"937":18,"937082":[],"93799826":5,"938":18,"9387":[],"939":[0,18],"94":[7,18],"9400":[],"941866404575299":18,"94226022e":6,"94284104":5,"94320205":5,"9444444444444444":1,"945":[3,4],"94548496":[],"94591015":16,"946":[3,4],"94639099":11,"94659383":[],"947":[3,4],"9472222222222222":1,"94735055":[],"947903":[],"94790323":[],"948":[3,4],"9482527":5,"949":[3,4],"95":[1,7,11],"95008046":6,"95079764":6,"95231424":5,"9527777777777777":1,"95284275":5,"953065564":[],"95351665":5,"954":18,"9549351910143222":[],"954u":[],"9555555555555556":1,"955820c21e8b":4,"956563":11,"95684892":5,"95703":13,"95714723":[],"957147232685324":[],"95it":[],"96":[6,7,11],"960":18,"9601304850018328e":6,"960130485007504e":6,"960130485007934e":[],"9601304850213484e":[],"96024953":5,"96032148":16,"96084663":5,"961":18,"962":18,"9637117593816477":6,"9640435":5,"96489434":[],"9649652536":4,"96527903":16,"965548":[],"96606158":16,"96653373":[],"96688672":5,"9674916":5,"967809":11,"96863851":[],"96987657":[],"96992454":[],"97":7,"97005689":5,"97065296":[],"97108e":13,"9722222222222222":1,"97230501":[],"97243128":5,"97300836":5,"97497404e":6,"975":1,"97507735":5,"975510299261579":9,"9760832":[],"97705827":5,"977418":5,"97758848":5,"9777777777777777":1,"977880":[],"97788031":[],"9780387310732":20,"9780387848570":20,"9781492032632":20,"97898392":6,"97926491":5,"98":[0,1,7],"980":[],"98017611":13,"98036405":[],"9805555555555555":1,"98091621":5,"981321":[],"98139097":5,"98266587":16,"98275501":5,"983310":[],"98346748":[],"98399675":[],"98413059":5,"98454786":5,"985":18,"98566191":5,"986":18,"9861111111111112":1,"98680716":5,"98716878":5,"98756882":13,"98794823":16,"9879924":18,"98808176":5,"98822371":6,"9888888888888889":1,"989":18,"9890348":5,"9893149172528393":[],"9893447":5,"9898ff":[9,10],"99":[6,7,11,13],"990":[],"99009525":5,"9902552771282336":18,"99049330":6,"99088801":5,"991":18,"99115119":5,"99176998":5,"992":18,"99242921":5,"99265097":5,"993":18,"99316252":5,"99353454":[],"993535":[],"99371056":5,"99389612":5,"993972":[],"99397245":[],"9943201":5,"9947756":5,"99492986":5,"99519225":13,"99528218":5,"99539415":5,"9955282554647219":[],"99566069":5,"99578809":5,"996":5,"99608161":5,"9963961":5,"99650061":5,"9967458":5,"99700706":5,"99709215":5,"99724883":[],"99729756":5,"99751458":5,"99758326":5,"99775587":5,"99775949":[],"99793613":5,"99799099":5,"99813653":5,"99828624":5,"99829953":[],"9983295":5,"99845267":5,"998577":5,"99861053":5,"99871521":5,"99881845":5,"99884384":5,"99893323":5,"999":[9,18],"99901896":5,"99903755":5,"99911427":5,"99918546":5,"99919837":5,"99926459":5,"9993237":5,"99933188":5,"99938942":5,"9994385":5,"99944272":5,"99949306":5,"99953381":5,"99953475":5,"99957911":5,"99961294":5,"99965056":5,"99967865":5,"99970988":5,"9997332":5,"99975913":5,"99977416":[],"99977849":5,"99980002":5,"9998161":5,"99984732":5,"99987324":5,"99989476":5,"99991263":5,"99992746":5,"99993978":5,"99995":5,"9999555851685968":6,"999955585168597":6,"9999840939906267":[],"9999858320366368":[],"9x":6,"9y":6,"\u00f8yvind":[6,19],"abstract":1,"boolean":4,"break":[0,4,6,11,14],"byte":16,"case":[0,1,2,3,4,5,6,7,11,12,13,14,15,16,17],"catch":0,"char":18,"class":[0,1,3,4,6,7,8,9,11,12,13,18],"const":18,"default":[0,1,2,4,6,7,13,16],"do":[0,2,3,4,5,6,8,9,10,11,12,13,14,16,18],"ekstr\u00f8m":4,"eng\u00f8i":19,"export":9,"f\u00f8470":19,"final":[0,1,2,3,4,5,6,7,8,9,10,11,13,14,17,18,19],"float":[0,3,4,5,9,11,13,14,16,18],"function":[2,3,4,5,9,14,15,16],"import":[0,1,2,3,4,6,7,8,9,10,11,12,13,14],"int":[0,1,2,3,4,5,6,11,13,14,16,18],"long":[0,1,3,4,12,13,18],"m\u00f8svatn":6,"new":[0,1,2,3,5,6,7,8,9,10,11,13,14,16,18],"null":18,"public":[0,15],"return":[0,1,2,3,4,5,6,7,8,9,11,13,14,16,18],"s\u00f8rli":[],"s\u00f8rlie":19,"sch\u00f8yen":[6,19],"short":[4,5],"steinsv\u00e5g":[],"super":[3,5],"switch":0,"throw":[3,6,18],"true":[0,1,2,3,4,5,6,7,8,9,10,12,13,14,16,18],"try":[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,16,18],"var":[5,6,10,11,18],"while":[0,1,3,4,5,6,7,8,9,11,12,13,18],A:[2,3,5,6,7,10,11,12,13,15,16,17,18,19,20],AND:2,And:[0,3,4,5,6,9,15,18],As:[0,1,2,3,4,5,6,8,10,12,13,16,18],At:[0,4,6,13],BE:0,Be:[2,15],Being:13,But:[0,1,2,3,5,6,9,10,18],By:[0,3,5,6,12,13,16],For:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],IF:6,IN:20,If:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,18],In:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18,20],Is:11,Ising:[5,12],It:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],Its:[1,2,4,11],NO:[7,11],No:[3,4,5,6,7,8,9],Not:[0,1,5,6,17],OR:18,Of:18,On:[0,3,17,18,20],One:[0,1,3,4,5,6,7,8,11,12,13,18],Or:[0,1,6],Such:[6,12,18],That:[0,5,7,10,11,12,14,18],The:[4,10,13,14,16,17,19,20],Then:[0,1,5,6,8,9,10,11,12,13,14,16,18],There:[0,3,4,5,6,8,9,11,12,14,16,17,18,19],These:[0,3,4,5,8,9,10,11,12,13,14,16,18],To:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],With:[0,5,6,8,9,10,11,12,14,16,18],_0:[5,8,10,11,13],_1:[2,5,6,8,10,11,12,13,14,16],_2:[2,5,8,11,12,13,16],_3:16,_4:16,_9:13,_:[0,1,2,4,5,6,7,8,9,10,11,12,13,16],_________________________________________________________________:4,__call__:[3,4],__class__:10,__doc__:6,__future__:[8,9],__getitem__:[],__init__:[1,3,4,14],__main__:2,__mosek:5,__name__:[2,10],__traceback__:[3,4],_asarrai:[],_auto10:[6,12],_auto12:6,_auto1:[2,3,4,5,6,7,12,13,16,18],_auto2:[2,3,4,5,6,12,13,16,18],_auto3:[3,4,5,6,12,13,16],_auto4:[4,6,12,13,16],_auto5:[4,6,12,13,16],_auto6:[4,6,12,16],_auto7:[4,6,12,16],_auto8:[6,12],_auto9:[6,12],_ax:[],_base:8,_build:[15,20],_build_call_output:[3,4],_c:1,_call:[3,4],_call_flat:[3,4],_check_1d:[],_check_optimize_result:[7,11],_compon:11,_coordinate_desc:6,_copy_docstring_and_deprec:[],_decor:0,_depth:9,_fraction:9,_get_lin:[],_getitem_multilevel:[],_handl:[3,4],_i:[0,1,2,5,6,8,11,12,13,18],_inference_funct:[3,4],_interpolatefunctionerror:[3,4],_is_primit:[],_j:[0,1,2,3,5,6,8,13],_jit_compil:[3,4],_k:13,_l:12,_lambda:6,_leaf:9,_logist:[7,11],_m:10,_make_vjp:[2,13],_maybe_define_funct:[3,4],_multilayer_perceptron:1,_n:[2,5,8,11,13],_node:[2,9,13],_notokstatusexcept:[3,4],_np:[],_num_output:[3,4],_p:[5,8],_plot_arg:[],_process_traceback_fram:[3,4],_r:[3,4],_ratio:11,_sampl:9,_select_forward_and_backward_funct:[3,4],_split:[6,9],_src:[3,4,14],_stateful_fn:[3,4],_stateless_fn:[3,4],_t:13,_test:6,_trace:[2,13],_valu:[2,13],_varianc:11,_weight:9,a0:3,a0faa0:[9,10],a1:0,a2:0,a3:0,a4:0,a_0:0,a_1a:0,a_2a:0,a_3:0,a_3a:0,a_4:0,a_4a:0,a_:[0,1,16],a_h:1,a_i:[0,1,2,12],a_j:[1,12],a_k:[1,12],a_ndim:2,aaron:20,ab:[0,2,5,13,14],ab_channel:15,abandon:1,abbrevi:17,abid:18,abil:[0,10],abl:[1,4,5,6,7,10,12,13,18],abort:18,about:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,20],abov:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,16,18],abovement:6,abscissa:13,absolut:[0,2,5,6,13],acceler:13,accept:[0,3,6,9],access:[0,3,4,11,18],accid:[4,6],accmod:5,accompani:0,accomplish:[8,9,13],accord:[0,1,2,5,6,9,12,13,14,18],accordingli:11,account:[0,3,5,13,18],accumul:[12,18],accur:[0,3,4,6,10,13,18],accuraci:[0,1,3,4,5,6,7,9,10,11,12],accuracy_scor:[0,1,10],accuracy_score_numpi:1,achiev:[0,1,5,6,8,12,16],aco:18,acquaint:15,acquir:[1,15],acr:0,across:[1,3,6,9,15],act:[1,3,16],action:18,activ:[0,2,3,4,9,17],actual:[0,1,4,5,6,8,11,16],ad:[0,1,3,4,5,8,13,16],ada_clf:10,adaboostclassifi:10,adadelta:13,adagrad:13,adam:[1,3,4],adapt:[4,6,13,20],add:[0,1,2,3,4,5,6,8,10,11,12,18],add_lin:[],add_outgrad:2,add_subplot:[1,7,12,14],addendum:5,addit:[0,2,3,5,6,7,8,9,10,12,13,15,16,18,19,20],addition:[12,13],address:[1,9,11,13,20],adjac:[3,12],adjoint:5,adjust:[0,5,12,13],admir:0,advanc:[4,6,12,20],advantag:[1,3,5,6,10,13,16],affect:3,affin:[0,3,8,11],afford:3,aforement:14,african:0,after:[0,1,2,4,5,6,9,11,12,13,15,16,18],afterward:0,ag:[0,7,17],ag_0:2,again:[0,1,4,5,6,7,8,10,11,12,13,18],against:[1,4,7,10],agegroup:7,agegroupmean:7,aggreg:[9,10],agorithm:10,agre:[5,6,18],ahead:9,ai:[0,20],aid:11,aim:[0,1,4,6,7,11,14,15,16],ainv:5,airplan:3,aka:5,al:[0,2,4,17,20],alarm:5,algebra:[0,3,5,13,15,17],algo:18,algorithm:[0,1,2,4,5,6,7,8,13,14,15,16,17,18,20],align:[0,2,5,6,7,8,13,18],all:[0,1,2,3,4,5,6,7,9,10,11,12,13,14,15,16,17,18,19,20],allevi:[1,13],alloc:[3,16],allow:[0,1,2,3,5,6,8,10,13,15,16],almost:[0,1,6,8,11,13,18],alon:[2,9],along:[2,3,4,5,6,9,10,11,15,16],alpha:[0,1,2,3,4,5,6,7,8,9,10,13,14,18],alpha_0:3,alpha_1:3,alpha_2:3,alpha_:10,alpha_i:[3,13],alpha_k:13,alpha_m:10,alpha_n:3,alpha_opt:13,alreadi:[2,3,4,5,6,10,12,15,16,18],also:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],alter:[1,18],altern:[0,1,4,5,6,7,8,9,11,13,16],although:[1,5,6,8,10,13],alwai:[0,3,5,6,12,13,18],am:[4,18],ame2016:0,american:0,among:[0,3,5,9,10,12,16],amongst:5,amount:[0,1,3,4,6,8,10,14,15],an:[1,2,3,5,6,7,8,9,11,12,13,14,15,16,18,19,20],an_:18,anaconda3:[],anaconda:[0,1,15],analog:13,analys:[6,18],analysi:[1,3,4,7,14,16,17,20],analyt:[0,2,3,5,6,7,12,13,15],analyz:[0,1,3,4,5,6,18],andrew:1,angl:[0,3,9,18],anharmon:3,ani:[0,1,2,3,4,5,6,7,8,9,10,12,14,18],anim:[4,12],ann:12,annot:[0,1,3,7,8],anoth:[0,1,3,4,5,6,7,8,10,11,12,13,16,18],anp:2,ans_vspac:2,ansatz:0,answer:[0,1,3,5,6,16],antialias:[2,6],anticip:4,anymor:[1,8],anyon:[4,8],anyth:[1,18],anytim:19,apach:1,apart:[11,13],api:[1,15],appar:2,appear:[0,1,3,13,16,18],append:[1,3,4,8,9,13,18],appendcon:5,appendvar:5,appli:[0,1,2,3,4,6,7,8,9,10,11,12,13,18,20],applic:[0,1,3,4,5,6,7,9,12,13,16,17,18,20],apply_gradi:4,approach:[1,2,4,5,6,9,10,11,12,13,15,18,20],appropri:[2,6,9,12,13,15,18],approx:[0,2,3,6,10,11,13,18],approxim:[0,1,2,3,4,5,6,7,10,11,13,18],apt:[0,15],aq:18,ar:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],arang:[1,3,4,6,7,9,10,12],arbitrari:[1,4,6,8,12,13,18],arbitrarili:[0,1,11],arc:6,architectur:[3,4,12,20],area:[0,3,6,20],arg:[0,2,3,4,13],argc:18,argmax:[1,11],argmin:[4,10,14],argnum:[2,13],argnum_0:2,argnum_1:2,argsort:11,argu:[1,13],argument:[0,2,3,5,6,11,12,13,18],argv:18,argval:2,aris:[0,6,12,13,18],arithmet:[0,13,16],arm:[3,4,6,14],arma:18,armadillo:[16,18],around:[0,1,4,5,6,11,18],arr:2,arrai:[0,1,2,3,4,5,6,7,8,9,11,12,13,14,15,18],arrang:3,arraybox:13,arriv:[0,6,9,11,16,18],arrow:12,arrowprop:8,art3d:13,art:[0,1,15],articl:[0,3,4,6,10,18],artifici:[0,2,7,12,20],artificialneuron:12,arug:13,arxiv:[3,4],as_fram:[],asarrai:[0,2,6,9],asc:5,ascii:18,ashrafi:19,ask:[5,6,11,12],aspect:[0,6,15],assembl:[0,3],assert:4,assess:[0,6],assici:4,assign:[0,7,8,9,12,13,14,17,20],associ:[0,6,9,12,14,18],assum:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],assumpt:[0,3,5,6,9,11,18],ast:[0,5,6],astyp:[4,9,10],asymmetri:0,asymptot:[4,6],async_wait:[3,4],atoi:18,atom:0,attempt:[0,4,6,7,8,10],attend:17,attent:[0,16],attr:[3,4],attract:[0,10],attribut:[0,9],attributeerror:[],audi:0,audio:[3,4],aurelien:[0,17,20],austfjel:6,author:[0,1,10,18],authour:0,auto:[6,9,10,18],autocor:18,autocorrelation_tim:18,autocorrelform:18,autocovari:18,autoencod:[4,15],autoencond:15,autograd:15,autom:[0,15],automac:16,automat:[0,1,2,3,4,11,15,16,17],automobil:3,autonom:[4,20],avail:[0,1,4,6,10,11,15,16,17,20],averag:[0,1,3,6,9,10,13,14,18,19],avg:18,avoid:[0,4,5,6,9,11,13,16],avx2:[],avx:[],awai:[2,3,6,18],awar:[2,10],award:19,ax:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,16],axes3d:[2,6,13],axes_grid1:6,axessubplot:[],axhlin:8,axi:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,16,18],axiom:5,axlabel:0,axvlin:[4,8],axvspan:4,b1:8,b2:8,b3:8,b:[0,1,2,3,4,5,6,8,9,10,12,13,14,18,19],b_1:[2,12,13],b_2:13,b_5:13,b_:[1,16],b_group:9,b_i:[0,1,2,12],b_ia_:0,b_index:9,b_is_vec:2,b_j:[1,12],b_k:[1,12,13],b_m:12,b_meta:2,b_score:9,b_valu:9,bachelor:17,back:[0,3,4,5,6,8,9,10,16,17,18],backbon:16,backend:[1,4],background:[17,20],backpropag:1,backtrack:9,backup:16,backward:[1,2,4,12,16],backward_pass:2,bad:[6,18],badli:18,bag:[9,15,17],bag_clf:10,baggingboot:10,baggingclassifi:10,baggingtre:10,balanc:6,band:16,bandwidth:16,bar:[0,6,11],barber:20,bare:[4,10],base:[0,1,3,4,5,7,8,9,10,14,15,18,19,20],basi:[5,7,8,10,11,12,13,16],basic:[6,8,12,13,14,15,17,18],batch:[3,4,11,12,13],batch_shap:4,batch_siz:[1,3,4],batchnorm:4,bay:7,bayesian:[5,15,20],bc298b802fe2:6,becaus:[0,1,2,3,4,5,6,8,9,12,13,14],becom:[0,1,2,5,6,7,9,12,13,18],been:[0,1,2,3,4,5,6,11,12,13,15,16],befor:[0,1,2,3,4,5,6,7,8,12,13,14,16,18],beforehand:[0,18],begin:[0,1,2,3,4,5,6,7,8,9,11,12,13,14,16,18],behav:[1,6,13],behavior:[0,1,13],behaviour:12,behind:[0,1,6,8,13],behnoosh:19,being:[0,1,2,3,4,5,7,8,10,11,12,13,18],believ:[9,16],belong:[5,7,8,9,13,14],below:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],benchmark:10,bendik:[],benefici:[1,13],benefit:[0,1,4,11,13,15],bengio:[1,17,20],benign:[1,7],bennosh:19,besid:[4,5],bessel:5,best:[0,1,2,3,4,5,6,7,8,9,10,12,13,18,19],beta:[0,1,3,5,6,7,10,11,13],beta_0:[0,1,3,5,6,7,13],beta_0x_:0,beta_1:[0,1,3,5,6,7,10,13],beta_1x_0:0,beta_1x_1:[0,7],beta_1x_2:0,beta_1x_:0,beta_1x_i:[7,13],beta_2:[0,3,13],beta_2x_0:0,beta_2x_1:0,beta_2x_2:[0,7],beta_2x_:0,beta_3:3,beta_:[0,3,6,7,13],beta_i:[0,3,5],beta_j:[0,5,6,13],beta_k:13,beta_linreg:13,beta_m:10,beta_mg_m:10,beta_n:3,beta_p:7,beta_px_p:7,betavalu:5,better:[0,1,2,3,4,6,9,10,11,12,13],between:[0,1,2,3,4,5,6,7,8,9,11,12,13,14,18],beyond:[0,1,5,6,8,13],bf:[13,14,16,18],bgd:13,bia:[0,1,2,3,5,8,9,10,12,13,17,18],bias:[1,2,3,5,6,9,12],big:[0,1,2,5,6,14],bigger:[1,6],bigr:12,bike:9,bilek:19,billion:[3,12,15],bin:[0,7,18],binari:[0,3,5,7,9,10,12,17,18],binarycrossentropi:4,bind:0,binomi:15,binsboot:6,bioinformat:0,biolog:[1,12,20],bios1100:15,bird:[0,3],bishop:[17,20],bit:[1,4,16,18],bitwis:18,bivari:2,bk:[0,13],bla:[5,16],black:[8,9,14],block:[6,10,15,16],blockingavg:18,blockingstd:18,blockingvar:18,blocksiz:18,blocksizemax:18,blocksizemin:18,blogpost:4,blue:[0,3],bmatrix:[0,1,3,5,7,8,11,13,16],bmi:1,bodi:[0,1,4,12],bold:1,boldfac:[0,5],boldsymbol:[0,1,2,3,5,6,7,8,10,11,13,14],boltzmann:[12,15],book:20,boost:[1,9,15,17],boostrap:10,bootavg:18,bootstd:18,bootstrap:[1,13,15,17],bootvar:18,bootvec:18,boston_dataset:0,bot:8,both:[0,1,4,5,6,8,9,10,13,14,15,16,18,19],bottl:7,bound:[0,5,8,12],boundari:[2,4,8,11,12],boundkei:5,box:[2,4,9],boxed_arg:2,boyd:[8,13],bracket:[4,18],brain:[1,7,12],branch:9,breast:[5,7,11],breviti:13,brew:[0,15],brg:8,briefli:0,bring:[0,5,6,10],broad:[0,3,4],brownle:4,brute:[3,5,11],bs:[8,9,10],buffer_s:4,bui:4,build:[0,4,5,6,10,13,16,18],built:[0,1,3,4,6],bunch:11,busi:0,bx:5,bzl:5,c1:[8,11],c2:[8,11],c95af3df0cdd:3,c:[0,1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19,20],c_0:18,c_1:12,c_2:12,c_3:12,c_4:12,c_:[0,8,9,10,13,18],c_i:[12,13],c_k:18,ca:1,cabc613b8702:13,cach:10,cal:[0,8,10,12,13],calcul:[0,1,2,4,5,6,8,9,10,11,12,13,14,16],california:[],call:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],callabl:[3,4],callback:[3,4],calor:0,cambridg:[13,20],can:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],cancel:[0,13],cancellation_manag:[3,4],cancer:[5,10],cancerpd:7,candid:[8,9,10],cannot:[0,1,4,5,6,7,8,9,17,18],canopi:[0,15],cap:5,capabl:[0,1,8,13,15],capac:2,capita:0,captur:[4,11,12],captured_input:[3,4],car:[3,4],card:[0,7],cardin:1,care:11,carefulli:13,carlo:[0,6,15,18,20],carri:[2,6,7],cart:10,carvalho:19,casella:20,cast:1,cat:[3,4],categor:[0,1,3,9,11],categori:[0,1,3,7,10,12,14,17],categorical_crossentropi:[1,3],caus:[0,5,6,18],causal:0,causat:0,cax:1,cb:6,cbar:1,cbook:[],cc:[0,1,5,13],ccc:[5,12],cd_fast:6,cdf:18,cdot:[0,2,6,12,13,14,16,18],celebr:13,cell:4,center:[0,1,6,7,8,9,11,14,18],centr:20,central:[0,3,5,6,8,16],centroid:[14,18],centroid_differ:14,centuri:3,certain:[0,3,6,7,9,18],cg:13,cha:0,chain:[1,13,15,18],chanc:[1,5,13,18],chang:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18],channel:3,chapter:[0,6,10,11,16,17,20],charact:[0,3,5,18],character:[8,9,10,12,18],characterist:[0,1,3,10,13],charg:0,charl:0,chase:4,chd:7,chddata:7,cheap:5,cheaper:[1,13],check:[0,1,3,4,5,6,11,13,16],checkmark:3,checkpoint:4,checkpoint_dir:4,checkpoint_prefix:4,chemic:18,chen:10,chiaramont:2,choic:[0,1,2,3,4,6,9,12,13,14,16,18],choleski:[5,16],choos:[2,3,6,9,10,11,13,14,18],chosen:[0,1,2,6,8,9,10,13,18],chosen_datapoint:1,christian:20,christoph:[17,20],cifar10:3,cifar:3,cin:18,circ:[1,12],circl:[0,8,12],circuit:3,circumfer:9,circumv:[1,5,13],ckpt:4,clariti:18,class_nam:[3,9],class_val:9,class_valu:9,class_weight:[3,4],classic:[7,9,13],classif:[0,3,5,6,7,8,11,12,15,17,20],classifi:[0,1,4,7,9,10,11],classificaton:1,classifii:10,clean:1,clear:[1,5,10,12,13],clearli:[0,3,5,6,7,8,18],clever:[1,10],clf3:0,clf:[0,6,8,9,10],clf_lasso:6,clf_ridg:6,clip:[3,18],close:[0,1,2,4,6,8,9,11,12,13,14,18,20],closer:[3,5,13],closest:[8,11,13,14],closur:15,cloud:15,cluster:[0,1,4,6,11,15,17],cluster_label:14,cm:[1,2,3,6,8,13],cmap:[0,1,2,3,4,6,8,9,10],cmap_arg:6,cmath:18,cmb:17,cmd:9,cmu:[],cn_:18,cnn:[12,17],cnn_kera:3,cntk:15,co:[0,2,3,6,9,13],code:[3,4,6,7,8,13,15,16,17,20],coef0:8,coef:0,coef_:[0,5,6,8,9,13],coeff:5,coeffici:[0,3,5,6,7,8,9,13,16],coerc:[0,6],coin:[10,18],coin_toss:10,col:[0,11],colab:15,cold:9,colinear:0,collaps:8,collect:[0,2,6,10,11,15,18,20],collinear:5,color:[0,3,4,6,8,9,10,18],color_channel:3,color_cod:6,colorbar:[1,6],colsample_bytre:10,colsaobject:10,colspec:0,column:[0,1,2,5,6,7,8,9,11,12,16],columntransform:9,com:[3,4,6,14,15,20],combin:[1,2,5,6,7,10,18],come:[0,1,3,4,5,12,13,14,17],command:[0,1,18],comment:[0,4,5,6],commerci:[0,15],commod:0,common:[0,1,3,5,6,7,9,11,13,14,18],commonli:[0,1,4,6,7,9,13,14],commun:[0,12],commut:3,commutatitav:3,compact:[0,1,3,5,6,7,9,11,12,13,14],compar:[0,3,4,5,6,11,13,16],comparison:[2,4,13],compat:7,compet:0,competit:10,compil:[0,1,3,4,15,16,18],complet:[0,2,3,4,9,12],completenn:12,complex:[1,5,8,9,11,12,13],complic:[0,1,9,13],compon:[0,1,3,4,5,6,7,9,14,15,17],components_:11,compos:[9,12,14],compphys:[6,15,17,20],compress:0,compris:6,compromis:5,compulsori:15,comput:[0,1,2,3,4,5,6,7,8,10,11,12,13,15,16,17,20],computation:[0,3,6,9,13,18],con:5,concaten:[2,4,6,14],concav:[1,13],concentr:[0,10],concept:[0,2,15],conceptu:[12,13],concern:[0,1,4,7],conclud:[0,5,13],conclus:1,cond:2,conda:[0,1,15],condit:[0,2,4,5,6,8,9,11,13,18],conduct:15,condwav:2,coneqp:5,confid:[0,5,6,7,8],configur:3,confirm:[5,12],confus:[5,6,10,16],confusion_matrix:9,congruenti:18,conjug:[4,8],conjugaci:13,conjunct:3,connect:[0,1,3,4,9,11,12,13,16],consequ:[5,6,8,10,12,13],conserv:[5,14],consid:[0,1,2,3,5,6,7,8,9,10,12,13,16,18],consider:[0,1,5,13],consist:[0,1,2,3,4,6,12,13,18],constant:[0,2,4,5,6,8,12,13,18],constitu:0,constitut:[2,6],constrain:[1,3,5,7,11],constraint:[5,6,8,13],construct:[0,1,2,3,5,6,7,8,9,10,11,16,18,20],contact:0,contain:[0,2,3,4,5,6,7,8,9,11,12,13,16,18,20],contemporari:20,content:[1,15,16],context:[3,4,6,10,13],contigu:16,continu:[0,1,2,3,4,5,6,7,8,9,10,12,13,16],contour:[9,10,13],contourf:[8,9,10],contrast:[1,4,9,10,12],contribut:[0,3,5,13,18],contributor:0,control:[0,1,3,9,13,15],conv2d:[3,4],conv2dtranspos:4,conv:[3,4],conveni:[0,5,6,12,13,16],convent:12,converg:[1,2,4,5,6,7,8,11,13,14],convergencewarn:[1,6,7,8,11],convert:[0,1,4,5,9,11,13,16],converttomatrix:4,convex:[4,5,7],convinc:13,convolut:[1,4,15,17],cool:[4,9],coolwarm:6,coordin:[5,12,14],coorel:0,copi:[0,1,14],core:[2,3,4,10,13],corel:0,coronari:7,corr:[0,5,7,11],correalt:[11,15],correct:[0,1,2,3,4,5,13,16,18],correctli:[1,2,6,10],correl:[0,1,3,5,6,7,10,12,13,15],correlation_matrix:[0,5,7,11],correspond:[0,3,5,6,8,9,11,12,15,16,18],cortex:12,cosin:[3,6],cost:[0,2,3,5,6,7,8,9,12,13,18],cost_deep_grad:2,cost_funct:2,cost_function_deep:2,cost_function_deep_grad:2,cost_function_grad:2,cost_grad:2,cost_sum:2,costol:13,could:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],coulomb:0,count:[0,9,17,18,19],countor:13,coupl:[4,5,6],cours:[0,1,3,5,11,17,18],courvil:[17,20],cout:18,cov:[5,6,11,16,18],cov_xi:[5,11],cov_xx:[5,11],cov_yi:[5,11],covari:[0,7,15,16],covariance_matrix:[5,11,14],cover:[0,5,15,17,20],covert:0,covxi:18,covxx:18,covxz:18,covyi:18,covyz:18,covzz:18,cpu:1,cpu_feature_guard:[],craft:3,creat:[1,2,3,4,5,6,9,10,11,12,13,15],create_biases_and_weight:1,create_convolutional_neural_network_kera:3,create_neural_network_kera:1,create_x:[5,11],credit:[0,7],crim:0,crime:0,criteria:[0,4,9,10,14,18],criterion:[9,10,13],critic:6,cross:[0,1,3,7,9,10,13,15,17,18],cross_entropi:4,cross_val_scor:6,cross_valid:[7,10],crossvalid:6,crucial:[1,18],cs231:3,cs:17,csr_matrix:16,cstdlib:18,csv:[0,4,6,7,9],ctnk:1,ctx:[3,4],cubic:0,cumbersom:5,cumsum:[10,11],cumul:10,cumulative_heads_ratio:10,cup:5,current:[1,2,3,4,6,13,14],curs:0,curv:[6,7,10,12],curvatur:13,custom:[5,6,14],custom_cmap2:[9,10],custom_cmap:[9,10],cutpoint:9,cv:[6,7,10],cvxbook:13,cvxopt:[5,8],cyber:20,cycl:[1,12,18],d1:5,d2:5,d2_g_t:2,d3:5,d670a873ab0c:5,d985fb40c43d:6,d:[1,2,3,4,5,6,7,8,9,10,11,13,14,16,18,19],d_f:13,d_g_t:2,d_net_out:2,da:3,dagger:[5,16],dai:[1,9,15],dalen:[],damp:3,darget:9,darkr:18,dat:0,dat_id:[0,6,7,9],data1:14,data2:14,data3:14,data4:14,data:[2,4,5,8,10,12,13,14,16,20],data_handl:[3,4],data_id:[0,6,7,9],data_indic:1,data_modul:[],data_path:[0,6,7,9],data_url:[],databas:1,datafil:[0,6,7,9],datafram:[0,4,5,7,9,11],datapoint:[1,5,6,7,11,13],dataset:[0,4,6,7,8,9,10,11,13,14],datatyp:4,date:0,daughter:10,david:20,dbh:1,dbo:1,dcomposit:16,ddot:2,dead:1,deadlin:17,deal:[0,1,3,5,6,8,11,13,14,16,18],debt:7,debug:[5,6],decad:[0,3],decai:[0,13,18],decemb:17,decent:10,decid:[0,2,3,5,6,9],decim:0,decis:[0,1,8,11,15,17,20],decision_funct:8,decision_tre:9,decisiontreeclassifi:[9,10],decisiontreeregressor:[0,9,10],declar:[0,4,16],decompos:[5,6,16],decomposit:[0,6,12,17],decompost:5,deconvolut:3,decorrel:[10,13],decreas:[1,2,4,5,6,10,11,13],deduc:0,deep:[3,7,12,13,15,17,20],deep_neural_network:2,deep_param:2,deep_tree_clf1:9,deep_tree_clf2:9,deep_tree_clf:[9,10],deepen:[5,15],deeper:[0,3,4],deeplearningbook:20,deer:3,def:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,18],def_covari:18,def_funct:[3,4],default_tim:4,defect:5,defici:5,defin:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],definit:[1,2,5,6,8,10,11,12,13,16],defint:18,defun:[3,4],defvjp:2,degre:[3,5,6,8,9,10,11,18],del:1,delet:[6,18],delimit:4,deliv:17,delta:[0,2,3,6,8,12,13,14,18],delta_0:3,delta_1:3,delta_2:3,delta_3:3,delta_4:3,delta_5:3,delta_:[1,16],delta_h:[0,1],delta_j:[3,12],delta_k:12,delta_l:[1,3],delta_n:[0,3],delug:15,delv:0,demand:13,demonstr:[0,3,5,6,7,11,12,15],den:4,denomin:[1,5],denot:[1,2,6,7,13,18],dens:[1,3,4],dense_1:4,densiti:[0,2,6,18],depart:19,depend:[0,1,2,4,5,6,7,8,11,12,13,15,16,18],depict:18,deploy:[0,15],deprec:[2,3,6,13],depth:[0,3,9,10,16],deriv:[0,1,2,6,7,8,10,11,13,15],derivati:13,descend:[5,9,11],descent:[0,1,3,7,8,12,17],descr:[],describ:[0,2,4,5,6,8,10,11,12,13,16],descript:[0,8,9],design:[0,1,3,4,5,6,7,10,11,12,13],designmatrix:0,desir:[0,2,4,5,13,14],despit:[1,12],destroi:16,det:[5,16],detail:[0,6,11,13,14,16],detect:[3,8,12],determin:[0,2,3,4,5,6,8,9,10,11,12,13,16,18],determinist:[7,13,18],dev:[1,18],develop:[0,3,5,8,10,11,12,15,16,17],deviat:[0,1,2,4,5,6],device_nam:[3,4],devis:12,df:[4,8,11,13],di:[0,5],diag:[5,8],diagnost:[1,10],diagon:[0,5,7,13,16,18],diagonaliz:5,diagram:10,diagsvd:6,dice:6,dict:[6,8],dict_kei:[],dictionari:0,did:[0,1,5,6,7,10,11,14],die:1,diff1:2,diff2:2,diff:2,diff_ag:2,diffeent:8,differ:[0,1,2,3,4,5,6,9,10,11,12,13,14,15,16,18,20],differenti:[3,15,16,17],differential_oper:[2,13],difficult:[0,1,6,10,13,18],difficulti:[0,1,13],diffonedim:2,digit:[0,1,3,4,6,17,19],dilemma:13,dilut:1,dim:[4,11,14,16],dimens:[0,1,2,3,4,5,8,11,14,16],dimension:[0,4,5,6,9,11,13,14,15,16],dimensionless:[0,3],diment:16,dimnsion:4,diod:3,direct:[0,1,2,4,11,12,13,14],directli:[1,4,5,6,18],directori:[],disabl:[3,4],disadvantag:0,disappear:[3,6],disc_loss:4,disc_tap:4,discard:[6,11],disciplin:[0,3,12],disclaim:18,discourag:13,discov:0,discover:5,discret:[1,3,5,7,13],discrimin:[4,7,10,11],discriminator_loss:4,discriminator_loss_list:4,discriminator_model:4,discriminator_optim:4,discuss:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],diseas:7,disguis:6,disord:[1,7],displai:[0,1,3,4,5,6,7,8,9,10,11,12,14,18],displaystyl:[0,5],displot:[],disregard:0,dissimilar:[11,14],dist:14,distanc:[0,8,9,11,14,18],distance_list:9,distinct:[3,7,8,9,10,14],distinctli:8,distinguish:[0,4,7,8,18],distplot:0,distribut:[0,1,4,6,7,10,11,13,14,15,16],distrubut:[0,15],div:5,dive:[0,8,16],diverg:[1,13],divid:[0,1,3,5,6,8,9,11,12,18],divis:[6,8,9,13,16,18],dna:7,dnn1:4,dnn2_gru2:4,dnn:[0,1,2,4,12],dnn_kera:1,dnn_model:1,dnn_numpi:1,dnn_scikit:[0,1],doc:[6,15,17,20],document:[4,7,11,13],doe:[0,1,2,3,4,5,6,8,10,11,12,13,16,18],doesn:[3,9,12],dog:[1,3,4],domain:[5,8,13],domin:0,don:[0,1,3,5,6,8,11,13,15,18],done:[0,2,3,4,5,6,9,10,11,13,16,18],dot:[0,2,3,5,6,7,8,9,10,11,12,13,16,18],doubl:[3,4,16,18],doubli:1,down:[0,3,6,9,11,12,13],download:[0,1,3,5,6,16,20],downsampl:3,dozen:1,dq:6,drag:13,dramat:11,drastic:4,draw:[4,6,10,13],drawback:[0,1,3,13],drawn:[1,4,6,7,11,18],drive:[3,4],driven:3,drop:[0,1,5,6,11,13,18],dropna:[0,6],dropout:4,ds:5,dt:[2,3,13,18],dtype:[0,1,2,3,4,14,16],dualiti:6,dub:0,due:[1,2,5,6,8,10,12,13],dummi:0,dure:[0,1,3,4,8,9,11,15],dwell:0,dwh:1,dwo:1,dx:[2,3,8,18],dx_1:18,dx_1p:6,dx_2p:6,dx_mp:6,dx_n:18,dxp:6,dy:[1,8,18],dynam:4,dysth:19,dz:8,e:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18,19],e_:[0,2],each:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19],eager:[3,4],eapprox:0,earli:[1,3,4,13],earlier:[0,5,7,8,9,11,12,13],earthexplor:6,eas:[6,9,14],easi:[0,5,6,7,8,9,10,11,12,13,15,16],easier:[5,6,8,9,13,18],easiest:13,easili:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16],eastern:19,ebind:0,eblock:9,economi:5,ecosystem:15,ect:17,edg:3,edgecolor:6,edu:13,educ:0,eface79dac2c:10,eff:18,effect:[1,4,10,13,18],effic:1,effici:[0,3,10,13,15,16,18],efron:[6,18],egrad:13,eig:[5,11,13,16,18],eigen:18,eigenpair:[5,11],eigenvalu:[0,5,8,11,13,16],eigenvector:[5,11,13],eight:16,eigval:[16,18],eigvalu:[11,13],eigvec:[16,18],eigvector:[11,13],eispack:16,either:[1,5,6,7,8,9,10,11,13,18],ekstrom:[],elabor:18,elarn:3,electr:[0,3,12],electur:20,eleg:11,element:[1,2,3,4,5,6,7,8,11,12,13,15,16,17,20],elementari:[10,13,16],elementwis:[3,13],elementwise_grad:[2,13],elif:[2,3,4,14],elim:16,elimin:[3,5,8],els:[1,2,3,4,7,9,12,13,16,18],elu:1,elus:0,email:[17,19],embed:[0,11],embodi:6,emit:18,emner:[17,20],emphas:[0,10,15],emphasi:[0,15,20],empir:[1,11,18],emploi:[0,1,5,6,11,13,18],employ:0,empti:[6,10],emul:12,en:[15,20],enabl:11,enbodi:6,encod:[0,3,5,9,11,14],encompass:[0,18],encount:[0,1,5,6,7,13,18],end:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],end_box:[2,13],end_nod:[2,13],end_valu:[2,13],endl:18,endpoint:[3,6,18],energi:[0,4,6],enet_coordinate_desc:6,enforc:12,eng:20,engin:[0,1,3,4,15,18],english:20,enorm:3,enough:[0,6,13],ensembl:[1,9,17,18],ensur:[0,1,2,3,5,6,11,13,18],ensure_initi:[3,4],enter:[5,6,18],enthought:[0,15],entir:[1,3,7,9,15,18],entiti:[9,12,16],entri:[0,5,8,11,12,16],entropi:[1,3,7,10,13],enumer:[0,1,2,3,4,6,8],env:[0,1,2,3,4,5,6,7,8,11,13,14,18],environ:[2,15,20],eo:[0,6],eol:0,eosfit:0,epoch:[0,1,3,4,12,13],epsilon:[0,5,6,7,13],epsilon_0:0,epsilon_1:0,epsilon_2:0,epsilon_:0,epsilon_i:0,eq:[3,13,14,16,18],eqnarrai:[3,5,6],equal:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18],equat:[1,3,4,5,6,7,8,9,10,11,13,14,16,17,18],equilibrium:[2,12],equiv:[3,13,16,18],equival:[0,1,5,8,11,13,15,16],erf:18,err:[0,10],err_:6,err_sqr:2,errat:13,errno:[],erron:2,error:[1,2,4,5,6,7,9,11,12,13,15,16,18],error_estimate_corr_tim:18,error_handl:[3,4],error_hidden:1,error_output:1,escap:13,especi:[1,3,9,12,13],essenti:[0,5,6,9,10,12,14,17,18],establish:[0,6,10,11],estim:[0,1,5,6,7,10,11,13,15,18],estimated_mse_fold:6,estimated_mse_kfold:6,estimated_mse_sklearn:6,et:[0,2,4,17,20],eta0:[8,13],eta:[0,1,3,8,12,13],eta_:13,eta_t:13,eta_v:[0,1,3],etc:[0,1,3,5,7,8,9,11,12,13,14,15,16,18],ethic:15,etsim:6,euclidean:[0,14],evalu:[0,2,3,4,5,6,9,13,18],evalut:13,even:[0,1,3,4,5,6,8,9,10,11,12,13,14,15,16,18],evenli:4,event:[3,4,5,7,10,14],eventu:[5,6,11,12,13,19],everi:[0,1,2,3,4,5,6,9,10,11,12,13,14,15,18],everyth:[4,12],everywher:[4,13],evolv:0,exact:[0,2,5,11,12,13,16,18],exactli:[0,3,4,6,12,15],examin:6,exampl:[5,11,12,13,15,16,17,20],exce:[1,12,13],excel:[0,1,4,5,10,20],except:[3,4,5,6,8,9,16,18],excess:0,excit:0,exclud:[1,6,12],exclus:[0,1,3,6,18],execut:[2,3,4,5,13],executing_eagerli:[3,4],exemplifi:13,exercis:[5,15,17],exhaust:6,exhibit:[0,5,6,8],exist:[0,1,2,3,5,6,7,8,9,13,16,20],exit:[5,16,18],exp:[0,1,2,5,6,7,8,10,11,12,13,18],exp_term:1,expand:[5,7,11,13],expans:[0,3,5,8,10,12,13],expect:[0,1,5,6,7,11,12,13,15],expectation_value_of_h_wrt_p:18,expens:[6,10,13,18],experi:[0,1,6,8,13,15],experiment:[0,3,4,6,9,14,18],experimental_get_tracing_count:[3,4],expert:[1,9],explain:[0,6,9,10,11,13,18],explained_variance_ratio_:11,explanatori:0,explicit:[0,3,6,13,16],explicitli:[0,4],explod:1,exploit:[0,3,12,13],explor:[1,4,6,8,13,15],expon:1,exponenti:[0,1,5,6,10,13],export_graphviz:9,export_text:9,exporttext:9,expos:15,express:[0,2,3,5,6,7,10,12,13,16,18],exptmean:18,exptvari:18,extend:[2,5,7,11,13,15],extens:[0,12,15],extent:[0,1,6,20],extern:[3,6,9],extra:[1,3,5],extract:[0,3,5,6,7,8,11,13,16],extrapol:0,extrem:[0,1,4,5,6,7,8,9,13,16],extremum:13,extrins:11,ey:[0,5,6,13,14,16],f11:0,f12:0,f13:0,f1:13,f1_grad:13,f1d:13,f2:13,f2_grad_x1:13,f2_grad_x1_analyt:13,f2_grad_x2:13,f2_grad_x2_analyt:13,f3:13,f3_grad:13,f3_grad_analyt:13,f4:13,f4_grad:13,f4_grad_analyt:13,f5:13,f5_grad:13,f6:13,f6_for:13,f6_for_grad:13,f6_grad_analyt:13,f6_while:13,f6_while_grad:13,f6d7a289d493:[],f7:13,f7_grad:13,f7_grad_analyt:13,f8:13,f8_grad:13,f9:[0,13],f9_altern:13,f9_alternative_grad:13,f9_grad:13,f:[0,1,2,3,4,5,6,7,8,10,12,13,14,16,18,19],f_0:[3,10],f_1:[10,13],f_2:[12,13],f_3:12,f_:10,f_d:18,f_grad:13,f_grad_analyt:13,f_i:[6,12],f_m:[3,10],f_n:3,f_raw:2,f_vec:2,f_wrap:2,face:13,facecolor:[6,8,18],facil:[0,15],facilit:12,fact:[0,1,3,5,9,11,12,13],factor:[0,1,3,5,6,9,10,11,13,16,18],factori:13,fade:6,fafab0:[9,10],fail:[0,6,7,8,11,13,19],failur:7,fairli:[1,2,18],fake:4,fake_loss:4,fake_output:4,fall:[8,9,17],fals:[0,1,2,3,4,5,6,7,9,10,13,14,16],famili:[0,7,8,18],familiar:[0,3,5,6,8,15,16,18],famou:[6,12],far:[0,3,4,5,6,8,11,12,13,14,18],fashion:[0,9,10],fast:[1,3,6,10,12,13,15,18],faster:[1,11,13],fastest:[13,16],favor:7,favorit:18,fc:3,fdf8a5d7c717:2,fdfcc778e1f8:4,fe5b9d300cc0:6,featur:[0,1,3,5,6,7,8,10,11,12,13,15,18],feature_nam:[0,1,7,9],feautur:9,fed:1,feed:[0,2,3,11,15,17],feed_forward:1,feed_forward_out:1,feed_forward_train:1,feedback:4,feeddorward:4,feedforward:[1,4,12],feel:[0,5,6,11,13,15,19],feet:0,fetch:6,fetch_california_h:[],fetch_openml:[],few:[1,3,4,5,9,18],fewer:[0,9,11],ffnn:[1,12],field:[0,3,6,12,15],fifth:[0,6],fig:[0,1,2,3,4,6,7,12,13,14],fig_id:[0,6,7,9],figaxi:18,figsiz:[0,1,2,3,4,6,7,8,9,10],figur:[0,1,2,3,4,5,6,7,8,9,10,12,13,14,15],figure_id:[0,6,7,9],figurefil:[0,6,7,9],file:[0,1,2,4,5,6,7,9,18],file_prefix:4,filenam:18,filenotfounderror:[],fileout:18,filepath_or_buff:0,fill:[5,9],filter:[3,4],filtered_flat_arg:[3,4],filtered_tb:[3,4],financ:0,find:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,15,18],find_top_boxed_arg:2,fine:[0,14],finish:2,finit:[3,5,6,12,13,18],first:[0,1,2,3,5,6,7,8,9,10,11,13,14,16,17,18,20],firsteigvector:11,fit:[1,3,4,5,6,7,8,9,11,12,13,18],fit_beta:6,fit_intercept:[0,5,6],fit_mod:9,fit_transform:[0,6,8,9,11],fiti:0,five:[0,9],fix:[0,3,4,6,10,11,12,13],fixedformatt:6,fixedloc:6,fkkt:5,flag:4,flat:[12,13],flatten:[1,3,4,5,16],flexibl:[1,6,8,10,12],float32:[4,9],float64:[4,16],flop:[5,16],flow:[1,4,12],fluctuat:5,fly:11,flyvbjerg:18,fm:0,fma:[],fmax:3,fmesh:13,fn:[3,4],focu:[0,3,4,5,6,15,20],focus:[1,6,7,16],fold:[6,9],folder:[0,4,6],follow:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],font:[0,7,18],fontdict:18,fontsiz:[1,6,8,9,10,18],fontweight:1,footprint:3,foral:8,forc:[0,5,6,10,11],forcast:4,forecast:[4,12],forelesningsvideo:17,forest:[0,1,9,15,17],forget:11,form:[0,3,4,5,6,7,8,9,11,12,13,15,16,18],formal:[3,4,14,18],format:[0,1,2,3,4,6,7,8,9,10,11,15,18,20],format_data:4,formatstrformatt:[6,13],formul:[4,6,11,14],formula:[3,13,18],forth:[4,12],fortran2003:15,fortran90:18,fortran:[0,15,16],fortun:[0,11],forward:[0,3,6,15,16,17],forward_backward:[3,4],found:[1,2,4,5,6,12,13],foundat:15,four:[4,5,6,8,12,16,17],fourier:0,fourierdef1:3,fourierdef2:3,fourierseriessign:3,fourth:12,fr:5,frac:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,16,18],fractal:[],fraction:9,frame:7,framework:[1,8,10,18],frank:[5,11],frankefunct:[5,6,11],free:[0,6,11,13,15,16,18,19,20],freecodecamp:15,freedom:5,freeli:0,frequenc:[3,6,7,18],frequent:[0,8,9,13],frequentist:15,fresh:10,frida:19,fridai:17,friedman:[6,17,20],friendli:4,frog:3,from:[0,1,2,3,4,6,7,8,9,11,13,14,15,16,17,18,19,20],from_cod:9,from_logit:[3,4],from_tensor_slic:4,fromnumer:2,front:[0,4,5],fstream:18,fulfil:[2,5,12],full:[0,1,3,5,7,9,10,13,18],full_matric:5,fulli:[3,6,12,17,18],fun:[2,13,15],fun_nam:[],func:[0,2],functionali:11,fundament:[0,6,15],funtion:2,further:[2,9],furthermor:[0,3,5,6,7,11,12,13,15],futur:[0,4,8,9],futurewarn:[],fx:5,fy:[17,19],g0:2,g42mrgv128v34gnnhxwk9nrc0000gp:[],g:[0,1,2,3,4,5,6,8,9,10,11,13,18],g_0:2,g_1:[2,10],g_2:[2,10],g_:[2,9,10],g_analyt:2,g_dnn_ag:2,g_euler:2,g_i:2,g_m:[3,10],g_n:3,g_re:2,g_t:2,g_t_d2t:2,g_t_d2x:2,g_t_dt:2,g_t_hessian:2,g_t_hessian_func:2,g_t_jacobian:2,g_t_jacobian_func:2,g_trial:2,g_trial_deep:2,g_vec:2,gain:[1,5,9,10,13],galleri:0,game:4,gamma1:8,gamma2:8,gamma:[0,2,8,9,10,11,13],gamma_0:10,gamma_1:10,gamma_1x:10,gamma_:0,gamma_i:[0,8,18],gamma_j:13,gamma_k:13,gamma_m:10,gamma_x:0,gap:[6,8],gate:[4,12],gather:[0,1,12],gaug:12,gaussbacksub:16,gaussian:[4,5,6,8,14],gaussian_point:14,gaussian_rbf:8,gave:13,gbc:17,gca:[2,6,8,13],gd:1,gd_clf:10,gdclassiffiercgain:10,gdclassiffierconfus:10,gdclassiffierroc:10,gdm:13,gdregress:10,ge:[1,5,7,18],gemv:5,gen:18,gen_loss:4,gen_tap:4,gender:0,genener:4,gener:[0,1,2,3,5,6,8,10,11,12,13,14,16,20],generallay:12,generate_and_save_imag:4,generate_imag:4,generate_latent_point:4,generate_simple_clustering_dataset:14,generated_imag:4,generator_loss:4,generator_loss_list:4,generator_model:4,generator_optim:4,genexpr:[],genom:15,geodes:11,geometr:[0,13],geometri:5,georg:20,geotif:6,geq:[2,5,8,9,13],geron:[0,17,20],get:[0,1,2,3,4,5,6,7,9,10,11,13,15,16,18],get_dummi:9,get_loc:[],get_next_color:[],get_paramet:2,get_split:9,get_yaxi:8,get_yticklabel:6,getsolutionslic:5,getval:[],gg:18,gibb:15,gif:4,gini:10,gini_index:9,git:[0,15],github:[0,3,4,6,14,15,17,20],gitlab:[0,15],give:[0,1,2,3,5,6,7,8,9,10,12,13,14,15,17,18,20],given:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],global:[6,7,13,18],glorot:1,gmail:[],go:[0,1,3,5,6,8,9,11,12,13],goal:[0,7,9],goe:[0,1,2,5,6,13,14,16],golden:13,gone:5,gong:1,good:[1,3,4,5,6,9,10,11,13,15,17,18,20],goodfellow:[4,17,20],googl:[1,3,4,14,15],got:[1,6],gov:6,gp:20,gpu:1,grad:[2,13],grad_analyt:13,grade:17,gradient:[0,3,4,7,8,9,12,15,17],gradient_desc:3,gradientboostingclassifi:10,gradientboostingregressor:10,gradients_of_discrimin:4,gradients_of_gener:4,gradienttap:4,gradual:[1,14],grai:[4,6],graph:[1,9,11,12,13],graph_from_dot_data:9,graph_funct:[3,4],graphic:[0,1,9],grasp:0,gray_r:[1,3],grayscal:3,great:[5,13],greater:[1,7,18],greatli:13,greedi:9,green:[0,3,9,18],grei:4,grid:[1,3,6,7,8,12,18],grossli:13,ground:0,group:[0,6,7,9,14,15,17],groupbi:0,grow:[1,3,9,10],growth:0,gru:4,guarante:[0,3,4,13,18],guess:[1,4,10,13,14],guestrin:10,guid:1,guilherm:19,h1:2,h21:17,h:[0,1,5,6,8,13,18,20],h_1:[2,13],h_2:[2,13],h_:[0,13],h_m:10,ha:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],habit:0,had:[0,1,6,7,13],hadamard:[1,12],half:[1,8,9],halv:10,hand:[0,1,2,3,5,11,12,13,15,16,17,18,20],handi:3,handl:[0,1,2,5,9,11,15],handle_unknown:9,handsid:12,handwrit:12,handwritten:[1,5],happen:[1,2,3,4,5,6,10,13,18],hard:[1,7,8,10,13],hardcopi:15,harder:[0,1],harmon:3,hasn:1,hassl:[0,15],hast:15,hasti:[0,6,17,20],hat:[1,5,6,7,9,10,11,12,13,16,18],have:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],haven:1,he:7,head:[0,4,10,18],header:0,heads_proba:10,health:0,hear:[0,13],heart:[0,7],heatmap:[0,1,3,7],heavili:0,heavisid:1,height:[1,3,6],held:13,help:[0,1,4,12,13],helper:[4,14],henc:[0,5,6,8,9,10,12,13],her:7,here:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],hereaft:[0,8,12],hermitian:16,hessenberg:16,hessian:[0,2,5,13],heterogen:[9,10],hi:7,hidden:[1,3,4,12],hidden_bia:1,hidden_bias_gradi:1,hidden_layer_s:[0,1],hidden_neuron:4,hidden_weight:1,hidden_weights_gradi:1,hierarch:5,high:[0,1,2,3,4,5,6,9,10,11,13,14,15,16],higher:[0,1,3,5,6,8,13],highest:[1,2],highli:[0,3,4,10,15,16,18,20],highwai:0,hing:8,hint:13,hip:15,hire:0,hist:[4,6,7,18],histogram:[0,6,7,18],histor:[7,11],histori:[3,4,12],histplot:[],hit:[],hitherto:5,hjorth:19,hobbi:18,hoc:5,hoff:20,hold:[1,3,6,13,14,18],holder:0,home:0,homework:[6,13],homogen:[1,3,9,10,13],honchar:2,hopefulli:[0,11,18],horizont:11,hors:[3,7],hot:[1,9],hour:[1,15,17,18,19],house_pric:[],how:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,20],howev:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],hs:[],hspace:[0,4,8,10,18],hstack:1,htf:17,html:[7,11,15,17,20],http:[3,4,6,7,11,13,14,15,16,17,20],huang:0,huber:0,huge:[1,3,4,15],human:[0,1,3,6,9,12],humid:9,hundr:1,hungri:1,hybrid:17,hydrogen:0,hyperbol:[1,4,12],hyperparam:8,hyperparamet:[3,4,5,6,9,13],hyperplan:11,i0:0,i1:[0,6,8,12],i2:[0,8,12],i3:[0,12],i5:0,i:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,16,19],i_1:[5,6],i_2:[5,6],i_:13,ian:20,ic:1,id:[7,13],ida:19,idea:[0,1,2,3,4,6,9,10,12,13,16,18],ideal:[0,2,6,8,13,18],idem:6,ident:[5,6,12,13,16],identical:5,identifi:[0,1,7,9,11,12,13,14],idum:18,ieor:18,ifi:20,ifs:15,ignor:[0,1,3,9],ii:[16,18],iii:16,ij:[0,1,3,6,8,12,14,16,18],ik:[0,16],illustr:[5,7,10,12,13,14,15],im:6,imag:[1,3,4,6,9,11,12,14,20],image_at_epoch_:4,image_batch:4,image_height:3,image_path:[0,6,7,9],image_width:3,imageio:6,images_from_seed_imag:4,imagin:1,immedi:[0,3,4,6,15],implement:[0,2,3,4,5,6,8,9,10,11,12,13,14],impli:[3,5,6,7,13,16],implicit:3,implicitli:[11,18],importantli:3,impos:[0,6,11,12],imposs:[0,5],impress:[0,12],improv:[0,4,5,9,10,11,13],impur:9,imread:6,imshow:[1,3,4,6],in3050:20,in4080:20,in4300:20,in5400:[3,20],in_out_neuron:4,inaccur:13,inacio:19,inact:12,inadequ:0,inch:6,includ:[0,1,2,3,4,5,6,7,11,12,15,18,19,20],include_bia:[6,9],incom:12,incorrect:1,incoveni:8,increas:[0,1,3,4,5,6,7,8,9,11,12,13,18],increasingli:18,ind:6,inde:[0,2,4,5,6],indefinit:4,indent:18,indentationerror:18,independ:[0,5,6,7,8,12,13,18],index:[0,1,3,4,10,14,15,16,18,20],index_col:0,index_of:[],indic:[0,1,3,4,5,6,9,10,11,13],indispens:6,individu:[1,6,7,10,12,18],indu:0,indx1:2,indx2:2,indx3:2,indx:16,ineffici:[3,13],inequ:8,inequaltii:13,inertia:13,inf1000:15,inf1100:15,inf1100l:15,inf1110:15,inf3000:20,inf4490:20,inf5860:20,infeas:9,infer:[0,1,4,6,20],infer_nrow:0,inferenc:1,infil:[0,6,7,9],infin:[5,6,7,11],infinit:3,infinitesim:18,influenc:[6,10],influenti:1,inform:[0,1,3,4,6,9,11,12,13,14,16,20],infti:[3,6,13,18],ingeni:13,ingrad:2,ingredi:[0,9],inher:6,inherit:16,initi:[0,1,2,6,10,13,14,16,18],initial_epoch:[3,4],initialis:18,initialize_root:[],inject:14,inlin:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],inner:13,innov:20,inp:4,inplac:13,input:[0,1,3,4,5,6,7,8,9,10,12,13,14,18],input_dim:1,input_shap:[3,4],inputs:1,inputs_shuffl:[0,1],insert:[3,5,6,8,10,18],insid:[0,4,7],insight:[0,1,5,15,20],insist:[6,13],inspir:[0,1,12,20],instabl:2,instal:[0,1,5,6,9],instanc:[0,1,2,4,6,9,11,13],instanti:10,instead:[0,1,2,3,4,5,6,8,9,11,13,14,16,18],institut:1,instruct:[0,1],int32:10,int64:[],int_0:18,int_:[3,6,18],int_a:18,intak:0,integ:[1,2,13,14,16,18],integer_vector:1,integr:[3,6,18],intellig:[0,14,20],intend:10,intens:1,intention:14,interact:[0,6,9,12,15],intercept:[0,6,8,11,13],intercept_:[0,6,8,9,13],interchang:[5,12,16],interconnect:1,interest:[0,1,2,3,4,5,6,7,8,9,12,15,17,18],interfac:[0,1,16],interior:[0,9],intermedi:16,intern:[1,10,12],interpol:[1,3,4,6,12],interpr:5,interpret:[0,1,6,9,10,12,13,16,18],interv:[0,3,5,6,7,13,18],intial:13,intract:[0,4],intrins:[3,11,16,18],intro:[15,20],introduc:[0,1,5,6,8,10,12,13,16,18],introduct:[1,2,4,13,17,20],introductori:[0,4,16,20],intuit:[0,5,6,8,12,13],inv:[0,5,13],invalid:1,invalu:[0,13,15],invari:1,invd:5,inver:8,invers:[0,3,6,13],invers_period:18,inverse_transform:8,invert:[0,5,7,10],invok:[0,8],involv:[0,2,6,7,11,12],io:[0,15,17,18,20],iomanip:18,iostream:18,ip:[0,8,18],ipca:11,ipykernel_42331:[],ipykernel_42376:[],ipykernel_42449:[],ipykernel_42456:[],ipykernel_42530:[],ipykernel_42541:[],ipykernel_42553:[],ipykernel_42573:[],ipykernel_42580:[],ipykernel_42586:[],ipykernel_47411:[],ipykernel_47448:[],ipykernel_47647:[],ipykernel_47724:[],ipykernel_47735:[],ipynb:15,ipython:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,18],iq:6,iri:[8,9],irreduc:6,irrelev:5,irrespect:0,is_integ:[],isbox:[2,13],iscomplexobj:[],isinst:[2,13],isn:5,isnul:0,isomap:11,issu:[1,3,4,9,14,16],it_arrai:13,item:[0,13],items:16,iter:[1,2,3,4,6,7,8,11,13,14,18],itr:5,its:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,20],itself:[5,6,12,18],ix:18,j1:16,j:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18,20],j_:6,j_lasso_sk:6,j_ridge_sk:6,j_sk:6,jackknavg:18,jackknif:[6,15],jackknstd:18,jackknvar:18,jackknvec:18,jacobian:[2,13],jacobian_shap:2,jargon:18,jason:4,jax:[3,4,14],jensen:19,jerom:20,ji:[12,16],jj:[0,5,6],jk:[0,1,6,12,16],jl:0,jm:16,joao:19,joaogca:19,job:[2,8,10],join:[0,4,6,7,9],joint:[4,5],journal:18,judg:13,judgement:6,julia:[15,16],jump:18,junk:4,jupyt:[0,15,20],just:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18],justif:0,justifi:[3,10],jy:[],k0:7,k1:7,k:[0,1,3,5,6,7,8,9,10,11,12,13,14,15,16,18],kaggl:6,kappa_d:18,karim:[],karlsen:[],karush:8,keep:[0,1,4,5,6,11,13,14,16],keepdim:[1,6,10,16],kei:[0,1,3,6,12,20],kept:[4,6,14],kera:[0,4,15],kernel:[0,1,3,15],kernel_regular:[1,3],kernel_s:4,kernelpca:11,kev:0,kevin:20,keyboardinterrupt:[2,3,4],keyerror:[],keyword:[6,13,16],kfold:6,kg:1,ki:16,kick:[1,13],kiener:2,kilomet:6,kind:[0,2,3,4,8,12,13,14],kj:[6,12,16],kjm:15,kkt:[5,8],kktsolver:5,kl:18,km:12,kmean:14,kmeanspoint:14,kn_k:14,know:[0,1,2,5,6,8,13,15,18],knowledg:[0,15],known:[1,3,4,5,6,7,8,9,12,16,18,20],kondev:0,kp:18,kpca:11,kroneck:14,kuhn:8,kwarg:[0,2,3,4,13],kwd:[0,3,4],kwown:0,l0:7,l1:[0,1,3,5,7],l1_l2:[1,3],l1regl:5,l1regls_mosek2:5,l1regls_mosek:5,l2:[1,3],l:[0,1,2,3,5,6,7,8,10,11,12,13,16,18],l_1:7,l_2:[7,13],l_:16,l_j:12,la:13,la_i:12,la_k:12,lab:[15,17],label:[0,1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,18],label_prob:13,labelencod:[7,10],labels:[6,8,9],labels_shuffl:[0,1],laboratori:17,lack:0,lagari:2,lagrang:[8,11],lambda:[0,1,2,3,5,6,7,8,10,12,13,18],lambda_0:11,lambda_1:[5,8,11],lambda_2:[8,11],lambda_:11,lambda_i:[8,11],lambda_iy_i:8,lambda_jy_iy_j:8,lambda_k:8,lambda_n:[5,8],lamda:1,lamdbda:5,land:[0,8],landmark:8,landscap:13,langl:[0,6,11,18],languag:[0,1,4,8,15,16,20],lapack:[5,16],laplac:5,laptop:15,larg:[0,1,2,4,5,6,8,9,10,11,13,15,16,18,20],larger:[0,3,5,6,8,10,11,13,18],largest:[4,8,11],lasso:[0,7,15,17],lasso_sk:6,last:[0,1,2,3,4,5,6,7,8,9,10,12,13,16,17,18],latent:4,latent_dim:4,latent_point:4,latent_space_value_rang:4,later:[0,1,4,6,7,8,12,13,14,15,18],latest:4,latest_checkpoint:4,latter:[0,3,5,6,7,8,11,13,16,17,18],lattic:12,law:0,layer:[0,4,13],lbfg:[7,9,10,11],lcc:[5,6],lda:11,ldot:[0,6,11,18],le:[5,7,10,13,18],lead:[0,1,3,5,6,7,8,9,10,11,12,13,16,18],leaf:9,leaki:1,leakyrelu:4,lear:13,learn:[3,4,5,6,7,8,9,10,12,16,17,20],learnabl:3,learner:10,learning_r:[3,8,10],learning_rate_init:[0,1],learning_schedul:13,least:[0,2,7,8,10,11,15,16,17,18],leat:13,leav:[0,1,3,5,6,9,11],lectur:[0,1,5,10,11,12,13,15,16,17,20],lecturenot:[15,20],lecturenovember11:[],lecturenovember12:[],lecturenovember19:[],lecturenovember25:[],lecturenovember26:[],lecturenovember4:[],lecturenovember5:[],lectureoctober14:17,lectureoctober15:17,lectureoctober1:[],lectureoctober21:[],lectureoctober22:[],lectureoctober28:[],lectureoctober29:[],lectureoctober7:[],lectureoctober8:[],lectureseptember10:[],lectureseptember16firstpart:[],lectureseptember16secondpart:[],lectureseptember17:[],lectureseptember23:[],lectureseptember24:[],lectureseptember2:[],lectureseptember30:[],lectureseptember3:[],lectureseptember9:[],lecturethursdayaugust26:[],lecturethursdayaugust27:[],left:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,16,18],leftarrow:[8,12],legend:[0,2,3,4,5,6,7,8,9,10,13],len:[0,1,2,3,4,5,6,8,9,10,11,12,16,18],len_index:0,length:[0,1,2,3,4,8,9,13,15,18],length_of_sequ:4,leq:[0,5,7,8,13,14,18],less:[0,1,3,4,5,6,8,9,13,18],lessen:1,let:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],letter:[0,16,18],level:[0,1,5,6,9,15,16,17],li:[8,11],lib:[0,1,2,3,4,6,7,8,11,13,14],liblinear:[8,10],librari:[0,1,2,3,4,5,6,9,10,11,16,18,20],licens:[0,1,15],lie:[0,6,11,18],life:[0,1,8,12],lifetim:13,like:[0,1,2,3,4,5,6,7,9,10,11,12,13,15,16,18],likelihood:[0,1,5,9,13],lim_:18,limit:[0,5,6,7,8,11,12,16],lin_clf:8,lin_model:0,lin_reg:9,linalg:[0,2,5,6,8,11,13,16,18],line1:8,line2:8,line2d:13,line3:8,line:[0,1,3,6,8,11,13,18],linear:[1,3,5,6,7,9,10,11,12,15,17,18],linear_model:[0,5,6,7,8,9,10,11,13],linear_regress:6,linearli:5,linearloc:[6,13],linearregress:[0,6,7,9],linearsvc:8,liner:[1,3],linerar:10,linewidth:[0,2,4,6,8,9,10],link:[0,4,9,12,15],linlag:5,linpack:16,linreg:0,linspac:[0,2,3,4,6,8,9,10,13,16,18],linu:4,linuek:[],linux:[0,1,15],liquid:0,list:[0,1,2,3,4,5,9,15],listcomp:2,listedcolormap:[9,10],literatur:[1,7,14,20],littl:[1,3,9,12],live:8,ll:[0,18],lle:0,lloyd:[4,14],lmb:[2,5,6],lmbd:[0,1,3],lmbd_val:[0,1,3],lmbda:13,ln:[1,13],lo:5,load:[0,1,4,6,7,9,10],load_boston:0,load_breast_canc:[1,7,9,10,11],load_data:[3,4],load_digit:[1,3],load_iri:[8,9],loc:[0,3,6,7,8,9,10],local:[0,1,3,7,12,13],locat:[2,3,8],lock:[3,4],log10:[5,6],log:[0,1,2,4,5,6,7,9,10,11,13,16],log_:0,log_clf:10,logarithm:[0,5,7,16],logic:[0,1,9],logist:[0,1,2,8,9,10,11,12,15,17],logistic_predict:13,logisticregress:[7,9,10,11],logit:7,logreg:[7,9,10,11],logspac:[0,1,3,5,6],longer:[2,3,8,10,14,16,18],loocv:6,look:[0,1,2,3,4,5,6,7,8,9,10,11,13,16,18],loop:[1,4,6,10,12,14,15,16,18],lose:1,loss:[0,1,3,4,5,6,7,8,10,11,13,16],loss_fil:4,lossfil:4,lost:4,lot:[0,1,4,6],low:[0,6,9,10,11,18],lower:[0,1,3,6,9,10,16],lowercas:16,lowest:[9,13,18],lr:[1,3,4,10],lstat:0,lstm:4,lstm_2layer:4,lstsq:0,lt:6,lu:[0,5],lubksb:16,luckili:2,ludcmp:16,lux:16,lvert:1,lw:0,m:[0,1,2,3,5,6,8,9,10,11,12,13,16,17,18,19,20],m_1:14,m_:[9,12],m_h:0,m_k:14,m_l:12,m_n:0,m_p:0,m_t:13,ma:11,mac:[3,4,14],machin:[1,3,4,5,6,7,9,10,11,12,14,16,17,20],machinelearn:[6,15,17,20],mackai:20,made:[0,1,3,4,5,6,7,9,11,12],mae:0,magic:4,magnitud:[1,6,7,13],mai:[0,1,2,3,5,6,7,8,9,11,12,13,15,16,18],mail:17,main:[0,1,3,4,5,6,7,9,16,20],mainli:[0,5,6,7,9],maintain:6,major:[1,6,9,10,13,16],make:[1,2,3,4,5,6,7,8,11,12,13,15,16,18,20],make_axes_locat:6,make_moon:[8,9,10],make_pipelin:[0,6,10],make_vjp:[2,13],makedir:[0,6,7,9],makeplot:0,malcondit:16,malign:[1,7,9],mammographi:5,manag:[0,2,3,15],mani:[0,1,3,4,5,6,7,8,9,11,13,14,15,16,18,20],manifold:11,manner:3,manual:6,map:[0,1,2,6,7,8,11,12,14,18],margin:[0,5,8],mari:19,marit:0,marker:[0,7,16],markov:15,marsaglia:18,mask:18,mass:[0,1,5,13],massag:0,masses2016:0,masses2016ol:0,masses2016tre:0,masseval2016:0,master:[6,17],mat1100:15,mat1110:15,mat1120:15,mat3155:[],mat4155:[],mat:15,match:[0,1,4,5,13,14],materi:[4,5,7,13,16],math:[3,7,12,13,16,18,20],mathbb:[0,4,5,6,7,8,11,12,13,14,16,18],mathbf:[0,5,6,7,8,13,16,18],mathcal:[1,5,6,7,13],matheemat:3,mathemat:[0,6,11,12,13,15,16,17,18,20],mathrm:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,18],matmul:[1,2,5],matmul_adjoint_1:2,matmul_vjp_0:2,matmul_vjp_1:2,matnat:[17,19,20],matplotlib:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],matplotlibdeprecationwarn:[6,13],matric:[0,1,3,4,6,7,8,11,13,15],matrix:[0,2,3,4,6,7,8,10,13],matshow:1,matter:[2,3,13],max:[0,1,2,3,4,9,10,12,13],max_depth:[0,9,10],max_diff1:2,max_diff2:2,max_diff:2,max_it:[0,1,7,8,11,13],max_iter:14,max_leaf_nod:10,max_queue_s:[3,4],max_sampl:10,maxdegre:[0,6,10],maxdepth:10,maxim:[1,4,5,7,8,11],maximum:[0,1,2,3,5,7,8,9,10,13,14],maxpolydegre:[5,6],maxpooling2d:3,mbox:[5,6],mc:18,mcculloch:12,mcint:18,mcintsqr2:18,md:11,mdoel:4,mean:[1,2,3,4,5,6,7,9,10,11,12,13,14,15,16],mean_absolute_error:0,mean_divisor:14,mean_i:18,mean_matrix:14,mean_squared_error:[0,4,6,7,10],mean_squared_log_error:0,mean_vector:14,mean_x:18,meaning:[0,4,7],meansquarederror:0,meant:[2,3,7,10,13],meantempvec:18,meanvec:18,measur:[0,1,2,5,6,9,11,12,14,18],mechan:[0,4,18],median:0,medicin:12,medium:[4,8,13],medv:0,meet:[0,19],mehta:0,memori:[3,4,11,12,13,16],mention:[0,12,13,18],mere:0,mersienn:18,meshgrid:[2,5,6,8,9,10,11],messag:[5,13],messi:2,met:[0,3,8],metadata:2,meteorolog:9,meter:6,method:[0,1,2,3,4,5,7,8,11,12,14,15,16,17,20],metion:6,metric:[0,1,3,6,7,9,10,14],metropoli:15,mev:[0,18],mgd:13,mglearn:15,mgrid:13,mhjensen:[1,2,3,4,6,7,8,11,14],mi:10,microsoft:20,mid:1,midel:4,midpoint:9,might:[0,1,2,4,6,9,13],mild:9,miller:18,millimet:6,million:0,mimic:12,min:[0,2,5,8,9],min_:[0,2,5,14],min_samples_leaf:9,mind:[0,6,13],mindboard:4,mine:15,mini:[1,11,12,13],minibatch:[1,11,13],minibathc:13,miniforge3:[0,1,2,3,4,6,7,8,11,13,14],minim:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18],minima:[0,1,7,13],minimum:[0,1,2,6,8,9,11,13],minmaxscal:0,minor:[6,13,18],minst:1,minu:7,mirror:9,misc:6,misclassif:[8,9,10],misclassifi:[8,10],miser:0,mismatch:1,miss:[0,10],mistak:4,mit:20,mix:[1,2],mixtur:13,mk:[9,16],mkdir:[0,6,7,9],ml:[0,1,10,13,16],mlab:18,mle:[5,7],mline:[],mlir:[],mlir_graph_optimization_pass:[],mlp:1,mlpclassifi:1,mlpregressor:0,mm:16,mn:[12,18,20],mnist:[1,11],mod:18,mode:[17,18],model:[2,3,5,7,8,9,10,11,13,14,15,18,20],model_select:[0,1,3,5,6,7,9,10,11],moder:10,modern:[0,6,7,15],modif:[2,12,13],modifi:[0,1,3,5,7,8,10,12,13],modul:[0,2,3,4,5,6,7,8,9,10,11,13,16],modular:18,modulenotfounderror:[5,7,8,9],modulo:18,moe:[5,11],moment:[5,6,13],monitor:13,monoton:[5,12,18],mont:[0,6,15,18,20],montecarlocycl:18,moor:[5,6],more:[0,1,2,4,5,7,8,9,10,11,12,13,14,15,17,18],moreov:[0,3],morten:19,mortenimac:[],mosek:5,most:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18],mostli:[1,11],motion:[0,13],motiv:[1,4],move:[0,4,5,6,7,9,12,13,14,18],mp4:17,mpl:[0,7],mpl_toolkit:[2,6,13],mplot3d:[2,6,13],mplregressor:1,mse:[0,4,5,6,9,10],mse_simpletre:10,mselassopredict:5,mselassotrain:5,mseownridgepredict:6,msepredict:5,mseridgepredict:[5,6],msetrain:5,msg:[],msle:0,mt19937_64:18,mt:[7,12],mu0:18,mu1:18,mu2:18,mu:[0,6,11,13,18],mu_:[6,18],mu_i:6,mu_n:11,mu_x:18,much:[0,1,2,3,4,5,6,8,9,10,11,12,13,16,18],mul:5,multi:[0,1,3,7,15],multiclass:[1,7],multidimension:[11,12],multilay:1,multinomi:7,multipl:[2,4,5,6,7,12,13,18],multipli:[3,5,6,11,13,16,18],multiplum:8,multivari:[0,2,10,11,15,18],multivariate_norm:[11,14],murphi:[11,20],must:[0,1,2,5,6,8,10,12,13,14,18],mutat:7,mutual:[1,3,6,13],mx_:18,myenv:[0,1,2,3,4,6,7,8,11,13,14],myriad:[0,15],mz1:18,mz2:18,n1:16,n2:16,n:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16,18],n_0:[12,18],n_:[1,2,3,8,12,18],n_b:18,n_boostrap:[6,10],n_bootstrap:6,n_categori:[1,3],n_cluster:14,n_compon:11,n_epoch:13,n_estim:10,n_examples_to_gener:4,n_featur:1,n_filter:3,n_hidden:2,n_hidden_neuron:[0,1],n_i:18,n_input:[0,1,3],n_instanc:9,n_iter_i:[7,11],n_job:10,n_k:14,n_l:[12,18],n_layer:1,n_m:9,n_neuron:1,n_neurons_connect:3,n_neurons_layer1:1,n_neurons_layer2:1,n_point:14,n_sampl:[6,8,9,10,14],n_split:6,n_step:4,n_t:2,n_x:2,nabla:[1,13],nabla_:[2,13],nabla_w:13,nag:13,naimi:0,naiv:7,naive_kmean:14,nall:0,name:[0,1,3,4,5,6,7,8,9,10,12,13,14,15,16,19],nameerror:[6,10],namespac:18,narrow:13,nary_f:[2,13],nary_op_arg:[2,13],nary_op_kwarg:[2,13],nary_oper:[2,13],nation:[1,5],nativ:15,natur:[0,1,4,8,9,12,13,18,20],navier:12,nb:18,nb_:16,nboot:18,nd:14,ndarrai:[2,6],ndim:2,ne:[9,10,16,18],nearest:[1,3,6,11],nearli:13,neccesari:6,necess:2,necessari:[0,1,3,4,8,14],necessarili:[0,4,11,18],necesserali:5,neck:7,need:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,16,18],neg:[0,1,3,5,6,7,10,13,16,18],neg_mean_squared_error:6,neglect:18,neglig:18,neighbor:[3,6,11],neither:[4,13],neq:[13,14,18],nervou:12,nest:[2,9,12],nesterov:13,net:[2,4,12],netlib:16,network:[0,9,13,15,17,20],neural:[0,7,13,15,17,20],neural_network:[0,1,2],neuralnetwork:1,neuron:[1,2,3,4,12],neutral:0,neutron:0,never:[1,3,4,6,9,18],new_box:[2,13],new_root:[2,13],new_trac:[2,13],new_tracing_count:[3,4],newaxi:[0,3,6,9],newli:0,newton:[1,7,8,13,18],next:[0,1,2,3,4,5,6,8,9,13,14,18],next_guess:13,next_input:4,ng:1,ngini:[],ni:14,nian:[],nice:[0,1,5,11],nichola:[],nicholaskarlsen1102:[],niter:13,nitric:0,nlambda:[5,6],nlevel:[],nm:18,nm_n:0,nmse:6,nn:[2,5,6,12,16],nn_model:1,nnmin:2,node:[1,2,3,9,10,12],node_constructor:2,nois:[0,4,5,6,8,9,10,13],noise_dimens:4,noisi:[1,6],non:[0,1,3,4,5,6,7,9,10,11,12,13,14,16,18],none:[0,1,2,3,4,5,9,10,13,18],nonlinear:[3,6,8,9,11,12],nonneg:[6,9,13],nonparametr:6,nonsens:18,nonsingular:16,nonumb:[3,7,8,13,16],nor:[1,4,13],norm:[0,1,5,6,8,11,13],normal:[3,4,5,6,7,8,9,10,11,12,13,15,16],normali:16,normalize_kwarg:[],norwai:6,notat:[0,2,5,6,13,14,18],note:[0,1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18,20],notebook:[0,1,3,9,15],noth:[1,2,5,8,12,14,18],notic:[4,5,12,13,16,18],notimplementederror:[],notion:3,notrace_primit:[],novel:[3,6,10],novemb:1,now:[0,2,4,5,6,7,8,10,11,12,13,14,16,18],nowadai:[0,1,3,9,15],nox:0,np:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18],npr:2,nsampl:6,nspin:18,nt:2,nthi:0,ntrained_model:6,nu:18,nuclear:5,nuclei:[0,18],nucleon:0,nucleu:0,num:4,num_coordin:2,num_hidden_neuron:2,num_it:2,num_neuron:2,num_neurons_hidden:2,num_output:[3,4],num_point:2,num_tre:10,num_valu:2,number:[1,3,4,5,6,7,8,9,10,11,12,13,14,16,17,19],numberid:7,numberparamet:3,numer:[0,5,6,9,10,11,12,13,15,16,20],numpi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,18],numpy_vjp:2,numpy_wrapp:2,nunmpi:5,nvalu:[],nx:2,nx_test:6,nx_train:6,nx_train_mean:6,ny:18,ny_pr:6,ny_train:6,ny_train_mean:6,o:[0,6,7,8,9,11,16,20],obei:[6,11,13],object:[0,1,2,4,5,6,8,10,13,16],objsens:5,obliqu:5,observ:[1,3,5,6,7,8,9,10,11,12,13,14],obtain:[0,1,5,6,7,8,9,10,12,13,14,16,18],obviou:[5,6,11,18],obviouli:0,obvious:[0,4,5,6,16],oc:5,occupi:0,occur:[0,6,8,9,16,18],od:0,odd:[0,3,7],odenum:2,odesi:2,oen:0,off:[1,3,4,5,9,13,18],offer:[6,11,15,16,17],offic:19,offici:17,ofil:18,ofstream:18,often:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],ofter:16,ol:0,old:[1,5,10,13],ols_sk:6,ols_svd:6,olsbeta:5,omega:[2,3,6],omega_0:3,omit:[0,5],on_train_batch_begin:[3,4],onc:[1,6,9,11,13,18],one:[0,1,3,4,5,6,7,8,9,10,11,13,14,15,16,18],oneapi:[],onednn:[],onehot:1,onehot_vector:1,onehotencod:9,ones:[0,2,5,6,8,9,10,11,13,16,17],ones_lik:4,onl:3,onli:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],onlin:[11,17],onto:[5,11],op_nam:[3,4],open:[0,1,4,6,7,9,15,17,18],oper:[0,1,3,5,6,10,11,12,13,15,18],operation:18,oplu:18,opmiz:13,opportun:0,oppos:[6,13],opposit:[1,5,8],opt:[1,5],optim:[0,2,3,4,5,6,7,9,10,11,14,17],optimis:[1,3],optimizer_v2:3,option:[0,1,3,5,6,7,8,11,16],optionalxlacontext:[3,4],optmiz:[1,8,13],orang:0,order:[0,1,2,3,5,6,7,8,9,10,11,12,13,16,18],ordinari:[0,2,3,7,11,13,15,17],oreilli:20,org:[3,4,7,11,15,16,20],organ:[6,7,10,16],orient:[1,5,18],origin:[0,3,5,6,8,11,12,13,16,18],orthogn:5,orthogon:[0,5,6,8,11,13,16],orthonorm:5,os:[0,1,4,5,6,7,8,9],oscar:1,oscil:[3,13],oslo:[0,15,17,19],osx:[0,15],other:[0,1,2,3,5,6,7,8,10,13,14,15,17,20],otherwis:[0,1,4,7,13,16],ouput:[5,7,12],our:[1,2,3,6,7,8,9,10,12,14,15,16,17],ourmodel:0,ourselv:[0,5,6,8,11,13],out:[0,1,2,4,5,6,7,8,9,10,11,12,13,15,16,18],out_fil:9,outcom:[0,7,9,10,12,18],outdoor:9,outer:[6,12],outfil:4,outfilenam:18,outgrad:2,outlier:[0,8],outlin:[6,10,11],outlook:9,outperform:10,output:[0,1,3,4,5,6,7,8,9,10,12,13,16],output_bia:1,output_bias_gradi:1,output_shap:4,output_weight:1,output_weights_gradi:1,outputlayer1:12,outputlayer2:12,outsid:4,over1:13,over:[0,1,3,4,5,6,9,10,12,13,16,18],overal:[1,10],overcast:9,overcom:[12,13],overdetermin:0,overfit:[0,1,3,6,9,10,13],overflow:[1,5],overhead:12,overlap:[3,7,8,9],overlin:[0,5,6,9,10,11,14,16],overst:0,overtrain:4,overview:[3,20],own:[4,5,6,8,12,13,15,16],owner:0,ownridgebeta:6,oxid:0,oyvinssc:19,p0:2,p1:2,p:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18],p_:[2,4,8,9],p_hidden:2,p_i:[5,18],p_j:18,p_n:18,p_output:2,p_x:18,pack:0,packag:[0,1,2,3,4,5,6,7,8,11,13,14,15,18],pad:[3,4],page:[0,15],pai:[0,1,9,13],pair:[0,2,3,9,15,18],panda:[0,4,5,6,7,9,11,15],paper:1,paradigm:0,parallel:[10,16],param:[2,4],paramat:2,paramet:[0,1,2,3,4,5,6,7,8,9,10,12,13,18],parameter:[0,6,10],parametr:[0,6],paramt:[3,5],parent:2,parent_argnum:[],park:18,parser:0,part:[0,1,3,5,6,10,16,17,18,20],partial:[0,1,5,6,7,8,10,11,12,13,18],particip:[15,17],particl:[0,4,13,18],particular:[0,1,2,3,5,6,9,10,11,12,13,18,20],particularli:[5,6,8,11,13,18],partit:[1,4,9],partli:6,pass:[2,3,12,14,18],past:[10,18],patch:[6,18],path:[0,4,6,7,9,15],patient:7,patter:4,pattern:[0,3,4,12,17,20],pauli:0,pc:[11,15],pca:[0,7,15,17],pcolor:6,pcolormesh:6,pd:[0,4,5,6,7,9,11],pde:2,pdf:[0,3,4,5,6,9,20],pedagog:0,penal:6,penalti:[6,13],penros:[5,6],pentagon:13,peopl:[0,1,9,13,15],per:[0,1,6,17],percentag:[0,10,11],perceptron:[0,1,7],perfect:[0,1],perfectli:[4,6],perform:[0,2,3,4,5,6,8,10,11,12,13,14,15,16,18],performac:4,perhap:[0,5,13],perimet:1,period:[1,4],permut:11,persist:13,person:[5,6,7,17,19],perspect:20,pertin:12,petal:[8,9],peter:20,petersen:18,phantom:18,phase:[6,12],phenomena:18,phi:8,phi_k:8,philip:[],philosophi:13,phone:19,photo:4,phrase:0,physic:[0,1,4,7,12,13,18,19,20],pi:[2,3,5,6,7,9,12,13,18],pick:[1,9,10,11,13,14,18],pickl:1,pictur:0,pie:15,piec:[11,14],pillow:[0,15],pinv:[5,6,13],pip3:[0,1],pip:[0,1,15],pipelin:[0,6,8,10],pit:4,pitfal:6,pitt:12,pixel:[1,3,4],pixel_height:[1,3],pixel_width:[1,3],place:[0,4,6,8,13,16],plai:[0,3,4,5,6,8,11,15],plain:[8,10,12,13,14],plan:[6,9,19,20],plane:[8,9],plateau:[5,18],platform:15,plausibl:12,pleas:[3,4,6,7,11,13,14],plenti:1,plethora:[3,12],plot:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],plot_confusion_matrix:[7,10],plot_count:6,plot_cumulative_gain:[7,10],plot_data:1,plot_dataset:8,plot_decision_boundari:[9,10],plot_import:10,plot_max:4,plot_min:4,plot_model:4,plot_numb:4,plot_predict:8,plot_regression_predict:9,plot_result:4,plot_roc:[7,10],plot_surfac:[2,6,13],plot_train:9,plot_tre:[9,10],plt:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],plu:[0,3,5,7],pm:[8,18],pmatrix:2,pn:3,png:[0,4,6,7,9],point:[0,1,2,3,5,6,7,8,9,10,11,13,14,16,18,19],point_1:4,point_2:4,poisson:15,poli:[6,8],poly100_kernel_svm_clf:8,poly3:0,poly3_plot:0,poly3dcollect:13,poly_featur:[8,9],poly_features10:9,poly_fit10:9,poly_fit:9,poly_kernel_svm_clf:8,polydegre:[0,5,6,10],polygon:13,polym:12,polynomi:[0,5,6,7,8,9,10,11],polynomial_featur:6,polynomial_svm_clf:8,polynomialfeatur:[0,6,8,9],polytrop:[0,6],pool:3,pool_siz:3,poor:[1,13],poorli:0,pop:2,popul:[0,5],popular:[0,1,3,6,7,8,9,11,12,15,16,18],popularli:0,portabl:10,portion:[11,13],pose:[0,4,5,6,11,18],posit:[0,1,2,3,5,7,8,10,11,13,14,16,18],possibl:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,18,19],posterior:5,postpon:0,postul:5,potenti:[0,3,5,6,12,13],potr:5,potrf:5,pott:12,power:[0,1,5,6,8,9,12,13],pp:[5,6],practic:[0,5,6,7,8,17,18],practition:[0,1,3],preced:[1,11,12,18],preceed:4,preceq:8,precis:[0,2,5,11,13,16,18],pred:[6,13],predicit:0,predict:[0,1,5,6,7,8,9,10,15,20],predict_prob:1,predict_proba:[7,10],predictor:[0,5,6,7,9,10,11],prefer:[0,1,6,8,9,11,15],prepar:[0,6,16],preprocess:[0,4,6,7,8,9,10,11],prerequisit:0,presenc:13,present:[0,5,6,9,12,13,16,17,18],preserv:[3,11,16],press:[13,20],pretrain:[1,4],pretti:[0,4,8,9,15],prev_centroid:14,prevent:[13,18],previou:[0,1,2,3,4,5,6,8,10,11,12,13,16,18],previous:[2,3,9,10,18],price:[0,4,9,13],primal:8,primari:[0,7],prime:18,primit:2,princip:[0,5,7,15,17],principl:[0,6,7,8,14],print:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18],print_funct:[8,9],printout:0,prior:[0,5,6],privat:0,prob:[1,18],probabilist:[0,20],probabl:[0,1,3,4,6,7,10,13,15,17],problem:[0,3,4,5,6,7,8,9,10,11,12,14,15,16,17,18],proce:[0,5,6,8,9,10,11,13,16],procedur:[2,4,5,6,8,10,11,13],proceed:16,process:[0,2,4,6,9,10,12,13,15,16,18,20],prod:20,prod_:[1,5,7],produc:[0,3,4,5,6,9,10,11,12,13,15,16,18],product:[0,1,3,5,6,7,8,12,13,15,16],profess:0,program:[0,1,4,5,6,8,12,14,15,16,17,18],programm:16,progress:[1,4,14],prohibit:6,project1:6,project:[0,1,2,3,5,11,13,15,17,18,19],project_root_dir:[0,6,7,9],promin:12,promis:8,prone:9,pronounc:[13,15],proof:[0,11,12,13],propag:[2,3,13,17],proper:[0,2,6],properli:[1,6,8,10,13],properti:[0,1,3,12,13,16],proport:[0,1,5,9,11,13,18],propos:[1,4,6,10],propto:[5,13],protect:[3,4],proton:0,prove:[3,13],provid:[0,1,3,4,5,6,8,9,10,12,13,15,16,18,20],proxi:[1,13],prune:9,pseudo:16,pseudoinv:5,pseudoinvers:[5,6],pseudorandom:[6,18],psycholog:0,pt:13,ptratio:[],punish:[0,1],pure:[3,9,18],purest:9,puriti:9,purpos:[0,3,10,12,14],put:1,putarow:5,putboundslic:5,putclist:5,putobjsens:5,putqobj:5,py:[0,1,2,3,4,5,6,7,8,11,13,14],pydata:15,pydot:9,pylab:[0,7],pylint:[3,4],pypi:15,pyplot:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],pythagora:5,python2:0,python3:[0,1,2,3,4,6,7,8,11,13,14,15],python:[1,2,3,4,5,6,8,11,12,13,14,17],pytorch:[0,15],pywrap_tf:[3,4],q:[5,6,8,11,18],qp:8,qquad:[2,11,13,16],qr:[5,6,16],quad:[1,13,16],quadrat:[0,5,8,9,13],qualit:[4,9,18],qualiti:[0,9,15],quantifi:1,quantil:10,quantit:[0,6,9],quantiti:[0,2,5,6,7,9,10,11,12,14,16,18],quantum:[4,12],quartil:0,quench:5,queri:9,question:[0,5,6,9,11,12,13],qugan:4,quick:[4,18],quick_execut:[3,4],quickli:[1,3,9,11,13],quit:[1,5,6,9,10,12],quot:[4,18],r2:[0,5,6],r2_score:0,r2score:0,r:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],r_1:9,r_2:9,r_j:9,r_m:9,rad:0,radial:[0,8,12],radioact:18,radiu:[0,1],rag:2,rain:9,rais:[0,2,13],ramp:1,ran1:18,ran2:18,ran3:18,rand:[0,4,5,6,9,10,13,16,18],rand_max:18,randint:[6,9,13],randn:[0,1,2,5,6,9,11,13],random:[0,1,2,3,4,5,6,8,9,13,14,15,16,17],random_devic:18,random_forest_model:10,random_index:13,random_indic:[1,3],random_st:[0,7,8,9,10,11],randomforestclassifi:10,randomli:[1,6,9,13,14,18],randomnumbergener:18,rang:[0,1,2,3,4,5,6,7,9,10,11,12,13,14,16,18],rangl:[0,6,11,18],rangle_x:18,rank:5,rankdir:4,raphson:[1,8,13],rapidli:0,rare:[1,13],rate:[0,1,2,3,4,8,9,10,12,13],rather:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],ratio:[4,7,9,10,11],rational:0,ravel:[5,6,7,8,9,10,11,13,16],raw:[3,18],raw_df:[],rbf:[8,11,12],rbf_kernel_svm_clf:8,rbf_pca:11,rc:[0,18],rcond:0,rcparam:[0,1,3,7,8,9,10,18],rd:18,re:[2,4,13],reach:[1,4,5,6,7,9,10,11,12,13,14,18],read:[0,2,3,4,5,6,7,8,11,12,16,17,18,20],read_csv:[0,6,7,9],read_fwf:0,reader:[0,6,16,18],readi:[0,1,5,6,8,10,11,12,16],readili:1,real:[0,1,2,4,7,10,11,12,13,16],real_loss:4,real_output:4,realist:8,realiti:18,realiz:[1,12],realli:[0,1],rearrang:13,reason:[0,1,3,4,10,13,20],reassign:1,rebuild:[],recal:[5,6,9,10,11,12,16,18],recalcul:18,recast:3,receiv:[1,3,10,12,18],recent:[0,2,3,4,5,6,7,8,9,10,13],recept:[3,12],receptive_field:3,recip:[0,6,7,16],reciproc:5,recogn:[0,4,5,10],recognit:[0,1,3,12,17,20],recommend:[0,2,3,4,5,6,8,13,15,16,17,18,20],reconsid:9,reconstruct:11,record:[10,17],recreat:18,rectangl:[9,13],rectangular:5,rectifi:[1,3,12],recur:[0,15],recurr:[0,1,15,17],recurs:[9,15,16],recycl:18,red:[0,3,4,6,8,9],redefin:[0,10],reduc:[1,3,5,6,9,10,11,13],reduct:[0,10,11,15,18],refer:[0,1,2,3,5,6,7,11,12,13,14,16,20],referenc:2,refin:12,refit:6,reflect:[0,1,4,5,18],refresh:[15,17],reg:[10,11],regard:[1,9,13],regardless:12,region:[3,4,6,9,12],regist:[6,18],reglasso:5,regr_1:[0,9],regr_2:[0,9],regr_3:[0,9],regress:[1,8,11,12,15,16,17],regressor:[0,7,10],regridg:[5,6],regular:[0,3,4,5,6,7,9,13],regularis:6,reilli:[0,20],reinforc:[0,8,15],reiter:1,rel:[0,4,6,7,9,12,13,18],relat:[0,1,3,4,5,11,13,14,16,18],relationship:[0,4,9],relativeerror:0,releas:[1,3,4,6,13,15],relev:[0,1,5,7,11,15,17,18],reli:[0,6,8],reliabl:[7,18],relu:[3,4],remain:[1,2,4,6,12,16,18],remaind:18,reman:2,remark:1,rememb:[0,8,13,16],remind:[0,5,11,13,16,18],remov:[0,4,5,6],render:0,reorder:[5,7],reorgan:0,repeat:[0,1,3,4,5,6,9,10,11,13,14,16,18],repeated:0,repeatedli:[6,10,13,18],repet:3,repetit:[6,17],rephras:13,replac:[0,1,3,4,5,6,10,12,13,14],replica:6,repositori:[0,4],repres:[0,1,2,3,4,5,6,7,8,9,10,12,13,18],represent:[0,1,3,6,18],representd:3,reproduc:[0,5,6,9,12,15,18],repuls:0,request:[0,13],requir:[0,1,3,4,5,6,8,9,11,12,13,16],res1:2,res2:2,res3:2,res_analyt:2,res_analytical1:2,res_analytical2:2,res_analytical3:2,resaml:6,resampl:[0,7,10,15,17,18],rescal:[0,11,12],rescu:5,reseach:6,research:[0,4,15,20],resembl:[6,18],reserv:[1,5,6,18],reset:18,reshap:[0,1,2,3,4,6,8,9,10,16],residenti:0,residu:[0,5,13],resiz:5,respect:[0,1,2,3,5,6,7,8,10,11,12,13,14,18],respond:12,respons:[0,7,9,12],rest:[0,5],restat:[0,12],restor:4,restored_discrimin:4,restored_gener:4,restrict:[0,3,9,12],result:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],result_typ:[],retail:0,retain:[5,6],return_data:14,return_kwarg:[],return_sequ:4,return_x_i:9,reus:[1,3,6],reveal:[0,12],revers:[1,16],review:[15,16,17],revisit:14,reward:[0,4],rewrit:[0,3,5,6,7,8,10,11,12,13,16,18],rewritten:[2,6,8,10,18],rewrot:13,rf:10,rgb:3,rgoj5yh7evk:15,rh:[5,6],rho:[0,10],rho_1:10,rho_2:10,rho_m:10,rich:0,ride:9,rideclass:9,ridedata:9,ridg:[0,7,11,13,15,17],ridge_sk:6,ridgebeta:5,right:[0,1,2,3,5,6,7,8,9,10,12,13,14,16,18],right_sid:2,rightarrow:[0,1,5,6,8,11,12,13,18],rigor:0,ring:6,rise:0,risk:[0,13],rival:4,river:0,rm:[0,18],rmse:0,rmsporp:13,rmsprop:[1,3,4,13],rnd_clf:10,rnn1:4,rnn2:4,rnn:[4,12,17],rnn_2layer:4,rnn_input:4,rnn_output:4,rnn_train:4,rntrick1:18,rntrick2:18,rntrick3:18,rntrick4:18,ro:[0,13],robert:20,robust:0,robustscal:0,roc:10,role:[0,2,5,6,8,15],roll:6,room:[0,19],root:[0,5,9,13,18],rotat:[1,8,9,10],rotation_matrix:9,roughli:[1,3],round:[0,7,9,13],routin:[13,16],row:[0,1,2,5,6,7,9,11,16],rr:5,rrr:5,rthe:5,rug:13,rule:[0,1,5,6,13],run:[0,1,2,3,4,5,6,8,9,11,13,15],runtim:[1,6,14],runtimewarn:[1,6],rust:[0,15,16],rustad:19,rvert:1,rvert_2:1,s:[0,1,2,3,4,5,6,7,9,11,12,13,15,16,17,19],s_1:6,s_:[3,6],s_i:[6,7],s_j:6,s_k:6,saddl:13,safe:18,sai:[0,1,2,3,4,5,6,7,8,9,10,11,12,16,18],said:[6,9,13],sake:[0,5,7,11],sale:0,same:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18],samm:10,sampl:[0,1,2,3,4,5,6,7,8,9,10,13,14,15,16],sample_vari:14,sample_weight:[3,4],sampleexptvari:18,sastri:11,satisfactori:0,satisfi:[1,2,3,6,8,13,16,18],satur:[1,6],save:[0,4,6,7,9],save_fig:[0,6,7,9,10],savefig:[0,4,6,7,9,18],savetxt:4,saw:5,scalabl:10,scalar:[2,5,6,10,13],scale:[0,1,3,5,6,7,8,9,10,11,12,13,15,16,19],scale_mean:4,scale_std:4,scalei:[],scaler:[0,7,8,9,10,11],scalex:[],scan:[5,7],scari:5,scatter:[0,1,6,7,8,9,14],scenario:[6,13],schedul:13,scheme:[1,13],schrage:18,scienc:[0,1,10,12,13,15,17,18,20],scientif:[0,15],scientist:0,scikit:[3,5,6,7,8,9,10,13,15,16,17,20],scikitplot:[7,10],scipi:[0,3,5,6,13,15,16],scl:6,score:[0,1,3,6,7,9,10,11,19],scores_kfold:6,scratch:1,sdg:13,seaborn:[0,1,3,6,7],seamless:[0,15],search:[0,1,3,5,9,13],sec:6,second:[0,2,3,4,5,6,7,8,9,11,12,13,14,15,16,18],secondeigvector:11,secondli:12,section:[4,11,16,17,18],sector:0,see:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,18],seed:[0,1,2,3,4,5,6,8,9,11,13,14,18],seed_imag:4,seek:[1,2,8],seem:[1,3,4],seemingli:0,seen:[0,1,3,5,10,12,18],segment:13,seismic:6,seldomli:0,select:[1,5,6,8,9,10,11,17,20],self:[1,3,4,5,18,20],sell:4,semest:[7,17],semi:[8,13],semilogx:6,send:[5,12,13,19],senior:17,sens:[0,4,6,8],sensibl:3,sensit:[0,5,6,9,13],sent:2,sentenc:[4,12],sep:[],separ:[0,1,2,4,6,8,9,12,14,15,18],sequenc:[2,3,4,7,9,10,12,13,15,16,18],sequenti:[1,3,4,10,12,18],seri:[0,1,2,3,4,5,6,10,11,12,13,16,17],serif:[0,7,18],serv:[0,1,2,3,5,7,13,20],session:[1,17],set:[1,4,5,6,7,8,10,11,13,14,15,16,18],set_major_formatt:6,set_major_loc:6,set_stream:5,set_tick:[1,8],set_ticklabel:1,set_titl:[0,1,2,3,7,12,14],set_xlabel:[0,1,2,3,7,12],set_xlim:[7,12],set_xticklabel:1,set_ylabel:[0,1,2,3,7],set_ylim:[7,12],set_ytick:7,set_yticklabel:[1,6],set_zlim:6,seth:4,setiosflag:18,setminu:6,setosa:[8,9],setosa_or_versicolor:8,setp:6,setprecis:18,setse:5,setup:[1,4,5,6,8,15],setw:18,sever:[0,3,5,6,7,8,9,11,12,13,15,16,17,18],sgd:[1,3],sgd_clf:8,sgdclassifi:8,sgdreg:13,sgdregressor:13,sgn:5,sh:[],shallow:13,shape:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16],share:[1,3],she:7,shift:[1,6,12,18],ship:3,shortcom:13,shorten:4,shorter:18,shortli:16,should:[0,2,3,5,6,8,9,11,12,13,16],should_sync:[3,4],show:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],show_shap:4,shown:[0,4,5,7,8,11,12,13,16,18],showpoint:18,shrink:[3,5,6,8,11],shrinkag:[5,6],shrunk:11,shuffl:[0,1,3,4,6,13],side:[0,2,5,8,12,13,16],sigh:15,sigma0:18,sigma1:18,sigma2:18,sigma:[0,1,5,6,7,10,11,12,13,16,18],sigma_0:5,sigma_1:5,sigma_2:5,sigma_:[5,16,18],sigma_fn:[7,12],sigma_i:[0,5],sigma_j:5,sigma_m:[6,18],sigma_n:[11,18],sigma_t:13,sigma_x:18,sigmoid:[1,2,4,7,8,10,12,13],sigmundson:[6,19],sign:[1,2,7,8,10,18],signal:[1,3,10,12],signatur:[3,4],signifi:4,signific:1,significantli:[1,13,18],sigurd:19,sim:[4,5,6,13,18],similar:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,16],similarli:[0,1,3,5,8,10,18],simpl:[1,2,3,5,6,7,8,10,11,12,14,15,16],simple_rnn:4,simplepredict:10,simpler:[0,1,5,6,13,15],simplernn:4,simplest:[0,1,3,4,9,10,12,14],simpletre:10,simpli:[0,1,2,4,5,6,8,9,10,11,12,15,16,18],simplic:[2,5,6,7,8,9,10,11,12,14],simplicti:5,simplifi:[0,6,9,15],simplist:[3,6,18],simul:[6,18],simultan:6,sin:[0,1,2,3,4,9,12,13,16],sinc:[0,1,2,3,5,6,7,8,9,10,11,13,16,18,20],sine:[3,12],singl:[0,1,2,3,5,6,7,8,9,12,13,16,18],singular:[0,6,13,16,17],sinusoid:3,site:[0,1,2,3,4,6,7,8,11,13,14,17],situat:[0,4,5,7,13],six:[3,18],size:[0,1,2,3,4,5,6,8,9,10,11,13,16,18],sketch:10,ski:9,skill:0,skip:[3,4,11],skiprow:[],skl:[0,6],sklearn:[0,1,3,5,6,7,8,9,10,11,13,14],skplt:[7,10],sl:6,slack:8,slice:[2,16],slide:[0,3,18],slight:[6,13],slightli:[1,2,3,5,6,7,10,18],slope:[8,11,12],slow:[0,2,8,13],slower:[5,16],slowest:16,slowli:12,slp:1,small:[0,1,2,3,5,6,8,9,10,11,12,13,15,16,18],smaller:[0,1,2,5,6,8,9,11,13,18],smallest:[0,4,14],smallest_row_index:14,smooth:[0,3,6,13],sn:[0,1,3,6,7],sne:11,so:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],soar:6,social:0,soft:[1,7,10,12],soften:8,softmax:[3,7],softwar:[0,8,15,16,17],sol:8,sole:[0,6],solid:[0,7],solitem:5,soltyp:5,solut:[0,1,2,3,5,6,8,10,11,13,16,18],solutionsummari:5,soluton:2,solv:[0,1,3,5,6,8,10,11,12,13,16,17],solve_expdec:2,solve_ode_deep_neural_network:2,solve_ode_neural_network:2,solve_pde_deep_neural_network:2,solveod:2,solveode_popul:2,solver:[2,5,7,8,9,10,11,16],some:[0,1,2,3,4,5,6,7,8,9,10,11,12,14,17,18],some_model:6,somehow:4,someth:[0,1,3,4,7,9,11,18],sometim:[0,1,11,12,13,14],soon:16,sophist:0,sopt:13,sort:[5,6,9,11,18],sound:[3,5],sourc:[0,1,3,6,15,16,18],space:[0,1,4,5,8,9,11,12,13,14,18],span:[0,3,5,9,11,16],spare:1,spars:[3,5,6,16],sparse_mtx:16,sparsecategoricalcrossentropi:3,sparsiti:10,spatial:[1,2,3,12],spdiag:5,speak:18,special:[6,7,10,12,13,16,18],specif:[0,1,2,3,4,5,6,7,8,9,11,12,15,16,18],specifi:[0,3,5,6,7,9,11,13,14,18],specifici:[0,10],spectacular:3,spectral:1,speech:[0,1,3,4,12],speed:[1,2,4,13],spend:18,sphere:0,spin:6,spite:0,spline:8,split:[1,3,4,5,6,8,9,10,11,14,18],splite:0,splitter:[1,10],spmatrix:5,spontan:18,spot:3,spread:[0,11,18],springer:20,spuriou:13,sqquar:5,sqrsignal:3,sqrt:[0,3,4,5,6,8,10,11,13,18],squar:[1,2,3,4,7,8,9,11,13,14,15,16,17,18],squarederror:10,squaredeuclidean:14,squash:12,squeez:2,srand:18,srtm:6,srtm_data_norway_1:6,sse4:[],stabil:5,stabl:[0,4,5,6,7,9,11,15],stack:[2,3,4],stacklevel:0,stage:[5,13],stai:[0,2,4,5,11],stand:[0,5,9,12],standard:[0,1,4,5,6,7,8,10,12,16],standard_basi:2,standardscal:[0,6,7,8,9,10,11],stanford:13,start:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,16,17,18],start_box:[2,13],start_nod:[2,13],start_tim:14,startpoint:18,stat:6,state:[1,2,4,5,6,7,8,10,11,12,13,15,18],statement:[0,7,16],statist:[0,1,3,4,7,9,10,11,12,13,14,16,17,20],statu:[0,7,11],stavang:6,std:[0,4,6,18],stdev:18,stdout:5,steep:13,step:[0,1,2,3,4,6,7,9,10,11,12,13,14,16,18],step_fn:[7,12],step_length:13,steps_list:9,steps_per_epoch:[3,4],stereo:3,stian:19,still:[2,3,5,6,11,13,18],stimuli:12,stk2100:20,stk3155:17,stk4021:20,stk4051:20,stk4155:17,stk5000:20,stk:20,stochast:[0,1,5,6,8,11,12,17],stock:4,stoke:12,stone:[0,7],stop:[1,4,7,9,11,13,14,18],storag:5,store:[0,1,2,3,6,11,13,18],storehaug:19,str:[1,3,4],straight:[0,6,8,13],straightforward:[0,2,3,5,6,8,9,10,13,16],strategi:[0,1,9],stratifi:6,streamtyp:5,strength:[0,5,14],stretch:11,strict:[8,13],strictli:[8,13],stride:[4,16],strike:6,string:[1,18],stroke:7,strong:[3,6,9,10,12,16,18],strongli:[0,8,15,16],stronli:0,structur:[0,1,2,3,6,9,10,12,15],stuck:[1,13],student:[0,17,19,20],studi:[0,3,4,5,6,7,8,11,12,13,15,20],studier:[17,20],style:[0,7,9,16],sub:[9,12],subarg:[2,13],subdivid:[0,16],subfield:0,subject:[5,6,8,18],subplot:[0,1,3,4,6,7,8,9,10,13,14],subplots_adjust:[8,18],subprogram:16,subract:0,subroutin:0,subscript:1,subsequ:[1,4,5,6,12,16,18],subset:[1,6,9,12,13,15],subspac:[0,8,11],substanti:[9,10],substep:11,substitut:[3,6,12,16],subsubset:9,subtask:6,subtl:1,subtract:[0,4,5,6,11,13,16,18],subtre:9,subval:[2,13],succeed:[0,4],success:[3,7,9,13,18],successfulli:[4,9],sucess:18,sudo:[0,15],suffer:[0,1,2,5,10],suffici:[1,6,8,11,13],suggest:[1,13,20],suit:[8,12],suitabl:[0,18],sum:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],sum_:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,16,18],sum_i:[2,5,6,8,13],sum_j:6,sum_k:[6,8,12,16],sum_m:3,sum_n:3,sum_nx_:3,summar:[5,6,9],summari:[1,3,4,10,17],summat:3,sunni:9,superfici:3,superscript:[1,12],supervis:[0,5,6,7,9,12,15],supplement:7,support:[0,1,9,10,11,13,15,17],suppos:[0,5,6,7,8,10,11,12,13,16],suppress:[5,13],sure:[1,4,6],surf:6,surfac:[0,6],surpass:6,surpris:0,surround:[3,15],survei:[0,5,6],svc:[8,9,10],svd:[0,6,11,17],svdinv:5,svm:[8,9,10,11],svm_clf:[8,10],swap:2,swapax:2,swath:5,sy:[5,13],symbol:[1,5,11,13,15,18],symmeteri:1,symmetr:[0,5,8,11,12,13,16],symmetri:6,sympi:[0,15],synonim:18,syntax:[1,13],syntaxerror:1,syrk:5,system:[0,1,3,4,5,6,7,9,10,12,13,15,16,20],systemat:[4,6,18],t0:[3,6,13],t1:[2,13],t2:2,t3:2,t:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19],t_0:[2,9,13],t_1:13,t_:2,t_b:10,t_i:[1,2,12],t_j:[5,12],t_k:9,tabl:[9,18,19],tabul:0,tackl:4,tag:[2,3,4,5,6,7,12,13,14,16,18],taht:0,tail:18,tailor:[2,8,11],taiwan:0,take:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,18],taken:[0,1,3,6,10,13,16],tan:3,tangent:[1,4,12,13],tanh:[1,4,7,8,12,13],tape:[3,4],target:[0,1,3,4,5,6,7,8,9,10,11,12,13],target_nam:9,task:[0,1,3,5,6,9,11,12,14],tau:[3,5,18],tax:0,taylor:[2,13],taylornr:13,tc:8,team:1,teaser:0,technic:[0,5,6,13],techniqu:[0,1,8,10,13,15,17,18,20],technolog:[0,1],tek5040:20,tell:[0,4,6,10,11,13,18],temp1:1,temp2:1,temp:1,temperatur:[0,9],temporarili:1,ten:3,tend:[3,5,6,8,9,10,12,13,14],tendenc:0,tension:6,tensor:[3,4],tensorflow:[0,2,4,8,14,15,16,17,20],term1:[5,6,11],term2:[5,6,11],term3:[5,6,11],term4:[5,6,11],term:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18],termin:[0,4,5,9,10,13],terrain1:6,terrain:6,test:[3,4,5,6,7,8,9,10,13,14,16,18],test_acc:3,test_accuraci:[1,3],test_error:6,test_imag:[3,4],test_ind:6,test_input:4,test_label:[3,4],test_loss:3,test_pr:1,test_predict:1,test_rnn:4,test_scor:[7,10],test_siz:[0,1,3,5,6,10],test_split:9,testerror:[0,6],testi:4,testpredict:4,testx:4,text:[0,1,2,4,5,8,9,11,13,16,17,18,20],textual:9,textur:1,tf:[1,3,4,13,14],tfe_py_execut:[3,4],th:[0,1,2,5,6,7,9,12,13,14,16,18],than:[0,1,2,3,4,5,6,7,9,10,11,12,13,15,18],thank:[4,6],theano:[1,15],thei:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18],them:[0,1,3,4,6,8,9,10,11,12,13,16],theme:0,themselv:[0,18],thenc:6,theorem:[2,6,7],theoret:[0,4,10],theori:[0,1,3,8,9,12,13,15,17,20],thereaft:[0,5,6,11,12,16],therebi:[0,5,7,11,18],therefor:[0,1,2,3,4,6,7,8,11,13,18],therein:11,thereof:[0,6,13],theta:[1,4,13,18],theta_:[1,13],theta_i:1,theta_k:18,theta_linreg:13,theta_t:13,thi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],thing:[0,1,2,4,5,7,9,18],think:[0,1,3,4,6,9,12,13,14,18],third:[0,3,6,13],thirti:7,those:[3,5,6,8,9,10,11,16,17],though:[1,2,3,4,13,16,18],thought:[6,14,18],thousand:[0,1],thread:[3,4],three:[0,1,3,5,6,8,9,12,16,17,19],threshold:[1,3,9,10,11,12,13],through:[0,1,2,3,4,5,6,8,11,12,13,14,15,16,18],throughout:[0,4,5,14,15,16,18],thu:[0,1,2,5,6,7,8,10,11,12,13,18,19],thumb:[0,6],thursdai:17,tibshirani:[6,17,20],tick_param:6,ticker:[6,13,18],tif:6,tight_layout:[1,7],tightli:11,tild:[0,5,6,11,18],till:[0,4,7,8,9,10,12,16],time:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18],timefunct:18,timeit:4,timer:4,tini:1,tip:3,titl:[0,1,2,3,4,6,7,8,9,10,13,18],tmp:13,tmp_log:[3,4],tn:[2,3],to_categor:[1,3,4],to_categorical_numpi:1,to_numer:[0,6],to_str:18,todai:3,togeth:[0,3,6,8,11],toi:[13,14],told:13,toler:[2,6,14],tolist:4,tomographi:12,too:[0,2,4,5,6,9,11,13,18,20],took:8,tool:[0,1,3,6,13,15,18],toolbox:8,top:[0,3,5,6,9,10,15],top_node_typ:2,top_trac:2,topic:[0,5,6,7,8,15,17,20],topolog:[1,3,12],toposort:2,torkjellsdatt:19,toss:10,total:[0,1,2,3,4,6,7,8,10,11,12,13,14,16,18,19],total_loss:4,totalclustervari:14,totalscatt:14,totalvari:18,toward:[1,2,7,12,13],town:0,tp:4,tpng:9,tqdm:6,trace:[2,13],trace_stack:[2,13],traceback:[0,2,3,4,5,6,7,8,9,10,13],traceback_util:[3,4],tracer:[2,13],track:[3,13,14,16],tract:0,tractabl:0,trade:[5,9],tradeoff:[0,5,17],tradit:[0,1,4,6],train:[2,3,5,6,8,9,10,11,12,13],train_accuraci:[0,1,3],train_dataset:4,train_end:[0,1],train_error:6,train_funct:[3,4],train_imag:[3,4],train_ind:6,train_label:[3,4],train_pr:1,train_siz:[0,1,3],train_step:4,train_test_split:[0,1,3,5,6,7,9,10,11],train_test_split_numpi:[0,1],trainabl:4,trainable_vari:4,trained_model:6,trainerror:0,traini:4,training_checkpoint:4,training_dataset:4,training_gradi:13,training_gradient_fun:13,training_loss:13,trainingerror:6,trainpredict:4,trainscor:4,trainx:4,trait:0,trajectori:4,tran:5,transfer:9,transform:[0,5,6,7,8,9,10,11,12,13,15,16],transit:[6,12],translat:[1,4,6,10],transpos:[1,5,11,16],travers:[0,5],treat:[0,1,3,6,12,13,18],tree:[0,1,6,15,17],tree_clf:[9,10],tree_clf_:9,tree_clf_sr:9,tree_reg1:9,tree_reg2:9,tree_reg:9,trend:18,trevor:20,tri:[2,3,4,9,13],triain:0,trial:[0,2,4,6,13,18],triangl:13,triangular:16,trick:[3,4,8,11,13,18],trickier:18,tridiagon:16,trillion:15,trivial:[0,1,5,11,18],troubl:[0,8,12],truck:3,true_beta:6,true_divid:1,true_fun:6,tucker:8,tumor:[7,9],tumour:7,tunabl:1,tune:[4,9,13,16],tup:[],tupl:[2,13],turn:[0,1,5,6,7,8,9,10,11,12,13,16,18],tutori:[1,4],tv:2,tveito:2,tweak:[1,4,10,18],twice:13,twist:11,twister:18,two:[0,1,2,4,5,6,7,9,10,11,12,13,16,17,18,20],tx:13,tx_1:13,txt:4,ty:13,type:[0,1,3,6,8,10,13,16,18],typeerror:[2,13],typic:[0,1,2,3,4,5,7,9,10,12,13,18],u:[0,2,5,6,10,11,12,16],u_:16,u_i:12,u_m:10,ua:0,ubuntu:[0,15],uci:0,uio:[17,19,20],un:14,unari:16,unary_f:[2,13],unary_oper:[2,13],unary_to_nari:2,unbalanc:[6,9],unbias:[0,5,6,18],uncent:6,uncertainti:[0,5],uncertitud:18,unchang:[1,3],uncorrel:10,undefin:5,under:[0,1,5,6,10,13,15],underdetermin:0,underfit:[1,6],underflowproblem:5,undergo:5,undergradu:17,underli:[0,1,9,13,18],underset:[4,14],understand:[0,1,3,5,6,10,13,14,15],understood:[8,13],undesir:8,undetermin:[5,8],undo:4,unexpect:[6,18],unexpected:18,unfair:6,unfortun:[1,8,9,10],unicode_liter:[8,9],uniform:[0,1,5,6,11,13],uniform_real_distribut:18,uniformli:[13,18],unifrompdf:18,unimport:13,union:[5,6],uniqu:[0,2,6,13,14,16],unique_cluster_label:14,unit:[0,1,3,4,5,10,12,18],unitari:[5,6,16],unitarili:16,uniti:18,univari:18,univers:[0,1,2,13,15,17,19],unix:1,unknow:[0,16],unknown:[0,1,3,4,5,6,8,10,16],unknowwn:12,unlabel:1,unless:[0,3,6,11,13],unlik:[1,3,8,13,18],unnecessarili:9,unord:3,unravel:1,unrol:[3,11],unseen:[0,7,9],unstabl:1,unsupervis:[0,1,4,12,15,17],unsymmetr:16,until:[1,2,4,9,12,13,14,18],untouch:0,unusu:12,up:[1,3,4,5,6,8,10,11,13,14,15,16,17,18],updat:[1,2,10,12,13,14],upload:[15,20],upon:[1,6,11,16],upper:[0,8,9,16],uppercas:[16,18],upsampl:4,upscal:4,us:[4,5,6,8,9,10,11,12,14,16,17,20],usag:[0,8,15,18],usd10000:0,usd:0,use_bia:4,use_multiprocess:[3,4],usecol:0,useless:1,user:[0,1,2,3,4,6,7,8,11,14,15,16],userwarn:[3,4,6,14],usetex:18,usg:6,usr:18,usual:[0,3,4,7,12,13,14],ut:5,util:[0,1,3,4,6,7,10,14],ux:16,v0:18,v1:18,v2:18,v:[2,4,5,6,11,13,15],v_0:11,va:1,val:13,val_accuraci:3,val_loss:4,vale:2,valid:[0,1,4,7,9,10,13,15,17,18],validation_batch_s:[3,4],validation_data:[3,4],validation_freq:[3,4],validation_split:[3,4],validation_step:[3,4],valu:[0,1,2,3,4,6,7,8,9,10,12,13,14,15,16,17],valuat:9,valueerror:[0,2],valy:4,van:0,vandenbergh:[8,13],vandermond:0,vanilla:[0,6,11,14],vanish:[1,4,13,18],var_x:18,varabl:8,varepsilon:[5,6],varepsilon_:[5,6],varepsilon_i:[5,6],vari:[0,1,3,5,6,10],variabl:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16],varianc:[0,1,5,7,9,10,11,13,14,15,16,17],variance_i:[5,11],variance_x:[5,11],variant:[0,1,6,8,12,13],variat:[3,4,11],varieti:[0,3,12,15],variou:[1,3,5,6,7,8,9,11,12,13,15,16,18],vartempvec:18,varvec:18,varydimens:4,vastli:3,vaue:1,vault:0,vdot:[2,13],vec:[6,18],vector:[0,1,2,3,4,5,6,7,9,10,11,13,14,15,17],vector_mean:14,ventur:[0,8,15],verbos:[1,3,4],veri:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18,20],verifi:[3,11,16],versatil:8,versicolor:[8,9],version:[0,3,4,10,13,14,15,16,18],versu:1,vert:[0,1,5,6,7,8,9,11,13],vert_1:[5,6],vert_2:[5,6,11],via:[0,5,6,7,8,9,10,11,12,15,16,17,18],vidal:11,video:[0,1,12,15,17],view:[1,3,5,6,12,13,17,18,20],violat:8,virginica:9,viridi:[0,1,2,3],virtual:1,viscos:13,viscou:13,visibledeprecationwarn:2,vision:[0,3],visual:[0,3,11,12,15],visualis:1,viz:[6,8,18],vjp:[2,13],vjp_0:[],vjp_0_fun:[],vjp_1:[],vjp_1_fun:[],vjp_argnum:[],vjpfun:2,vjpmaker:[],vjpnode:[2,13],vmax:[1,6],vmc:18,vmin:[1,6],voic:3,volum:[0,3],vote:10,voting_clf:10,votingclassifi:10,votingsimpl:10,vrtx:17,vs:[0,4,6],vspace:[2,13],vstack:[5,11,16,18],vt:5,w1:8,w2:[8,11],w3:8,w:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16,18],w_1:[8,16],w_1x_1:8,w_1x_:8,w_2:[8,16],w_2x_2:8,w_2x_:8,w_3:16,w_4:16,w_:[1,12],w_hidden:2,w_i:[1,2,10],w_ix_i:12,w_j:16,w_m:16,w_output:2,w_px_:8,w_px_p:8,wa:[0,1,3,4,5,6,7,10,11,12,13,14,16],wai:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16,18],walk:9,walker:18,wang:0,want:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,15,18],warn:[1,3,4,8,14],warrant:6,wast:3,watch:[3,4,15],wave:3,wavelet:8,we:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],weak:[9,10,14],weather:[1,12],web:[15,17],webpag:17,websit:[6,16,17],wedg:[8,18],wednesdai:17,wee:11,week:[5,6,7],weekli:[15,20],weight:[0,1,2,3,6,7,9,10,12,13,18],weigth:2,welcom:[8,15],well:[0,1,2,3,4,5,6,7,8,9,10,12,13,15,16,17,18,20],went:8,were:[0,1,3,4,5,6,7,8,10,11,12,14,18],wessel:0,westbi:19,westby:19,what:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],whatev:3,when:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],whenev:[13,18],where:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19],wherea:[6,18],wherein:[1,12],whether:[0,3,5,7,9,18],which:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,19],whichev:[1,3],white:9,who:[0,17],whole:[1,3,4,5,9,11,13],whose:[0,6,10,18],whow:[5,11],why:[0,1,3,6,13],wide:[0,1,3,6,7,12,15,16],widehat:6,width:[0,3,8,9],wieringen:0,win:10,wind:9,wing:19,winther:2,wiothout:6,wiscons:7,wisconsin:10,wisdom:6,wise:[0,1,5,12,13],wish:[0,2,5,7,8,11,13,14,16],with_std:0,wither:6,within:[0,2,3,4,7,9,12,13,14,18,20],withinclust:14,without:[0,1,5,6,8,9,11,12,13],won:0,wonder:8,word:[0,1,3,4,5,6,14,18],work:[0,1,4,6,7,8,9,13,15,17,18],worker:[3,4],workshop:17,world:[0,8],worldwid:0,wors:[0,1,3,4,6],worst:[],worth:9,would:[0,1,3,5,6,7,8,9,10,11,12,13,16,18],wrap:[2,6,16,17],wrap_util:[2,13],wrapper:0,write:[0,1,2,3,5,6,7,8,12,13,16,18],written:[0,2,3,5,11,12,13,15,16,18],wrong:[1,8],wrongli:[10,18],wrote:[5,11],wrt:[2,10,13],wth:10,www:[15,16,17,20],wx_1:8,x0:8,x1:[4,8,9,10,13],x1_exampl:8,x1d:8,x2:[8,9,10,13],x2d:[8,11],x2d_train:11,x2dsl:11,x3:8,x:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],x_0:[0,5,11,16],x_1:[0,2,5,6,7,8,9,10,11,13,16,18],x_2:[0,2,5,6,7,8,9,10,11,13,16,18],x_3:[8,16,18],x_4:16,x_:[0,2,3,5,6,8,10,11,13,14,16,18],x_center:11,x_data:1,x_data_ful:1,x_hidden:2,x_i:[0,1,2,5,6,7,8,9,10,11,12,13,14,16,18],x_input:2,x_ix_:0,x_iy_i:8,x_j:[0,2,8,9,12,18],x_jy_j:8,x_k:[12,14,16,18],x_l:18,x_m:[6,12,16,18],x_n:[0,2,3,6,8,11,12,13,16,18],x_new:[9,10],x_offset:6,x_output:2,x_p:[3,7,9],x_poli:9,x_poly10:9,x_pred:4,x_prev:2,x_reduc:11,x_scale:8,x_test:[0,1,3,5,6,7,9,10,11],x_test_own:6,x_test_scal:[0,6,7,9,10,11],x_tot:4,x_train:[0,1,3,4,5,6,7,9,10,11],x_train_mean:6,x_train_own:6,x_train_scal:[0,6,7,9,10,11],x_val:1,xarrai:15,xavier:1,xbnew:13,xcode:[0,15],xdclassiffierconfus:10,xdclassiffierroc:10,xg_clf:10,xgb:10,xgbclassifi:10,xgboost:9,xgboot:10,xgbregressor:10,xgparam:10,xgtree:10,xi:[8,13],xi_1:8,xi_:8,xi_i:8,xk:8,xlabel:[0,1,2,3,4,5,6,7,8,9,10,13,18],xlim:[6,10],xm:9,xmesh:13,xnew:[0,13],xp:18,xpanda:0,xpd:[5,11],xplot:0,xs:9,xscale:0,xsr:9,xt_x:13,xtest:6,xtick:[3,6,8,9],xtrain:6,xu:0,xx:[0,5,16],xy:[0,6,8,16],xytext:8,xz:16,y1:4,y2:4,y3:4,y:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,16,18],y_0:[0,5,11,16],y_1:[0,5,8,9,11,13,16],y_1y_1:8,y_1y_1k:8,y_1y_2:8,y_1y_2k:8,y_1y_n:8,y_1y_nk:8,y_2:[0,5,8,9,11,16],y_2y_1:8,y_2y_1k:8,y_2y_2:8,y_2y_2k:8,y_3:[0,9,16],y_4:16,y_:[0,1,5,6,10,11,16],y_data:[0,1,5,6],y_data_ful:1,y_decis:8,y_fit:0,y_i:[0,1,5,6,7,8,9,10,11,12,13,16],y_if_:10,y_ix_:0,y_ix_i:[7,8,13],y_iy_jk:8,y_j:[6,8,12],y_k:12,y_m:16,y_model:[0,4,5,6],y_n:[8,13],y_ny_1:8,y_ny_1k:8,y_ny_2:8,y_ny_2k:8,y_ny_n:8,y_ny_nk:8,y_offset:6,y_plot:9,y_pred1:9,y_pred2:9,y_pred:[0,1,4,6,7,8,9,10],y_pred_rf:10,y_pred_tre:10,y_proba:[7,10],y_scaler:6,y_test:[0,1,3,4,5,6,7,9,10,11],y_test_onehot:1,y_test_predict:0,y_tot:4,y_train:[0,1,3,4,5,6,7,9,10,11],y_train_mean:6,y_train_onehot:1,y_train_predict:0,y_train_scal:6,y_val:1,ye:[3,6,7],year:[0,15],yet:[0,1,6,8,11,13],yi:13,yield:[0,2,5,6,8,10,12,13,14,16,18],yk:8,ylabel:[0,1,2,3,4,5,6,7,8,9,10,13,18],ylim:[3,6],ym:9,ymesh:13,yn:0,yo:[8,9,10],yoshua:[1,20],you:[0,1,2,3,4,5,6,8,9,10,11,13,15,16,18,20],young:0,your:[1,2,4,5,6,8,11,13,15,16,18],yourself:[11,13],youtub:15,ypred:6,ypredict2:13,ypredict:[0,13],ypredictlasso:5,ypredictol:5,ypredictown:6,ypredictownridg:6,ypredictridg:[5,6],ypredictskl:6,ys:9,ytest:6,ytick:[3,6,8,9],ytild:[0,6],ytildelasso:5,ytildenp:0,ytildeol:5,ytildeownridg:6,ytilderidg:[5,6],ytrain:6,yx:16,yy:16,yz:16,z:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18],z_0:16,z_1:16,z_2:16,z_:[1,2,12,16],z_c:1,z_h:1,z_hidden:2,z_i:[1,12],z_j:[1,12],z_k:12,z_m:1,z_mod:9,z_o:1,z_output:2,zaman:18,zaxi:6,zero:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],zeros_lik:4,zfill:4,zip:[2,4,6,13],zl:5,zm_h:0,zn:0,zone:0,zx:16,zy:16,zz:16},titles:["3. Linear Regression","14. Building a Feed Forward Neural Network","15. Solving Differential Equations with Deep Learning","16. Convolutional Neural Networks","17. Recurrent neural networks: Overarching view","4. Ridge and Lasso Regression","5. Resampling Methods","6. Logistic Regression","8. Support Vector Machines, overarching aims","9. Decision trees, overarching aims","10. Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods","11. Basic ideas of the Principal Component Analysis (PCA)","13. Neural networks","7. Optimization, the central part of any Machine Learning algortithm","12. Clustering and Unsupervised Learning","Applied Data Analysis and Machine Learning","2. Linear Algebra, Handling of Arrays and more Python Features","Teaching schedule with links to material","1. Elements of Probability Theory and Statistical Data Analysis","Teachers and Grading","Textbooks"],titleterms:{"1":[],"10":17,"11":17,"12":17,"13":[],"14":17,"15":[],"16":17,"17":17,"18":17,"19":17,"2":[0,17],"20":[],"2021":[],"2022":19,"21":17,"22":17,"23":17,"24":17,"25":17,"26":17,"27":[],"28":17,"29":17,"3":17,"30":17,"31":17,"34":17,"35":17,"36":17,"37":17,"38":17,"39":17,"4":17,"40":17,"41":17,"4155":[],"42":17,"43":17,"44":17,"45":17,"46":17,"47":17,"5":17,"6":[],"7":17,"8":[],"9":17,"case":[8,10,18],"do":1,"final":12,"function":[0,1,6,7,8,10,11,12,13,18],"import":[5,16,18],"new":4,A:[0,1,4,8,9],And:13,Ising:6,The:[0,1,2,3,5,6,7,8,9,11,12,15,18],With:4,activ:[1,12],actual:18,ad:6,adaboost:10,adam:13,adapt:10,adjust:1,adversari:4,again:[3,9],aim:[8,9],algebra:16,algorithm:[9,10,11,12],algortithm:13,all:8,an:[0,4,10],analys:5,analysi:[0,5,6,11,15,18],ani:13,anoth:9,appli:15,approach:[0,8,14],approxim:12,architectur:1,arrai:16,assist:19,august:17,autocorrel:18,autograd:[2,13],automat:13,back:[1,11,12],background:15,bag:10,base:13,basic:[0,5,7,9,10,11,16],batch:1,bay:5,befor:11,better:[8,18],bia:6,binari:1,binomi:18,bird:10,block:18,boost:10,bootstrap:[6,10,18],boston:0,breast:1,bring:12,build:[1,3,9],calcul:18,cancer:[1,7,9,11],cart:9,central:[13,15,18],chain:12,chang:10,chi:0,choos:1,cifar01:3,classic:11,classif:[1,9,10],classifi:8,clip:1,cluster:14,cnn:3,code:[0,1,2,5,9,11,12,14,18],collect:[1,3],compar:[2,10],complex:[0,6],complic:6,compon:11,comput:[9,18],con:9,concept:18,conjug:13,continu:18,convex:[8,13],convolut:[3,12],correl:[11,18],cost:[1,10],cours:[15,20],covari:[5,11,18],cross:6,cumul:18,data:[0,1,3,6,7,9,11,15,18],dataset:[1,3],decai:2,decis:[9,10],decomposit:[5,11,16],deep:[1,2],defin:1,definit:18,degre:0,demonstr:18,dens:0,deriv:[5,12],descent:[2,10,13],detail:3,develop:1,deviat:18,diagon:11,dice:18,differ:8,differenti:[2,13],diffus:2,dimension:[2,3,8],disadvantag:9,discret:18,disguis:18,distribut:[5,18],domain:18,down:1,dropout:1,element:[0,18],elimin:16,ensembl:10,entropi:9,environ:0,equat:[0,2,12],error:[0,10],euler:2,evalu:1,event:18,exampl:[0,1,2,3,4,6,7,8,9,10,18],exercis:[0,6],expect:18,experi:18,explor:0,exponenti:[2,18],extrapol:4,extrem:10,ey:10,fall:19,famili:1,famou:[16,18],featur:[9,16],feed:[1,12],fine:1,first:[4,12],fit:[0,10],forc:3,forest:10,forward:[1,2,12],fourier:3,frank:6,freedom:0,frequentist:0,from:[5,10,12],full:2,further:[3,5],fy:[],gan:4,gaussian:[16,18],gd:13,gener:[4,9,18],geometr:11,gini:9,good:0,grade:19,gradient:[1,2,10,13],growth:2,ha:15,handl:16,hidden:2,hous:0,how:18,hyperparamet:1,hyperplan:8,i:[1,18],id3:9,idea:11,implement:[1,18],implic:5,improv:1,includ:13,increment:11,index:9,inform:19,input:2,instal:15,instructor:19,interpret:[5,11],introduc:11,introduct:[0,6,15,16],invers:[5,16],iter:10,its:18,jackknif:18,jungl:10,kera:[1,3],kernel:[8,11],lagrangian:8,lasso:[5,6],later:5,layer:[1,2,3,12],learn:[0,1,2,11,13,14,15],least:[5,6],level:10,librari:15,likelihood:7,limit:[1,13,18],linear:[0,8,13,16],link:[5,11,17,20],logist:[7,13],lu:16,machin:[0,8,13,15],main:18,make:[0,9,10],mani:[10,12],materi:17,math:5,mathemat:[3,5,8],matric:[5,16],matrix:[1,5,11,12,16,18],matter:0,mean:[0,18],meet:[5,10,18],mercer:8,mersenn:18,method:[6,9,10,13,18],mlp:12,mnist:[3,4],model:[0,1,4,6,12],moment:18,momentum:13,moon:[8,9],more:[3,6,16],multilay:12,multipl:[1,3],multipli:8,name:18,network:[1,2,3,4,7,12],neural:[1,2,3,4,12],non:8,normal:[0,1,18],norwai:[],notat:12,novemb:17,now:[1,9],nuclear:0,nueral:7,number:[0,2,18],numer:[2,18],numpi:16,object:3,observ:18,obtain:11,octob:17,od:2,off:6,ol:[5,6,13],one:[2,12],oper:16,optim:[1,8,13,15],ordinari:[5,6],organ:0,oslo:20,other:[4,9,11,12,16,18],our:[0,4,5,11,13,18],outcom:15,output:[2,18],overarch:[0,4,8,9],overview:10,own:[0,10,11],packag:16,part:[13,15],partial:2,pass:1,pca:11,pdf:18,perceptron:12,perform:[1,9],period:[3,18],perspect:1,point:4,poisson:[2,18],polynomi:3,popul:2,practic:13,pre:[1,3],predict:4,prerequisit:[3,15],princip:11,principl:3,pro:9,probabl:[5,18],problem:[1,2,13],procedur:9,process:[1,3],program:[2,13],project:6,prop:13,propag:[1,12],properti:[5,18],pseudo:18,python:[0,9,15,16,18],quick:8,ran0:18,random:[10,11,18],read:9,real:6,recip:18,recurr:[4,12],reduc:0,reduct:3,reformul:2,regress:[0,5,6,7,9,10,13],regular:1,relev:20,relu:1,remark:3,remind:[6,8],requir:[2,15],resampl:6,rescal:6,resourc:2,revisit:13,ridg:[5,6],rm:13,rng:18,rule:12,s:[8,10,18],sampl:[11,18],schedul:17,schemat:9,scheme:2,scikit:[0,1,11],select:18,semest:19,septemb:17,set:[0,2,3,9,12],sgd:13,should:[1,18],simpl:[0,4,9,13,18],singl:10,singular:[5,11],situat:18,soft:8,softmax:1,solv:2,solver:13,some:[13,16],specifi:2,split:0,squar:[0,5,6,10],standard:[13,18],state:0,statist:[5,6,15,18],steepest:[10,13],stk3155:[],stochast:[13,18],superposit:3,supervis:1,support:8,svd:5,systemat:3,teach:[17,19],teacher:19,techniqu:[6,11],technolog:15,tensorflow:[1,3],test:[0,1],textbook:20,theorem:[5,8,11,12,18],theori:18,three:18,tip:13,togeth:12,top:1,toss:18,toward:11,trade:6,tradeoff:6,train:[0,1,4],transform:3,tree:[9,10],tune:1,two:[3,8,15],type:[2,4,12],uncorrel:18,uniform:18,univers:[12,20],unsupervis:14,up:[0,2,9,12],us:[0,1,2,3,7,13,15,18],valid:6,valu:[5,11,18],variabl:18,varianc:[6,18],variou:0,vector:[8,12,16],view:[0,4,10],visual:[1,9],vs:3,wai:9,wave:2,week:17,weekli:17,what:[0,18],which:[1,18],why:18,wisconsin:7,write:[4,11],xgboost:10,your:[0,10]}}) \ No newline at end of file +Search.setIndex({docnames:["chapter1","chapter10","chapter11","chapter12","chapter13","chapter2","chapter3","chapter4","chapter5","chapter6","chapter7","chapter8","chapter9","chapteroptimization","clustering","intro","linalg","schedule","statistics","teachers","textbooks"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,sphinx:56},filenames:["chapter1.ipynb","chapter10.ipynb","chapter11.ipynb","chapter12.ipynb","chapter13.ipynb","chapter2.ipynb","chapter3.ipynb","chapter4.ipynb","chapter5.ipynb","chapter6.ipynb","chapter7.ipynb","chapter8.ipynb","chapter9.ipynb","chapteroptimization.ipynb","clustering.ipynb","intro.md","linalg.ipynb","schedule.md","statistics.ipynb","teachers.md","textbooks.md"],objects:{},objnames:{},objtypes:{},terms:{"0":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18,19],"00":[0,1,3,5,6,11],"000":[1,3],"0000":[],"00000":[],"000000":[5,11],"00000000e":5,"0000e":3,"0001":[1,3],"000148":[],"00019998":5,"00024087":5,"00028369228101198006":[],"00029012":5,"0003043256065368937":9,"00031535148309580783":6,"0003153514830958081":[],"0003153514830958126":[],"0003153514830958235":6,"00034944":5,"000417932":2,"00042089":5,"000464088":2,"00050694":5,"00058016":6,"000599":[],"00060705":[],"00060708":6,"00061058":5,"00062582":6,"00062595":[],"00066668":6,"00068734":6,"00068941":6,"00069103":[],"00073541":5,"00076495":6,"00076919":6,"00076925":[],"0007698473260556325":6,"0007698473260556334":[],"0007698473260556339":[],"0007698473260556344":6,"00079123":[],"00079130":6,"00079968":5,"00084705":[],"00084711":6,"00085883":6,"00085884":[],"00087697":6,"00088573":5,"00092645":6,"00092646":[],"00096314":5,"001":[1,2,8,13],"00100519":6,"0010479245355337968":[],"0010479245887943952":6,"00105081":6,"00106677":5,"00107405":6,"00111756":6,"0011526":6,"00115999":5,"0011828302640124":18,"00118504":6,"00118527":[],"001263":[],"00128479":5,"001323":6,"00137823":6,"00137835":[],"00139705":5,"00149311":6,"00149956":6,"00152117":6,"00154733":5,"00156379":[],"00156382":6,"00168251":5,"00174276":6,"00175331":6,"00186347":5,"001988":[],"00198806":[],"00200":8,"00202624":5,"00202756":6,"00217499":6,"00224413":5,"00228741":6,"0023548":6,"002381316302584885":[],"002381316302584886":6,"0023813163025848865":6,"00242999":6,"00243186":6,"0024401":5,"00249435":6,"002526":[],"00266858":2,"00270244":5,"00274989":6,"00275135":[],"00289724":6,"00293838":5,"002948":[],"0030828":[],"003083":[],"00310113":2,"00312361":6,"00315593":6,"003215318065760509":[],"0032153180657605125":6,"00323332":6,"0032542":5,"003301":6,"003395515459204093":6,"0033955154592040944":[],"00353823":5,"0036237":6,"0036367":6,"00369758":6,"003704":[],"003717":[],"003759":[],"003774":[],"003788":[],"0038335":6,"00390021":18,"003909404072811217":6,"003909404072811231":[],"00391839":5,"0039987":6,"004":5,"004091940707753948":6,"0040919407077539514":[],"00410387":6,"00410478":6,"004113634617443116":6,"0041136346174431284":[],"004113634617443131":6,"004113634617443135":[],"00411363461744314":6,"004113634617443141":[],"004155986345861364":6,"004155986345861374":[],"00415763":[],"00424909":2,"00424967":6,"00426027":5,"00433417":11,"00440346":6,"00443743":6,"00445655":11,"004579219539673834":6,"004579219539673836":[],"00458878":6,"004610275230656187":6,"004610275230656294":[],"00462287":6,"00471782":5,"00472199":6,"00472512":6,"0049544":6,"004999999999999984":0,"004999999999999994":[],"00512927":5,"00517114":6,"00526348":6,"0053018":6,"00554552":6,"00556826":6,"0056799":5,"00577441":[],"00579953":6,"00588657":6,"00607783":6,"006162":6,"00617499":5,"00630331":6,"00642221":6,"00660427":6,"00672607":6,"00673393":13,"00673407":6,"00676387":6,"0068011":6,"00683748":5,"00683964":6,"007012403613997257":[],"007024126888936694":[],"0070241268889382116":6,"00719176":6,"00727646693":0,"007315":[],"0074331":5,"00751823":[],"00759119":6,"00784393":6,"00803064":6,"0080866254785146":[],"00813803":6,"00817631":6,"00823002":5,"00827728":6,"00831018":6,"00834567":6,"00848904":6,"0086649156":0,"008675369724975977":5,"008675369724976501":[],"00894639":5,"00905423":6,"009163470508352211":[],"009163470508352218":5,"009164545680330616":6,"00917248":6,"00934499":6,"009450756365829578":[],"0096208":6,"00990475":5,"00992331":6,"00996754":6,"00it":6,"01":[0,1,2,5,6,9,11,13,20],"010018312644139205":6,"010018312644139347":[],"0100706":6,"010331721306655144":6,"01033172130665515":[],"010516485576646513":6,"010516485576652856":[],"01066519":6,"01076611":5,"0110":18,"0110407067093945":[],"01104071":[],"011076219011339788":[],"01107621901137465":6,"011225":2,"0113104":6,"01179792":6,"01191824":5,"012073649439965807":[],"012073649472576395":6,"01219292":6,"01223198":6,"01231917":6,"012633802944855959":18,"01290947":6,"01295356":5,"013121573975499602":[],"013121573975499604":[],"01312157406137079":6,"013121574061370796":6,"01318643":6,"01347916":6,"01348565":6,"01367553":6,"01397146":6,"01405935":6,"01416528":6,"014209325470380275":[],"01433809":5,"014436800088896274":6,"014436800088969727":[],"01449782":6,"01458337":6,"0146081":6,"01463049":6,"015072388895177088":[],"0150723888951771":6,"015072388895177109":[],"015072388895177239":6,"01509543":13,"01530715721129232":[],"01531845":6,"01538461538462":[],"01549377":6,"01558197":5,"016285782696017055":6,"016285782696075054":[],"01633913":6,"01640891":6,"01655318":6,"016587414993037307":[],"016587414993045405":6,"01691985":6,"01708781":6,"01708852":6,"01713366":6,"01724499":5,"01735584819559184":[],"017355848195591845":[],"017355848195593354":6,"01756972":[],"01817152":18,"018232":[],"01831036e":6,"01831130e":[],"01831200e":[],"01831207e":6,"01866537":6,"01873344":11,"01873869":5,"01898855":6,"01905883":6,"01908936":6,"019587":[],"01963611":6,"01969145":6,"019754165271682844":6,"01975416527179247":[],"01975848":6,"02":[0,4,6,7,12],"02024962":6,"02054837e":6,"02068067":6,"02073509":5,"02098261":6,"02123176":6,"021250026482402":11,"02159270458799264":[],"021592704587992645":[],"021592704588021164":6,"021592704588021167":6,"02198702e":6,"022022882954618364":[],"02208512":6,"02228115":6,"02229529":6,"02252765":5,"022556":11,"02255619":11,"02299949826036602":[],"0229994982603662":6,"02348765":6,"02365049":6,"0245528":6,"02492265":5,"02493054":[],"02498832":6,"02503753":6,"02511518":6,"02522069":6,"025709":11,"02586427":6,"0260906":6,"02625193":8,"02625928":13,"026408391362671896":[],"026605727637176654":[],"02660572763718461":6,"026605727637184613":6,"02707227":5,"02723445":6,"027609773491022314":[],"027609773491022387":6,"027609773491022407":6,"02786488":11,"027865":11,"02857":4,"02917662":11,"029177":11,"02926396":[],"029613363972682966":[],"029733":[],"02976145":6,"02994311":5,"02f":6,"03":[1,6],"03032441e":6,"03056589":[],"030566":[],"03076923076924":[],"03077640549":4,"03099776":5,"031":5,"03187339273559067":[],"03196357":6,"03251863":5,"03256632e":1,"03267527":6,"03278964":[],"032790":[],"03279636":6,"0330308045180234":[],"0330308045183163":[],"0330308045183219":6,"0330308045190182":6,"033657685071527485":[],"033657685071527624":6,"03382304823545749":11,"03447512":6,"03562355":6,"03568439":6,"0358909447132981":[],"0359565":5,"03630548":6,"03707133":11,"037559":11,"03755944":11,"03761519":[],"03781367141738885":[],"03781367141738886":[],"037813671417388985":6,"03781367141738899":6,"03794112":16,"03814292":6,"03815288":6,"038300":11,"03850557":11,"038506":11,"039039":5,"03981057":16,"0399676689527968":6,"0399676689527975":6,"04":[1,6,11],"04010697":6,"04063602":6,"041":[],"041148729430502":6,"041148729430523":6,"0411487294305246":[],"0411487294305746":[],"04179719":18,"041797190646905":18,"04220758":6,"04284519":[],"043":[],"04315108":5,"0433816":[],"04346721":5,"04355837":6,"04362":[],"04368707":16,"0437499":2,"04389027":6,"043927769551648":[],"04423486":6,"044334":[],"0444119":18,"044613":6,"04483457":[],"04537385":6,"04543942":6,"04566964":6,"0458":9,"04615384615386":[],"04621521":[],"04648335":5,"0466":[],"04683565":5,"04775904":16,"04784395":6,"04818727730430296":[],"048187277304303056":6,"048653428302840175":16,"04892055":6,"04909093":6,"04912436":6,"0495569966278238":6,"0495569966278269":6,"0495569966278315":[],"04it":[],"05":[1,3,4,6,13],"05009826":6,"05087958":[],"05100875":6,"051649":11,"0517473":5,"05227921801205691":[],"05227921801205692":[],"052279218012057004":6,"05255759":18,"05263":[],"05290417684691035":[],"05302":[],"05364854":8,"05383795":6,"05434571":16,"05447415":6,"054585":[],"054785":[],"054963":[],"05505310046362":[],"05505310046363":2,"055137":[],"055320":[],"05533":[],"055676":[],"05614483":5,"05623":[],"05648":[],"05651951":6,"056528":11,"05667":[],"057088709963182":[],"057163681553428394":6,"05716368155351588":[],"0572":[],"05756733":[],"05785343":6,"05789007":6,"057899":11,"05796251":6,"05807125":6,"05883":[],"05884":[],"059013":5,"059294":11,"059378":11,"059601":5,"059783":[],"05999":[],"06":[6,13],"060080":[],"060183":[],"06020587":6,"06021285":[],"060213":[],"060228":11,"060309":5,"06043581":6,"060507":[],"060655":[],"060781":[],"060841":[],"061025":[],"061048":[],"061149":5,"061321":[],"061390":[],"061509":[],"061604":[],"06160438":[],"061701":[],"061745":[],"061898":[],"061917":[],"061923":11,"06200174":5,"06208238634231944":6,"06208238634231953":[],"062136":5,"062142":[],"062292565":4,"062294":[],"062391":[],"062409":11,"062411":11,"062435":[],"062451":[],"062534":[],"062676":11,"062706":11,"062834":[],"062884":[],"063052":5,"063078":[],"063250":[],"063343":[],"063364":5,"063513":[],"063631":5,"063657":[],"063752":11,"063851":5,"063872":[],"063874":5,"06388888888888888":[],"064052":[],"064108":[],"064110":5,"064184":[],"064274":5,"064384":[],"06444":[],"064469":[],"06453579006728315":[],"06453579006728322":6,"064538":11,"064604":11,"064648":[],"064658":5,"064681":[],"064838":5,"06491736":6,"064918":[],"064931":11,"064964":[],"06497046":[],"065020":5,"065106":[],"065249":11,"065314":11,"065348":5,"06547790180152352":6,"06547790180152353":6,"06547790180152357":[],"06547790180152363":[],"065514":[],"065557":[],"065575":[],"065641":11,"065730":11,"065826":5,"065892":[],"065974":5,"06602663":18,"066110":[],"066194":[],"066309":[],"06637":[],"066449":5,"066558":5,"066609":[],"066670":11,"0666807":2,"066729":11,"066753":[],"066789":5,"066837":11,"066954":[],"067079":[],"067213":5,"067236":[],"067240":5,"06724062":5,"067282":11,"067392":11,"067402":11,"067432":11,"067544":[],"067597":5,"067599":5,"067612":5,"067620":5,"067622":5,"067675":[],"067714":[],"067723":5,"067769":5,"067956":11,"068059":11,"068093":11,"068094":[],"068103":[],"068120":[],"068318":5,"068363":5,"068376":5,"06844519414009438":[],"06844519414009442":6,"06844519414009444":6,"068461":11,"068538":11,"06858699":[],"068608":5,"068642":5,"068659":[],"068735":5,"068806":5,"068809":[],"068831":[],"068937":[],"068965":5,"068991":5,"068992":5,"069085":11,"069091":[],"069181":5,"069275":11,"069408":5,"069409":5,"069441":5,"069455":[],"069584":[],"069672":[],"069685":11,"069754":[],"069796":5,"069847":5,"069877":11,"069884":11,"069888":5,"069912":[],"06it":6,"07":6,"070028":[],"070043":[],"070071":[],"070074":5,"070150":5,"07016":[],"070163":11,"07017":[],"070343":11,"070379":[],"07039":[],"070419":11,"070429":11,"070491":5,"070492":11,"070576":[],"070612":[],"07062318":6,"070630":5,"070635":[],"070889":11,"070911":[],"070950":11,"070972":11,"07099747918547346":[],"071022":11,"071086":[],"071112":5,"071136":5,"07115":[],"07129539":18,"0712953943627344":18,"0713":0,"071387":[],"07145103":11,"071467":5,"0714956":16,"071529":5,"07160048164232467":6,"07160048164248561":[],"071614":5,"071632":5,"071698":[],"071705":[],"071767":5,"071921":5,"071935":[],"07201957":[],"072216":11,"072242":[],"072348":[],"072442":11,"072492":[],"072530":[],"072617":[],"072620":[],"072750":[],"07285":3,"0728785":[],"072928":[],"073016":[],"073062":11,"073136":11,"073225":[],"073230":11,"073280":11,"073362":[],"073368":[],"073423":[],"073436":11,"073449":5,"07345504":[],"073531":[],"073575":11,"073583":[5,11],"073598":11,"073629":11,"073695":[],"073699":5,"073719":5,"073761":11,"073810":11,"073816":5,"073827":11,"073907":[],"073949":5,"074034":5,"074067":11,"074111":11,"07413172":[],"074149":11,"07421084":5,"074237":5,"074336":[],"074375":5,"074488":[],"074530":11,"07456491":5,"074573":11,"074666":[],"074693":5,"07490892":6,"074945":[],"075195":5,"075241":5,"075573":[],"075594":5,"075760":5,"075820":[],"075959":5,"076130":11,"076204":[],"076216":11,"076338":5,"0764924":6,"07656896":[],"076589":5,"076604":11,"076628":5,"07678":[],"076780":11,"076804":11,"076895":11,"076905":11,"076938":11,"076955":5,"077003":5,"077013":11,"077015":11,"077022":[],"077083":11,"077211":11,"077349":11,"07735703":16,"077402":5,"077425":5,"077452":11,"077467":[],"07777777777777778":1,"077793":5,"078040":5,"0782":6,"07820":[],"078253":[],"078254":11,"078269":11,"078299":11,"078314":11,"078436":11,"078548":[],"07864":[],"078667":[],"07871":[],"07878641":16,"078911":[],"078992":[],"07903849":16,"079157":5,"079281":5,"079347":[],"079383":5,"079389":5,"079405":5,"079406":[],"07944154":16,"07968918676726029":[],"0796891867672603":6,"079729":[],"079839":[],"079847":[],"079893":[],"07989327":[],"07999999999998":[],"08":[13,18],"080106":[],"080137":[],"080256":[],"080297":5,"080312":[],"080319":5,"080334":[],"080347":[],"080370":[],"080406":[],"080410":[],"08041015":[],"08043851":5,"080517":[],"080582":11,"080593":11,"080647":11,"080706":11,"080738":11,"080801":[],"080847":5,"08085812":[],"080916":[],"080984":11,"081046":11,"081072":11,"081140":[],"081144":11,"081233":5,"081253":5,"08131003":6,"081388":11,"081431":[],"081483":[],"081533":5,"081540":[],"08156108":6,"081773":[],"082174":[],"082183":[],"082295":11,"0823185":18,"082451":[],"082503":11,"08251519":6,"082536":11,"082896":11,"082900":[],"08299273e":6,"083015":5,"083053":[],"08318298e":1,"083220":[],"083227":[],"083276":11,"08328216846752691":11,"08333333333333333":1,"08336233266":4,"083404":[],"083441":[],"083506":[],"083527":[],"083600":[],"083692":[],"08376632":6,"083766322923899":6,"0837663229239016":[],"0837663229239025":[],"0837663229239043":6,"083799":[],"083829":[],"083977":[],"084000":[],"084101":[],"084184":[],"084224":[],"084226":[],"08426840630693411":[],"08426840630693412":6,"08426840630693413":6,"08428156":16,"084282":[],"084364":[],"084400":[],"084408":[],"084414":5,"084444":[],"084484":11,"084536":[],"084549":[],"08455":[],"084570":[],"084604":[],"084629":[],"08464758160254343":5,"084670":[],"084683":[],"084702":5,"08474":[],"084777":[],"084862":[5,11],"084904":5,"084909":5,"084965":[],"085018":5,"085044":[],"085163":11,"085167":[],"085184":[],"085185":[],"085361":[],"085416":[],"08551306":6,"085764":[],"08576932":6,"085879":11,"08593216":6,"086074":11,"086076":5,"08611111111111111":1,"086112":11,"086303":[],"08630331":[],"086567":[],"08673755293381497":[],"086807":5,"086872":5,"086890":11,"08690":[],"086956":11,"087501":[],"08758":[],"08759":[],"087834":[],"08816688":[],"088176":[],"0881981":5,"088212":5,"088526":11,"088611":[],"088631":[],"08871404":5,"088809":[],"088816":[],"088825":[],"088853":[],"08888888888888889":1,"088926":[],"08902":[],"089059":[],"08917679":5,"089177":5,"089212":[],"089329":[],"089425":[],"089501":11,"089614":[],"0896981":6,"08996":[],"09":1,"090028":[],"090229":[],"09085624":16,"090929":[],"091051":11,"091060":[],"09117221":[],"091224":[],"091236":[],"091340":[],"091349":[],"091363":[],"091414":[],"091416":[],"091426":[],"09149881":[],"091630":[],"09166666666666666":1,"091696":11,"0917":9,"09170751":0,"09172408":6,"091891":[],"092066":16,"09216046":[],"0923":[],"09251":[],"09297039":[],"093247":[],"0934597075922044":[],"0938":[],"094082198961999e":6,"0940821989624095e":[],"094082198966615e":6,"0940821989673748e":[],"09444444444444444":1,"094472507965532":11,"095510":[],"095702":[],"095871":[],"09609807":5,"096173":[],"096472":11,"096623":[],"09672929714683368":[],"097360":[],"09744":[],"09744272":6,"09780":[],"09791":[],"09849763":11,"098498":11,"09856879":16,"09861229":16,"098802859381565":16,"099":[],"09903804":8,"0991919894927399":6,"099191989493334":[],"09951287404314545":1,"0n":0,"0s":[3,4],"0x11da42d90":13,"0x11e031e50":13,"0x7fad10f9a280":[],"0x7fad20f69be0":[],"0x7fd098df3280":[],"0x7fd0a9063be0":[],"1":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20],"10":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],"100":[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18,19],"1000":[0,1,2,4,5,8,11,13,14,15,18],"10000":[2,5,6,10,11,18],"100000":8,"10001":10,"1001":18,"1002":18,"1003":18,"10030":[],"10044225464078282":[],"1005":18,"10077114273548984":6,"1009":18,"1011":18,"1013":18,"1013904243":18,"10141413e":6,"1015":18,"102":3,"1022233262115424":[],"10222333":[],"1023":18,"10230":[],"1023111":16,"1024":3,"1026":18,"1027":18,"1028":[],"103":1,"1030":18,"10302062":16,"10340":[],"1037":18,"10378326e":1,"1038":18,"10391807":6,"10398646080125035":[],"10398646080125036":6,"10398646080125037":6,"1040":18,"10405456":11,"10430":[],"104411":[],"10455924":[],"1047":18,"10505137":16,"10520":[],"10555555555555556":1,"1056":[],"10589577":5,"106":[],"106095":11,"10620135":16,"108":6,"109":[],"10913":6,"10931453":6,"10960":[],"10th":9,"10x":0,"11":[0,2,3,4,5,6,7,8,9,10,11,12,13,16,18,20],"110":[],"1100":18,"1101":18,"11022302e":5,"11046771":16,"111":[1,7,12],"11100":[],"1122558214":[],"112383":11,"1124":[],"1125":3,"11297834":[],"1136":3,"11362930e":[],"11388888888888889":1,"1139":3,"11390":[],"114":3,"11402309":16,"114437":[],"11462415":5,"11482289e":6,"11499517":[],"11507992e":1,"11547777218875695":6,"11547777218875696":6,"11547777218940905":[],"11547777218940906":[],"115822":6,"11590":[],"11604844":18,"116048442683864":18,"11660":[],"11666666666666667":1,"117":8,"11744554e":6,"11780":[],"11790868":[],"117986":[],"118":2,"1182":[],"1183":[],"118318":[],"1184":4,"11840":[],"1185":[],"1186":[],"11890":[],"119":2,"1199":[],"119936":2,"119999999999976":[],"11it":6,"12":[0,1,2,3,4,5,6,8,9,11,12,13,16,18,20],"120":[2,3],"1203":[],"1203284":8,"1206":8,"12069773":16,"121":[2,8,9,10],"12182967":6,"12196674":[],"122":[2,8,9,10],"12222222222222222":1,"122439":[],"1224392":[],"12288563":5,"122886":5,"123":[],"12318726e":6,"12333649":6,"12345260617257443":9,"123459876":[],"123711":6,"12380":[],"124":0,"12400":[],"125":[],"1250":[],"125000":[],"12552073e":6,"126":[],"1261":[],"12618549":5,"1265":[],"127":4,"1270":[],"127043":[],"1271":6,"1277":6,"127773":[],"12777777777777777":1,"12788968":18,"12790":[],"128":[3,4,13],"128664":6,"12898627064868978":18,"12937662":18,"12945452":[],"1297":[],"1298":9,"12adb44b1c20":7,"12m":3,"13":[0,2,4,5,6,9,11,12,13,16,18],"130":[],"13003291":6,"13055555555555556":1,"131":[],"1314":[],"132":[],"13220608e":6,"13229545716505003":16,"132360":[],"1323603":[],"1326":[],"13280":[],"133":7,"13333333333333333":[],"135":[],"13519106":[],"13535942":6,"136":[],"1360":[],"1361":[],"1362":[],"1363":[],"1364":[],"13646574":5,"13661243e":6,"13679863":6,"1371":6,"13740":[],"137400784702911":[],"137652":11,"1378":[],"1382":[3,4],"1383":[3,4],"1384":[3,4],"1385":[3,4],"1386":[3,4],"13865173":5,"13876586436927824":5,"138775":11,"1388888888888889":1,"13890":[],"1392559581788775e":[],"1392559584983597e":[],"1392559585048734e":6,"13925595925919e":6,"14":[0,2,4,5,6,8,9,10,11,12,13,16,18,20],"140":[],"14021063":6,"1404":[],"14042769":[],"140428":[],"141":2,"14100":[],"1416398":6,"14174745":6,"1418":[],"142":2,"14250":[],"142857":[],"143":[2,7],"1435666":[],"14360598":[],"1437":1,"144":2,"14400":[],"1440501043841336":1,"14440":[],"1446729567":4,"14484695":16,"145":2,"146":[],"147":[],"14710":[],"14722222222222223":1,"147400":11,"14741468":[],"147420":11,"14783702":[],"1479":[],"148":[3,4],"14812206":6,"14818":[],"1484256":[],"148564":6,"14859":6,"148768":[],"149":[3,4],"149213":6,"14932651":[],"14988578":[],"149886":[],"14g":6,"14it":6,"15":[0,2,4,6,7,8,9,12,13,16,18],"150":[3,4,8],"15005476":5,"15098090e":6,"151":[3,4],"15130074e":6,"151986":[],"152":[3,4],"15200":[],"15258907":[],"1527777777777778":1,"153036":[],"153106":[],"1533795":[],"153760":[],"15384615384616":[],"154":[],"15454301":[],"154720":[],"15483121":[],"154911":[],"155":[],"155491":[],"155687":[],"155883":[],"156":[],"1562":[],"15629539":[],"15680777":16,"157":[],"15717291":16,"1575":[],"158":[],"1583767":16,"1586300629904382":[],"1587":[],"15891336":16,"159":[],"1590":[],"15990":[],"15g":6,"15it":[],"16":[1,2,3,4,5,6,8,9,10,13,18],"160":[],"1603":3,"1604":[],"1605":[],"160539":[],"1606":[],"1607":[],"16111111111111112":1,"1612":[],"16211139":5,"16220":[],"16231451":4,"1625":[],"1628":[],"163":[],"1630775253":[],"16342407":5,"16343471":6,"16384":3,"16500":[],"166":[],"16660817":[],"166667":[],"167":[],"16740002":16,"168":[],"16805821e":6,"16807":[],"16827044":[],"16832385":[],"16b8e3cda33a":1,"17":[1,2,4,5,6,8,13,18],"17084902":[],"1709":[],"17174962e":1,"17222222222222222":1,"1726":[],"17300":[],"1731":[],"17339342":[],"17446471":6,"1752":[],"175300":[],"17641709":6,"176880142835407":[],"17777777777777778":1,"17801022":5,"17861098":6,"17917768":5,"17930649":16,"17949575":5,"17953942":11,"1797":[1,3],"18":[2,4,6,7,8,9,10,13,18],"180":[],"18029127":5,"1807":4,"1809":[],"181":[],"1810":4,"1812":[],"18156717":16,"1821":[],"18276924":[],"18327677":[],"18333333333333332":1,"18393678":[],"184":[],"184519":[],"184895":[],"185":[],"1851":[3,4],"1852":[3,4],"18526":[],"185278747229417":[],"1853":[3,4],"1854":[3,4],"1855":[3,4],"186":[],"1860":[],"1861":[],"18611111111111112":1,"18613217e":6,"18660":[],"18673098":11,"18682538":[],"1887":6,"18912963":16,"189496":[],"189622":[],"18it":[],"19":[2,4,6,13,18],"19003":6,"191262820314401":[],"19166666666666668":1,"19207979":5,"19213479":[],"19220":[],"193":[],"19354258":[],"19379506":18,"19394283":[],"194":[],"1940":0,"19404282648955e":6,"194042826653172e":[],"194042826815498e":[],"1940428268204826e":6,"1943":12,"1944":[],"19444444444444445":[],"19466812":18,"1950915150":[],"1954":[],"1956":[],"19569961":6,"1961":[],"1962":[],"1963":[],"1964":[],"1965":[],"1970":16,"1973":9,"197370":11,"19740":[],"1979":6,"19800":[],"1989":[],"199":[],"19937":[],"19994371":6,"1_1":12,"1_2":12,"1_3":12,"1cm":[0,8,10,18],"1d":[1,2,3],"1e":[1,2,3,4,14],"1e10":14,"1e4":6,"1f":1,"1k":16,"1n":0,"1s":3,"1x":0,"2":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],"20":[0,1,2,4,6,7,8,13,18],"200":[0,2,3,4,8,9,10],"2000":0,"200000":[],"20015436":6,"2004":13,"2006":20,"2010":1,"2011":1,"2014":4,"2015":1,"2016":0,"20174121":16,"2018":[0,6],"2018906331":[],"2019":[],"2021":[6,14],"2022":17,"2027":[],"20277777777777778":1,"203":6,"20320502":[],"20375361":18,"203753611274545":18,"20500":[],"20509391":18,"206":[],"2060":[],"20661216":[],"2069":[],"207545":11,"20756638":[],"20833333333333334":1,"20867052175006306":6,"20867052175109335":[],"20980":[],"21":[0,1,2,4,5,6,7,9,12,13,16],"210340":11,"21058097":5,"21130":[],"2116753732":4,"21169159e":6,"21265216":[],"213":6,"213103":11,"213743":11,"21472683":16,"2147483647":[],"21519063":16,"21596432":6,"216290":11,"216683":11,"21786964":16,"2188":[],"21919813":[],"21944444444444444":[],"2195":3,"21985165":13,"21997099":16,"22":[0,1,2,4,5,6,12,13,16],"22044605e":5,"22094791":[],"221":8,"221180":[],"2216":[],"2218":[],"221805":2,"222400":[],"2225":3,"225":4,"2259440937":[],"226124657522696":[],"22612466":[],"22690428":5,"2284246870217459":6,"22842468702288576":[],"22842468702288582":[],"22847924":5,"2299":3,"22it":6,"23":[1,2,4,6,7,12,13,16],"23002365e":6,"231":[],"23103285":[],"2315033":[],"23167717":5,"2321528":5,"232153":5,"232435":[],"23297056":[],"23333333333333334":1,"233528":5,"234":6,"23522201":[],"2357089093":[],"2360682191515046":[],"2361111111111111":[],"2364":[],"237038":5,"23703839":5,"2379":6,"2397":[],"24":[0,1,2,4,6,13,16],"24140":[],"2416":[],"24175744e":6,"2419":[],"24276315":16,"2430":[],"24390":[],"24444444444444444":1,"244858":[],"24485843":[],"24512498":16,"246":2,"2470":[],"24770094":6,"24829908":5,"24906604e":6,"24924624":18,"2495":[],"25":[2,3,4,5,6,7,8,9,11,13],"250":[2,4,7,9],"2500":[],"25000":0,"250000":[],"250154":[],"2517560119":[],"251879":[],"252436":[],"25259666":16,"2526":3,"252866":[],"25286618":[],"253775":[],"255":3,"255001":[],"256":[2,4],"25617654e":6,"25617657e":[],"25617658e":6,"256962":[],"257":[],"2572":[],"2572495066":[],"2572e3a4b38d":1,"2575":[],"25792767":16,"25845e8df859":6,"259153":11,"2597":[],"25976336":[],"26":[2,4,6,13],"26079358":18,"26153846153846":[],"26186844":16,"2619":[],"26290036":[],"26294938":[],"2629493813057833":[],"26301436":5,"26306244":[],"264":4,"26409315307910025":6,"2640931530791003":[],"2640931530791005":[],"26409315307910053":6,"265":[],"2650":[],"265109911":4,"2654":[],"266":[],"26610075":[],"26666667":13,"26710969":5,"26780278":5,"268":[],"268227":[],"26822717":[],"269":[],"27":[0,1,2,4,6,13],"270":[],"2703":3,"27092897":6,"2750":[],"275341":[],"276263":11,"27692307692308":[],"27700":[],"2772":3,"2775623201":[],"27760":[],"278036":5,"27803645":5,"27n_":18,"28":[1,3,4,6],"28001319":[],"28047021":16,"280647":11,"28067036":16,"28097861":5,"280979":5,"2812":[],"282727":11,"283":[],"2830637392":4,"28336218e":6,"2836":[],"28390":[],"28475098":8,"28590743":[],"2861":18,"28634473":11,"286345":11,"2871":[],"2873":9,"2882":18,"2886":18,"2886847885377843":[],"28868479":[],"28875373":16,"2890":0,"2892":18,"28967287":16,"29":[4,6,7],"29149329":[],"2915":18,"29167186":5,"29229741":13,"2923076923077":[],"29512284":11,"295123":11,"2954":[3,4],"2955":[3,4],"2956":[3,4],"2957":[3,4],"2958":[3,4],"29588901":13,"29592539":[],"296247":[],"297":[],"2971492148":[],"2972":[],"29822833":6,"298273":[],"298375":[],"299267190588216":11,"299748":[],"2_":12,"2_1":12,"2_2":12,"2_3":12,"2_i":12,"2_m":[6,18],"2_t":13,"2_x":18,"2b":18,"2cm":8,"2d":[1,3,11,12,15],"2e":6,"2f":[0,7,9,10,11,12],"2ff97f4bf03b":[],"2g":2,"2g_i":2,"2k":3,"2m":6,"2n":[0,2,3],"2nd":9,"2p":18,"2pt":4,"2s":4,"2x":[0,3,8,13],"2x_ix_jy_iy_j":8,"2x_j":8,"2y_i":10,"2y_j":8,"3":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19],"30":[0,1,4,6,7,10,13],"30000":0,"30010":[],"30119421":8,"3017":[],"3018":[],"3019":[],"301927":[],"3020":[],"3021":[],"30258509":16,"302m":4,"303":6,"3037":[],"3038":[],"30384239":16,"3039":[],"303m":4,"3040":[],"3041":[],"30466214e":6,"304m":4,"30535506":[],"30552077":16,"30559547":[],"305m":4,"3063":[],"306m":4,"3072":3,"30787294":6,"307m":4,"308m":4,"309":0,"30940":[],"30b53504a633":0,"31":[4,6,12,16,18],"310":0,"311":0,"311m":4,"312":0,"3123314713548606":6,"31276579e":6,"312m":4,"313":0,"31318084":5,"314":[],"31457796":5,"315":6,"3155":[5,6],"316":[],"31605061":16,"317":[],"31718909":11,"317367":11,"317m":4,"31866499":13,"31896852":8,"319m":4,"32":[3,4,6,12,13,16,18],"3200":1,"32047562":[],"3208":2,"320m":4,"32149601703519115":6,"3214960170351912":6,"3215":[],"32179365":[],"32309075":18,"32320052":16,"324":2,"32458459":[],"324m":4,"3250":[1,6],"32512":[],"326238":[],"326m":4,"32721178":11,"327212":11,"32816737":18,"32903042":[],"3297":[],"32992274":[],"329923":[],"33":[3,4,12,14,16],"3303":[],"33066907e":5,"3310":[],"33166055e":5,"331939":[],"331m":4,"332331":[],"333":7,"3331":[],"33327369":[],"333274":[],"33333333":13,"3337":[],"33611111111111114":[],"33711888":[],"3384":[],"33900713":[],"33m":4,"34":[4,7,16],"3403":[],"340782":11,"34114547":5,"341m":4,"342680":[],"34305928":[],"3436":0,"3437":0,"3456":[],"34568872":16,"34569596":5,"3457":[],"3458":[],"34585355":16,"3459":[],"3460":[],"346810":[],"3469819128513336":[],"34740615":[],"3498":[],"34it":6,"35":[0,2,4,6,7],"3514":[],"35140":[],"35147135":16,"351636":11,"35182854":5,"35203688":16,"3522":[],"3525":[],"3528556":[],"352856":[],"3529":[],"3530606977":[],"3538":[],"3543":[],"3544313922":[],"3546":[],"35470445e":5,"3548":[],"355":[],"3551":[],"35533773":6,"35533774":[],"3556":[],"3558":[],"3560":[],"356399":[],"3567":[],"3572":[],"3575":[],"357508":[],"3576":[],"3577":[],"35771842":6,"3581341341":4,"3585":[],"3587":[],"35892474":16,"359":5,"3593":[],"3594821":13,"3595":[],"3598":[],"359999999999985":[],"36":[2,4,5,6,7,18],"360":1,"3604":[],"3605":[],"3606":[],"360688":[],"3609":[],"36102113":[],"36117602":[],"3613":[],"3615":[],"361556":[],"3617":[],"3621311":5,"3624":[],"3627":[],"3628":[],"363295916323784e":6,"363295916414895e":[],"3632959170548605e":[],"363295924430451e":6,"363834":11,"36383443":11,"3643":[],"364418e97433":1,"3645":[],"3646":[],"3647":[],"3655":[],"3655222":5,"3659":[],"3668":[],"36689784":[],"366898":[],"3669":[],"367":2,"3672":[],"3673":[],"3674":[],"3679":[],"3684":[],"3687":[],"3688":[],"368m":4,"369139":11,"36it":[],"37":[2,4,6,7],"3704":[],"370782966":4,"3711":[],"3713":[],"3718":[],"3721":[],"3722":[],"3725":[],"3729":[],"37307168":16,"3739":[],"37396662":6,"37415316":16,"374291":5,"37429133":5,"3748":[],"3749":[],"3753":[],"3759":[],"3760":[],"3765":[],"376559":[],"37655936":[],"37692363":18,"37703055":[],"3772":[],"3773":[],"37732":[],"3776":[],"3777801602":[],"3779":[],"37835429e":[],"3784":[],"37900111":6,"3791":[],"3794":[],"379647":11,"37964744":11,"37992857":[],"38":[2,4,7,18],"380":[],"3802":[],"3803":[],"3804":[],"3805":[],"380739":5,"38073947":5,"3811":[],"38135733e":6,"3815":4,"381627865854956":[],"38162787":[],"3817475779":[],"3818":[],"3819":[],"3820":[],"38246359":[],"3827":[],"382951":11,"38295101":11,"3830":4,"3833":[],"38336316":16,"3834":4,"3837":4,"3838":4,"3839":4,"3842":[],"3850":[],"3851":4,"38533184":6,"3854":[],"3858":4,"386":[],"3861":4,"3862":4,"38629436":16,"3864":4,"3867":[],"3869":4,"387":[],"3871":4,"3872":4,"387482":5,"38748219":5,"3876":[],"388":[],"3881":4,"3882":[],"3885":[],"38868469":16,"3888":4,"3889":4,"389":[],"38901478":[],"3891":4,"38916861e":6,"38962192e":6,"3898":[],"39":[0,2,4,13,19],"390":[],"3906":4,"39095416":[],"3914":4,"3915":4,"3916":4,"391602":[],"3917":4,"3922":4,"3925515884752442":[],"3928":4,"3931":[],"39311435":16,"3943":4,"3944":4,"39456996":16,"3950":4,"3955":4,"39560937":16,"39579407":5,"3958":[],"3960":4,"3962":4,"3970":4,"39706038":5,"3975":4,"397700":11,"39789527":16,"3979":4,"3980313467":[],"3983":4,"3994":4,"3996":4,"399836":[],"3d":[2,3,4,6,13],"3f":[1,3,9],"3n":16,"3x":[2,8],"3x_i":2,"3y":8,"4":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],"40":[1,4,6,19],"400":4,"4000":20,"4005":4,"4011":4,"40116777":[],"401168":[],"4012":4,"4017":4,"401842":11,"40214433":16,"4022":[],"4027":4,"4030":4,"40340043":[],"4034668048":[],"4038":4,"4039":4,"404":[],"4045":4,"4048":4,"4055":4,"405890":11,"4059":4,"40599799":[],"4068":4,"4069":4,"4075":4,"4077":[],"408":2,"4082":[4,6],"4084":4,"4087":[],"4088":4,"4089":4,"409":2,"40927184e":6,"40a38ad763f1":6,"41":[2,4,16],"410":2,"4100":4,"4107":[],"411":2,"4115":4,"4117":4,"412":2,"4128":4,"4131":4,"41357064":18,"4143":4,"41433969":5,"4144":4,"4146":4,"41511965e":1,"4155":2,"4162706317":[],"4167":4,"4176":4,"4177":4,"418506":11,"4186":4,"41876267":5,"418763":5,"41882036e":6,"41882037e":6,"4192423635":[],"4198":4,"41990268":[],"41it":6,"42":[1,2,4,8,9,10,16],"420":[],"42078103":[],"421":2,"4212":4,"422":2,"4224":4,"423":2,"42394972":16,"424":2,"42441033":5,"42449643":[],"42450":[],"425":2,"4255":[],"4258989918":[],"426":[6,7],"42631342":[],"427017":11,"4275":4,"43":[1,2,4,7,16],"43054282":5,"43135183":16,"43330971e":6,"434932":11,"43493232":11,"435163":[],"43552433":16,"43579948e":6,"436462435":4,"43761347":[],"43766686":11,"4379":4,"438060758":[],"438136":[],"439230":6,"44":[1,2,4,16],"44089210e":5,"4410":[],"4411":[],"442600":11,"443217":[],"444":[],"44970586e":1,"45":[2,4,19],"450":[],"450257":11,"4504":[],"45290829":16,"4543859":18,"4557763":11,"455947":[],"456":[],"456418966187335":[],"457":[2,4],"457770268480242":[],"458027":[],"458078":11,"45960079":5,"46":[2,4,19],"4601":[],"461":[],"461175":16,"462":7,"46383925e":6,"464424":[],"4644244":[],"46508305":16,"46567887":16,"466":[],"46602982":[],"46696223":18,"469":[],"46932688":[],"4694":[],"46984697e":6,"469868":[],"46986815":[],"47":[4,19],"4703":4,"47042744":5,"470714":[],"47075725":6,"47116868e":6,"47125748":5,"47132891":5,"47387858":[],"47400238":[],"47432993":[],"4744":[],"47478057":[],"47485224":18,"475311":[],"47531107":[],"47610036":6,"47815203":11,"47920156":[],"47942814":5,"479465113":4,"48":4,"48089797":[],"48133064":[],"481979":6,"48212873":16,"48257387":19,"483257001":[],"4837":[],"48420165":[],"48476997":11,"48574149":16,"486873":[],"48687342":[],"489":[],"48994188":5,"49":[4,5,6,11,13],"490":[],"491":[],"49152":3,"492":[],"493":[],"4940954":0,"4959161509356135e":6,"495916150936645e":6,"495916150936654e":[],"495916150938325e":[],"49636583":[],"497":[3,4],"498":[3,4],"499":[3,4],"4990":18,"4992":18,"4997":18,"4c4c7f":[9,10],"4d":3,"4f":6,"4y":8,"4y_i":10,"5":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],"50":[1,2,3,4,6,7,8,10,13],"500":[1,3,4,6,9,10,13],"500000":[],"50000455":5,"50000553":5,"50000718":5,"50000855":5,"50000969":5,"50001063":5,"50001142":5,"50001207":5,"50001261":5,"50001306":5,"50001343":5,"50001374":5,"500014":5,"50001414":5,"50001422":5,"50001439":5,"50001454":5,"50001466":5,"50001476":5,"50001485":5,"50001492":5,"50001498":5,"50001502":5,"50001506":5,"5000151":5,"50001512":5,"50001515":5,"50001517":5,"50001518":5,"50001519":5,"50001521":5,"50001522":5,"50001523":5,"50001524":5,"50001525":5,"501":[3,4],"50105159":18,"5018":18,"50227564e":6,"50321091":5,"504167":[],"50416731":[],"506":0,"50727059":16,"50769230769231":[],"507d50":[9,10],"50846111e":6,"50846112e":6,"50it":6,"50j":13,"50x10":1,"51":[4,10],"510":1,"51004249":16,"512132":[],"51214899":6,"51265232":16,"51289697":11,"512897":11,"5138":[],"51389553":16,"514219":[],"51561271":16,"517350858882083":18,"5177783846":4,"518030":11,"51803019":11,"519842":[],"52":[3,4,13],"5222222222222223":1,"522758":[],"52307692307693":[],"5260627":[],"526744":11,"52723079":[],"52773051":18,"52799362":11,"528115":11,"52811546":11,"52874252":5,"529":[],"52911941":[],"52945798e":[],"53":[3,4,9],"5303329":11,"5305555555555556":1,"5312":[],"531280":[],"53189647":[],"53312754":16,"53423784":16,"53603432":18,"53611562":[],"53697476":[],"53703498":6,"5378811":11,"53794784":11,"537948":11,"53846153846155":[],"539261":11,"54":[3,4,6,18],"540":[],"54016188":11,"540162":11,"54039921":5,"54041041e":5,"541605":[],"54163136":13,"544439":[],"546166676":[],"54780216":[],"54it":[],"55":[1,3,4],"5501":[3,4,14],"550321":[],"5539":[],"55505907":16,"5555555555555556":1,"55578041":[],"5566":[],"557795":11,"55854694":11,"5594":6,"56":[1,3,4],"56033697":5,"561":[],"5611":[],"5615":[],"56198284":5,"5625":[],"56302854":16,"5639":[],"564":[],"564374":11,"565":[],"56536":0,"566":[],"56636616e":6,"567":[],"568":[],"569":1,"56912044e":6,"56939714":5,"56992937":[],"57":[0,4,8,19],"570":[],"5700":[],"571":5,"571105947979336e":6,"571105947979394e":6,"571105947979395e":[],"571105947979439e":[],"57154252":[],"57174058":[],"57201944e":6,"57266138":[],"57361898":18,"574465":11,"57673618":16,"57it":[],"58":[4,10,19],"583595":[],"58395707":18,"58428804":5,"584804":[],"5888888888888889":1,"589":[],"58986647":[],"59":[2,4],"590":[],"591":[],"591317992":4,"591594":5,"59159438":5,"592":[],"593":[],"5944444444444444":1,"59591979":[],"595920":[],"59592669":[],"59766":5,"597660":5,"59833875":13,"598392":[],"59839245":[],"59955801":13,"5cm":18,"5dd54edf2138":6,"5f":8,"5x":8,"5y":8,"6":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,17,18],"60":[1,2,3,4,6],"60000":4,"6019067271":4,"60236938":16,"60293962":5,"60420593":5,"60538875":16,"60619654":6,"6063219":18,"606439":[],"60673226":11,"60685864":6,"60791699":[],"6079169911277265":[],"60943791":16,"61":[2,4,7],"61033524":18,"6111111111111112":1,"612939":[],"613579":[],"61399851":11,"613999":11,"61463451":16,"614808":11,"618":[],"61808351":[],"618982":[],"6199381169260247":[],"62":[2,3,4],"62168613":[],"62364974":[],"62373464":11,"625":7,"626635268":[],"62767384":18,"62894215":5,"629961":[],"63":[0,1,2,3,4,6,7],"6300745149331701":[],"630224":[],"63025821e":6,"63249532e":6,"63270833":[],"63395187":18,"63498144":5,"63675140":[],"6371293350711955":[],"63860687":16,"63901111":[],"63it":[],"64":[1,3,4,7,13,16],"64012627":5,"64293754":18,"64425009":[],"645":[],"64615384615385":[],"646283":11,"647":6,"64742912e":6,"647473":11,"649339":5,"64933923":5,"649382":11,"64x50":1,"65":[1,2,3,4,7,8,9],"65136857":[],"6530742540053943":18,"6562":[],"65626043":5,"65628853":16,"65885453":5,"659306":[],"66":[2,3,4],"66054752":[],"66087937":[],"66204648":6,"66226149":6,"66247212":[],"6628996975186953":[],"66292841":[],"66310422":18,"6638":[],"66410989":[],"66560":[],"66619972":11,"666200":11,"667":[],"668172":[],"668186":[],"66818635":[],"66it":6,"67":[2,4],"67047975e":6,"671089":[],"672721":[],"67314874e":5,"67588315":[],"67591616":18,"67697934":11,"67838309":[],"67882608":[],"68":[2,4],"68192193":5,"68246089":16,"68279358":16,"6834195":18,"68534263e":6,"68542204":5,"68545647e":[],"6869":[],"6887363571":4,"68929213e":6,"68944595":18,"689519":11,"69":[2,4,7,18],"690":[],"690569639355314":[],"69061276":11,"690617":[],"69069n_":18,"692":1,"69295955":[],"69484813e":5,"69493539":16,"69504801":6,"69634577e":6,"69695259":5,"69985355":[],"6999536":11,"69it":[],"6e75736fdab1":6,"6f7a6bd7d79f":6,"6m":[3,4],"6n_":18,"7":[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20],"70":[1,2,4,6,7],"70127680":6,"70179437":[],"70205195":16,"70354373":18,"703716d317a7":8,"70434005":18,"7050":[],"70598996":[],"70653767":4,"70710678":5,"70769586":[],"70831425":18,"70832814":5,"70980493":16,"71":[1,2,4],"71131626":16,"7119":[],"712018":11,"7134":[],"71350226":18,"7151":[],"71721168":18,"718697":5,"71869727":5,"72":[2,4],"72174172":11,"722047011333792":5,"72271878e":6,"72347283":18,"7236674":5,"72373129":[],"724":3,"72522848":[],"72859758":5,"7293182":[],"72981762":8,"73":[4,6],"731000":[],"73174557":[],"733096":[],"73484667":[],"735738558766299":[],"73573856":[],"73752910":[],"73it":6,"74":[4,6,13],"740":[],"74081822":8,"74368436":16,"743u":[],"7448615806559786":[],"7469898175164704":18,"74840212":5,"749765":[],"75":[4,5,6,8,11],"7501749450963715":[],"750445":[],"750u":[],"75106135":16,"75118364":[],"751699":11,"75170092":5,"753846153846155":[],"75517445":18,"756352":[],"75838233":[],"75it":[],"76":[2,4,19],"76060096":[],"76066069":16,"763u":[],"7643536":13,"765":7,"76529528":18,"76674796":16,"76802186":18,"76923076923077":[],"76936315":5,"7694444444444445":1,"77":[2,4,13,19],"77034458":[],"770345":[],"77152076":5,"7718":9,"773329728649545":18,"77332973":18,"774300":[],"775":[],"77627886":13,"77636e":13,"77662945":18,"7767978193240488":11,"77714169":8,"7782028952":4,"77865169":[],"78":[2,4],"78011544":[],"78156479e":5,"78184120e":6,"7846153846154":[],"78941903":5,"79":[2,4],"79009329":16,"79093776":18,"79111643":5,"791123":18,"793167":[],"79394867":[],"7939646":[],"794282":11,"79449156":18,"79602861":[],"79754246":[],"797e":6,"7c394b1e8b71":9,"7d7d58":[9,10],"7f2b3a6174c2":13,"7m":4,"8":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18],"80":[0,1,2,4,5,6,8],"800":[4,7],"80315282":5,"803153":5,"80354994":6,"80469739":5,"8055555555555556":1,"80561191":[],"80609615e":6,"80609616e":6,"8064":[],"80734875":[],"807349":[],"80738685":16,"80747253":16,"80842254":11,"808423":11,"80847477e":6,"81":[1,2,4],"81048318e":6,"8108619":[],"81160425":5,"81187794":16,"81333804":6,"81333805":[],"814":[7,11],"815563":[],"81633628":11,"816454":[],"81671821":18,"816847":[],"8175":[],"82":[2,4],"8219235992494145":[],"8219236":[],"82198978":5,"82650876":[],"826509":[],"8265786":5,"82747653":[],"827477":[],"82773778":[],"83":4,"8305555555555556":1,"83512277":5,"836874":5,"83687444":5,"83698677":16,"83999999999999":[],"84":4,"84062065":[],"84228957e":[],"84232163":16,"842436":[],"84292394":[],"842u":[],"84355903e":1,"84443254e":1,"84569271":13,"84780262":6,"84854738":[],"84923989e":6,"84924834":11,"84994524":5,"85":[1,4],"8503720991789538":5,"85091337":[],"85263220":6,"8527777777777777":[],"85278920e":5,"853241":[],"85324115":[],"853u":[],"85601992":5,"85758696":16,"858":[],"8583333333333333":1,"85953586":6,"85959007":[],"86":2,"8608479":[],"860848":[],"861":[],"86117291":5,"86134827":5,"86145244":11,"8638888888888889":1,"86478158":[],"86546962":[],"86623151":13,"86630":[],"8666666666666667":1,"86810":[],"869":0,"86905621":18,"86925797":5,"869258":5,"87":2,"870":0,"8702784034":4,"871":0,"872":0,"8722222222222222":1,"873":0,"87327414":18,"87381451":5,"875":1,"8759":13,"876":6,"87625493":[],"87647541":18,"8768":[],"878297":[],"87836018":18,"87940752":16,"87it":6,"88":[2,13],"88017651":11,"880177":11,"88031314":18,"88046261":5,"8805555555555555":1,"88118231":[],"88168312e":6,"881788":18,"883":[],"88336879":5,"884":[],"88477619":[],"885":[],"88512489":[],"88529063e":6,"8855417382991412":[],"88554174":[],"886":[],"88679947":[],"887":[],"8879":6,"88871662":16,"8888888888888888":1,"8894":6,"89":2,"8916666666666667":[],"89274639":16,"89288636":11,"893489":5,"89348922":5,"89410423":5,"8944444444444445":1,"89550839":16,"89565264":[],"8962476":[],"896248":[],"89873772":16,"89876748":18,"8991514":16,"89944994":5,"899450":5,"8f":6,"8g":6,"8n":16,"8x8":1,"9":[0,1,2,3,4,5,6,7,8,9,11,12,13,14,16,18],"90":[0,1,2,6],"900449":[],"90054363":[],"90075537":5,"9011":6,"90220243":5,"90266948":5,"90268858":[],"9027777777777778":1,"903824":[],"90382431":[],"9040":9,"90475506e":6,"90540529":11,"9055555555555556":1,"9083333333333333":[],"90884627":16,"90895045":16,"90940378":16,"91":19,"910":[],"9111111111111111":1,"91128596":5,"912u":[],"913":[3,4],"91379157":[],"913791573406831":[],"91383439":16,"91396388":18,"914":[3,4],"91416375":[],"91479093":0,"91492986e":6,"915":[3,4],"91549644":[],"916":[3,4],"9166666666666666":[],"917":[3,4],"91760278":5,"918":[],"91812702":5,"918992":[],"919":[],"92":[6,19],"922u":[],"92343595":[],"924018":[],"92477093":[],"924e":6,"925":1,"92507116e":1,"9252772":11,"92578916":5,"92603747":16,"92626212":16,"92754397":[],"927544":[],"9277777777777778":1,"92819235":[],"92857143":7,"93":[],"9305555555555556":1,"930583":11,"931":0,"93155188":5,"93158979":5,"93248252":5,"932483":5,"932u":[],"933":5,"93414191":[],"93492130e":6,"93579127":16,"935u":[],"9361111111111111":[],"937":18,"937082":[],"93799826":5,"938":18,"9387":[],"939":[0,18],"94":[7,18],"9400":[],"941866404575299":[],"94226022e":6,"94284104":5,"94320205":5,"9444444444444444":1,"945":[3,4],"94548496":[],"94591015":16,"946":[3,4],"94639099":11,"94659383":[],"947":[3,4],"9472222222222222":1,"94735055":[],"947903":[],"94790323":[],"948":[3,4],"9482527":5,"949":[3,4],"95":[1,7,11],"95008046":6,"95079764":6,"95231424":5,"9527777777777777":1,"95284275":5,"953065564":[],"95351665":5,"954":18,"9549351910143222":[],"954u":[],"9555555555555556":1,"95569422":18,"955820c21e8b":4,"956563":11,"95684892":5,"95703":13,"95714723":[],"957147232685324":[],"95it":[],"96":[6,7,11],"960":18,"9601304850018328e":6,"960130485007504e":6,"960130485007934e":[],"9601304850213484e":[],"96024953":5,"96032148":16,"96084663":5,"961":18,"962":18,"9637117593816477":6,"9640435":5,"96489434":[],"9649652536":4,"96527903":16,"965548":[],"96606158":16,"96653373":[],"96688672":5,"9674916":5,"967809":11,"96863851":[],"96987657":[],"96992454":[],"97":7,"97005689":5,"97065296":[],"97108e":13,"9722222222222222":1,"97230501":[],"97243128":5,"97300836":5,"97497404e":6,"975":1,"97507735":5,"975510299261579":9,"9760832":[],"97705827":5,"977418":5,"97758848":5,"9777777777777777":1,"977880":[],"97788031":[],"9780387310732":20,"9780387848570":20,"9781492032632":20,"97898392":6,"97926491":5,"98":[0,1,7],"980":[],"98017611":13,"98036405":[],"9805555555555555":1,"98091621":5,"981321":[],"98139097":5,"98266587":16,"98275501":5,"983310":[],"98346748":[],"98399675":[],"98413059":5,"98454786":5,"985":18,"98566191":5,"986":18,"9861111111111112":1,"98680716":5,"98716878":5,"98756882":13,"98794823":16,"9879924":[],"98808176":5,"98822371":6,"9888888888888889":1,"989":18,"9890348":5,"9893149172528393":[],"9893447":5,"9898254753574576":18,"98982548":18,"9898ff":[9,10],"99":[6,7,11,13],"990":[],"99009525":5,"9902552771282336":[],"99049330":6,"99088801":5,"991":18,"99115119":5,"99176998":5,"992":18,"99242921":5,"99265097":5,"993":18,"99316252":5,"99353454":[],"993535":[],"99371056":5,"99389612":5,"993972":[],"99397245":[],"9943201":5,"99435648":18,"9947756":5,"99492986":5,"99519225":13,"99528218":5,"99539415":5,"9955282554647219":[],"99566069":5,"99578809":5,"996":5,"99608161":5,"9963961":5,"99650061":5,"9967458":5,"99700706":5,"99709215":5,"99724883":[],"99729756":5,"99751458":5,"99758326":5,"99775587":5,"99775949":[],"99793613":5,"99799099":5,"99813653":5,"99828624":5,"99829953":[],"9983295":5,"99845267":5,"998577":5,"99861053":5,"99871521":5,"99881845":5,"99884384":5,"99893323":5,"999":[9,18],"99901896":5,"99903755":5,"99911427":5,"99918546":5,"99919837":5,"99926459":5,"9993237":5,"99933188":5,"99938942":5,"9994385":5,"99944272":5,"99949306":5,"99953381":5,"99953475":5,"99957911":5,"99961294":5,"99965056":5,"99967865":5,"99970988":5,"9997332":5,"99975913":5,"99977416":[],"99977849":5,"99980002":5,"9998161":5,"99984732":5,"99987324":5,"99989476":5,"99991263":5,"99992746":5,"99993978":5,"99995":5,"9999555851685968":6,"999955585168597":6,"9999840939906267":[],"9999858320366368":[],"9x":6,"9y":6,"\u00f8yvind":[6,19],"abstract":1,"boolean":4,"break":[0,4,6,11,14],"byte":16,"case":[0,1,2,3,4,5,6,7,11,12,13,14,15,16,17],"catch":0,"char":[],"class":[0,1,3,4,6,7,8,9,11,12,13,18],"const":[],"default":[0,1,2,4,6,7,13,16],"do":[0,2,3,4,5,6,8,9,10,11,12,13,14,16],"ekstr\u00f8m":4,"eng\u00f8i":19,"export":9,"f\u00f8470":19,"final":[0,1,2,3,4,5,6,7,8,9,10,11,13,14,17,18,19],"float":[0,3,4,5,9,11,13,14,16],"function":[2,3,4,5,9,14,15,16],"import":[0,1,2,3,4,6,7,8,9,10,11,12,13,14,18],"int":[0,1,2,3,4,5,6,11,13,14,16,18],"long":[0,1,3,4,12,13],"m\u00f8svatn":6,"new":[0,1,2,3,5,6,7,8,9,10,11,13,14,16],"null":[],"public":[0,15],"return":[0,1,2,3,4,5,6,7,8,9,11,13,14,16,18],"s\u00f8rli":[],"s\u00f8rlie":19,"sch\u00f8yen":[6,19],"short":[4,5],"steinsv\u00e5g":[],"super":[3,5],"switch":0,"throw":[3,6,18],"true":[0,1,2,3,4,5,6,7,8,9,10,12,13,14,16,18],"try":[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,16,18],"var":[5,6,10,11,18],"while":[0,1,3,4,5,6,7,8,9,11,12,13,18],A:[2,3,5,6,7,10,11,12,13,15,16,17,18,19,20],AND:2,And:[0,3,4,5,6,9,15,18],As:[0,1,2,3,4,5,6,8,10,12,13,16,18],At:[0,4,6,13],BE:0,Be:[2,15],Being:13,But:[0,1,2,3,5,6,9,10,18],By:[0,3,5,6,12,13,16],For:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],IF:6,IN:20,If:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,18],In:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18,20],Is:11,Ising:[5,12],It:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],Its:[1,2,4,11],NO:[7,11],No:[3,4,5,6,7,8,9],Not:[0,1,5,6,17],OR:18,Of:18,On:[0,3,17,18,20],One:[0,1,3,4,5,6,7,8,11,12,13,18],Or:[0,1,6],Such:[6,12,18],That:[0,5,7,10,11,12,14,18],The:[4,10,13,14,16,17,18,19,20],Then:[0,1,5,6,8,9,10,11,12,13,14,16],There:[0,3,4,5,6,8,9,11,12,14,16,17,18,19],These:[0,3,4,5,8,9,10,11,12,13,14,16,18],To:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],With:[0,5,6,8,9,10,11,12,14,16,18],_0:[5,8,10,11,13],_1:[2,5,6,8,10,11,12,13,14,16],_2:[2,5,8,11,12,13,16],_3:16,_4:16,_9:13,_:[0,1,2,4,5,6,7,8,9,10,11,12,13,16],_________________________________________________________________:4,__call__:[3,4],__class__:10,__doc__:6,__future__:[8,9],__getitem__:[],__init__:[1,3,4,14],__main__:2,__mosek:5,__name__:[2,10],__traceback__:[3,4],_asarrai:[],_auto10:[6,12],_auto12:6,_auto1:[2,3,4,5,6,7,12,13,16,18],_auto2:[2,3,4,5,6,12,13,16,18],_auto3:[3,4,5,6,12,13,16],_auto4:[4,6,12,13,16],_auto5:[4,6,12,13,16],_auto6:[4,6,12,16],_auto7:[4,6,12,16],_auto8:[6,12],_auto9:[6,12],_ax:[],_base:8,_build:[15,20],_build_call_output:[3,4],_c:1,_call:[3,4],_call_flat:[3,4],_check_1d:[],_check_optimize_result:[7,11],_compon:11,_coordinate_desc:6,_copy_docstring_and_deprec:[],_decor:0,_depth:9,_fraction:9,_get_lin:[],_getitem_multilevel:[],_handl:[3,4],_i:[0,1,2,5,6,8,11,12,13],_inference_funct:[3,4],_interpolatefunctionerror:[3,4],_is_primit:[],_j:[0,1,2,3,5,6,8,13],_jit_compil:[3,4],_k:13,_l:12,_lambda:6,_leaf:9,_logist:[7,11],_m:10,_make_vjp:[2,13],_maybe_define_funct:[3,4],_multilayer_perceptron:1,_n:[2,5,8,11,13],_node:[2,9,13],_notokstatusexcept:[3,4],_np:[],_num_output:[3,4],_p:[5,8],_plot_arg:[],_process_traceback_fram:[3,4],_r:[3,4],_ratio:11,_sampl:9,_select_forward_and_backward_funct:[3,4],_split:[6,9],_src:[3,4,14],_stateful_fn:[3,4],_stateless_fn:[3,4],_t:13,_test:6,_trace:[2,13],_valu:[2,13],_varianc:11,_weight:9,a0:3,a0faa0:[9,10],a1:0,a2:0,a3:0,a4:0,a_0:0,a_1a:0,a_2a:0,a_3:0,a_3a:0,a_4:0,a_4a:0,a_:[0,1,16],a_h:1,a_i:[0,1,2,12],a_j:[1,12],a_k:[1,12],a_ndim:2,aaron:20,ab:[0,2,5,13,14],ab_channel:15,abandon:1,abbrevi:17,abid:18,abil:[0,10],abl:[1,4,5,6,7,10,12,13],abort:[],about:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,20],abov:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,16,18],abovement:6,abscissa:13,absolut:[0,2,5,6,13],acceler:13,accept:[0,3,6,9],access:[0,3,4,11,18],accid:[4,6],accmod:5,accompani:0,accomplish:[8,9,13],accord:[0,1,2,5,6,9,12,13,14,18],accordingli:11,account:[0,3,5,13,18],accumul:[12,18],accur:[0,3,4,6,10,13],accuraci:[0,1,3,4,5,6,7,9,10,11,12],accuracy_scor:[0,1,10],accuracy_score_numpi:1,achiev:[0,1,5,6,8,12,16],aco:18,acquaint:15,acquir:[1,15],acr:0,across:[1,3,6,9,15],act:[1,3,16],action:18,activ:[0,2,3,4,9,17],actual:[0,1,4,5,6,8,11,16,18],ad:[0,1,3,4,5,8,13,16],ada_clf:10,adaboostclassifi:10,adadelta:13,adagrad:13,adam:[1,3,4],adapt:[4,6,13,20],add:[0,1,2,3,4,5,6,8,10,11,12,18],add_lin:[],add_outgrad:2,add_subplot:[1,7,12,14],addendum:5,addit:[0,2,3,5,6,7,8,9,10,12,13,15,16,18,19,20],addition:[12,13],address:[1,9,11,13,20],adjac:[3,12],adjoint:5,adjust:[0,5,12,13],admir:0,advanc:[4,6,12,20],advantag:[1,3,5,6,10,13,16],affect:3,affin:[0,3,8,11],afford:3,aforement:14,african:0,after:[0,1,2,4,5,6,9,11,12,13,15,16,18],afterward:0,ag:[0,7,17],ag_0:2,again:[0,1,4,5,6,7,8,10,11,12,13,18],against:[1,4,7,10],agegroup:7,agegroupmean:7,aggreg:[9,10],agorithm:10,agre:[5,6,18],ahead:9,ai:[0,20],aid:11,aim:[0,1,4,6,7,11,14,15,16],ainv:5,airplan:3,aka:5,al:[0,2,4,17,20],alarm:5,algebra:[0,3,5,13,15,17],algo:[],algorithm:[0,1,2,4,5,6,7,8,13,14,15,16,17,18,20],align:[0,2,5,6,7,8,13,18],all:[0,1,2,3,4,5,6,7,9,10,11,12,13,14,15,16,17,18,19,20],allevi:[1,13],alloc:[3,16],allow:[0,1,2,3,5,6,8,10,13,15,16],almost:[0,1,6,8,11,13,18],alon:[2,9],along:[2,3,4,5,6,9,10,11,15,16],alpha:[0,1,2,3,4,5,6,7,8,9,10,13,14,18],alpha_0:3,alpha_1:3,alpha_2:3,alpha_:10,alpha_i:[3,13],alpha_k:13,alpha_m:10,alpha_n:3,alpha_opt:13,alreadi:[2,3,4,5,6,10,12,15,16,18],also:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],alter:1,altern:[0,1,4,5,6,7,8,9,11,13,16],although:[1,5,6,8,10,13],alwai:[0,3,5,6,12,13,18],am:4,ame2016:0,american:0,among:[0,3,5,9,10,12,16],amongst:5,amount:[0,1,3,4,6,8,10,14,15],an:[1,2,3,5,6,7,8,9,11,12,13,14,15,16,18,19,20],an_:18,anaconda3:[],anaconda:[0,1,15],analog:13,analys:6,analysi:[1,3,4,7,14,16,17,20],analyt:[0,2,3,5,6,7,12,13,15],analyz:[0,1,3,4,5,6,18],andrew:1,angl:[0,3,9],anharmon:3,ani:[0,1,2,3,4,5,6,7,8,9,10,12,14,18],anim:[4,12],ann:12,annot:[0,1,3,7,8],anoth:[0,1,3,4,5,6,7,8,10,11,12,13,16,18],anp:2,ans_vspac:2,ansatz:0,answer:[0,1,3,5,6,16],antialias:[2,6],anticip:4,anymor:[1,8],anyon:[4,8],anyth:[1,18],anytim:19,apach:1,apart:[11,13],api:[1,15],appar:2,appear:[0,1,3,13,16,18],append:[1,3,4,8,9,13],appendcon:5,appendvar:5,appli:[0,1,2,3,4,6,7,8,9,10,11,12,13,18,20],applic:[0,1,3,4,5,6,7,9,12,13,16,17,18,20],apply_gradi:4,approach:[1,2,4,5,6,9,10,11,12,13,15,18,20],appropri:[2,6,9,12,13,15,18],approx:[0,2,3,6,10,11,13,18],approxim:[0,1,2,3,4,5,6,7,10,11,13,18],apt:[0,15],aq:18,ar:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],arang:[1,3,4,6,7,9,10,12],arbitrari:[1,4,6,8,12,13,18],arbitrarili:[0,1,11],arc:6,architectur:[3,4,12,20],area:[0,3,6,20],arg:[0,2,3,4,13],argc:[],argmax:[1,11],argmin:[4,10,14],argnum:[2,13],argnum_0:2,argnum_1:2,argsort:11,argu:[1,13],argument:[0,2,3,5,6,11,12,13],argv:[],argval:2,aris:[0,6,12,13,18],arithmet:[0,13,16],arm:[3,4,6,14],arma:[],armadillo:16,around:[0,1,4,5,6,11,18],arr:2,arrai:[0,1,2,3,4,5,6,7,8,9,11,12,13,14,15,18],arrang:3,arraybox:13,arriv:[0,6,9,11,16,18],arrow:12,arrowprop:8,art3d:13,art:[0,1,15],articl:[0,3,4,6,10],artifici:[0,2,7,12,20],artificialneuron:12,arug:13,arxiv:[3,4],as_fram:[],asarrai:[0,2,6,9],asc:5,ascii:[],ashrafi:19,ask:[5,6,11,12],aspect:[0,6,15],assembl:[0,3],assert:4,assess:[0,6],assici:4,assign:[0,7,8,9,12,13,14,17,20],associ:[0,6,9,12,14,18],assum:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],assumpt:[0,3,5,6,9,11,18],ast:[0,5,6],astyp:[4,9,10],asymmetri:0,asymptot:[4,6],async_wait:[3,4],atoi:[],atom:0,attempt:[0,4,6,7,8,10],attend:17,attent:[0,16],attr:[3,4],attract:[0,10],attribut:[0,9],attributeerror:[],audi:0,audio:[3,4],aurelien:[0,17,20],austfjel:6,author:[0,1,10,18],authour:0,auto:[6,9,10,18],autocor:18,autocorrelation_tim:18,autocorrelform:18,autocovari:18,autoencod:[4,15],autoencond:15,autograd:15,autom:[0,15],automac:16,automat:[0,1,2,3,4,11,15,16,17],automobil:3,autonom:[4,20],avail:[0,1,4,6,10,11,15,16,17,20],averag:[0,1,3,6,9,10,13,14,18,19],avg:[],avoid:[0,4,5,6,9,11,13,16],avx2:[],avx:[],awai:[2,3,6],awar:[2,10],award:19,ax:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,16],axes3d:[2,6,13],axes_grid1:6,axessubplot:[],axhlin:8,axi:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,16,18],axiom:5,axlabel:0,axvlin:[4,8],axvspan:4,b1:8,b2:8,b3:8,b:[0,1,2,3,4,5,6,8,9,10,12,13,14,18,19],b_1:[2,12,13],b_2:13,b_5:13,b_:[1,16],b_group:9,b_i:[0,1,2,12],b_ia_:0,b_index:9,b_is_vec:2,b_j:[1,12],b_k:[1,12,13],b_m:12,b_meta:2,b_score:9,b_valu:9,bachelor:17,back:[0,3,4,5,6,8,9,10,16,17,18],backbon:16,backend:[1,4],background:[17,20],backpropag:1,backtrack:9,backup:16,backward:[1,2,4,12,16],backward_pass:2,bad:6,badli:18,bag:[9,15,17],bag_clf:10,baggingboot:10,baggingclassifi:10,baggingtre:10,balanc:6,band:16,bandwidth:16,bar:[0,6,11],barber:20,bare:[4,10],base:[0,1,3,4,5,7,8,9,10,14,15,18,19,20],basi:[5,7,8,10,11,12,13,16],basic:[6,8,12,13,14,15,17,18],batch:[3,4,11,12,13],batch_shap:4,batch_siz:[1,3,4],batchnorm:4,bay:7,bayesian:[5,15,20],bc298b802fe2:6,becaus:[0,1,2,3,4,5,6,8,9,12,13,14],becom:[0,1,2,5,6,7,9,12,13,18],been:[0,1,2,3,4,5,6,11,12,13,15,16],befor:[0,1,2,3,4,5,6,7,8,12,13,14,16,18],beforehand:[0,18],begin:[0,1,2,3,4,5,6,7,8,9,11,12,13,14,16,18],behav:[1,6,13],behavior:[0,1,13],behaviour:12,behind:[0,1,6,8,13],behnoosh:19,being:[0,1,2,3,4,5,7,8,10,11,12,13,18],believ:[9,16],belong:[5,7,8,9,13,14],below:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],benchmark:10,bendik:[],benefici:[1,13],benefit:[0,1,4,11,13,15],bengio:[1,17,20],benign:[1,7],bennosh:19,besid:[4,5],bessel:5,best:[0,1,2,3,4,5,6,7,8,9,10,12,13,19],beta:[0,1,3,5,6,7,10,11,13],beta_0:[0,1,3,5,6,7,13],beta_0x_:0,beta_1:[0,1,3,5,6,7,10,13],beta_1x_0:0,beta_1x_1:[0,7],beta_1x_2:0,beta_1x_:0,beta_1x_i:[7,13],beta_2:[0,3,13],beta_2x_0:0,beta_2x_1:0,beta_2x_2:[0,7],beta_2x_:0,beta_3:3,beta_:[0,3,6,7,13],beta_i:[0,3,5],beta_j:[0,5,6,13],beta_k:13,beta_linreg:13,beta_m:10,beta_mg_m:10,beta_n:3,beta_p:7,beta_px_p:7,betavalu:5,better:[0,1,2,3,4,6,9,10,11,12,13],between:[0,1,2,3,4,5,6,7,8,9,11,12,13,14,18],beyond:[0,1,5,6,8,13],bf:[13,14,16,18],bgd:13,bia:[0,1,2,3,5,8,9,10,12,13,17],bias:[1,2,3,5,6,9,12],big:[0,1,2,5,6,14],bigger:[1,6],bigr:12,bike:9,bilek:19,billion:[3,12,15],bin:[0,7,18],binari:[0,3,5,7,9,10,12,17],binarycrossentropi:4,bind:0,binomi:[15,18],binsboot:6,bioinformat:0,biolog:[1,12,20],bios1100:15,bird:[0,3],bishop:[17,20],bit:[1,4,16,18],bitwis:18,bivari:2,bk:[0,13],bla:[5,16],black:[8,9,14],block:[6,10,15,16,18],blockingavg:[],blockingstd:[],blockingvar:[],blocksiz:[],blocksizemax:[],blocksizemin:[],blogpost:4,blue:[0,3],bmatrix:[0,1,3,5,7,8,11,13,16],bmi:1,bodi:[0,1,4,12],bold:1,boldfac:[0,5],boldsymbol:[0,1,2,3,5,6,7,8,10,11,13,14],boltzmann:[12,15],book:20,boost:[1,9,15,17],boostrap:10,bootavg:[],bootstd:[],bootstrap:[1,13,15,17],bootvar:[],bootvec:[],boston_dataset:0,bot:8,both:[0,1,4,5,6,8,9,10,13,14,15,16,18,19],bottl:7,bound:[0,5,8,12],boundari:[2,4,8,11,12],boundkei:5,box:[2,4,9],boxed_arg:2,boyd:[8,13],bracket:[4,18],brain:[1,7,12],branch:9,breast:[5,7,11],breviti:13,brew:[0,15],brg:8,briefli:0,bring:[0,5,6,10],broad:[0,3,4],brownle:4,brute:[3,5,11],bs:[8,9,10],buffer_s:4,bui:4,build:[0,4,5,6,10,13,16,18],built:[0,1,3,4,6],bunch:11,busi:0,bx:5,bzl:5,c1:[8,11],c2:[8,11],c95af3df0cdd:3,c:[0,1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19,20],c_0:18,c_1:12,c_2:12,c_3:12,c_4:12,c_:[0,8,9,10,13,18],c_i:[12,13],c_k:18,ca:1,cabc613b8702:13,cach:10,cal:[0,8,10,12,13],calcul:[0,1,2,4,5,6,8,9,10,11,12,13,14,16,18],california:[],call:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],callabl:[3,4],callback:[3,4],calor:0,cambridg:[13,20],can:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],cancel:[0,13],cancellation_manag:[3,4],cancer:[5,10],cancerpd:7,candid:[8,9,10],cannot:[0,1,4,5,6,7,8,9,17,18],canopi:[0,15],cap:5,capabl:[0,1,8,13,15],capac:2,capita:0,captur:[4,11,12],captured_input:[3,4],car:[3,4],card:[0,7],cardin:1,care:11,carefulli:13,carlo:[0,6,15,18,20],carri:[2,6,7],cart:10,carvalho:19,casella:20,cast:1,cat:[3,4],categor:[0,1,3,9,11],categori:[0,1,3,7,10,12,14,17],categorical_crossentropi:[1,3],caus:[0,5,6,18],causal:0,causat:0,cax:1,cb:6,cbar:1,cbook:[],cc:[0,1,5,13],ccc:[5,12],cd_fast:6,cdf:18,cdot:[0,2,6,12,13,14,16,18],celebr:13,cell:4,center:[0,1,6,7,8,9,11,14,18],centr:20,central:[0,3,5,6,8,16],centroid:[14,18],centroid_differ:14,centuri:3,certain:[0,3,6,7,9,18],cg:13,cha:0,chain:[1,13,15,18],chanc:[1,5,13,18],chang:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18],channel:3,chapter:[0,6,10,11,16,17,20],charact:[0,3,5],character:[8,9,10,12,18],characterist:[0,1,3,10,13],charg:0,charl:0,chase:4,chd:7,chddata:7,cheap:5,cheaper:[1,13],check:[0,1,3,4,5,6,11,13,16],checkmark:3,checkpoint:4,checkpoint_dir:4,checkpoint_prefix:4,chemic:[],chen:10,chiaramont:2,choic:[0,1,2,3,4,6,9,12,13,14,16],choleski:[5,16],choos:[2,3,6,9,10,11,13,14],chosen:[0,1,2,6,8,9,10,13,18],chosen_datapoint:1,christian:20,christoph:[17,20],cifar10:3,cifar:3,cin:[],circ:[1,12],circl:[0,8,12],circuit:3,circumfer:9,circumv:[1,5,13],ckpt:4,clariti:18,class_nam:[3,9],class_val:9,class_valu:9,class_weight:[3,4],classic:[7,9,13],classif:[0,3,5,6,7,8,11,12,15,17,20],classifi:[0,1,4,7,9,10,11],classificaton:1,classifii:10,clean:1,clear:[1,5,10,12,13],clearli:[0,3,5,6,7,8,18],clever:[1,10],clf3:0,clf:[0,6,8,9,10],clf_lasso:6,clf_ridg:6,clip:[3,18],close:[0,1,2,4,6,8,9,11,12,13,14,18,20],closer:[3,5,13],closest:[8,11,13,14],closur:15,cloud:15,cluster:[0,1,4,6,11,15,17],cluster_label:14,cm:[1,2,3,6,8,13],cmap:[0,1,2,3,4,6,8,9,10],cmap_arg:6,cmath:[],cmb:17,cmd:9,cmu:[],cn_:18,cnn:[12,17],cnn_kera:3,cntk:15,co:[0,2,3,6,9,13],code:[3,4,6,7,8,13,15,16,17,18,20],coef0:8,coef:0,coef_:[0,5,6,8,9,13],coeff:5,coeffici:[0,3,5,6,7,8,9,13,16],coerc:[0,6],coin:[10,18],coin_toss:10,col:[0,11],colab:15,cold:9,colinear:0,collaps:8,collect:[0,2,6,10,11,15,18,20],collinear:5,color:[0,3,4,6,8,9,10,18],color_channel:3,color_cod:6,colorbar:[1,6],colsample_bytre:10,colsaobject:10,colspec:0,column:[0,1,2,5,6,7,8,9,11,12,16],columntransform:9,com:[3,4,6,14,15,20],combin:[1,2,5,6,7,10,18],come:[0,1,3,4,5,12,13,14,17],command:[0,1],comment:[0,4,5,6],commerci:[0,15],commod:0,common:[0,1,3,5,6,7,9,11,13,14,18],commonli:[0,1,4,6,7,9,13,14],commun:[0,12],commut:3,commutatitav:3,compact:[0,1,3,5,6,7,9,11,12,13,14],compar:[0,3,4,5,6,11,13,16],comparison:[2,4,13],compat:7,compet:0,competit:10,compil:[0,1,3,4,15,16],complet:[0,2,3,4,9,12],completenn:12,complex:[1,5,8,9,11,12,13],complic:[0,1,9,13],compon:[0,1,3,4,5,6,7,9,14,15,17],components_:11,compos:[9,12,14],compphys:[6,15,17,20],compress:0,compris:6,compromis:5,compulsori:15,comput:[0,1,2,3,4,5,6,7,8,10,11,12,13,15,16,17,18,20],computation:[0,3,6,9,13,18],con:5,concaten:[2,4,6,14],concav:[1,13],concentr:[0,10],concept:[0,2,15],conceptu:[12,13],concern:[0,1,4,7],conclud:[0,5,13],conclus:1,cond:2,conda:[0,1,15],condit:[0,2,4,5,6,8,9,11,13,18],conduct:15,condwav:2,coneqp:5,confid:[0,5,6,7,8],configur:3,confirm:[5,12],confus:[5,6,10,16],confusion_matrix:9,congruenti:18,conjug:[4,8],conjugaci:13,conjunct:3,connect:[0,1,3,4,9,11,12,13,16],consequ:[5,6,8,10,12,13],conserv:[5,14],consid:[0,1,2,3,5,6,7,8,9,10,12,13,16,18],consider:[0,1,5,13],consist:[0,1,2,3,4,6,12,13,18],constant:[0,2,4,5,6,8,12,13,18],constitu:0,constitut:[2,6],constrain:[1,3,5,7,11],constraint:[5,6,8,13],construct:[0,1,2,3,5,6,7,8,9,10,11,16,18,20],contact:0,contain:[0,2,3,4,5,6,7,8,9,11,12,13,16,18,20],contemporari:20,content:[1,15,16],context:[3,4,6,10,13],contigu:16,continu:[0,1,2,3,4,5,6,7,8,9,10,12,13,16,18],contour:[9,10,13],contourf:[8,9,10],contrast:[1,4,9,10,12],contribut:[0,3,5,13,18],contributor:0,control:[0,1,3,9,13,15],conv2d:[3,4],conv2dtranspos:4,conv:[3,4],conveni:[0,5,6,12,13,16],convent:12,converg:[1,2,4,5,6,7,8,11,13,14],convergencewarn:[1,6,7,8,11],convert:[0,1,4,5,9,11,13,16],converttomatrix:4,convex:[4,5,7],convinc:13,convolut:[1,4,15,17],cool:[4,9],coolwarm:6,coordin:[5,12,14],coorel:0,copi:[0,1,14],core:[2,3,4,10,13],corel:0,coronari:7,corr:[0,5,7,11],correalt:[11,15],correct:[0,1,2,3,4,5,13,16,18],correctli:[1,2,6,10],correl:[0,1,3,5,6,7,10,12,13,15,18],correlation_matrix:[0,5,7,11],correspond:[0,3,5,6,8,9,11,12,15,16,18],cortex:12,cosin:[3,6],cost:[0,2,3,5,6,7,8,9,12,13],cost_deep_grad:2,cost_funct:2,cost_function_deep:2,cost_function_deep_grad:2,cost_function_grad:2,cost_grad:2,cost_sum:2,costol:13,could:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],coulomb:0,count:[0,9,17,18,19],countor:13,coupl:[4,5,6],cours:[0,1,3,5,11,17],courvil:[17,20],cout:[],cov:[5,6,11,16,18],cov_xi:[5,11],cov_xx:[5,11],cov_yi:[5,11],covari:[0,7,15,16],covariance_matrix:[5,11,14],cover:[0,5,15,17,20],covert:0,covxi:18,covxx:18,covxz:18,covyi:18,covyz:18,covzz:18,cpu:1,cpu_feature_guard:[],craft:3,creat:[1,2,3,4,5,6,9,10,11,12,13,15],create_biases_and_weight:1,create_convolutional_neural_network_kera:3,create_neural_network_kera:1,create_x:[5,11],credit:[0,7],crim:0,crime:0,criteria:[0,4,9,10,14,18],criterion:[9,10,13],critic:6,cross:[0,1,3,7,9,10,13,15,17,18],cross_entropi:4,cross_val_scor:6,cross_valid:[7,10],crossvalid:6,crucial:[1,18],cs231:3,cs:17,csr_matrix:16,cstdlib:[],csv:[0,4,6,7,9],ctnk:1,ctx:[3,4],cubic:0,cumbersom:5,cumsum:[10,11],cumul:[10,18],cumulative_heads_ratio:10,cup:5,current:[1,2,3,4,6,13,14],curs:0,curv:[6,7,10,12],curvatur:13,custom:[5,6,14],custom_cmap2:[9,10],custom_cmap:[9,10],cutpoint:9,cv:[6,7,10],cvxbook:13,cvxopt:[5,8],cyber:20,cycl:[1,12],d1:5,d2:5,d2_g_t:2,d3:5,d670a873ab0c:5,d985fb40c43d:6,d:[1,2,3,4,5,6,7,8,9,10,11,13,14,16,18,19],d_f:13,d_g_t:2,d_net_out:2,da:3,dagger:[5,16],dai:[1,9,15],dalen:[],damp:3,darget:9,darkr:18,dat:0,dat_id:[0,6,7,9],data1:14,data2:14,data3:14,data4:14,data:[2,4,5,8,10,12,13,14,16,20],data_handl:[3,4],data_id:[0,6,7,9],data_indic:1,data_modul:[],data_path:[0,6,7,9],data_url:[],databas:1,datafil:[0,6,7,9],datafram:[0,4,5,7,9,11],datapoint:[1,5,6,7,11,13],dataset:[0,4,6,7,8,9,10,11,13,14],datatyp:4,date:0,daughter:10,david:20,dbh:1,dbo:1,dcomposit:16,ddot:2,dead:1,deadlin:17,deal:[0,1,3,5,6,8,11,13,14,16,18],debt:7,debug:[5,6],decad:[0,3],decai:[0,13,18],decemb:17,decent:10,decid:[0,2,3,5,6,9],decim:0,decis:[0,1,8,11,15,17,20],decision_funct:8,decision_tre:9,decisiontreeclassifi:[9,10],decisiontreeregressor:[0,9,10],declar:[0,4,16],decompos:[5,6,16],decomposit:[0,6,12,17],decompost:5,deconvolut:3,decorrel:[10,13],decreas:[1,2,4,5,6,10,11,13],deduc:0,deep:[3,7,12,13,15,17,20],deep_neural_network:2,deep_param:2,deep_tree_clf1:9,deep_tree_clf2:9,deep_tree_clf:[9,10],deepen:[5,15],deeper:[0,3,4],deeplearningbook:20,deer:3,def:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,18],def_covari:18,def_funct:[3,4],default_tim:4,defect:5,defici:5,defin:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],definit:[1,2,5,6,8,10,11,12,13,16,18],defint:18,defun:[3,4],defvjp:2,degre:[3,5,6,8,9,10,11,18],del:1,delet:6,delimit:4,deliv:17,delta:[0,2,3,6,8,12,13,14],delta_0:3,delta_1:3,delta_2:3,delta_3:3,delta_4:3,delta_5:3,delta_:[1,16],delta_h:[0,1],delta_j:[3,12],delta_k:12,delta_l:[1,3],delta_n:[0,3],delug:15,delv:0,demand:13,demonstr:[0,3,5,6,7,11,12,15],den:4,denomin:[1,5],denot:[1,2,6,7,13,18],dens:[1,3,4],dense_1:4,densiti:[0,2,6,18],depart:19,depend:[0,1,2,4,5,6,7,8,11,12,13,15,16,18],depict:18,deploy:[0,15],deprec:[2,3,6,13],depth:[0,3,9,10,16],deriv:[0,1,2,6,7,8,10,11,13,15],derivati:13,descend:[5,9,11],descent:[0,1,3,7,8,12,17],descr:[],describ:[0,2,4,5,6,8,10,11,12,13,16],descript:[0,8,9],design:[0,1,3,4,5,6,7,10,11,12,13],designmatrix:0,desir:[0,2,4,5,13,14],despit:[1,12],destroi:16,det:[5,16],detail:[0,6,11,13,14,16],detect:[3,8,12],determin:[0,2,3,4,5,6,8,9,10,11,12,13,16,18],determinist:[7,13,18],dev:1,develop:[0,3,5,8,10,11,12,15,16,17],deviat:[0,1,2,4,5,6,18],device_nam:[3,4],devis:12,df:[4,8,11,13],di:[0,5],diag:[5,8],diagnost:[1,10],diagon:[0,5,7,13,16,18],diagonaliz:5,diagram:10,diagsvd:6,dice:[6,18],dict:[6,8],dict_kei:[],dictionari:0,did:[0,1,5,6,7,10,11,14],die:1,diff1:2,diff2:2,diff:2,diff_ag:2,diffeent:8,differ:[0,1,2,3,4,5,6,9,10,11,12,13,14,15,16,18,20],differenti:[3,15,16,17],differential_oper:[2,13],difficult:[0,1,6,10,13,18],difficulti:[0,1,13],diffonedim:2,digit:[0,1,3,4,6,17,19],dilemma:13,dilut:1,dim:[4,11,14,16],dimens:[0,1,2,3,4,5,8,11,14,16],dimension:[0,4,5,6,9,11,13,14,15,16],dimensionless:[0,3],diment:16,dimnsion:4,diod:3,direct:[0,1,2,4,11,12,13,14],directli:[1,4,5,6,18],directori:[],disabl:[3,4],disadvantag:0,disappear:[3,6],disc_loss:4,disc_tap:4,discard:[6,11],disciplin:[0,3,12],disclaim:18,discourag:13,discov:0,discover:5,discret:[1,3,5,7,13],discrimin:[4,7,10,11],discriminator_loss:4,discriminator_loss_list:4,discriminator_model:4,discriminator_optim:4,discuss:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],diseas:7,disguis:6,disord:[1,7],displai:[0,1,3,4,5,6,7,8,9,10,11,12,14,18],displaystyl:[0,5],displot:[],disregard:0,dissimilar:[11,14],dist:14,distanc:[0,8,9,11,14,18],distance_list:9,distinct:[3,7,8,9,10,14],distinctli:8,distinguish:[0,4,7,8,18],distplot:0,distribut:[0,1,4,6,7,10,11,13,14,15,16],distrubut:[0,15],div:5,dive:[0,8,16],diverg:[1,13],divid:[0,1,3,5,6,8,9,11,12,18],divis:[6,8,9,13,16,18],dna:7,dnn1:4,dnn2_gru2:4,dnn:[0,1,2,4,12],dnn_kera:1,dnn_model:1,dnn_numpi:1,dnn_scikit:[0,1],doc:[6,15,17,20],document:[4,7,11,13],doe:[0,1,2,3,4,5,6,8,10,11,12,13,16,18],doesn:[3,9,12],dog:[1,3,4],domain:[5,8,13],domin:0,don:[0,1,3,5,6,8,11,13,15],done:[0,2,3,4,5,6,9,10,11,13,16],dot:[0,2,3,5,6,7,8,9,10,11,12,13,16,18],doubl:[3,4,16],doubli:1,down:[0,3,6,9,11,12,13],download:[0,1,3,5,6,16,20],downsampl:3,dozen:1,dq:6,drag:13,dramat:11,drastic:4,draw:[4,6,10,13],drawback:[0,1,3,13],drawn:[1,4,6,7,11,18],drive:[3,4],driven:3,drop:[0,1,5,6,11,13,18],dropna:[0,6],dropout:4,ds:5,dt:[2,3,13,18],dtype:[0,1,2,3,4,14,16],dualiti:6,dub:0,due:[1,2,5,6,8,10,12,13],dummi:0,dure:[0,1,3,4,8,9,11,15],dwell:0,dwh:1,dwo:1,dx:[2,3,8,18],dx_1:18,dx_1p:6,dx_2p:6,dx_mp:6,dx_n:18,dxp:6,dy:[1,8,18],dynam:4,dysth:19,dz:8,e:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18,19],e_:[0,2],each:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19],eager:[3,4],eapprox:0,earli:[1,3,4,13],earlier:[0,5,7,8,9,11,12,13],earthexplor:6,eas:[6,9,14],easi:[0,5,6,7,8,9,10,11,12,13,15,16],easier:[5,6,8,9,13,18],easiest:13,easili:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16],eastern:19,ebind:0,eblock:9,economi:5,ecosystem:15,ect:17,edg:3,edgecolor:6,edu:13,educ:0,eface79dac2c:10,eff:18,effect:[1,4,10,13,18],effic:1,effici:[0,3,10,13,15,16,18],efron:6,egrad:13,eig:[5,11,13,16,18],eigen:18,eigenpair:[5,11],eigenvalu:[0,5,8,11,13,16],eigenvector:[5,11,13],eight:16,eigval:[16,18],eigvalu:[11,13],eigvec:[16,18],eigvector:[11,13],eispack:16,either:[1,5,6,7,8,9,10,11,13,18],ekstrom:[],elabor:18,elarn:3,electr:[0,3,12],electur:20,eleg:11,element:[1,2,3,4,5,6,7,8,11,12,13,15,16,17,20],elementari:[10,13,16],elementwis:[3,13],elementwise_grad:[2,13],elif:[2,3,4,14],elim:16,elimin:[3,5,8],els:[1,2,3,4,7,9,12,13,16],elu:1,elus:0,email:[17,19],embed:[0,11],embodi:6,emit:18,emner:[17,20],emphas:[0,10,15],emphasi:[0,15,20],empir:[1,11,18],emploi:[0,1,5,6,11,13,18],employ:0,empti:[6,10],emul:12,en:[15,20],enabl:11,enbodi:6,encod:[0,3,5,9,11,14],encompass:[0,18],encount:[0,1,5,6,7,13,18],end:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],end_box:[2,13],end_nod:[2,13],end_valu:[2,13],endl:[],endpoint:[3,6],energi:[0,4,6],enet_coordinate_desc:6,enforc:12,eng:20,engin:[0,1,3,4,15],english:20,enorm:3,enough:[0,6,13],ensembl:[1,9,17],ensur:[0,1,2,3,5,6,11,13,18],ensure_initi:[3,4],enter:[5,6],enthought:[0,15],entir:[1,3,7,9,15,18],entiti:[9,12,16],entri:[0,5,8,11,12,16],entropi:[1,3,7,10,13],enumer:[0,1,2,3,4,6,8],env:[0,1,2,3,4,5,6,7,8,11,13,14,18],environ:[2,15,20],eo:[0,6],eol:0,eosfit:0,epoch:[0,1,3,4,12,13],epsilon:[0,5,6,7,13],epsilon_0:0,epsilon_1:0,epsilon_2:0,epsilon_:0,epsilon_i:0,eq:[3,13,14,16,18],eqnarrai:[3,5,6],equal:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18],equat:[1,3,4,5,6,7,8,9,10,11,13,14,16,17,18],equilibrium:[2,12],equiv:[3,13,16,18],equival:[0,1,5,8,11,13,15,16],erf:18,err:[0,10],err_:6,err_sqr:2,errat:13,errno:[],erron:2,error:[1,2,4,5,6,7,9,11,12,13,15,16,18],error_estimate_corr_tim:18,error_handl:[3,4],error_hidden:1,error_output:1,escap:13,especi:[1,3,9,12,13],essenti:[0,5,6,9,10,12,14,17,18],establish:[0,6,10,11],estim:[0,1,5,6,7,10,11,13,15,18],estimated_mse_fold:6,estimated_mse_kfold:6,estimated_mse_sklearn:6,et:[0,2,4,17,20],eta0:[8,13],eta:[0,1,3,8,12,13],eta_:13,eta_t:13,eta_v:[0,1,3],etc:[0,1,3,5,7,8,9,11,12,13,14,15,16,18],ethic:15,etsim:6,euclidean:[0,14],evalu:[0,2,3,4,5,6,9,13,18],evalut:13,even:[0,1,3,4,5,6,8,9,10,11,12,13,14,15,16,18],evenli:4,event:[3,4,5,7,10,14,18],eventu:[5,6,11,12,13,19],everi:[0,1,2,3,4,5,6,9,10,11,12,13,14,15,18],everyth:[4,12],everywher:[4,13],evolv:0,exact:[0,2,5,11,12,13,16,18],exactli:[0,3,4,6,12,15],examin:6,exampl:[5,11,12,13,15,16,17,18,20],exce:[1,12,13],excel:[0,1,4,5,10,20],except:[3,4,5,6,8,9,16],excess:0,excit:0,exclud:[1,6,12],exclus:[0,1,3,6,18],execut:[2,3,4,5,13],executing_eagerli:[3,4],exemplifi:13,exercis:[5,15,17],exhaust:6,exhibit:[0,5,6,8],exist:[0,1,2,3,5,6,7,8,9,13,16,20],exit:[5,16],exp:[0,1,2,5,6,7,8,10,11,12,13,18],exp_term:1,expand:[5,7,11,13],expans:[0,3,5,8,10,12,13],expect:[0,1,5,6,7,11,12,13,15],expectation_value_of_h_wrt_p:18,expens:[6,10,13],experi:[0,1,6,8,13,15],experiment:[0,3,4,6,9,14,18],experimental_get_tracing_count:[3,4],expert:[1,9],explain:[0,6,9,10,11,13],explained_variance_ratio_:11,explanatori:0,explicit:[0,3,6,13,16],explicitli:[0,4],explod:1,exploit:[0,3,12,13],explor:[1,4,6,8,13,15],expon:1,exponenti:[0,1,5,6,10,13,18],export_graphviz:9,export_text:9,exporttext:9,expos:15,express:[0,2,3,5,6,7,10,12,13,16,18],exptmean:18,exptvari:18,extend:[2,5,7,11,13,15],extens:[0,12,15],extent:[0,1,6,20],extern:[3,6,9],extra:[1,3,5],extract:[0,3,5,6,7,8,11,13,16],extrapol:0,extrem:[0,1,4,5,6,7,8,9,13,16],extremum:13,extrins:11,ey:[0,5,6,13,14,16],f11:0,f12:0,f13:0,f1:13,f1_grad:13,f1d:13,f2:13,f2_grad_x1:13,f2_grad_x1_analyt:13,f2_grad_x2:13,f2_grad_x2_analyt:13,f3:13,f3_grad:13,f3_grad_analyt:13,f4:13,f4_grad:13,f4_grad_analyt:13,f5:13,f5_grad:13,f6:13,f6_for:13,f6_for_grad:13,f6_grad_analyt:13,f6_while:13,f6_while_grad:13,f6d7a289d493:[],f7:13,f7_grad:13,f7_grad_analyt:13,f8:13,f8_grad:13,f9:[0,13],f9_altern:13,f9_alternative_grad:13,f9_grad:13,f:[0,1,2,3,4,5,6,7,8,10,12,13,14,16,18,19],f_0:[3,10],f_1:[10,13],f_2:[12,13],f_3:12,f_:10,f_d:18,f_grad:13,f_grad_analyt:13,f_i:[6,12],f_m:[3,10],f_n:3,f_raw:2,f_vec:2,f_wrap:2,face:13,facecolor:[6,8,18],facil:[0,15],facilit:12,fact:[0,1,3,5,9,11,12,13],factor:[0,1,3,5,6,9,10,11,13,16,18],factori:13,fade:6,fafab0:[9,10],fail:[0,6,7,8,11,13,19],failur:7,fairli:[1,2,18],fake:4,fake_loss:4,fake_output:4,fall:[8,9,17],fals:[0,1,2,3,4,5,6,7,9,10,13,14,16],famili:[0,7,8,18],familiar:[0,3,5,6,8,15,16,18],famou:[6,12],far:[0,3,4,5,6,8,11,12,13,14],fashion:[0,9,10],fast:[1,3,6,10,12,13,15,18],faster:[1,11,13],fastest:[13,16],favor:7,favorit:18,fc:3,fdf8a5d7c717:2,fdfcc778e1f8:4,fe5b9d300cc0:6,featur:[0,1,3,5,6,7,8,10,11,12,13,15,18],feature_nam:[0,1,7,9],feautur:9,fed:1,feed:[0,2,3,11,15,17],feed_forward:1,feed_forward_out:1,feed_forward_train:1,feedback:4,feeddorward:4,feedforward:[1,4,12],feel:[0,5,6,11,13,15,19],feet:0,fetch:6,fetch_california_h:[],fetch_openml:[],few:[1,3,4,5,9,18],fewer:[0,9,11],ffnn:[1,12],field:[0,3,6,12,15],fifth:[0,6],fig:[0,1,2,3,4,6,7,12,13,14],fig_id:[0,6,7,9],figaxi:18,figsiz:[0,1,2,3,4,6,7,8,9,10],figur:[0,1,2,3,4,5,6,7,8,9,10,12,13,14,15],figure_id:[0,6,7,9],figurefil:[0,6,7,9],file:[0,1,2,4,5,6,7,9],file_prefix:4,filenam:[],filenotfounderror:[],fileout:[],filepath_or_buff:0,fill:[5,9],filter:[3,4],filtered_flat_arg:[3,4],filtered_tb:[3,4],financ:0,find:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,15,18],find_top_boxed_arg:2,fine:[0,14],finish:2,finit:[3,5,6,12,13,18],first:[0,1,2,3,5,6,7,8,9,10,11,13,14,16,17,18,20],firsteigvector:11,fit:[1,3,4,5,6,7,8,9,11,12,13,18],fit_beta:6,fit_intercept:[0,5,6],fit_mod:9,fit_transform:[0,6,8,9,11],fiti:0,five:[0,9],fix:[0,3,4,6,10,11,12,13],fixedformatt:6,fixedloc:6,fkkt:5,flag:4,flat:[12,13],flatten:[1,3,4,5,16],flexibl:[1,6,8,10,12],float32:[4,9],float64:[4,16],flop:[5,16],flow:[1,4,12],fluctuat:5,fly:11,flyvbjerg:[],fm:0,fma:[],fmax:3,fmesh:13,fn:[3,4],focu:[0,3,4,5,6,15,20],focus:[1,6,7,16],fold:[6,9],folder:[0,4,6],follow:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],font:[0,7,18],fontdict:18,fontsiz:[1,6,8,9,10,18],fontweight:1,footprint:3,foral:8,forc:[0,5,6,10,11],forcast:4,forecast:[4,12],forelesningsvideo:17,forest:[0,1,9,15,17],forget:11,form:[0,3,4,5,6,7,8,9,11,12,13,15,16,18],formal:[3,4,14,18],format:[0,1,2,3,4,6,7,8,9,10,11,15,18,20],format_data:4,formatstrformatt:[6,13],formul:[4,6,11,14],formula:[3,13,18],forth:[4,12],fortran2003:15,fortran90:18,fortran:[0,15,16],fortun:[0,11],forward:[0,3,6,15,16,17],forward_backward:[3,4],found:[1,2,4,5,6,12,13],foundat:15,four:[4,5,6,8,12,16,17],fourier:0,fourierdef1:3,fourierdef2:3,fourierseriessign:3,fourth:12,fr:5,frac:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,16,18],fractal:[],fraction:9,frame:7,framework:[1,8,10,18],frank:[5,11],frankefunct:[5,6,11],free:[0,6,11,13,15,16,18,19,20],freecodecamp:15,freedom:5,freeli:0,frequenc:[3,6,7,18],frequent:[0,8,9,13],frequentist:15,fresh:10,frida:19,fridai:17,friedman:[6,17,20],friendli:4,frog:3,from:[0,1,2,3,4,6,7,8,9,11,13,14,15,16,17,18,19,20],from_cod:9,from_logit:[3,4],from_tensor_slic:4,fromnumer:2,front:[0,4,5],fstream:[],fulfil:[2,5,12],full:[0,1,3,5,7,9,10,13,18],full_matric:5,fulli:[3,6,12,17,18],fun:[2,13,15],fun_nam:[],func:[0,2],functionali:11,fundament:[0,6,15],funtion:2,further:[2,9],furthermor:[0,3,5,6,7,11,12,13,15],futur:[0,4,8,9],futurewarn:[],fx:5,fy:[17,19],g0:2,g42mrgv128v34gnnhxwk9nrc0000gp:[],g:[0,1,2,3,4,5,6,8,9,10,11,13,18],g_0:2,g_1:[2,10],g_2:[2,10],g_:[2,9,10],g_analyt:2,g_dnn_ag:2,g_euler:2,g_i:2,g_m:[3,10],g_n:3,g_re:2,g_t:2,g_t_d2t:2,g_t_d2x:2,g_t_dt:2,g_t_hessian:2,g_t_hessian_func:2,g_t_jacobian:2,g_t_jacobian_func:2,g_trial:2,g_trial_deep:2,g_vec:2,gain:[1,5,9,10,13],galleri:0,game:4,gamma1:8,gamma2:8,gamma:[0,2,8,9,10,11,13],gamma_0:10,gamma_1:10,gamma_1x:10,gamma_:0,gamma_i:[0,8,18],gamma_j:13,gamma_k:13,gamma_m:10,gamma_x:0,gap:[6,8],gate:[4,12],gather:[0,1,12],gaug:12,gaussbacksub:16,gaussian:[4,5,6,8,14,18],gaussian_point:14,gaussian_rbf:8,gave:13,gbc:17,gca:[2,6,8,13],gd:1,gd_clf:10,gdclassiffiercgain:10,gdclassiffierconfus:10,gdclassiffierroc:10,gdm:13,gdregress:10,ge:[1,5,7,18],gemv:5,gen:[],gen_loss:4,gen_tap:4,gender:0,genener:4,gener:[0,1,2,3,5,6,8,10,11,12,13,14,16,18,20],generallay:12,generate_and_save_imag:4,generate_imag:4,generate_latent_point:4,generate_simple_clustering_dataset:14,generated_imag:4,generator_loss:4,generator_loss_list:4,generator_model:4,generator_optim:4,genexpr:[],genom:15,geodes:11,geometr:[0,13],geometri:5,georg:20,geotif:6,geq:[2,5,8,9,13],geron:[0,17,20],get:[0,1,2,3,4,5,6,7,9,10,11,13,15,16,18],get_dummi:9,get_loc:[],get_next_color:[],get_paramet:2,get_split:9,get_yaxi:8,get_yticklabel:6,getsolutionslic:5,getval:[],gg:[],gibb:15,gif:4,gini:10,gini_index:9,git:[0,15],github:[0,3,4,6,14,15,17,20],gitlab:[0,15],give:[0,1,2,3,5,6,7,8,9,10,12,13,14,15,17,18,20],given:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],global:[6,7,13],glorot:1,gmail:[],go:[0,1,3,5,6,8,9,11,12,13],goal:[0,7,9],goe:[0,1,2,5,6,13,14,16],golden:13,gone:5,gong:1,good:[1,3,4,5,6,9,10,11,13,15,17,18,20],goodfellow:[4,17,20],googl:[1,3,4,14,15],got:[1,6],gov:6,gp:20,gpu:1,grad:[2,13],grad_analyt:13,grade:17,gradient:[0,3,4,7,8,9,12,15,17],gradient_desc:3,gradientboostingclassifi:10,gradientboostingregressor:10,gradients_of_discrimin:4,gradients_of_gener:4,gradienttap:4,gradual:[1,14],grai:[4,6],graph:[1,9,11,12,13],graph_from_dot_data:9,graph_funct:[3,4],graphic:[0,1,9],grasp:0,gray_r:[1,3],grayscal:3,great:[5,13],greater:[1,7,18],greatli:13,greedi:9,green:[0,3,9,18],grei:4,grid:[1,3,6,7,8,12,18],grossli:13,ground:0,group:[0,6,7,9,14,15,17],groupbi:0,grow:[1,3,9,10],growth:0,gru:4,guarante:[0,3,4,13,18],guess:[1,4,10,13,14],guestrin:10,guid:1,guilherm:19,h1:2,h21:17,h:[0,1,5,6,8,13,18,20],h_1:[2,13],h_2:[2,13],h_:[0,13],h_m:10,ha:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],habit:0,had:[0,1,6,7,13],hadamard:[1,12],half:[1,8,9],halv:10,hand:[0,1,2,3,5,11,12,13,15,16,17,18,20],handi:3,handl:[0,1,2,5,9,11,15],handle_unknown:9,handsid:12,handwrit:12,handwritten:[1,5],happen:[1,2,3,4,5,6,10,13,18],hard:[1,7,8,10,13],hardcopi:15,harder:[0,1],harmon:3,hasn:1,hassl:[0,15],hast:15,hasti:[0,6,17,20],hat:[1,5,6,7,9,10,11,12,13,16],have:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],haven:1,he:7,head:[0,4,10,18],header:0,heads_proba:10,health:0,hear:[0,13],heart:[0,7],heatmap:[0,1,3,7],heavili:0,heavisid:1,height:[1,3,6],held:13,help:[0,1,4,12,13],helper:[4,14],henc:[0,5,6,8,9,10,12,13],her:7,here:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],hereaft:[0,8,12],hermitian:16,hessenberg:16,hessian:[0,2,5,13],heterogen:[9,10],hi:7,hidden:[1,3,4,12],hidden_bia:1,hidden_bias_gradi:1,hidden_layer_s:[0,1],hidden_neuron:4,hidden_weight:1,hidden_weights_gradi:1,hierarch:5,high:[0,1,2,3,4,5,6,9,10,11,13,14,15,16],higher:[0,1,3,5,6,8,13],highest:[1,2],highli:[0,3,4,10,15,16,20],highwai:0,hing:8,hint:13,hip:15,hire:0,hist:[4,6,7,18],histogram:[0,6,7,18],histor:[7,11],histori:[3,4,12],histplot:[],hit:[],hitherto:5,hjorth:19,hobbi:18,hoc:5,hoff:20,hold:[1,3,6,13,14],holder:0,home:0,homework:[6,13],homogen:[1,3,9,10,13],honchar:2,hopefulli:[0,11,18],horizont:11,hors:[3,7],hot:[1,9],hour:[1,15,17,18,19],house_pric:[],how:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],howev:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],hs:[],hspace:[0,4,8,10,18],hstack:1,htf:17,html:[7,11,15,17,20],http:[3,4,6,7,11,13,14,15,16,17,20],huang:0,huber:0,huge:[1,3,4,15],human:[0,1,3,6,9,12],humid:9,hundr:1,hungri:1,hybrid:17,hydrogen:0,hyperbol:[1,4,12],hyperparam:8,hyperparamet:[3,4,5,6,9,13],hyperplan:11,i0:0,i1:[0,6,8,12],i2:[0,8,12],i3:[0,12],i5:0,i:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18,19],i_1:[5,6],i_2:[5,6],i_:13,ian:20,ic:1,id:[7,13],ida:19,idea:[0,1,2,3,4,6,9,10,12,13,16],ideal:[0,2,6,8,13,18],idem:6,ident:[5,6,12,13,16],identical:5,identifi:[0,1,7,9,11,12,13,14],idum:[],ieor:18,ifi:20,ifs:15,ignor:[0,1,3,9],ii:[16,18],iii:16,ij:[0,1,3,6,8,12,14,16,18],ik:[0,16],illustr:[5,7,10,12,13,14,15],im:6,imag:[1,3,4,6,9,11,12,14,20],image_at_epoch_:4,image_batch:4,image_height:3,image_path:[0,6,7,9],image_width:3,imageio:6,images_from_seed_imag:4,imagin:1,immedi:[0,3,4,6,15],implement:[0,2,3,4,5,6,8,9,10,11,12,13,14,18],impli:[3,5,6,7,13,16],implicit:3,implicitli:[11,18],importantli:3,impos:[0,6,11,12],imposs:[0,5],impress:[0,12],improv:[0,4,5,9,10,11,13],impur:9,imread:6,imshow:[1,3,4,6],in3050:20,in4080:20,in4300:20,in5400:[3,20],in_out_neuron:4,inaccur:13,inacio:19,inact:12,inadequ:0,inch:6,includ:[0,1,2,3,4,5,6,7,11,12,15,18,19,20],include_bia:[6,9],incom:12,incorrect:1,incoveni:8,increas:[0,1,3,4,5,6,7,8,9,11,12,13,18],increasingli:18,ind:6,inde:[0,2,4,5,6],indefinit:4,indent:[],indentationerror:[],independ:[0,5,6,7,8,12,13,18],index:[0,1,3,4,10,14,15,16,18,20],index_col:0,index_of:[],indic:[0,1,3,4,5,6,9,10,11,13],indispens:6,individu:[1,6,7,10,12,18],indu:0,indx1:2,indx2:2,indx3:2,indx:16,ineffici:[3,13],inequ:8,inequaltii:13,inertia:13,inf1000:15,inf1100:15,inf1100l:15,inf1110:15,inf3000:20,inf4490:20,inf5860:20,infeas:9,infer:[0,1,4,6,20],infer_nrow:0,inferenc:1,infil:[0,6,7,9],infin:[5,6,7,11],infinit:3,infinitesim:18,influenc:[6,10],influenti:1,inform:[0,1,3,4,6,9,11,12,13,14,16,20],infti:[3,6,13,18],ingeni:13,ingrad:2,ingredi:[0,9],inher:6,inherit:16,initi:[0,1,2,6,10,13,14,16,18],initial_epoch:[3,4],initialis:[],initialize_root:[],inject:14,inlin:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],inner:13,innov:20,inp:4,inplac:13,input:[0,1,3,4,5,6,7,8,9,10,12,13,14,18],input_dim:1,input_shap:[3,4],inputs:1,inputs_shuffl:[0,1],insert:[3,5,6,8,10,18],insid:[0,4,7],insight:[0,1,5,15,20],insist:[6,13],inspir:[0,1,12,20],instabl:2,instal:[0,1,5,6,9],instanc:[0,1,2,4,6,9,11,13],instanti:10,instead:[0,1,2,3,4,5,6,8,9,11,13,14,16,18],institut:1,instruct:[0,1],int32:10,int64:[],int_0:18,int_:[3,6,18],int_a:18,intak:0,integ:[1,2,13,14,16,18],integer_vector:1,integr:[3,6,18],intellig:[0,14,20],intend:10,intens:1,intention:14,interact:[0,6,9,12,15],intercept:[0,6,8,11,13],intercept_:[0,6,8,9,13],interchang:[5,12,16],interconnect:1,interest:[0,1,2,3,4,5,6,7,8,9,12,15,17,18],interfac:[0,1,16],interior:[0,9],intermedi:16,intern:[1,10,12],interpol:[1,3,4,6,12],interpr:5,interpret:[0,1,6,9,10,12,13,16,18],interv:[0,3,5,6,7,13,18],intial:13,intract:[0,4],intrins:[3,11,16,18],intro:[15,20],introduc:[0,1,5,6,8,10,12,13,16,18],introduct:[1,2,4,13,17,20],introductori:[0,4,16,20],intuit:[0,5,6,8,12,13],inv:[0,5,13],invalid:1,invalu:[0,13,15],invari:1,invd:5,inver:8,invers:[0,3,6,13],invers_period:[],inverse_transform:8,invert:[0,5,7,10],invok:[0,8],involv:[0,2,6,7,11,12],io:[0,15,17,20],iomanip:[],iostream:[],ip:[0,8,18],ipca:11,ipykernel_42331:[],ipykernel_42376:[],ipykernel_42449:[],ipykernel_42456:[],ipykernel_42530:[],ipykernel_42541:[],ipykernel_42553:[],ipykernel_42573:[],ipykernel_42580:[],ipykernel_42586:[],ipykernel_47411:[],ipykernel_47448:[],ipykernel_47647:[],ipykernel_47724:[],ipykernel_47735:[],ipynb:15,ipython:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15],iq:6,iri:[8,9],irreduc:6,irrelev:5,irrespect:0,is_integ:[],isbox:[2,13],iscomplexobj:[],isinst:[2,13],isn:5,isnul:0,isomap:11,issu:[1,3,4,9,14,16],it_arrai:13,item:[0,13],items:16,iter:[1,2,3,4,6,7,8,11,13,14,18],itr:5,its:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,20],itself:[5,6,12,18],ix:[],j1:16,j:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18,20],j_:6,j_lasso_sk:6,j_ridge_sk:6,j_sk:6,jackknavg:[],jackknif:[6,15],jackknstd:[],jackknvar:[],jackknvec:[],jacobian:[2,13],jacobian_shap:2,jargon:[],jason:4,jax:[3,4,14],jensen:19,jerom:20,ji:[12,16],jj:[0,5,6],jk:[0,1,6,12,16],jl:0,jm:16,joao:19,joaogca:19,job:[2,8,10],join:[0,4,6,7,9],joint:[4,5],journal:[],judg:13,judgement:6,julia:[15,16],jump:18,junk:4,jupyt:[0,15,20],just:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18],justif:0,justifi:[3,10],jy:[],k0:7,k1:7,k:[0,1,3,5,6,7,8,9,10,11,12,13,14,15,16,18],kaggl:6,kappa_d:18,karim:[],karlsen:[],karush:8,keep:[0,1,4,5,6,11,13,14,16],keepdim:[1,6,10,16],kei:[0,1,3,6,12,20],kept:[4,6,14],kera:[0,4,15],kernel:[0,1,3,15],kernel_regular:[1,3],kernel_s:4,kernelpca:11,kev:0,kevin:20,keyboardinterrupt:[2,3,4],keyerror:[],keyword:[6,13,16],kfold:6,kg:1,ki:16,kick:[1,13],kiener:2,kilomet:6,kind:[0,2,3,4,8,12,13,14],kj:[6,12,16],kjm:15,kkt:[5,8],kktsolver:5,kl:18,km:12,kmean:14,kmeanspoint:14,kn_k:14,know:[0,1,2,5,6,8,13,15],knowledg:[0,15],known:[1,3,4,5,6,7,8,9,12,16,18,20],kondev:0,kp:18,kpca:11,kroneck:14,kuhn:8,kwarg:[0,2,3,4,13],kwd:[0,3,4],kwown:0,l0:7,l1:[0,1,3,5,7],l1_l2:[1,3],l1regl:5,l1regls_mosek2:5,l1regls_mosek:5,l2:[1,3],l:[0,1,2,3,5,6,7,8,10,11,12,13,16,18],l_1:7,l_2:[7,13],l_:16,l_j:12,la:13,la_i:12,la_k:12,lab:[15,17],label:[0,1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,18],label_prob:13,labelencod:[7,10],labels:[6,8,9],labels_shuffl:[0,1],laboratori:17,lack:0,lagari:2,lagrang:[8,11],lambda:[0,1,2,3,5,6,7,8,10,12,13,18],lambda_0:11,lambda_1:[5,8,11],lambda_2:[8,11],lambda_:11,lambda_i:[8,11],lambda_iy_i:8,lambda_jy_iy_j:8,lambda_k:8,lambda_n:[5,8],lamda:1,lamdbda:5,land:[0,8],landmark:8,landscap:13,langl:[0,6,11,18],languag:[0,1,4,8,15,16,20],lapack:[5,16],laplac:5,laptop:15,larg:[0,1,2,4,5,6,8,9,10,11,13,15,16,18,20],larger:[0,3,5,6,8,10,11,13,18],largest:[4,8,11],lasso:[0,7,15,17],lasso_sk:6,last:[0,1,2,3,4,5,6,7,8,9,10,12,13,16,17,18],latent:4,latent_dim:4,latent_point:4,latent_space_value_rang:4,later:[0,1,4,6,7,8,12,13,14,15],latest:4,latest_checkpoint:4,latter:[0,3,5,6,7,8,11,13,16,17,18],lattic:12,law:0,layer:[0,4,13],lbfg:[7,9,10,11],lcc:[5,6],lda:11,ldot:[0,6,11],le:[5,7,10,13,18],lead:[0,1,3,5,6,7,8,9,10,11,12,13,16,18],leaf:9,leaki:1,leakyrelu:4,lear:13,learn:[3,4,5,6,7,8,9,10,12,16,17,20],learnabl:3,learner:10,learning_r:[3,8,10],learning_rate_init:[0,1],learning_schedul:13,least:[0,2,7,8,10,11,15,16,17,18],leat:13,leav:[0,1,3,5,6,9,11],lectur:[0,1,5,10,11,12,13,15,16,17,20],lecturenot:[15,20],lecturenovember11:[],lecturenovember12:[],lecturenovember19:[],lecturenovember25:[],lecturenovember26:[],lecturenovember4:[],lecturenovember5:[],lectureoctober14:17,lectureoctober15:17,lectureoctober1:[],lectureoctober21:[],lectureoctober22:[],lectureoctober28:[],lectureoctober29:[],lectureoctober7:[],lectureoctober8:[],lectureseptember10:[],lectureseptember16firstpart:[],lectureseptember16secondpart:[],lectureseptember17:[],lectureseptember23:[],lectureseptember24:[],lectureseptember2:[],lectureseptember30:[],lectureseptember3:[],lectureseptember9:[],lecturethursdayaugust26:[],lecturethursdayaugust27:[],left:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,16,18],leftarrow:[8,12],legend:[0,2,3,4,5,6,7,8,9,10,13],len:[0,1,2,3,4,5,6,8,9,10,11,12,16],len_index:0,length:[0,1,2,3,4,8,9,13,15],length_of_sequ:4,leq:[0,5,7,8,13,14,18],less:[0,1,3,4,5,6,8,9,13,18],lessen:1,let:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],letter:[0,16,18],level:[0,1,5,6,9,15,16,17],li:[8,11],lib:[0,1,2,3,4,6,7,8,11,13,14],liblinear:[8,10],librari:[0,1,2,3,4,5,6,9,10,11,16,18,20],licens:[0,1,15],lie:[0,6,11,18],life:[0,1,8,12],lifetim:13,like:[0,1,2,3,4,5,6,7,9,10,11,12,13,15,16,18],likelihood:[0,1,5,9,13],lim_:18,limit:[0,5,6,7,8,11,12,16],lin_clf:8,lin_model:0,lin_reg:9,linalg:[0,2,5,6,8,11,13,16,18],line1:8,line2:8,line2d:13,line3:8,line:[0,1,3,6,8,11,13],linear:[1,3,5,6,7,9,10,11,12,15,17,18],linear_model:[0,5,6,7,8,9,10,11,13],linear_regress:6,linearli:5,linearloc:[6,13],linearregress:[0,6,7,9],linearsvc:8,liner:[1,3],linerar:10,linewidth:[0,2,4,6,8,9,10],link:[0,4,9,12,15],linlag:5,linpack:16,linreg:0,linspac:[0,2,3,4,6,8,9,10,13,16,18],linu:4,linuek:[],linux:[0,1,15],liquid:0,list:[0,1,2,3,4,5,9,15],listcomp:2,listedcolormap:[9,10],literatur:[1,7,14,20],littl:[1,3,9,12],live:8,ll:[0,18],lle:0,lloyd:[4,14],lmb:[2,5,6],lmbd:[0,1,3],lmbd_val:[0,1,3],lmbda:13,ln:[1,13],lo:5,load:[0,1,4,6,7,9,10],load_boston:0,load_breast_canc:[1,7,9,10,11],load_data:[3,4],load_digit:[1,3],load_iri:[8,9],loc:[0,3,6,7,8,9,10],local:[0,1,3,7,12,13],locat:[2,3,8],lock:[3,4],log10:[5,6],log:[0,1,2,4,5,6,7,9,10,11,13,16],log_:0,log_clf:10,logarithm:[0,5,7,16],logic:[0,1,9],logist:[0,1,2,8,9,10,11,12,15,17],logistic_predict:13,logisticregress:[7,9,10,11],logit:7,logreg:[7,9,10,11],logspac:[0,1,3,5,6],longer:[2,3,8,10,14,16,18],loocv:6,look:[0,1,2,3,4,5,6,7,8,9,10,11,13,16,18],loop:[1,4,6,10,12,14,15,16],lose:1,loss:[0,1,3,4,5,6,7,8,10,11,13,16],loss_fil:4,lossfil:4,lost:4,lot:[0,1,4,6],low:[0,6,9,10,11],lower:[0,1,3,6,9,10,16],lowercas:16,lowest:[9,13,18],lr:[1,3,4,10],lstat:0,lstm:4,lstm_2layer:4,lstsq:0,lt:6,lu:[0,5],lubksb:16,luckili:2,ludcmp:16,lux:16,lvert:1,lw:0,m:[0,1,2,3,5,6,8,9,10,11,12,13,16,17,18,19,20],m_1:14,m_:[9,12],m_h:0,m_k:14,m_l:12,m_n:0,m_p:0,m_t:13,ma:11,mac:[3,4,14],machin:[1,3,4,5,6,7,9,10,11,12,14,16,17,20],machinelearn:[6,15,17,20],mackai:20,made:[0,1,3,4,5,6,7,9,11,12],mae:0,magic:4,magnitud:[1,6,7,13],mai:[0,1,2,3,5,6,7,8,9,11,12,13,15,16,18],mail:17,main:[0,1,3,4,5,6,7,9,16,20],mainli:[0,5,6,7,9],maintain:6,major:[1,6,9,10,13,16],make:[1,2,3,4,5,6,7,8,11,12,13,15,16,18,20],make_axes_locat:6,make_moon:[8,9,10],make_pipelin:[0,6,10],make_vjp:[2,13],makedir:[0,6,7,9],makeplot:0,malcondit:16,malign:[1,7,9],mammographi:5,manag:[0,2,3,15],mani:[0,1,3,4,5,6,7,8,9,11,13,14,15,16,18,20],manifold:11,manner:3,manual:6,map:[0,1,2,6,7,8,11,12,14,18],margin:[0,5,8],mari:19,marit:0,marker:[0,7,16],markov:15,marsaglia:18,mask:[],mass:[0,1,5,13],massag:0,masses2016:0,masses2016ol:0,masses2016tre:0,masseval2016:0,master:[6,17],mat1100:15,mat1110:15,mat1120:15,mat3155:[],mat4155:[],mat:15,match:[0,1,4,5,13,14],materi:[4,5,7,13,16],math:[3,7,12,13,16,18,20],mathbb:[0,4,5,6,7,8,11,12,13,14,16,18],mathbf:[0,5,6,7,8,13,16],mathcal:[1,5,6,7,13],matheemat:3,mathemat:[0,6,11,12,13,15,16,17,18,20],mathrm:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,18],matmul:[1,2,5],matmul_adjoint_1:2,matmul_vjp_0:2,matmul_vjp_1:2,matnat:[17,19,20],matplotlib:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],matplotlibdeprecationwarn:[6,13],matric:[0,1,3,4,6,7,8,11,13,15],matrix:[0,2,3,4,6,7,8,10,13,18],matshow:1,matter:[2,3,13],max:[0,1,2,3,4,9,10,12,13],max_depth:[0,9,10],max_diff1:2,max_diff2:2,max_diff:2,max_it:[0,1,7,8,11,13],max_iter:14,max_leaf_nod:10,max_queue_s:[3,4],max_sampl:10,maxdegre:[0,6,10],maxdepth:10,maxim:[1,4,5,7,8,11],maximum:[0,1,2,3,5,7,8,9,10,13,14],maxpolydegre:[5,6],maxpooling2d:3,mbox:[5,6],mc:[],mcculloch:12,mcint:[],mcintsqr2:[],md:11,mdoel:4,mean:[1,2,3,4,5,6,7,9,10,11,12,13,14,15,16,18],mean_absolute_error:0,mean_divisor:14,mean_i:18,mean_matrix:14,mean_squared_error:[0,4,6,7,10],mean_squared_log_error:0,mean_vector:14,mean_x:18,meaning:[0,4,7],meansquarederror:0,meant:[2,3,7,10,13],meantempvec:[],meanvec:[],measur:[0,1,2,5,6,9,11,12,14,18],mechan:[0,4,18],median:0,medicin:12,medium:[4,8,13],medv:0,meet:[0,19],mehta:0,memori:[3,4,11,12,13,16],mention:[0,12,13,18],mere:0,mersienn:[],meshgrid:[2,5,6,8,9,10,11],messag:[5,13],messi:2,met:[0,3,8],metadata:2,meteorolog:9,meter:6,method:[0,1,2,3,4,5,7,8,11,12,14,15,16,17,18,20],metion:6,metric:[0,1,3,6,7,9,10,14],metropoli:15,mev:[0,18],mgd:13,mglearn:15,mgrid:13,mhjensen:[1,2,3,4,6,7,8,11,14],mi:10,microsoft:20,mid:1,midel:4,midpoint:9,might:[0,1,2,4,6,9,13],mild:9,miller:[],millimet:6,million:0,mimic:12,min:[0,2,5,8,9],min_:[0,2,5,14],min_samples_leaf:9,mind:[0,6,13],mindboard:4,mine:15,mini:[1,11,12,13],minibatch:[1,11,13],minibathc:13,miniforge3:[0,1,2,3,4,6,7,8,11,13,14],minim:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14],minima:[0,1,7,13],minimum:[0,1,2,6,8,9,11,13],minmaxscal:0,minor:[6,13,18],minst:1,minu:7,mirror:9,misc:6,misclassif:[8,9,10],misclassifi:[8,10],miser:0,mismatch:1,miss:[0,10],mistak:4,mit:20,mix:[1,2],mixtur:13,mk:[9,16],mkdir:[0,6,7,9],ml:[0,1,10,13,16],mlab:18,mle:[5,7],mline:[],mlir:[],mlir_graph_optimization_pass:[],mlp:1,mlpclassifi:1,mlpregressor:0,mm:16,mn:[12,18,20],mnist:[1,11],mod:18,mode:17,model:[2,3,5,7,8,9,10,11,13,14,15,18,20],model_select:[0,1,3,5,6,7,9,10,11],moder:10,modern:[0,6,7,15],modif:[2,12,13],modifi:[0,1,3,5,7,8,10,12,13],modul:[0,2,3,4,5,6,7,8,9,10,11,13,16],modular:18,modulenotfounderror:[5,7,8,9],modulo:18,moe:[5,11],moment:[5,6,13,18],monitor:13,monoton:[5,12,18],mont:[0,6,15,18,20],montecarlocycl:[],moor:[5,6],more:[0,1,2,4,5,7,8,9,10,11,12,13,14,15,17,18],moreov:[0,3],morten:19,mortenimac:[],mosek:5,most:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18],mostli:[1,11],motion:[0,13],motiv:[1,4],move:[0,4,5,6,7,9,12,13,14,18],mp4:17,mpl:[0,7],mpl_toolkit:[2,6,13],mplot3d:[2,6,13],mplregressor:1,mse:[0,4,5,6,9,10],mse_simpletre:10,mselassopredict:5,mselassotrain:5,mseownridgepredict:6,msepredict:5,mseridgepredict:[5,6],msetrain:5,msg:[],msle:0,mt19937_64:[],mt:[7,12],mu0:18,mu1:18,mu2:18,mu:[0,6,11,13,18],mu_:[6,18],mu_i:6,mu_n:11,mu_x:18,much:[0,1,2,3,4,5,6,8,9,10,11,12,13,16,18],mul:5,multi:[0,1,3,7,15],multiclass:[1,7],multidimension:[11,12],multilay:1,multinomi:7,multipl:[2,4,5,6,7,12,13,18],multipli:[3,5,6,11,13,16,18],multiplum:8,multivari:[0,2,10,11,15,18],multivariate_norm:[11,14],murphi:[11,20],must:[0,1,2,5,6,8,10,12,13,14,18],mutat:7,mutual:[1,3,6,13],mx_:18,myenv:[0,1,2,3,4,6,7,8,11,13,14],myriad:[0,15],mz1:18,mz2:18,n1:16,n2:16,n:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16,18],n_0:[12,18],n_:[1,2,3,8,12,18],n_b:[],n_boostrap:[6,10],n_bootstrap:6,n_categori:[1,3],n_cluster:14,n_compon:11,n_epoch:13,n_estim:10,n_examples_to_gener:4,n_featur:1,n_filter:3,n_hidden:2,n_hidden_neuron:[0,1],n_i:18,n_input:[0,1,3],n_instanc:9,n_iter_i:[7,11],n_job:10,n_k:14,n_l:[12,18],n_layer:1,n_m:9,n_neuron:1,n_neurons_connect:3,n_neurons_layer1:1,n_neurons_layer2:1,n_point:14,n_sampl:[6,8,9,10,14],n_split:6,n_step:4,n_t:2,n_x:2,nabla:[1,13],nabla_:[2,13],nabla_w:13,nag:13,naimi:0,naiv:7,naive_kmean:14,nall:0,name:[0,1,3,4,5,6,7,8,9,10,12,13,14,15,16,18,19],nameerror:[6,10],namespac:[],narrow:13,nary_f:[2,13],nary_op_arg:[2,13],nary_op_kwarg:[2,13],nary_oper:[2,13],nation:[1,5],nativ:15,natur:[0,1,4,8,9,12,13,18,20],navier:12,nb:18,nb_:16,nboot:[],nd:14,ndarrai:[2,6],ndim:2,ne:[9,10,16,18],nearest:[1,3,6,11],nearli:13,neccesari:6,necess:2,necessari:[0,1,3,4,8,14],necessarili:[0,4,11,18],necesserali:5,neck:7,need:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,16,18],neg:[0,1,3,5,6,7,10,13,16,18],neg_mean_squared_error:6,neglect:18,neglig:18,neighbor:[3,6,11],neither:[4,13],neq:[13,14,18],nervou:12,nest:[2,9,12],nesterov:13,net:[2,4,12],netlib:16,network:[0,9,13,15,17,20],neural:[0,7,13,15,17,20],neural_network:[0,1,2],neuralnetwork:1,neuron:[1,2,3,4,12],neutral:0,neutron:0,never:[1,3,4,6,9,18],new_box:[2,13],new_root:[2,13],new_trac:[2,13],new_tracing_count:[3,4],newaxi:[0,3,6,9],newli:0,newton:[1,7,8,13,18],next:[0,1,2,3,4,5,6,8,9,13,14],next_guess:13,next_input:4,ng:1,ngini:[],ni:14,nian:[],nice:[0,1,5,11],nichola:[],nicholaskarlsen1102:[],niter:13,nitric:0,nlambda:[5,6],nlevel:[],nm:18,nm_n:0,nmse:6,nn:[2,5,6,12,16],nn_model:1,nnmin:2,node:[1,2,3,9,10,12],node_constructor:2,nois:[0,4,5,6,8,9,10,13],noise_dimens:4,noisi:[1,6],non:[0,1,3,4,5,6,7,9,10,11,12,13,14,16,18],none:[0,1,2,3,4,5,9,10,13,18],nonlinear:[3,6,8,9,11,12],nonneg:[6,9,13],nonparametr:6,nonsens:18,nonsingular:16,nonumb:[3,7,8,13,16],nor:[1,4,13],norm:[0,1,5,6,8,11,13],normal:[3,4,5,6,7,8,9,10,11,12,13,15,16,18],normali:16,normalize_kwarg:[],norwai:6,notat:[0,2,5,6,13,14,18],note:[0,1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18,20],notebook:[0,1,3,9,15],noth:[1,2,5,8,12,14,18],notic:[4,5,12,13,16,18],notimplementederror:[],notion:3,notrace_primit:[],novel:[3,6,10],novemb:1,now:[0,2,4,5,6,7,8,10,11,12,13,14,16,18],nowadai:[0,1,3,9,15],nox:0,np:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18],npr:2,nsampl:6,nspin:[],nt:2,nthi:0,ntrained_model:6,nu:18,nuclear:5,nuclei:[0,18],nucleon:0,nucleu:0,num:4,num_coordin:2,num_hidden_neuron:2,num_it:2,num_neuron:2,num_neurons_hidden:2,num_output:[3,4],num_point:2,num_tre:10,num_valu:2,number:[1,3,4,5,6,7,8,9,10,11,12,13,14,16,17,19],numberid:7,numberparamet:3,numer:[0,5,6,9,10,11,12,13,15,16,20],numpi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,18],numpy_vjp:2,numpy_wrapp:2,nunmpi:5,nvalu:[],nx:2,nx_test:6,nx_train:6,nx_train_mean:6,ny:18,ny_pr:6,ny_train:6,ny_train_mean:6,o:[0,6,7,8,9,11,16,20],obei:[6,11,13],object:[0,1,2,4,5,6,8,10,13,16],objsens:5,obliqu:5,observ:[1,3,5,6,7,8,9,10,11,12,13,14,18],obtain:[0,1,5,6,7,8,9,10,12,13,14,16,18],obviou:[5,6,11,18],obviouli:0,obvious:[0,4,5,6,16],oc:5,occupi:0,occur:[0,6,8,9,16,18],od:0,odd:[0,3,7],odenum:2,odesi:2,oen:0,off:[1,3,4,5,9,13,18],offer:[6,11,15,16,17],offic:19,offici:17,ofil:[],ofstream:[],often:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],ofter:16,ol:0,old:[1,5,10,13],ols_sk:6,ols_svd:6,olsbeta:5,omega:[2,3,6],omega_0:3,omit:[0,5],on_train_batch_begin:[3,4],onc:[1,6,9,11,13],one:[0,1,3,4,5,6,7,8,9,10,11,13,14,15,16,18],oneapi:[],onednn:[],onehot:1,onehot_vector:1,onehotencod:9,ones:[0,2,5,6,8,9,10,11,13,16,17],ones_lik:4,onl:3,onli:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],onlin:[11,17],onto:[5,11],op_nam:[3,4],open:[0,1,4,6,7,9,15,17],oper:[0,1,3,5,6,10,11,12,13,15,18],operation:18,oplu:18,opmiz:13,opportun:0,oppos:[6,13],opposit:[1,5,8],opt:[1,5],optim:[0,2,3,4,5,6,7,9,10,11,14,17],optimis:[1,3],optimizer_v2:3,option:[0,1,3,5,6,7,8,11,16],optionalxlacontext:[3,4],optmiz:[1,8,13],orang:0,order:[0,1,2,3,5,6,7,8,9,10,11,12,13,16,18],ordinari:[0,2,3,7,11,13,15,17],oreilli:20,org:[3,4,7,11,15,16,20],organ:[6,7,10,16],orient:[1,5,18],origin:[0,3,5,6,8,11,12,13,16],orthogn:5,orthogon:[0,5,6,8,11,13,16],orthonorm:5,os:[0,1,4,5,6,7,8,9],oscar:1,oscil:[3,13],oslo:[0,15,17,19],osx:[0,15],other:[0,1,2,3,5,6,7,8,10,13,14,15,17,18,20],otherwis:[0,1,4,7,13,16],ouput:[5,7,12],our:[1,2,3,6,7,8,9,10,12,14,15,16,17,18],ourmodel:0,ourselv:[0,5,6,8,11,13],out:[0,1,2,4,5,6,7,8,9,10,11,12,13,15,16,18],out_fil:9,outcom:[0,7,9,10,12,18],outdoor:9,outer:[6,12],outfil:4,outfilenam:[],outgrad:2,outlier:[0,8],outlin:[6,10,11],outlook:9,outperform:10,output:[0,1,3,4,5,6,7,8,9,10,12,13,16,18],output_bia:1,output_bias_gradi:1,output_shap:4,output_weight:1,output_weights_gradi:1,outputlayer1:12,outputlayer2:12,outsid:4,over1:13,over:[0,1,3,4,5,6,9,10,12,13,16],overal:[1,10],overcast:9,overcom:[12,13],overdetermin:0,overfit:[0,1,3,6,9,10,13],overflow:[1,5],overhead:12,overlap:[3,7,8,9],overlin:[0,5,6,9,10,11,14,16],overst:0,overtrain:4,overview:[3,20],own:[4,5,6,8,12,13,15,16],owner:0,ownridgebeta:6,oxid:0,oyvinssc:19,p0:2,p1:2,p:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18],p_:[2,4,8,9],p_hidden:2,p_i:[5,18],p_j:18,p_n:18,p_output:2,p_x:18,pack:0,packag:[0,1,2,3,4,5,6,7,8,11,13,14,15,18],pad:[3,4],page:[0,15],pai:[0,1,9,13],pair:[0,2,3,9,15,18],panda:[0,4,5,6,7,9,11,15],paper:1,paradigm:0,parallel:[10,16],param:[2,4],paramat:2,paramet:[0,1,2,3,4,5,6,7,8,9,10,12,13,18],parameter:[0,6,10],parametr:[0,6],paramt:[3,5],parent:2,parent_argnum:[],park:[],parser:0,part:[0,1,3,5,6,10,16,17,18,20],partial:[0,1,5,6,7,8,10,11,12,13,18],particip:[15,17],particl:[0,4,13,18],particular:[0,1,2,3,5,6,9,10,11,12,13,18,20],particularli:[5,6,8,11,13,18],partit:[1,4,9],partli:6,pass:[2,3,12,14],past:[10,18],patch:[6,18],path:[0,4,6,7,9,15],patient:7,patter:4,pattern:[0,3,4,12,17,20],pauli:0,pc:[11,15],pca:[0,7,15,17],pcolor:6,pcolormesh:6,pd:[0,4,5,6,7,9,11],pde:2,pdf:[0,3,4,5,6,9,20],pedagog:0,penal:6,penalti:[6,13],penros:[5,6],pentagon:13,peopl:[0,1,9,13,15],per:[0,1,6,17],percentag:[0,10,11],perceptron:[0,1,7],perfect:[0,1],perfectli:[4,6],perform:[0,2,3,4,5,6,8,10,11,12,13,14,15,16,18],performac:4,perhap:[0,5,13],perimet:1,period:[1,4,18],permut:11,persist:13,person:[5,6,7,17,19],perspect:20,pertin:12,petal:[8,9],peter:20,petersen:[],phantom:18,phase:[6,12],phenomena:18,phi:8,phi_k:8,philip:[],philosophi:13,phone:19,photo:4,phrase:0,physic:[0,1,4,7,12,13,18,19,20],pi:[2,3,5,6,7,9,12,13,18],pick:[1,9,10,11,13,14],pickl:1,pictur:0,pie:15,piec:[11,14],pillow:[0,15],pinv:[5,6,13],pip3:[0,1],pip:[0,1,15],pipelin:[0,6,8,10],pit:4,pitfal:6,pitt:12,pixel:[1,3,4],pixel_height:[1,3],pixel_width:[1,3],place:[0,4,6,8,13,16],plai:[0,3,4,5,6,8,11,15],plain:[8,10,12,13,14],plan:[6,9,19,20],plane:[8,9],plateau:5,platform:15,plausibl:12,pleas:[3,4,6,7,11,13,14],plenti:1,plethora:[3,12],plot:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],plot_confusion_matrix:[7,10],plot_count:6,plot_cumulative_gain:[7,10],plot_data:1,plot_dataset:8,plot_decision_boundari:[9,10],plot_import:10,plot_max:4,plot_min:4,plot_model:4,plot_numb:4,plot_predict:8,plot_regression_predict:9,plot_result:4,plot_roc:[7,10],plot_surfac:[2,6,13],plot_train:9,plot_tre:[9,10],plt:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],plu:[0,3,5,7],pm:8,pmatrix:2,pn:3,png:[0,4,6,7,9],point:[0,1,2,3,5,6,7,8,9,10,11,13,14,16,18,19],point_1:4,point_2:4,poisson:[15,18],poli:[6,8],poly100_kernel_svm_clf:8,poly3:0,poly3_plot:0,poly3dcollect:13,poly_featur:[8,9],poly_features10:9,poly_fit10:9,poly_fit:9,poly_kernel_svm_clf:8,polydegre:[0,5,6,10],polygon:13,polym:12,polynomi:[0,5,6,7,8,9,10,11],polynomial_featur:6,polynomial_svm_clf:8,polynomialfeatur:[0,6,8,9],polytrop:[0,6],pool:3,pool_siz:3,poor:[1,13],poorli:0,pop:2,popul:[0,5],popular:[0,1,3,6,7,8,9,11,12,15,16,18],popularli:0,portabl:10,portion:[11,13],pose:[0,4,5,6,11,18],posit:[0,1,2,3,5,7,8,10,11,13,14,16,18],possibl:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,18,19],posterior:5,postpon:0,postul:5,potenti:[0,3,5,6,12,13],potr:5,potrf:5,pott:12,power:[0,1,5,6,8,9,12,13],pp:[5,6],practic:[0,5,6,7,8,17,18],practition:[0,1,3],preced:[1,11,12,18],preceed:4,preceq:8,precis:[0,2,5,11,13,16,18],pred:[6,13],predicit:0,predict:[0,1,5,6,7,8,9,10,15,20],predict_prob:1,predict_proba:[7,10],predictor:[0,5,6,7,9,10,11],prefer:[0,1,6,8,9,11,15],prepar:[0,6,16],preprocess:[0,4,6,7,8,9,10,11],prerequisit:0,presenc:13,present:[0,5,6,9,12,13,16,17,18],preserv:[3,11,16],press:[13,20],pretrain:[1,4],pretti:[0,4,8,9,15],prev_centroid:14,prevent:[13,18],previou:[0,1,2,3,4,5,6,8,10,11,12,13,16,18],previous:[2,3,9,10,18],price:[0,4,9,13],primal:8,primari:[0,7],prime:18,primit:2,princip:[0,5,7,15,17],principl:[0,6,7,8,14],print:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16,18],print_funct:[8,9],printout:0,prior:[0,5,6],privat:0,prob:[1,18],probabilist:[0,20],probabl:[0,1,3,4,6,7,10,13,15,17],problem:[0,3,4,5,6,7,8,9,10,11,12,14,15,16,17,18],proce:[0,5,6,8,9,10,11,13,16],procedur:[2,4,5,6,8,10,11,13],proceed:16,process:[0,2,4,6,9,10,12,13,15,16,18,20],prod:20,prod_:[1,5,7],produc:[0,3,4,5,6,9,10,11,12,13,15,16,18],product:[0,1,3,5,6,7,8,12,13,15,16],profess:0,program:[0,1,4,5,6,8,12,14,15,16,17,18],programm:16,progress:[1,4,14],prohibit:6,project1:6,project:[0,1,2,3,5,11,13,15,17,19],project_root_dir:[0,6,7,9],promin:12,promis:8,prone:9,pronounc:[13,15],proof:[0,11,12,13],propag:[2,3,13,17],proper:[0,2,6],properli:[1,6,8,10,13],properti:[0,1,3,12,13,16],proport:[0,1,5,9,11,13,18],propos:[1,4,6,10],propto:[5,13],protect:[3,4],proton:0,prove:[3,13],provid:[0,1,3,4,5,6,8,9,10,12,13,15,16,18,20],proxi:[1,13],prune:9,pseudo:[16,18],pseudoinv:5,pseudoinvers:[5,6],pseudorandom:[6,18],psycholog:0,pt:13,ptratio:[],punish:[0,1],pure:[3,9,18],purest:9,puriti:9,purpos:[0,3,10,12,14],put:1,putarow:5,putboundslic:5,putclist:5,putobjsens:5,putqobj:5,py:[0,1,2,3,4,5,6,7,8,11,13,14],pydata:15,pydot:9,pylab:[0,7],pylint:[3,4],pypi:15,pyplot:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],pythagora:5,python2:0,python3:[0,1,2,3,4,6,7,8,11,13,14,15],python:[1,2,3,4,5,6,8,11,12,13,14,17,18],pytorch:[0,15],pywrap_tf:[3,4],q:[5,6,8,11,18],qp:8,qquad:[2,11,13,16],qr:[5,6,16],quad:[1,13,16],quadrat:[0,5,8,9,13],qualit:[4,9,18],qualiti:[0,9,15],quantifi:1,quantil:10,quantit:[0,6,9],quantiti:[0,2,5,6,7,9,10,11,12,14,16,18],quantum:[4,12],quartil:0,quench:5,queri:9,question:[0,5,6,9,11,12,13],qugan:4,quick:[4,18],quick_execut:[3,4],quickli:[1,3,9,11,13],quit:[1,5,6,9,10,12],quot:4,r2:[0,5,6],r2_score:0,r2score:0,r:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],r_1:9,r_2:9,r_j:9,r_m:9,rad:0,radial:[0,8,12],radioact:18,radiu:[0,1],rag:2,rain:9,rais:[0,2,13],ramp:1,ran0:18,ran1:18,ran2:18,ran3:18,rand:[0,4,5,6,9,10,13,16],rand_max:[],randint:[6,9,13],randn:[0,1,2,5,6,9,11,13],random:[0,1,2,3,4,5,6,8,9,13,14,15,16,17],random_devic:[],random_forest_model:10,random_index:13,random_indic:[1,3],random_st:[0,7,8,9,10,11],randomforestclassifi:10,randomli:[1,6,9,13,14],randomnumbergener:[],rang:[0,1,2,3,4,5,6,7,9,10,11,12,13,14,16,18],rangl:[0,6,11,18],rangle_x:18,rank:5,rankdir:4,raphson:[1,8,13],rapidli:0,rare:[1,13],rate:[0,1,2,3,4,8,9,10,12,13],rather:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18],ratio:[4,7,9,10,11],rational:0,ravel:[5,6,7,8,9,10,11,13,16],raw:3,raw_df:[],rbf:[8,11,12],rbf_kernel_svm_clf:8,rbf_pca:11,rc:[0,18],rcond:0,rcparam:[0,1,3,7,8,9,10,18],rd:[],re:[2,4,13],reach:[1,4,5,6,7,9,10,11,12,13,14],read:[0,2,3,4,5,6,7,8,11,12,16,17,18,20],read_csv:[0,6,7,9],read_fwf:0,reader:[0,6,16,18],readi:[0,1,5,6,8,10,11,12,16],readili:1,real:[0,1,2,4,7,10,11,12,13,16],real_loss:4,real_output:4,realist:8,realiti:18,realiz:[1,12],realli:[0,1],rearrang:13,reason:[0,1,3,4,10,13,20],reassign:1,rebuild:[],recal:[5,6,9,10,11,12,16,18],recalcul:[],recast:3,receiv:[1,3,10,12,18],recent:[0,2,3,4,5,6,7,8,9,10,13],recept:[3,12],receptive_field:3,recip:[0,6,7,16],reciproc:5,recogn:[0,4,5,10],recognit:[0,1,3,12,17,20],recommend:[0,2,3,4,5,6,8,13,15,16,17,20],reconsid:9,reconstruct:11,record:[10,17],recreat:[],rectangl:[9,13],rectangular:5,rectifi:[1,3,12],recur:[0,15],recurr:[0,1,15,17],recurs:[9,15,16],recycl:[],red:[0,3,4,6,8,9],redefin:[0,10],reduc:[1,3,5,6,9,10,11,13],reduct:[0,10,11,15,18],refer:[0,1,2,3,5,6,7,11,12,13,14,16,20],referenc:2,refin:12,refit:6,reflect:[0,1,4,5,18],refresh:[15,17],reg:[10,11],regard:[1,9,13],regardless:12,region:[3,4,6,9,12],regist:[6,18],reglasso:5,regr_1:[0,9],regr_2:[0,9],regr_3:[0,9],regress:[1,8,11,12,15,16,17],regressor:[0,7,10],regridg:[5,6],regular:[0,3,4,5,6,7,9,13],regularis:6,reilli:[0,20],reinforc:[0,8,15],reiter:1,rel:[0,4,6,7,9,12,13,18],relat:[0,1,3,4,5,11,13,14,16,18],relationship:[0,4,9],relativeerror:0,releas:[1,3,4,6,13,15],relev:[0,1,5,7,11,15,17,18],reli:[0,6,8],reliabl:[7,18],relu:[3,4],remain:[1,2,4,6,12,16,18],remaind:18,reman:2,remark:1,rememb:[0,8,13,16],remind:[0,5,11,13,16,18],remov:[0,4,5,6],render:0,reorder:[5,7],reorgan:0,repeat:[0,1,3,4,5,6,9,10,11,13,14,16,18],repeated:0,repeatedli:[6,10,13],repet:3,repetit:[6,17],rephras:13,replac:[0,1,3,4,5,6,10,12,13,14],replica:6,repositori:[0,4],repres:[0,1,2,3,4,5,6,7,8,9,10,12,13,18],represent:[0,1,3,6,18],representd:3,reproduc:[0,5,6,9,12,15,18],repuls:0,request:[0,13],requir:[0,1,3,4,5,6,8,9,11,12,13,16],res1:2,res2:2,res3:2,res_analyt:2,res_analytical1:2,res_analytical2:2,res_analytical3:2,resaml:6,resampl:[0,7,10,15,17],rescal:[0,11,12],rescu:5,reseach:6,research:[0,4,15,20],resembl:[6,18],reserv:[1,5,6,18],reset:[],reshap:[0,1,2,3,4,6,8,9,10,16],residenti:0,residu:[0,5,13],resiz:5,respect:[0,1,2,3,5,6,7,8,10,11,12,13,14,18],respond:12,respons:[0,7,9,12],rest:[0,5],restat:[0,12],restor:4,restored_discrimin:4,restored_gener:4,restrict:[0,3,9,12],result:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],result_typ:[],retail:0,retain:[5,6],return_data:14,return_kwarg:[],return_sequ:4,return_x_i:9,reus:[1,3,6],reveal:[0,12],revers:[1,16],review:[15,16,17],revisit:14,reward:[0,4],rewrit:[0,3,5,6,7,8,10,11,12,13,16,18],rewritten:[2,6,8,10,18],rewrot:13,rf:10,rgb:3,rgoj5yh7evk:15,rh:[5,6],rho:[0,10],rho_1:10,rho_2:10,rho_m:10,rich:0,ride:9,rideclass:9,ridedata:9,ridg:[0,7,11,13,15,17],ridge_sk:6,ridgebeta:5,right:[0,1,2,3,5,6,7,8,9,10,12,13,14,16,18],right_sid:2,rightarrow:[0,1,5,6,8,11,12,13,18],rigor:0,ring:6,rise:0,risk:[0,13],rival:4,river:0,rm:[0,18],rmse:0,rmsporp:13,rmsprop:[1,3,4,13],rnd_clf:10,rng:18,rnn1:4,rnn2:4,rnn:[4,12,17],rnn_2layer:4,rnn_input:4,rnn_output:4,rnn_train:4,rntrick1:18,rntrick2:18,rntrick3:18,rntrick4:18,ro:[0,13],robert:20,robust:0,robustscal:0,roc:10,role:[0,2,5,6,8,15],roll:6,room:[0,19],root:[0,5,9,13,18],rotat:[1,8,9,10],rotation_matrix:9,roughli:[1,3],round:[0,7,9,13],routin:[13,16],row:[0,1,2,5,6,7,9,11,16],rr:5,rrr:5,rthe:5,rug:13,rule:[0,1,5,6,13],run:[0,1,2,3,4,5,6,8,9,11,13,15],runtim:[1,6,14],runtimewarn:[1,6],rust:[0,15,16],rustad:19,rvert:1,rvert_2:1,s:[0,1,2,3,4,5,6,7,9,11,12,13,15,16,17,18,19],s_1:6,s_:[3,6],s_i:[6,7],s_j:6,s_k:6,saddl:13,safe:[],sai:[0,1,2,3,4,5,6,7,8,9,10,11,12,16,18],said:[6,9,13],sake:[0,5,7,11],sale:0,same:[0,1,2,3,4,5,6,8,9,11,12,13,14,16,18],samm:10,sampl:[0,1,2,3,4,5,6,7,8,9,10,13,14,15,16,18],sample_vari:14,sample_weight:[3,4],sampleexptvari:18,sastri:11,satisfactori:0,satisfi:[1,2,3,6,8,13,16,18],satur:[1,6],save:[0,4,6,7,9],save_fig:[0,6,7,9,10],savefig:[0,4,6,7,9,18],savetxt:4,saw:5,scalabl:10,scalar:[2,5,6,10,13],scale:[0,1,3,5,6,7,8,9,10,11,12,13,15,16,19],scale_mean:4,scale_std:4,scalei:[],scaler:[0,7,8,9,10,11],scalex:[],scan:[5,7],scari:5,scatter:[0,1,6,7,8,9,14],scenario:[6,13],schedul:13,scheme:[1,13],schrage:18,scienc:[0,1,10,12,13,15,17,18,20],scientif:[0,15],scientist:0,scikit:[3,5,6,7,8,9,10,13,15,16,17,20],scikitplot:[7,10],scipi:[0,3,5,6,13,15,16],scl:6,score:[0,1,3,6,7,9,10,11,19],scores_kfold:6,scratch:1,sdg:13,seaborn:[0,1,3,6,7],seamless:[0,15],search:[0,1,3,5,9,13],sec:6,second:[0,2,3,4,5,6,7,8,9,11,12,13,14,15,16,18],secondeigvector:11,secondli:12,section:[4,11,16,17,18],sector:0,see:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,18],seed:[0,1,2,3,4,5,6,8,9,11,13,14,18],seed_imag:4,seek:[1,2,8],seem:[1,3,4],seemingli:0,seen:[0,1,3,5,10,12,18],segment:13,seismic:6,seldomli:0,select:[1,5,6,8,9,10,11,17,18,20],self:[1,3,4,5,20],sell:4,semest:[7,17],semi:[8,13],semilogx:6,send:[5,12,13,19],senior:17,sens:[0,4,6,8],sensibl:3,sensit:[0,5,6,9,13],sent:2,sentenc:[4,12],sep:[],separ:[0,1,2,4,6,8,9,12,14,15,18],sequenc:[2,3,4,7,9,10,12,13,15,16,18],sequenti:[1,3,4,10,12,18],seri:[0,1,2,3,4,5,6,10,11,12,13,16,17],serif:[0,7,18],serv:[0,1,2,3,5,7,13,20],session:[1,17],set:[1,4,5,6,7,8,10,11,13,14,15,16,18],set_major_formatt:6,set_major_loc:6,set_stream:5,set_tick:[1,8],set_ticklabel:1,set_titl:[0,1,2,3,7,12,14],set_xlabel:[0,1,2,3,7,12],set_xlim:[7,12],set_xticklabel:1,set_ylabel:[0,1,2,3,7],set_ylim:[7,12],set_ytick:7,set_yticklabel:[1,6],set_zlim:6,seth:4,setiosflag:[],setminu:6,setosa:[8,9],setosa_or_versicolor:8,setp:6,setprecis:[],setse:5,setup:[1,4,5,6,8,15],setw:[],sever:[0,3,5,6,7,8,9,11,12,13,15,16,17,18],sgd:[1,3],sgd_clf:8,sgdclassifi:8,sgdreg:13,sgdregressor:13,sgn:5,sh:[],shallow:13,shape:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,16],share:[1,3],she:7,shift:[1,6,12,18],ship:3,shortcom:13,shorten:4,shorter:18,shortli:16,should:[0,2,3,5,6,8,9,11,12,13,16,18],should_sync:[3,4],show:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],show_shap:4,shown:[0,4,5,7,8,11,12,13,16],showpoint:[],shrink:[3,5,6,8,11],shrinkag:[5,6],shrunk:11,shuffl:[0,1,3,4,6,13],side:[0,2,5,8,12,13,16],sigh:15,sigma0:18,sigma1:18,sigma2:18,sigma:[0,1,5,6,7,10,11,12,13,16,18],sigma_0:5,sigma_1:5,sigma_2:5,sigma_:[5,16],sigma_fn:[7,12],sigma_i:[0,5],sigma_j:5,sigma_m:[6,18],sigma_n:[11,18],sigma_t:13,sigma_x:18,sigmoid:[1,2,4,7,8,10,12,13],sigmundson:[6,19],sign:[1,2,7,8,10,18],signal:[1,3,10,12],signatur:[3,4],signifi:4,signific:1,significantli:[1,13,18],sigurd:19,sim:[4,5,6,13,18],similar:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,16],similarli:[0,1,3,5,8,10,18],simpl:[1,2,3,5,6,7,8,10,11,12,14,15,16,18],simple_rnn:4,simplepredict:10,simpler:[0,1,5,6,13,15],simplernn:4,simplest:[0,1,3,4,9,10,12,14],simpletre:10,simpli:[0,1,2,4,5,6,8,9,10,11,12,15,16,18],simplic:[2,5,6,7,8,9,10,11,12,14],simplicti:5,simplifi:[0,6,9,15],simplist:[3,6,18],simul:6,simultan:6,sin:[0,1,2,3,4,9,12,13,16],sinc:[0,1,2,3,5,6,7,8,9,10,11,13,16,18,20],sine:[3,12],singl:[0,1,2,3,5,6,7,8,9,12,13,16,18],singular:[0,6,13,16,17],sinusoid:3,site:[0,1,2,3,4,6,7,8,11,13,14,17],situat:[0,4,5,7,13,18],six:[3,18],size:[0,1,2,3,4,5,6,8,9,10,11,13,16,18],sketch:10,ski:9,skill:0,skip:[3,4,11],skiprow:[],skl:[0,6],sklearn:[0,1,3,5,6,7,8,9,10,11,13,14],skplt:[7,10],sl:6,slack:8,slice:[2,16],slide:[0,3,18],slight:[6,13],slightli:[1,2,3,5,6,7,10,18],slope:[8,11,12],slow:[0,2,8,13],slower:[5,16],slowest:16,slowli:12,slp:1,small:[0,1,2,3,5,6,8,9,10,11,12,13,15,16,18],smaller:[0,1,2,5,6,8,9,11,13,18],smallest:[0,4,14],smallest_row_index:14,smooth:[0,3,6,13],sn:[0,1,3,6,7],sne:11,so:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18],soar:6,social:0,soft:[1,7,10,12],soften:8,softmax:[3,7],softwar:[0,8,15,16,17],sol:8,sole:[0,6],solid:[0,7],solitem:5,soltyp:5,solut:[0,1,2,3,5,6,8,10,11,13,16,18],solutionsummari:5,soluton:2,solv:[0,1,3,5,6,8,10,11,12,13,16,17],solve_expdec:2,solve_ode_deep_neural_network:2,solve_ode_neural_network:2,solve_pde_deep_neural_network:2,solveod:2,solveode_popul:2,solver:[2,5,7,8,9,10,11,16],some:[0,1,2,3,4,5,6,7,8,9,10,11,12,14,17,18],some_model:6,somehow:4,someth:[0,1,3,4,7,9,11,18],sometim:[0,1,11,12,13,14],soon:16,sophist:0,sopt:13,sort:[5,6,9,11,18],sound:[3,5],sourc:[0,1,3,6,15,16,18],space:[0,1,4,5,8,9,11,12,13,14,18],span:[0,3,5,9,11,16],spare:1,spars:[3,5,6,16],sparse_mtx:16,sparsecategoricalcrossentropi:3,sparsiti:10,spatial:[1,2,3,12],spdiag:5,speak:18,special:[6,7,10,12,13,16,18],specif:[0,1,2,3,4,5,6,7,8,9,11,12,15,16,18],specifi:[0,3,5,6,7,9,11,13,14,18],specifici:[0,10],spectacular:3,spectral:1,speech:[0,1,3,4,12],speed:[1,2,4,13],spend:18,sphere:0,spin:6,spite:0,spline:8,split:[1,3,4,5,6,8,9,10,11,14,18],splite:0,splitter:[1,10],spmatrix:5,spontan:18,spot:3,spread:[0,11,18],springer:20,spuriou:13,sqquar:5,sqrsignal:3,sqrt:[0,3,4,5,6,8,10,11,13,18],squar:[1,2,3,4,7,8,9,11,13,14,15,16,17,18],squarederror:10,squaredeuclidean:14,squash:12,squeez:2,srand:[],srtm:6,srtm_data_norway_1:6,sse4:[],stabil:5,stabl:[0,4,5,6,7,9,11,15],stack:[2,3,4],stacklevel:0,stage:[5,13],stai:[0,2,4,5,11],stand:[0,5,9,12],standard:[0,1,4,5,6,7,8,10,12,16,18],standard_basi:2,standardscal:[0,6,7,8,9,10,11],stanford:13,start:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,16,17,18],start_box:[2,13],start_nod:[2,13],start_tim:14,startpoint:[],stat:6,state:[1,2,4,5,6,7,8,10,11,12,13,15,18],statement:[0,7,16],statist:[0,1,3,4,7,9,10,11,12,13,14,16,17,20],statu:[0,7,11],stavang:6,std:[0,4,6],stdev:[],stdout:5,steep:13,step:[0,1,2,3,4,6,7,9,10,11,12,13,14,16],step_fn:[7,12],step_length:13,steps_list:9,steps_per_epoch:[3,4],stereo:3,stian:19,still:[2,3,5,6,11,13,18],stimuli:12,stk2100:20,stk3155:17,stk4021:20,stk4051:20,stk4155:17,stk5000:20,stk:20,stochast:[0,1,5,6,8,11,12,17],stock:4,stoke:12,stone:[0,7],stop:[1,4,7,9,11,13,14],storag:5,store:[0,1,2,3,6,11,13,18],storehaug:19,str:[1,3,4],straight:[0,6,8,13],straightforward:[0,2,3,5,6,8,9,10,13,16],strategi:[0,1,9],stratifi:6,streamtyp:5,strength:[0,5,14],stretch:11,strict:[8,13],strictli:[8,13],stride:[4,16],strike:6,string:1,stroke:7,strong:[3,6,9,10,12,16,18],strongli:[0,8,15,16],stronli:0,structur:[0,1,2,3,6,9,10,12,15],stuck:[1,13],student:[0,17,19,20],studi:[0,3,4,5,6,7,8,11,12,13,15,20],studier:[17,20],style:[0,7,9,16],sub:[9,12],subarg:[2,13],subdivid:[0,16],subfield:0,subject:[5,6,8,18],subplot:[0,1,3,4,6,7,8,9,10,13,14],subplots_adjust:[8,18],subprogram:16,subract:0,subroutin:0,subscript:1,subsequ:[1,4,5,6,12,16,18],subset:[1,6,9,12,13,15],subspac:[0,8,11],substanti:[9,10],substep:11,substitut:[3,6,12,16],subsubset:9,subtask:6,subtl:1,subtract:[0,4,5,6,11,13,16,18],subtre:9,subval:[2,13],succeed:[0,4],success:[3,7,9,13,18],successfulli:[4,9],sucess:[],sudo:[0,15],suffer:[0,1,2,5,10],suffici:[1,6,8,11,13],suggest:[1,13,20],suit:[8,12],suitabl:[0,18],sum:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],sum_:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,16,18],sum_i:[2,5,6,8,13],sum_j:6,sum_k:[6,8,12,16],sum_m:3,sum_n:3,sum_nx_:3,summar:[5,6,9],summari:[1,3,4,10,17],summat:3,sunni:9,superfici:3,superscript:[1,12],supervis:[0,5,6,7,9,12,15],supplement:7,support:[0,1,9,10,11,13,15,17],suppos:[0,5,6,7,8,10,11,12,13,16],suppress:[5,13],sure:[1,4,6],surf:6,surfac:[0,6],surpass:6,surpris:0,surround:[3,15],survei:[0,5,6],svc:[8,9,10],svd:[0,6,11,17],svdinv:5,svm:[8,9,10,11],svm_clf:[8,10],swap:2,swapax:2,swath:5,sy:[5,13],symbol:[1,5,11,13,15,18],symmeteri:1,symmetr:[0,5,8,11,12,13,16],symmetri:6,sympi:[0,15],synonim:18,syntax:[1,13],syntaxerror:1,syrk:5,system:[0,1,3,4,5,6,7,9,10,12,13,15,16,20],systemat:[4,6],t0:[3,6,13],t1:[2,13],t2:2,t3:2,t:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19],t_0:[2,9,13],t_1:13,t_:2,t_b:10,t_i:[1,2,12],t_j:[5,12],t_k:9,tabl:[9,18,19],tabul:0,tackl:4,tag:[2,3,4,5,6,7,12,13,14,16,18],taht:0,tail:18,tailor:[2,8,11],taiwan:0,take:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,18],taken:[0,1,3,6,10,13,16],tan:3,tangent:[1,4,12,13],tanh:[1,4,7,8,12,13],tape:[3,4],target:[0,1,3,4,5,6,7,8,9,10,11,12,13],target_nam:9,task:[0,1,3,5,6,9,11,12,14],tau:[3,5,18],tax:0,taylor:[2,13],taylornr:13,tc:8,team:1,teaser:0,technic:[0,5,6,13],techniqu:[0,1,8,10,13,15,17,18,20],technolog:[0,1],tek5040:20,tell:[0,4,6,10,11,13,18],temp1:1,temp2:1,temp:1,temperatur:[0,9],temporarili:1,ten:3,tend:[3,5,6,8,9,10,12,13,14],tendenc:0,tension:6,tensor:[3,4],tensorflow:[0,2,4,8,14,15,16,17,20],term1:[5,6,11],term2:[5,6,11],term3:[5,6,11],term4:[5,6,11],term:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18],termin:[0,4,5,9,10,13],terrain1:6,terrain:6,test:[3,4,5,6,7,8,9,10,13,14,16,18],test_acc:3,test_accuraci:[1,3],test_error:6,test_imag:[3,4],test_ind:6,test_input:4,test_label:[3,4],test_loss:3,test_pr:1,test_predict:1,test_rnn:4,test_scor:[7,10],test_siz:[0,1,3,5,6,10],test_split:9,testerror:[0,6],testi:4,testpredict:4,testx:4,text:[0,1,2,4,5,8,9,11,13,16,17,18,20],textual:9,textur:1,tf:[1,3,4,13,14],tfe_py_execut:[3,4],th:[0,1,2,5,6,7,9,12,13,14,16,18],than:[0,1,2,3,4,5,6,7,9,10,11,12,13,15,18],thank:[4,6],theano:[1,15],thei:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18],them:[0,1,3,4,6,8,9,10,11,12,13,16],theme:0,themselv:[0,18],thenc:6,theorem:[2,6,7],theoret:[0,4,10],theori:[0,1,3,8,9,12,13,15,17,20],thereaft:[0,5,6,11,12,16],therebi:[0,5,7,11],therefor:[0,1,2,3,4,6,7,8,11,13,18],therein:11,thereof:[0,6,13],theta:[1,4,13,18],theta_:[1,13],theta_i:1,theta_k:[],theta_linreg:13,theta_t:13,thi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],thing:[0,1,2,4,5,7,9,18],think:[0,1,3,4,6,9,12,13,14,18],third:[0,3,6,13],thirti:7,those:[3,5,6,8,9,10,11,16,17],though:[1,2,3,4,13,16,18],thought:[6,14,18],thousand:[0,1],thread:[3,4],three:[0,1,3,5,6,8,9,12,16,17,18,19],threshold:[1,3,9,10,11,12,13],through:[0,1,2,3,4,5,6,8,11,12,13,14,15,16,18],throughout:[0,4,5,14,15,16,18],thu:[0,1,2,5,6,7,8,10,11,12,13,19],thumb:[0,6],thursdai:17,tibshirani:[6,17,20],tick_param:6,ticker:[6,13,18],tif:6,tight_layout:[1,7],tightli:11,tild:[0,5,6,11,18],till:[0,4,7,8,9,10,12,16],time:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18],timefunct:[],timeit:4,timer:4,tini:1,tip:3,titl:[0,1,2,3,4,6,7,8,9,10,13,18],tmp:13,tmp_log:[3,4],tn:[2,3],to_categor:[1,3,4],to_categorical_numpi:1,to_numer:[0,6],to_str:[],todai:3,togeth:[0,3,6,8,11],toi:[13,14],told:13,toler:[2,6,14],tolist:4,tomographi:12,too:[0,2,4,5,6,9,11,13,18,20],took:8,tool:[0,1,3,6,13,15],toolbox:8,top:[0,3,5,6,9,10,15],top_node_typ:2,top_trac:2,topic:[0,5,6,7,8,15,17,20],topolog:[1,3,12],toposort:2,torkjellsdatt:19,toss:[10,18],total:[0,1,2,3,4,6,7,8,10,11,12,13,14,16,18,19],total_loss:4,totalclustervari:14,totalscatt:14,totalvari:[],toward:[1,2,7,12,13],town:0,tp:4,tpng:9,tqdm:6,trace:[2,13],trace_stack:[2,13],traceback:[0,2,3,4,5,6,7,8,9,10,13],traceback_util:[3,4],tracer:[2,13],track:[3,13,14,16],tract:0,tractabl:0,trade:[5,9],tradeoff:[0,5,17],tradit:[0,1,4,6],train:[2,3,5,6,8,9,10,11,12,13],train_accuraci:[0,1,3],train_dataset:4,train_end:[0,1],train_error:6,train_funct:[3,4],train_imag:[3,4],train_ind:6,train_label:[3,4],train_pr:1,train_siz:[0,1,3],train_step:4,train_test_split:[0,1,3,5,6,7,9,10,11],train_test_split_numpi:[0,1],trainabl:4,trainable_vari:4,trained_model:6,trainerror:0,traini:4,training_checkpoint:4,training_dataset:4,training_gradi:13,training_gradient_fun:13,training_loss:13,trainingerror:6,trainpredict:4,trainscor:4,trainx:4,trait:0,trajectori:4,tran:5,transfer:9,transform:[0,5,6,7,8,9,10,11,12,13,15,16],transit:[6,12],translat:[1,4,6,10],transpos:[1,5,11,16],travers:[0,5],treat:[0,1,3,6,12,13,18],tree:[0,1,6,15,17],tree_clf:[9,10],tree_clf_:9,tree_clf_sr:9,tree_reg1:9,tree_reg2:9,tree_reg:9,trend:18,trevor:20,tri:[2,3,4,9,13],triain:0,trial:[0,2,4,6,13,18],triangl:13,triangular:16,trick:[3,4,8,11,13,18],trickier:18,tridiagon:16,trillion:15,trivial:[0,1,5,11,18],troubl:[0,8,12],truck:3,true_beta:6,true_divid:1,true_fun:6,tucker:8,tumor:[7,9],tumour:7,tunabl:1,tune:[4,9,13,16],tup:[],tupl:[2,13],turn:[0,1,5,6,7,8,9,10,11,12,13,16,18],tutori:[1,4],tv:2,tveito:2,tweak:[1,4,10,18],twice:13,twist:11,twister:[],two:[0,1,2,4,5,6,7,9,10,11,12,13,16,17,18,20],tx:13,tx_1:13,txt:4,ty:13,type:[0,1,3,6,8,10,13,16,18],typeerror:[2,13],typic:[0,1,2,3,4,5,7,9,10,12,13,18],u:[0,2,5,6,10,11,12,16],u_:16,u_i:12,u_m:10,ua:0,ubuntu:[0,15],uci:0,uio:[17,19,20],un:14,unari:16,unary_f:[2,13],unary_oper:[2,13],unary_to_nari:2,unbalanc:[6,9],unbias:[0,5,6],uncent:6,uncertainti:[0,5],uncertitud:18,unchang:[1,3],uncorrel:[10,18],undefin:5,under:[0,1,5,6,10,13,15],underdetermin:0,underfit:[1,6],underflowproblem:5,undergo:5,undergradu:17,underli:[0,1,9,13,18],underset:[4,14],understand:[0,1,3,5,6,10,13,14,15],understood:[8,13],undesir:8,undetermin:[5,8],undo:4,unexpect:6,unexpected:18,unfair:6,unfortun:[1,8,9,10],unicode_liter:[8,9],uniform:[0,1,5,6,11,13,18],uniform_real_distribut:[],uniformli:[13,18],unifrompdf:18,unimport:13,union:[5,6],uniqu:[0,2,6,13,14,16],unique_cluster_label:14,unit:[0,1,3,4,5,10,12,18],unitari:[5,6,16],unitarili:16,uniti:18,univari:18,univers:[0,1,2,13,15,17,19],unix:1,unknow:[0,16],unknown:[0,1,3,4,5,6,8,10,16],unknowwn:12,unlabel:1,unless:[0,3,6,11,13],unlik:[1,3,8,13],unnecessarili:9,unord:3,unravel:1,unrol:[3,11],unseen:[0,7,9],unstabl:1,unsupervis:[0,1,4,12,15,17],unsymmetr:16,until:[1,2,4,9,12,13,14],untouch:0,unusu:12,up:[1,3,4,5,6,8,10,11,13,14,15,16,17,18],updat:[1,2,10,12,13,14],upload:[15,20],upon:[1,6,11,16],upper:[0,8,9,16],uppercas:16,upsampl:4,upscal:4,us:[4,5,6,8,9,10,11,12,14,16,17,18,20],usag:[0,8,15],usd10000:0,usd:0,use_bia:4,use_multiprocess:[3,4],usecol:0,useless:1,user:[0,1,2,3,4,6,7,8,11,14,15,16],userwarn:[3,4,6,14],usetex:18,usg:6,usr:18,usual:[0,3,4,7,12,13,14],ut:5,util:[0,1,3,4,6,7,10,14],ux:16,v0:18,v1:18,v2:18,v:[2,4,5,6,11,13,15],v_0:11,va:1,val:13,val_accuraci:3,val_loss:4,vale:2,valid:[0,1,4,7,9,10,13,15,17,18],validation_batch_s:[3,4],validation_data:[3,4],validation_freq:[3,4],validation_split:[3,4],validation_step:[3,4],valu:[0,1,2,3,4,6,7,8,9,10,12,13,14,15,16,17],valuat:9,valueerror:[0,2],valy:4,van:0,vandenbergh:[8,13],vandermond:0,vanilla:[0,6,11,14],vanish:[1,4,13,18],var_x:18,varabl:8,varepsilon:[5,6],varepsilon_:[5,6],varepsilon_i:[5,6],vari:[0,1,3,5,6,10],variabl:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16],varianc:[0,1,5,7,9,10,11,13,14,15,16,17,18],variance_i:[5,11],variance_x:[5,11],variant:[0,1,6,8,12,13],variat:[3,4,11],varieti:[0,3,12,15],variou:[1,3,5,6,7,8,9,11,12,13,15,16,18],vartempvec:[],varvec:[],varydimens:4,vastli:3,vaue:1,vault:0,vdot:[2,13],vec:6,vector:[0,1,2,3,4,5,6,7,9,10,11,13,14,15,17],vector_mean:14,ventur:[0,8,15],verbos:[1,3,4],veri:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,18,20],verifi:[3,11,16],versatil:8,versicolor:[8,9],version:[0,3,4,10,13,14,15,16,18],versu:1,vert:[0,1,5,6,7,8,9,11,13],vert_1:[5,6],vert_2:[5,6,11],via:[0,5,6,7,8,9,10,11,12,15,16,17,18],vidal:11,video:[0,1,12,15,17],view:[1,3,5,6,12,13,17,18,20],violat:8,virginica:9,viridi:[0,1,2,3],virtual:1,viscos:13,viscou:13,visibledeprecationwarn:2,vision:[0,3],visual:[0,3,11,12,15],visualis:1,viz:[6,8,18],vjp:[2,13],vjp_0:[],vjp_0_fun:[],vjp_1:[],vjp_1_fun:[],vjp_argnum:[],vjpfun:2,vjpmaker:[],vjpnode:[2,13],vmax:[1,6],vmc:[],vmin:[1,6],voic:3,volum:[0,3],vote:10,voting_clf:10,votingclassifi:10,votingsimpl:10,vrtx:17,vs:[0,4,6],vspace:[2,13],vstack:[5,11,16,18],vt:5,w1:8,w2:[8,11],w3:8,w:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16,18],w_1:[8,16],w_1x_1:8,w_1x_:8,w_2:[8,16],w_2x_2:8,w_2x_:8,w_3:16,w_4:16,w_:[1,12],w_hidden:2,w_i:[1,2,10],w_ix_i:12,w_j:16,w_m:16,w_output:2,w_px_:8,w_px_p:8,wa:[0,1,3,4,5,6,7,10,11,12,13,14,16],wai:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,16,18],walk:9,walker:18,wang:0,want:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,15,18],warn:[1,3,4,8,14],warrant:6,wast:3,watch:[3,4,15],wave:3,wavelet:8,we:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20],weak:[9,10,14],weather:[1,12],web:[15,17],webpag:17,websit:[6,16,17],wedg:[8,18],wednesdai:17,wee:11,week:[5,6,7],weekli:[15,20],weight:[0,1,2,3,6,7,9,10,12,13,18],weigth:2,welcom:[8,15],well:[0,1,2,3,4,5,6,7,8,9,10,12,13,15,16,17,18,20],went:8,were:[0,1,3,4,5,6,7,8,10,11,12,14,18],wessel:0,westbi:19,westby:19,what:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],whatev:3,when:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],whenev:[13,18],where:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19],wherea:[6,18],wherein:[1,12],whether:[0,3,5,7,9,18],which:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19],whichev:[1,3],white:9,who:[0,17],whole:[1,3,4,5,9,11,13],whose:[0,6,10,18],whow:[5,11],why:[0,1,3,6,13],wide:[0,1,3,6,7,12,15,16],widehat:6,width:[0,3,8,9],wieringen:0,win:10,wind:9,wing:19,winther:2,wiothout:6,wiscons:7,wisconsin:10,wisdom:6,wise:[0,1,5,12,13],wish:[0,2,5,7,8,11,13,14,16],with_std:0,wither:6,within:[0,2,3,4,7,9,12,13,14,18,20],withinclust:14,without:[0,1,5,6,8,9,11,12,13],won:0,wonder:8,word:[0,1,3,4,5,6,14,18],work:[0,1,4,6,7,8,9,13,15,17,18],worker:[3,4],workshop:17,world:[0,8],worldwid:0,wors:[0,1,3,4,6],worst:[],worth:9,would:[0,1,3,5,6,7,8,9,10,11,12,13,16,18],wrap:[2,6,16,17],wrap_util:[2,13],wrapper:0,write:[0,1,2,3,5,6,7,8,12,13,16],written:[0,2,3,5,11,12,13,15,16,18],wrong:[1,8],wrongli:10,wrote:[5,11],wrt:[2,10,13],wth:10,www:[15,16,17,20],wx_1:8,x0:8,x1:[4,8,9,10,13],x1_exampl:8,x1d:8,x2:[8,9,10,13],x2d:[8,11],x2d_train:11,x2dsl:11,x3:8,x:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],x_0:[0,5,11,16],x_1:[0,2,5,6,7,8,9,10,11,13,16,18],x_2:[0,2,5,6,7,8,9,10,11,13,16,18],x_3:[8,16,18],x_4:16,x_:[0,2,3,5,6,8,10,11,13,14,16,18],x_center:11,x_data:1,x_data_ful:1,x_hidden:2,x_i:[0,1,2,5,6,7,8,9,10,11,12,13,14,16,18],x_input:2,x_ix_:0,x_iy_i:8,x_j:[0,2,8,9,12,18],x_jy_j:8,x_k:[12,14,16,18],x_l:18,x_m:[6,12,16,18],x_n:[0,2,3,6,8,11,12,13,16,18],x_new:[9,10],x_offset:6,x_output:2,x_p:[3,7,9],x_poli:9,x_poly10:9,x_pred:4,x_prev:2,x_reduc:11,x_scale:8,x_test:[0,1,3,5,6,7,9,10,11],x_test_own:6,x_test_scal:[0,6,7,9,10,11],x_tot:4,x_train:[0,1,3,4,5,6,7,9,10,11],x_train_mean:6,x_train_own:6,x_train_scal:[0,6,7,9,10,11],x_val:1,xarrai:15,xavier:1,xbnew:13,xcode:[0,15],xdclassiffierconfus:10,xdclassiffierroc:10,xg_clf:10,xgb:10,xgbclassifi:10,xgboost:9,xgboot:10,xgbregressor:10,xgparam:10,xgtree:10,xi:[8,13],xi_1:8,xi_:8,xi_i:8,xk:8,xlabel:[0,1,2,3,4,5,6,7,8,9,10,13,18],xlim:[6,10],xm:9,xmesh:13,xnew:[0,13],xp:18,xpanda:0,xpd:[5,11],xplot:0,xs:9,xscale:0,xsr:9,xt_x:13,xtest:6,xtick:[3,6,8,9],xtrain:6,xu:0,xx:[0,5,16],xy:[0,6,8,16],xytext:8,xz:16,y1:4,y2:4,y3:4,y:[0,1,3,4,5,6,7,8,9,10,11,12,13,14,16,18],y_0:[0,5,11,16],y_1:[0,5,8,9,11,13,16],y_1y_1:8,y_1y_1k:8,y_1y_2:8,y_1y_2k:8,y_1y_n:8,y_1y_nk:8,y_2:[0,5,8,9,11,16],y_2y_1:8,y_2y_1k:8,y_2y_2:8,y_2y_2k:8,y_3:[0,9,16],y_4:16,y_:[0,1,5,6,10,11,16],y_data:[0,1,5,6],y_data_ful:1,y_decis:8,y_fit:0,y_i:[0,1,5,6,7,8,9,10,11,12,13,16],y_if_:10,y_ix_:0,y_ix_i:[7,8,13],y_iy_jk:8,y_j:[6,8,12],y_k:12,y_m:16,y_model:[0,4,5,6],y_n:[8,13],y_ny_1:8,y_ny_1k:8,y_ny_2:8,y_ny_2k:8,y_ny_n:8,y_ny_nk:8,y_offset:6,y_plot:9,y_pred1:9,y_pred2:9,y_pred:[0,1,4,6,7,8,9,10],y_pred_rf:10,y_pred_tre:10,y_proba:[7,10],y_scaler:6,y_test:[0,1,3,4,5,6,7,9,10,11],y_test_onehot:1,y_test_predict:0,y_tot:4,y_train:[0,1,3,4,5,6,7,9,10,11],y_train_mean:6,y_train_onehot:1,y_train_predict:0,y_train_scal:6,y_val:1,ye:[3,6,7],year:[0,15],yet:[0,1,6,8,11,13],yi:13,yield:[0,2,5,6,8,10,12,13,14,16,18],yk:8,ylabel:[0,1,2,3,4,5,6,7,8,9,10,13,18],ylim:[3,6],ym:9,ymesh:13,yn:0,yo:[8,9,10],yoshua:[1,20],you:[0,1,2,3,4,5,6,8,9,10,11,13,15,16,18,20],young:0,your:[1,2,4,5,6,8,11,13,15,16],yourself:[11,13],youtub:15,ypred:6,ypredict2:13,ypredict:[0,13],ypredictlasso:5,ypredictol:5,ypredictown:6,ypredictownridg:6,ypredictridg:[5,6],ypredictskl:6,ys:9,ytest:6,ytick:[3,6,8,9],ytild:[0,6],ytildelasso:5,ytildenp:0,ytildeol:5,ytildeownridg:6,ytilderidg:[5,6],ytrain:6,yx:16,yy:16,yz:16,z:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18],z_0:16,z_1:16,z_2:16,z_:[1,2,12,16],z_c:1,z_h:1,z_hidden:2,z_i:[1,12],z_j:[1,12],z_k:12,z_m:1,z_mod:9,z_o:1,z_output:2,zaman:18,zaxi:6,zero:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18],zeros_lik:4,zfill:4,zip:[2,4,6,13],zl:5,zm_h:0,zn:0,zone:0,zx:16,zy:16,zz:16},titles:["3. Linear Regression","14. Building a Feed Forward Neural Network","15. Solving Differential Equations with Deep Learning","16. Convolutional Neural Networks","17. Recurrent neural networks: Overarching view","4. Ridge and Lasso Regression","5. Resampling Methods","6. Logistic Regression","8. Support Vector Machines, overarching aims","9. Decision trees, overarching aims","10. Ensemble Methods: From a Single Tree to Many Trees and Extreme Boosting, Meet the Jungle of Methods","11. Basic ideas of the Principal Component Analysis (PCA)","13. Neural networks","7. Optimization, the central part of any Machine Learning algortithm","12. Clustering and Unsupervised Learning","Applied Data Analysis and Machine Learning","2. Linear Algebra, Handling of Arrays and more Python Features","Teaching schedule with links to material","1. Elements of Probability Theory and Statistical Data Analysis","Teachers and Grading","Textbooks"],titleterms:{"1":[],"10":17,"11":17,"12":17,"13":[],"14":17,"15":[],"16":17,"17":17,"18":17,"19":17,"2":[0,17],"20":[],"2021":[],"2022":19,"21":17,"22":17,"23":17,"24":17,"25":17,"26":17,"27":[],"28":17,"29":17,"3":17,"30":17,"31":17,"34":17,"35":17,"36":17,"37":17,"38":17,"39":17,"4":17,"40":17,"41":17,"4155":[],"42":17,"43":17,"44":17,"45":17,"46":17,"47":17,"5":17,"6":[],"7":17,"8":[],"9":17,"case":[8,10,18],"do":1,"final":12,"function":[0,1,6,7,8,10,11,12,13,18],"import":[5,16],"new":4,A:[0,1,4,8,9],And:13,Ising:6,The:[0,1,2,3,5,6,7,8,9,11,12,15],With:4,activ:[1,12],actual:[],ad:6,adaboost:10,adam:13,adapt:10,adjust:1,adversari:4,again:[3,9],aim:[8,9],algebra:16,algorithm:[9,10,11,12],algortithm:13,all:8,an:[0,4,10],analys:5,analysi:[0,5,6,11,15,18],ani:13,anoth:9,appli:15,approach:[0,8,14],approxim:12,architectur:1,arrai:16,assist:19,august:17,autocorrel:18,autograd:[2,13],automat:13,back:[1,11,12],background:15,bag:10,base:13,basic:[0,5,7,9,10,11,16],batch:1,bay:5,befor:11,better:8,bia:6,binari:1,binomi:[],bird:10,block:[],boost:10,bootstrap:[6,10],boston:0,breast:1,bring:12,build:[1,3,9],calcul:[],cancer:[1,7,9,11],cart:9,central:[13,15,18],chain:12,chang:10,chi:0,choos:1,cifar01:3,classic:11,classif:[1,9,10],classifi:8,clip:1,cluster:14,cnn:3,code:[0,1,2,5,9,11,12,14],collect:[1,3],compar:[2,10],complex:[0,6],complic:6,compon:11,comput:9,con:9,concept:18,conjug:13,continu:[],convex:[8,13],convolut:[3,12],correl:11,cost:[1,10],cours:[15,20],covari:[5,11,18],cross:6,cumul:[],data:[0,1,3,6,7,9,11,15,18],dataset:[1,3],decai:2,decis:[9,10],decomposit:[5,11,16],deep:[1,2],defin:1,definit:[],degre:0,demonstr:[],dens:0,deriv:[5,12],descent:[2,10,13],detail:3,develop:1,deviat:[],diagon:11,dice:[],differ:8,differenti:[2,13],diffus:2,dimension:[2,3,8],disadvantag:9,discret:18,disguis:[],distribut:[5,18],domain:18,down:1,dropout:1,element:[0,18],elimin:16,ensembl:10,entropi:9,environ:0,equat:[0,2,12],error:[0,10],euler:2,evalu:1,event:[],exampl:[0,1,2,3,4,6,7,8,9,10],exercis:[0,6],expect:18,experi:18,explor:0,exponenti:2,extrapol:4,extrem:10,ey:10,fall:19,famili:1,famou:16,featur:[9,16],feed:[1,12],fine:1,first:[4,12],fit:[0,10],forc:3,forest:10,forward:[1,2,12],fourier:3,frank:6,freedom:0,frequentist:0,from:[5,10,12],full:2,further:[3,5],fy:[],gan:4,gaussian:16,gd:13,gener:[4,9],geometr:11,gini:9,good:0,grade:19,gradient:[1,2,10,13],growth:2,ha:15,handl:16,hidden:2,hous:0,how:[],hyperparamet:1,hyperplan:8,i:1,id3:9,idea:11,implement:1,implic:5,improv:1,includ:13,increment:11,index:9,inform:19,input:2,instal:15,instructor:19,interpret:[5,11],introduc:11,introduct:[0,6,15,16],invers:[5,16],iter:10,its:[],jackknif:[],jungl:10,kera:[1,3],kernel:[8,11],lagrangian:8,lasso:[5,6],later:5,layer:[1,2,3,12],learn:[0,1,2,11,13,14,15],least:[5,6],level:10,librari:15,likelihood:7,limit:[1,13,18],linear:[0,8,13,16],link:[5,11,17,20],logist:[7,13],lu:16,machin:[0,8,13,15],main:18,make:[0,9,10],mani:[10,12],materi:17,math:5,mathemat:[3,5,8],matric:[5,16],matrix:[1,5,11,12,16],matter:0,mean:0,meet:[5,10,18],mercer:8,mersenn:[],method:[6,9,10,13],mlp:12,mnist:[3,4],model:[0,1,4,6,12],moment:[],momentum:13,moon:[8,9],more:[3,6,16],multilay:12,multipl:[1,3],multipli:8,name:[],network:[1,2,3,4,7,12],neural:[1,2,3,4,12],non:8,normal:[0,1],norwai:[],notat:12,novemb:17,now:[1,9],nuclear:0,nueral:7,number:[0,2,18],numer:[2,18],numpi:16,object:3,observ:[],obtain:11,octob:17,od:2,off:6,ol:[5,6,13],one:[2,12],oper:16,optim:[1,8,13,15],ordinari:[5,6],organ:0,oslo:20,other:[4,9,11,12,16],our:[0,4,5,11,13],outcom:15,output:2,overarch:[0,4,8,9],overview:10,own:[0,10,11],packag:16,part:[13,15],partial:2,pass:1,pca:11,pdf:18,perceptron:12,perform:[1,9],period:3,perspect:1,point:4,poisson:2,polynomi:3,popul:2,practic:13,pre:[1,3],predict:4,prerequisit:[3,15],princip:11,principl:3,pro:9,probabl:[5,18],problem:[1,2,13],procedur:9,process:[1,3],program:[2,13],project:6,prop:13,propag:[1,12],properti:[5,18],pseudo:[],python:[0,9,15,16],quick:8,ran0:[],random:[10,11,18],read:9,real:6,recip:[],recurr:[4,12],reduc:0,reduct:3,reformul:2,regress:[0,5,6,7,9,10,13],regular:1,relev:20,relu:1,remark:3,remind:[6,8],requir:[2,15],resampl:6,rescal:6,resourc:2,revisit:13,ridg:[5,6],rm:13,rng:[],rule:12,s:[8,10],sampl:11,schedul:17,schemat:9,scheme:2,scikit:[0,1,11],select:[],semest:19,septemb:17,set:[0,2,3,9,12],sgd:13,should:1,simpl:[0,4,9,13],singl:10,singular:[5,11],situat:[],soft:8,softmax:1,solv:2,solver:13,some:[13,16],specifi:2,split:0,squar:[0,5,6,10],standard:13,state:0,statist:[5,6,15,18],steepest:[10,13],stk3155:[],stochast:[13,18],superposit:3,supervis:1,support:8,svd:5,systemat:3,teach:[17,19],teacher:19,techniqu:[6,11],technolog:15,tensorflow:[1,3],test:[0,1],textbook:20,theorem:[5,8,11,12,18],theori:18,three:[],tip:13,togeth:12,top:1,toss:[],toward:11,trade:6,tradeoff:6,train:[0,1,4],transform:3,tree:[9,10],tune:1,two:[3,8,15],type:[2,4,12],uncorrel:[],uniform:[],univers:[12,20],unsupervis:14,up:[0,2,9,12],us:[0,1,2,3,7,13,15],valid:6,valu:[5,11,18],variabl:18,varianc:6,variou:0,vector:[8,12,16],view:[0,4,10],visual:[1,9],vs:3,wai:9,wave:2,week:17,weekli:17,what:0,which:1,why:[],wisconsin:7,write:[4,11],xgboost:10,your:[0,10]}}) \ No newline at end of file diff --git a/doc/LectureNotes/_build/html/statistics.html b/doc/LectureNotes/_build/html/statistics.html index 39d830bd9..e4ddce8bd 100644 --- a/doc/LectureNotes/_build/html/statistics.html +++ b/doc/LectureNotes/_build/html/statistics.html @@ -313,371 +313,48 @@ const thebe_selector_output = ".output, .cell_output"
1.1. Domains and probabilities - -
  • - - 1.2. Tossing the dice - -
  • -
  • - - 1.3. Stochastic variables - -
  • -
  • - - 1.4. Stochastic variables and the main concepts, the discrete case - -
  • -
  • - - 1.5. Stochastic variables and the main concepts, the continuous case - -
  • -
  • - - 1.6. The cumulative probability - -
  • -
  • - - 1.7. Properties of PDFs - -
  • -
  • - - 1.8. Important distributions, the uniform distribution - -
  • -
  • - - 1.9. Gaussian distribution - -
  • -
  • - - 1.10. Exponential distribution - -
  • -
  • - - 1.11. Expectation values - -
  • -
  • - - 1.12. Stochastic variables and the main concepts, mean values - -
  • -
  • - - 1.13. Stochastic variables and the main concepts, central moments, the variance - -
  • -
  • - - 1.14. Probability Distribution Functions - -
  • -
  • - - 1.15. Probability Distribution Functions - -
  • -
  • - - 1.16. The three famous Probability Distribution Functions - -
  • -
  • - - 1.17. Probability Distribution Functions, the normal distribution - -
  • -
  • - - 1.18. Probability Distribution Functions, the normal distribution - -
  • -
  • - - 1.19. Probability Distribution Functions, the cumulative distribution - -
  • -
  • - - 1.20. Probability Distribution Functions, other important distribution - -
  • -
  • - - 1.21. Probability Distribution Functions, the binomial distribution - -
  • -
  • - - 1.22. Probability Distribution Functions, Poisson’s distribution - -
  • -
  • - - 1.23. Probability Distribution Functions, Poisson’s distribution - -
  • -
  • - - 1.24. Meet the covariance! - -
  • -
  • - - 1.25. Meet the covariance in matrix disguise - -
  • -
  • - - 1.26. Covariance - -
  • -
  • - - 1.27. Meet the covariance, uncorrelated events - -
  • -
  • - - 1.28. Numerical experiments and the covariance - -
  • -
  • - - 1.29. Numerical experiments and the covariance - -
  • -
  • - - 1.30. Numerical experiments and the covariance, actual situations - -
  • -
  • - - 1.31. Numerical experiments and the covariance, our observables - -
  • -
  • - - 1.32. Numerical experiments and the covariance, the sample variance - -
  • -
  • - - 1.33. Numerical experiments and the covariance, central limit theorem - -
  • -
  • - - 1.34. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.35. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.36. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.37. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.38. Definition of Correlation Functions and Standard Deviation, sample variance - -
  • -
  • - - 1.39. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.40. Code to compute the Covariance matrix and the Covariance - -
  • -
  • - - 1.41. Random Numbers - -
  • -
  • - - 1.42. Random Numbers, better name: pseudo random numbers - -
  • -
  • - - 1.43. Random number generator RNG - -
  • -
  • - - 1.44. Random number generator RNG and periodic outputs - -
  • -
  • - - 1.45. Random number generator RNG and its period - -
  • -
  • - - 1.46. Random number generator RNG, other examples - -
  • -
  • - - 1.47. Random number generator RNG, other examples - -
  • -
  • - - 1.48. Random number generator RNG, RAN0 - -
  • -
  • - - 1.49. Random number generator RNG, RAN0 - -
  • -
  • - - 1.50. Random number generator RNG, RAN0 - -
  • -
  • - - 1.51. Random number generator RNG, RAN0 - -
  • -
  • - - 1.52. Random number generator RNG, RAN0 code - -
  • -
  • - - 1.53. Properties of Selected Random Number Generators - -
  • -
  • - - 1.54. Properties of Selected Random Number Generators - -
  • -
  • - - 1.55. Properties of Selected Random Number Generators - -
  • -
  • - - 1.56. Simple demonstration of RNGs using python - -
  • -
  • - - 1.57. Properties of Selected Random Number Generators - -
  • -
  • - - 1.58. Autocorrelation function - -
  • -
  • - - 1.59. Correlation function and which random number generators should I use - -
  • -
  • - - 1.60. Which RNG should I use? - -
  • -
  • - - 1.61. How to use the Mersenne generator - -
  • -
  • - - 1.62. Why blocking? - -
  • -
  • - - 1.63. Why blocking? - -
  • -
  • - - 1.64. Code to demonstrate the calculation of the autocorrelation function - -
  • -
  • - - 1.65. What is blocking? - -
  • -
  • - - 1.66. What is blocking? - -
  • -
  • - - 1.67. What is blocking? - -
  • -
  • - - 1.68. Implementation - -
  • -
  • - - 1.69. Actual implementation with code, main function - -
  • -
  • - - 1.70. The Bootstrap method - -
  • -
  • - - 1.71. Bootstrapping - -
  • -
  • - - 1.72. Bootstrapping, recipe - -
  • -
  • - - 1.73. Bootstrapping, code - -
  • -
  • - - 1.74. Jackknife, code - +
  • @@ -703,371 +380,48 @@ const thebe_selector_output = ".output, .cell_output" 1.1. Domains and probabilities - -
  • - - 1.2. Tossing the dice - -
  • -
  • - - 1.3. Stochastic variables - -
  • -
  • - - 1.4. Stochastic variables and the main concepts, the discrete case - -
  • -
  • - - 1.5. Stochastic variables and the main concepts, the continuous case - -
  • -
  • - - 1.6. The cumulative probability - -
  • -
  • - - 1.7. Properties of PDFs - -
  • -
  • - - 1.8. Important distributions, the uniform distribution - -
  • -
  • - - 1.9. Gaussian distribution - -
  • -
  • - - 1.10. Exponential distribution - -
  • -
  • - - 1.11. Expectation values - -
  • -
  • - - 1.12. Stochastic variables and the main concepts, mean values - -
  • -
  • - - 1.13. Stochastic variables and the main concepts, central moments, the variance - -
  • -
  • - - 1.14. Probability Distribution Functions - -
  • -
  • - - 1.15. Probability Distribution Functions - -
  • -
  • - - 1.16. The three famous Probability Distribution Functions - -
  • -
  • - - 1.17. Probability Distribution Functions, the normal distribution - -
  • -
  • - - 1.18. Probability Distribution Functions, the normal distribution - -
  • -
  • - - 1.19. Probability Distribution Functions, the cumulative distribution - -
  • -
  • - - 1.20. Probability Distribution Functions, other important distribution - -
  • -
  • - - 1.21. Probability Distribution Functions, the binomial distribution - -
  • -
  • - - 1.22. Probability Distribution Functions, Poisson’s distribution - -
  • -
  • - - 1.23. Probability Distribution Functions, Poisson’s distribution - -
  • -
  • - - 1.24. Meet the covariance! - -
  • -
  • - - 1.25. Meet the covariance in matrix disguise - -
  • -
  • - - 1.26. Covariance - -
  • -
  • - - 1.27. Meet the covariance, uncorrelated events - -
  • -
  • - - 1.28. Numerical experiments and the covariance - -
  • -
  • - - 1.29. Numerical experiments and the covariance - -
  • -
  • - - 1.30. Numerical experiments and the covariance, actual situations - -
  • -
  • - - 1.31. Numerical experiments and the covariance, our observables - -
  • -
  • - - 1.32. Numerical experiments and the covariance, the sample variance - -
  • -
  • - - 1.33. Numerical experiments and the covariance, central limit theorem - -
  • -
  • - - 1.34. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.35. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.36. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.37. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.38. Definition of Correlation Functions and Standard Deviation, sample variance - -
  • -
  • - - 1.39. Definition of Correlation Functions and Standard Deviation - -
  • -
  • - - 1.40. Code to compute the Covariance matrix and the Covariance - -
  • -
  • - - 1.41. Random Numbers - -
  • -
  • - - 1.42. Random Numbers, better name: pseudo random numbers - -
  • -
  • - - 1.43. Random number generator RNG - -
  • -
  • - - 1.44. Random number generator RNG and periodic outputs - -
  • -
  • - - 1.45. Random number generator RNG and its period - -
  • -
  • - - 1.46. Random number generator RNG, other examples - -
  • -
  • - - 1.47. Random number generator RNG, other examples - -
  • -
  • - - 1.48. Random number generator RNG, RAN0 - -
  • -
  • - - 1.49. Random number generator RNG, RAN0 - -
  • -
  • - - 1.50. Random number generator RNG, RAN0 - -
  • -
  • - - 1.51. Random number generator RNG, RAN0 - -
  • -
  • - - 1.52. Random number generator RNG, RAN0 code - -
  • -
  • - - 1.53. Properties of Selected Random Number Generators - -
  • -
  • - - 1.54. Properties of Selected Random Number Generators - -
  • -
  • - - 1.55. Properties of Selected Random Number Generators - -
  • -
  • - - 1.56. Simple demonstration of RNGs using python - -
  • -
  • - - 1.57. Properties of Selected Random Number Generators - -
  • -
  • - - 1.58. Autocorrelation function - -
  • -
  • - - 1.59. Correlation function and which random number generators should I use - -
  • -
  • - - 1.60. Which RNG should I use? - -
  • -
  • - - 1.61. How to use the Mersenne generator - -
  • -
  • - - 1.62. Why blocking? - -
  • -
  • - - 1.63. Why blocking? - -
  • -
  • - - 1.64. Code to demonstrate the calculation of the autocorrelation function - -
  • -
  • - - 1.65. What is blocking? - -
  • -
  • - - 1.66. What is blocking? - -
  • -
  • - - 1.67. What is blocking? - -
  • -
  • - - 1.68. Implementation - -
  • -
  • - - 1.69. Actual implementation with code, main function - -
  • -
  • - - 1.70. The Bootstrap method - -
  • -
  • - - 1.71. Bootstrapping - -
  • -
  • - - 1.72. Bootstrapping, recipe - -
  • -
  • - - 1.73. Bootstrapping, code - -
  • -
  • - - 1.74. Jackknife, code - +
  • @@ -1078,7 +432,8 @@ const thebe_selector_output = ".output, .cell_output"
    -
    +

    1. Elements of Probability Theory and Statistical Data Analysis

    1.1. Domains and probabilities

    @@ -1093,9 +448,6 @@ To this domain we have the corresponding probabilities

    \[ \{1/36,2/36/,3/36,4/36,5/36,6/36,5/36,4/36,3/36,2/36,1/36\}. \]
    -
    -
    -

    1.2. Tossing the dice

    The numbers in the domain are the outcomes of the physical process of tossing say two dice. We cannot tell beforehand whether the outcome is 3 or 5 or any other number in this domain. This defines the randomness of the outcome, or unexpectedness or any other synonimous word which @@ -1113,13 +465,9 @@ registering the sequence of outcomes, we will note that the numbers in the above \[ \{10,8,6,3,6,9,11,8,12,4,5\}. \]

    -
    -
    -

    1.3. Stochastic variables

    Random variables are characterized by a domain which contains all possible values that the random value may take. This domain has a corresponding probability distribution function(PDF).

    -
    -

    1.4. Stochastic variables and the main concepts, the discrete case

    +

    1.1.1. Stochastic variables and the main concepts, the discrete case

    There are two main concepts associated with a stochastic variable. The domain is the set \(\mathbb D = \{x\}\) of all accessible values the variable can assume, so that \(X \in \mathbb D\). An example of a @@ -1133,9 +481,6 @@ occur

    \[ p(x) = \mathrm{Prob}(X=x). \]
    -
    -
    -

    1.5. Stochastic variables and the main concepts, the continuous case

    In the continuous case, the PDF does not directly depict the actual probability. Instead we define the probability for the stochastic variable to assume any value on an infinitesimal interval @@ -1150,9 +495,6 @@ on a non-infinitesimal interval \([a,

    Qualitatively speaking, a stochastic variable represents the values of numbers chosen as if by chance from some specified PDF so that the selection of a large set of these numbers reproduces this PDF.

    -
    -
    -

    1.6. The cumulative probability

    Of interest to us is the cumulative probability distribution function (CDF), \(P(x)\), which is just the probability for a stochastic variable \(X\) to assume any value less than \(x\)

    @@ -1168,7 +510,7 @@ p(x) = \frac{d}{dx}P(x). \]
    -

    1.7. Properties of PDFs

    +

    1.1.2. Properties of PDFs

    There are two properties that all PDFs must satisfy. The first one is positivity (assuming that the PDF is normalized)

    @@ -1187,9 +529,6 @@ both discrete and continuous PDFs, this condition is

    \int_{x\in\mathbb D} p(x)\,dx & = 1. \end{align*} \end{split}\]
    -
    -
    -

    1.8. Important distributions, the uniform distribution

    The first one is the most basic PDF; namely the uniform distribution

    @@ -1209,9 +548,6 @@ p(x)dx = dx & \in [0,1]. \end{array} \]

    The latter distribution is used to generate random numbers. For other PDFs, one needs normally a mapping from this distribution to say for example the exponential distribution.

    - -
    -

    1.9. Gaussian distribution

    The second one is the Gaussian Distribution

    \[ @@ -1268,12 +604,9 @@ p(x) = \frac{1}{\sqrt{2\pi}} \exp{(-\frac{x^2}{2})},
    -_images/statistics_29_0.png +_images/statistics_32_0.png
    - -
    -

    1.10. Exponential distribution

    Another important distribution in science is the exponential distribution

    \[ @@ -1281,7 +614,7 @@ p(x) = \alpha\exp{-(\alpha x)}. \]
    -

    1.11. Expectation values

    +

    1.1.3. Expectation values

    Let \(h(x)\) be an arbitrary continuous function on the domain of the stochastic variable \(X\) whose PDF is \(p(x)\). We define the expectation value of \(h\) with respect to \(p\) as follows

    @@ -1303,9 +636,6 @@ follows

    \[ \langle x^n \rangle \equiv \int\! x^n p(x)\,dx \]
    - -
    -

    1.12. Stochastic variables and the main concepts, mean values

    The zero-th moment \(\langle 1\rangle\) is just the normalization condition of \(p\). The first moment, \(\langle x\rangle\), is called the mean of \(p\) and often denoted by the letter \(\mu\)

    @@ -1321,9 +651,6 @@ and often denoted by the letter \(\mu

    for a discrete distribution. Qualitatively it represents the centroid or the average value of the PDF and is therefore simply called the expectation value of \(p(x)\).

    -
    -
    -

    1.13. Stochastic variables and the main concepts, central moments, the variance

    A special version of the moments is the set of central moments, the n-th central moment defined as

    \[ @@ -1349,11 +676,11 @@ value of the deviation of the PDF from its mean value, interpreted qualitatively as the “spread” of \(p\) around its mean.

    -

    1.14. Probability Distribution Functions

    +

    1.1.4. Probability Distribution Functions

    The following table collects properties of probability distribution functions. In our notation we reserve the label \(p(x)\) for the probability of a certain event, while \(P(x)\) is the cumulative probability.

    - +
    @@ -1367,9 +694,6 @@ while \(P(x)\) is the cumulati
    Discrete PDF Continuous PDF
    Normalization $P_N=1$ $P(b)=1$
    -
    -
    -

    1.15. Probability Distribution Functions

    With a PDF we can compute expectation values of selected quantities such as

    \[ @@ -1382,9 +706,6 @@ while \(P(x)\) is the cumulati \]

    in the case of a continuous PDF. We have already defined the mean value \(\mu\) and the variance \(\sigma^2\).

    -
    -
    -

    1.16. The three famous Probability Distribution Functions

    There are at least three PDFs which one may encounter. These are the

    Uniform distribution

    @@ -1407,9 +728,6 @@ p(x)=\alpha \exp{(-\alpha x)}, \[ \sigma^2=\int_0^{\infty}x^2p(x)dx-\mu^2 = \frac{1}{\alpha^2}. \]
    -
    -
    -

    1.17. Probability Distribution Functions, the normal distribution

    Finally, we have the so-called univariate normal distribution, or just the normal distribution

    \[ @@ -1428,9 +746,6 @@ The mean value is

    \[ \mu =\frac{1}{b\sqrt{2\pi}}\int_{-\infty}^{\infty}b\sqrt{2}(a+b\sqrt{2}y)\exp{-y^2}dy=a. \]
    -
    -
    -

    1.18. Probability Distribution Functions, the normal distribution

    Similarly, the variance becomes

    \[ @@ -1454,9 +769,6 @@ centered around zero and with a variance -

    1.19. Probability Distribution Functions, the cumulative distribution

    The exponential and uniform distributions have simple cumulative functions, whereas the normal distribution does not, being proportional to the so-called error function \(erf(x)\), given by

    @@ -1465,9 +777,6 @@ error function \(erf(x)\), giv P(x) = \frac{1}{\sqrt{2\pi}}\int_{-\infty}^x\exp{\left(-\frac{t^2}{2}\right)}dt, \]

    which is difficult to evaluate in a quick way.

    -
    -
    -

    1.20. Probability Distribution Functions, other important distribution

    Some other PDFs which one encounters often in the natural sciences are the binomial distribution

    \[\begin{split} @@ -1481,9 +790,6 @@ in case of a random walker. Note that

    In every independent trial one registers if a specific situation happens or not, such as the jump to the left or right of a random walker.

  • The probability for every outcome in a single trial has the same value, for example the outcome of tossing (either heads or tails) a coin is always \(1/2\).

  • -
    -
    -

    1.21. Probability Distribution Functions, the binomial distribution

    In order to compute the mean and variance we need to recall Newton’s binomial formula

    @@ -1514,9 +820,6 @@ The mean value is

    \mu=ny\sum_{\nu=0}^n\left(\begin{array}{c} n-1 \\ \nu\end{array}\right)y^{\nu}(1-y)^{n-1-\nu} =ny(y+1-y)^{n-1}=ny. \end{split}\]

    The variance is slightly trickier to get. It reads \(\sigma^2=ny(1-y)\).

    -
    -
    -

    1.22. Probability Distribution Functions, Poisson’s distribution

    Another important distribution with discrete stochastic variables \(x\) is
    the Poisson model, which resembles the exponential distribution and reads

    @@ -1530,9 +833,6 @@ p(x) = \frac{\lambda^x}{x!} e^{-\lambda} \hspace{0.5cm}x=0,1,\dots,;\lambda > \frac{\lambda^{x-1}}{(x-1)!}=\lambda, \]

    and the variance is \(\sigma^2=\lambda\).

    -
    -
    -

    1.23. Probability Distribution Functions, Poisson’s distribution

    An example of applications of the Poisson distribution could be the counting of the number of \(\alpha\)-particles emitted from a radioactive source in a given time interval. In the limit of \(n\rightarrow \infty\) and for small probabilities \(y\), the binomial distribution @@ -1544,7 +844,7 @@ the binomial distribution we can show that

    \end{split}\]
    -

    1.24. Meet the covariance!

    +

    1.1.5. Meet the covariance!

    An important quantity in a statistical analysis is the so-called covariance.

    Consider the set \(\{X_i\}\) of \(n\) stochastic variables (not necessarily uncorrelated) with the @@ -1574,9 +874,6 @@ of the stochastic variables, \(X_i\)< \langle x_i\rangle = \int\cdots\int x_i P(x_1,\dots,x_n)\,dx_1\dots dx_n. \]

    -
    -
    -

    1.25. Meet the covariance in matrix disguise

    If we consider the above covariance as a matrix

    \[ @@ -1586,9 +883,6 @@ C_{ij} =\mathrm{Cov}(X_i,\,X_j), variances, \(C_{ii} = \mathrm{Cov}(X_i,\,X_i) = \mathrm{Var}(X_i)\). It turns out that all the off-diagonal elements are zero if the stochastic variables are uncorrelated.

    -
    -
    -

    1.26. Covariance

    # Importing various packages
    @@ -1619,34 +913,31 @@ uncorrelated.

    -
    2.941866404575299
    -[[ 2.85091337  3.42078103 10.33711888  6.57154252  3.22094791  6.36117602
    -   8.03761519  5.89565264  3.47387858  5.73484667]
    - [ 3.42078103  4.10455924 12.40340043  7.88512489  3.86478158  7.63270833
    -   9.64425009  7.07413172  4.16827044  6.88118231]
    - [10.33711888 12.40340043 37.48133064 23.82773778 11.67882608 23.06497046
    -  29.1435666  21.37703055 12.59592669 20.7939646 ]
    - [ 6.57154252  7.88512489 23.82773778 15.14783702  7.42449643 14.66292841
    -  18.52723079 13.58986647  8.00751823 13.21919813]
    - [ 3.22094791  3.86478158 11.67882608  7.42449643  3.63901111  7.18682538
    -   9.08085812  6.66087937  3.92477093  6.47920156]
    - [ 6.36117602  7.63270833 23.06497046 14.66292841  7.18682538 14.19354258
    -  17.93414191 13.15483121  7.75118364 12.79602861]
    - [ 8.03761519  9.64425009 29.1435666  18.52723079  9.08085812 17.93414191
    -  22.66054752 16.62168613  9.79394867 16.16832385]
    - [ 5.89565264  7.07413172 21.37703055 13.58986647  6.66087937 13.15483121
    -  16.62168613 12.19213479  7.18393678 11.85959007]
    - [ 3.47387858  4.16827044 12.59592669  8.00751823  3.92477093  7.75118364
    -   9.79394867  7.18393678  4.23297056  6.9879924 ]
    - [ 5.73484667  6.88118231 20.7939646  13.21919813  6.47920156 12.79602861
    -  16.16832385 11.85959007  6.9879924  11.53611562]]
    +
    0.6530742540053943
    +[[14.12788968 14.881788   12.12937662 11.19379506 13.19466812  6.37692363
    +   8.24924624  8.20509391 14.99435648 14.6834195 ]
    + [14.881788   15.67591616 12.77662945 11.791123   13.89876748  6.71721168
    +   8.68944595  8.64293754 15.79449156 15.46696223]
    + [12.12937662 12.77662945 10.41357064  9.61033524 11.32816737  5.47485224
    +   7.0823185   7.0444119  12.87327414 12.6063219 ]
    + [11.19379506 11.791123    9.61033524  8.86905621 10.4543859   5.05255759
    +   6.53603432  6.50105159 11.88031314 11.63395187]
    + [13.19466812 13.89876748 11.32816737 10.4543859  12.32309075  5.95569422
    +   7.70434005  7.66310422 14.00390021 13.71350226]
    + [ 6.37692363  6.71721168  5.47485224  5.05255759  5.95569422  2.87836018
    +   3.72347283  3.70354373  6.76802186  6.62767384]
    + [ 8.24924624  8.68944595  7.0823185   6.53603432  7.70434005  3.72347283
    +   4.81671821  4.79093776  8.75517445  8.57361898]
    + [ 8.20509391  8.64293754  7.0444119   6.50105159  7.66310422  3.70354373
    +   4.79093776  4.76529528  8.70831425  8.52773051]
    + [14.99435648 15.79449156 12.87327414 11.88031314 14.00390021  6.76802186
    +   8.75517445  8.70831425 15.91396388 15.58395707]
    + [14.6834195  15.46696223 12.6063219  11.63395187 13.71350226  6.62767384
    +   8.57361898  8.52773051 15.58395707 15.26079358]]
     
    -
    -
    -

    1.27. Meet the covariance, uncorrelated events

    Consider the stochastic variables \(X_i\) and \(X_j\), (\(i\neq j\)). We have

    \[\begin{split} @@ -1670,9 +961,6 @@ Cov(X_i,\,X_j) &= \langle (x_i-\langle x_i\rangle)(x_j-\langle x_j\rangle)\r \[ Cov(X_i, X_j) = 0 \hspace{0.1cm} (i\neq j). \]
    -
    -
    -

    1.28. Numerical experiments and the covariance

    Now that we have constructed an idealized mathematical framework, let us try to apply it to empirical observations. Examples of relevant physical phenomena may be spontaneous decays of nuclei, or a purely @@ -1686,9 +974,6 @@ chain of values

    \[ \{x_1, x_2,\dots\,x_k,\dots\}. \]
    -
    -
    -

    1.29. Numerical experiments and the covariance

    We will call these values our measurements and the entire set as our measured sample. The action of measuring all the elements of a sample @@ -1701,9 +986,6 @@ stochastic variable whose PDF is \(p_ trying to determine the full distribution \(p\) we are often only interested in finding the few lowest moments, like the mean \(\mu_X^{\phantom X}\) and the variance \(\sigma_X^{\phantom X}\).

    -
    -
    -

    1.30. Numerical experiments and the covariance, actual situations

    In practical situations however, a sample is always of finite size. Let that size be \(n\). The expectation value of a sample \(\alpha\), the sample mean, is then defined as follows

    @@ -1716,9 +998,6 @@ size be \(n\). The expectation \mathrm{Var}(x) \equiv \frac{1}{n}\sum_{k=1}^n (x_{\alpha,k} - \langle x_{\alpha} \rangle)^2, \]

    with its square root being the standard deviation of the sample.

    -
    -
    -

    1.31. Numerical experiments and the covariance, our observables

    You can think of the above observables as a set of quantities which define a given experiment. This experiment is then repeated several times, say \(m\) times. The total average is then

    @@ -1747,9 +1026,6 @@ The total variance is

    \label{eq:exptvariance} \tag{7} \end{equation} \]
    -
    -
    -

    1.32. Numerical experiments and the covariance, the sample variance

    We define also the sample variance \(\sigma^2\) of all \(mn\) individual experiments as

    @@ -1767,7 +1043,7 @@ exact values for the mean value \(\mu and the covariance \(\mathrm{Cov}(X,Y)\).

    -

    1.33. Numerical experiments and the covariance, central limit theorem

    +

    1.1.6. Numerical experiments and the covariance, central limit theorem

    The central limit theorem states that the PDF \(\tilde{p}(z)\) of the average of \(m\) random values corresponding to a PDF \(p(x)\) is a normal distribution whose mean is the @@ -1781,9 +1057,6 @@ standard deviation, given by

    \frac{\sigma}{\sqrt{m}}. \]

    In many cases the above estimate for the standard deviation, in particular if correlations are strong, may be too simplistic. We need therefore a more precise defintion of the error and the variance in our results.

    -
    -
    -

    1.34. Definition of Correlation Functions and Standard Deviation

    Our estimate of the true average \(\mu_{X}\) is the sample mean \(\langle X_m \rangle\)

    \[ @@ -1801,9 +1074,6 @@ standard deviation, given by

    \]

    where the first term is the sample variance of all \(mn\) experiments divided by \(n\) and the last term is nothing but the covariance which arises when \(k\ne l\).

    -
    -
    -

    1.35. Definition of Correlation Functions and Standard Deviation

    Our estimate of the true average \(\mu_{X}\) is the sample mean \(\langle X_m \rangle\)

    If the observables are uncorrelated, then the covariance is zero and we obtain a total variance @@ -1816,9 +1086,6 @@ measurement \(x\) we receive. calculated at the end of the experiment since we need all the measurements to calculate the cross terms. Therefore, all measurements have to be stored throughout the experiment.

    -
    -
    -

    1.36. Definition of Correlation Functions and Standard Deviation

    Let us analyze the problem by splitting up the correlation term into partial sums of the form

    @@ -1832,9 +1099,6 @@ f_d = \frac{1}{nm}\sum_{\alpha=1}^m\sum_{k=1}^{n-d}(x_{\alpha,k}-\langle X_m \ra \frac{2}{mn^2}\sum_{\alpha=1}^m\sum_{k<l}^n (x_{\alpha,k}-\langle X_m \rangle)(x_{\alpha,l}-\langle X_m \rangle)= \frac{2}{n}\sum_{d=1}^{n-1} f_d \]
    -
    -
    -

    1.37. Definition of Correlation Functions and Standard Deviation

    The value of \(f_d\) reflects the correlation between measurements separated by the distance \(d\) in the samples. Notice that for \(d=0\), \(f\) is just the sample variance, \(\sigma^2\). If we divide \(f_d\) @@ -1850,9 +1114,6 @@ by \(\sigma^2\), we arrive at \]

    which gives us a useful measure of the correlation pair correlation starting always at \(1\) for \(d=0\).

    -
    -
    -

    1.38. Definition of Correlation Functions and Standard Deviation, sample variance

    The sample variance of the \(mn\) experiments can now be written in terms of the autocorrelation function

    @@ -1882,9 +1143,6 @@ correction factor the autocorrelation time

    For a correlation free experiment, \(\tau\) equals 1.

    -
    -
    -

    1.39. Definition of Correlation Functions and Standard Deviation

    From the point of view of Eq. (10) we can interpret a sequential correlation as an effective reduction of the number of measurements by @@ -1900,11 +1158,7 @@ too “good”. On the other hand, the calculation of the full autocorrelation time poses an efficiency problem if the set of measurements is very large. The solution to this problem is given by more practically oriented methods like the blocking technique.

    - -
    -
    -

    1.40. Code to compute the Covariance matrix and the Covariance

    -
    +
    # Importing various packages
     from math import exp, sqrt
    @@ -1947,22 +1201,22 @@ more practically oriented methods like the blocking technique.

    -
    -0.029613363972682966
    -3.7448615806559786
    --0.2360682191515046
    -0.8855417382991412 8.735738558766299 10.381627865854956
    -2.6079169911277265 2.2886847885377843 7.0110407067093945
    -[[ 0.88554174  2.60791699  2.28868479]
    - [ 2.60791699  8.73573856  7.01104071]
    - [ 2.28868479  7.01104071 10.38162787]]
    -[17.33900713  0.09216046  2.57174058]
    +
    0.12898627064868978
    +4.517350858882083
    +0.7469898175164704
    +1.0712953943627344 9.116048442683864 13.773329728649545
    +2.9898254753574576 3.041797190646905 8.203753611274545
    +[[ 1.07129539  2.98982548  3.04179719]
    + [ 2.98982548  9.11604844  8.20375361]
    + [ 3.04179719  8.20375361 13.77332973]]
    +[20.87647541  0.06602663  3.01817152]
     
    -

    1.41. Random Numbers

    +

    1.1.7. Random Numbers

    Uniform deviates are just random numbers that lie within a specified range (typically 0 to 1), with any one number in the range just as likely as any other. They are, in other words, what you probably think random numbers are. However, @@ -1973,9 +1227,6 @@ performing appropriate operations on one or more uniform deviates, as we will se in subsequent sections. So, a reliable source of random uniform deviates, the subject of this section, is an essential building block for any sort of stochastic modeling or Monte Carlo computer work.

    -
    -
    -

    1.42. Random Numbers, better name: pseudo random numbers

    A disclaimer is however appropriate. It should be fairly obvious that something as deterministic as a computer cannot generate purely random numbers.

    Numbers generated by any of the standard algorithms are in reality pseudo random @@ -1986,9 +1237,6 @@ numbers, hopefully abiding to the following criteria:

  • the period before the same sequence of random numbers is repeated is as large as possible and finally

  • the algorithm should be fast.

  • -
    -
    -

    1.43. Random number generator RNG

    The most common random number generators are based on so-called Linear congruential relations of the type

    @@ -2006,9 +1254,6 @@ and \(N_0\) is the starting value, or seed. The function \(\mathrm{MOD}\) means the remainder, that is if we were to evaluate \((13)\mathrm{MOD}(9)\), the outcome is the remainder of the division \(13/9\), namely \(4\).

    -
    -
    -

    1.44. Random number generator RNG and periodic outputs

    The problem with such generators is that their outputs are periodic; they will start to repeat themselves with a period that is at most \(M\). If however @@ -2028,9 +1273,6 @@ N_i=(27N_{i-1}+11) \mathrm{MOD} (54), \]

    which still, with \(N_0=2\), results in \(11,38,11,38,11,38,\dots\), a period of just \(2\).

    -
    -
    -

    1.45. Random number generator RNG and its period

    Typical periods for the random generators provided in the program library are of the order of \(\sim 10^9\) or larger. Other random number generators which have become increasingly popular are so-called shift-register generators. @@ -2043,9 +1285,6 @@ number is the sum of the \(l-i\) -

    -
    -

    1.46. Random number generator RNG, other examples

    Such a generator again produces a sequence of pseudorandom numbers but this time with a period much larger than \(M\). It is also possible to construct more elaborate algorithms by including @@ -2072,9 +1311,6 @@ which consists of two congruential relations

    \end{equation} \]

    which according to the authors has a period larger than \(2^{94}\).

    -
    -
    -

    1.47. Random number generator RNG, other examples

    Instead of using modular addition, we could use the bitwise exclusive-OR (\(\oplus\)) operation so that

    @@ -2090,9 +1326,6 @@ second number is \(1011\). Emp

    In Fortran90, the bitwise \(\oplus\) operation is coded through the intrinsic function \(\mathrm{IEOR}(m,n)\) where \(m\) and \(n\) are the input numbers, while in \(C\) it is given by \(m\wedge n\).

    -
    -
    -

    1.48. Random number generator RNG, RAN0

    We show here how the linear congruential algorithm can be implemented, namely

    \[ @@ -2118,9 +1351,6 @@ r = M\hspace{0.1cm}\mathrm{MOD} \hspace{0.1cm}a. \]

    where the brackets denote integer division. In the code below the numbers \(q\) and \(r\) are chosen so that \(r < q\).

    -
    -
    -

    1.49. Random number generator RNG, RAN0

    To see how this works we note first that

    @@ -2134,9 +1364,6 @@ r = M\hspace{0.1cm}\mathrm{MOD} \hspace{0.1cm}a.

    since we can add or subtract any integer multiple of \(M\) from \(aN_{i-1}\). The last term \([N_{i-1}/q]M\mathrm{MOD}(M)\) is zero since the integer division \([N_{i-1}/q]\) just yields a constant which is multiplied with \(M\).

    -
    -
    -

    1.50. Random number generator RNG, RAN0

    We can now rewrite Eq. (14) as

    @@ -2147,8 +1374,7 @@ The last term \([N_{i-1}/q]M\mathrm{M \label{eq:rntrick2} \tag{15} \end{equation} \]
    -

    which results -in

    +

    which results

    @@ -2168,9 +1394,6 @@ in

    \label{eq:rntrick4} \tag{17} \end{equation} \]
    -
    -
    -

    1.51. Random number generator RNG, RAN0

    The term \([N_{i-1}/q]r\) is always smaller or equal \(N_{i-1}(r/q)\) and with \(r < q\) we obtain always a number smaller than \(N_{i-1}\), which is smaller than \(M\). And since the number \(N_{i-1}\mathrm{MOD} (q)\) is between zero and \(q-1\) then @@ -2183,40 +1406,6 @@ the starting point for each generation of a random number. The period of \(ran0\) is \(\sim 2.1\times 10^{9}\). A special feature of this algorithm is that is should never be called with the initial seed set to \(0\).

    -
    -
    -

    1.52. Random number generator RNG, RAN0 code

    -
            /*
    -         ** The function
    -         **           ran0()
    -         ** is an "Minimal" random number generator of Park and Miller
    -         ** Set or reset the input value
    -         ** idum to any integer value (except the unlikely value MASK)
    -         ** to initialize the sequence; idum must not be altered between
    -         ** calls for sucessive deviates in a sequence.
    -         ** The function returns a uniform deviate between 0.0 and 1.0.
    -         */
    -    double ran0(long &idum)
    -    {
    -       const int a = 16807, m = 2147483647, q = 127773;
    -       const int r = 2836, MASK = 123459876;
    -       const double am = 1./m;
    -       long     k;
    -       double   ans;
    -       idum ^= MASK;
    -       k = (*idum)/q;
    -       idum = a*(idum - k*q) - r*k;
    -       // add m if negative difference
    -       if(idum < 0) idum += m;
    -       ans=am*(idum);
    -       idum ^= MASK;
    -       return ans;
    -    } // End: function ran0() 
    -
    -
    -
    -
    -

    1.53. Properties of Selected Random Number Generators

    As mentioned previously, the underlying PDF for the generation of random numbers is the uniform distribution, meaning that the probability for finding a number \(x\) in the interval [0,1] is \(p(x)=1\).

    @@ -2228,9 +1417,6 @@ intervals \(0.0-0.1\),

    Two additional measures are the standard deviation \(\sigma\) and the mean \(\mu=\langle x\rangle\).

    -
    -
    -

    1.54. Properties of Selected Random Number Generators

    For the uniform distribution, the mean value \(\mu\) is then

    \[ @@ -2241,12 +1427,9 @@ deviations.

    \[ \sigma=\sqrt{\langle x^2\rangle-\mu^2}=\frac{1}{\sqrt{12}}=0.2886. \]
    -
    -
    -

    1.55. Properties of Selected Random Number Generators

    The various random number generators produce results which agree rather well with these limiting values.

    - +
    @@ -2265,9 +1448,6 @@ these limiting values.

    $x$-bin ran0 ran1 ran2 ran3
    $\sigma$ 0.2882 0.2892 0.2861 0.2915
    -
    -
    -

    1.56. Simple demonstration of RNGs using python

    The following simple Python code plots the distribution of the produced random numbers using the linear congruential RNG employed by Python. The trend displayed in the previous table is seen rather clearly.

    @@ -2297,12 +1477,9 @@ these limiting values.

    -_images/statistics_178_0.png +_images/statistics_181_0.png
    -
    -
    -

    1.57. Properties of Selected Random Number Generators

    Since our random numbers, which are typically generated via a linear congruential algorithm, are never fully independent, we can then define an important test which measures the degree of correlation, namely the so-called
    @@ -2325,7 +1502,7 @@ in the evaluation of other expectation values. If they are not independent, our assumption for approximating \(\sigma_N\) is no longer valid.

    -

    1.58. Autocorrelation function

    +

    1.1.8. Autocorrelation function

    This program computes the autocorrelation function as discussed in the equation on the previous slide for random numbers generated with the normal distribution \(N(0,1)\).

    @@ -2362,412 +1539,15 @@ assumption for approximating \(\sigma
    -
    0.05290417684691035 0.9902552771282336
    +
    -0.012633802944855959 1.0011828302640124
     
    -_images/statistics_184_1.png +_images/statistics_188_1.png

    As can be seen from the plot, the first point gives back the variance and a value of one. For the remaining values we notice that there are still non-zero values for the auto-correlation function.

    -
    -

    1.59. Correlation function and which random number generators should I use

    -

    The program here computes the correlation function for one of the standard functions included with the c++ compiler.

    -
        //  This function computes the autocorrelation function for 
    -    //  the standard c++ random number generator
    -    
    -    #include <fstream>
    -    #include <iomanip>
    -    #include <iostream>
    -    #include <cmath>
    -    using namespace std;
    -    // output file as global variable
    -    ofstream ofile;  
    -    
    -    //     Main function begins here     
    -    int main(int argc, char* argv[])
    -    {
    -         int n;
    -         char *outfilename;
    -    
    -         cin >> n;
    -         double MCint = 0.;      double MCintsqr2=0.;
    -         double invers_period = 1./RAND_MAX; // initialise the random number generator
    -         srand(time(NULL));  // This produces the so-called seed in MC jargon
    -         // Compute the variance and the mean value of the uniform distribution
    -         // Compute also the specific values x for each cycle in order to be able to
    -         // the covariance and the correlation function  
    -         // Read in output file, abort if there are too few command-line arguments
    -         if( argc <= 2 ){
    -           cout << "Bad Usage: " << argv[0] << 
    -    	 " read also output file and number of cycles on same line" << endl;
    -           exit(1);
    -         }
    -         else{
    -           outfilename=argv[1];
    -         }
    -         ofile.open(outfilename); 
    -         // Get  the number of Monte-Carlo samples
    -         n = atoi(argv[2]);
    -         double *X;  
    -         X = new double[n];
    -         for (int i = 0;  i < n; i++){
    -               double x = double(rand())*invers_period; 
    -               X[i] = x;
    -               MCint += x;
    -               MCintsqr2 += x*x;
    -         }
    -         double Mean = MCint/((double) n );
    -         MCintsqr2 = MCintsqr2/((double) n );
    -         double STDev = sqrt(MCintsqr2-Mean*Mean);
    -         double Variance = MCintsqr2-Mean*Mean;
    -    //   Write mean value and standard deviation 
    -         cout << " Standard deviation= " << STDev << " Integral = " << Mean << endl;
    -    
    -         // Now we compute the autocorrelation function
    -         double *autocor;  autocor = new double[n];
    -         for (int j = 0; j < n; j++){
    -           double sum = 0.0;
    -           for (int k = 0; k < (n-j); k++){
    -    	 sum  += (X[k]-Mean)*(X[k+j]-Mean); 
    -           }
    -           autocor[j] = sum/Variance/((double) n );
    -           ofile << setiosflags(ios::showpoint | ios::uppercase);
    -           ofile << setw(15) << setprecision(8) << j;
    -           ofile << setw(15) << setprecision(8) << autocor[j] << endl;
    -         }
    -         ofile.close();  // close output file
    -         return 0;
    -    }  // end of main program 
    -
    -
    -
    -
    -

    1.60. Which RNG should I use?

    -
      -
    • C++ has a class called random. The random class contains a large selection of RNGs and is highly recommended. Some of these RNGs have very large periods making it thereby very safe to use these RNGs in case one is performing large calculations. In particular, the Mersenne twister random number engine has a period of \(2^{19937}\).

    • -
    • Add RNGs in Python

    • -
    -
    -
    -

    1.61. How to use the Mersenne generator

    -

    The following part of a c++ code (from project 4) sets up the uniform distribution for \(x\in [0,1]\).

    -
        /*
    -    
    -    //  You need this 
    -    #include <random>
    -    
    -    // Initialize the seed and call the Mersienne algo
    -    std::random_device rd;
    -    std::mt19937_64 gen(rd());
    -    // Set up the uniform distribution for x \in [[0, 1]
    -    std::uniform_real_distribution<double> RandomNumberGenerator(0.0,1.0);
    -    
    -    // Now use the RNG
    -    int ix = (int) (RandomNumberGenerator(gen)*NSpins);
    -
    -
    -
    -
    -

    1.62. Why blocking?

    -

    Statistical analysis.

    -
    * Monte Carlo simulations can be treated as *computer experiments*
    -
    -* The results can be analysed with the same statistical tools as we would use analysing experimental data.
    -
    -* As in all experiments, we are looking for expectation values and an estimate of how accurate they are, i.e., possible sources for errors.
    -
    -
    -

    A very good article which explains blocking is H. Flyvbjerg and H. G. Petersen, Error estimates on averages of correlated data, Journal of Chemical Physics 91, 461-466 (1989).

    -
    -
    -

    1.63. Why blocking?

    -

    Statistical analysis.

    -
    * As in other experiments, Monte Carlo experiments have two classes of errors:
    -
    -  * Statistical errors
    -
    -  * Systematical errors
    -
    -
    -* Statistical errors can be estimated using standard tools from statistics
    -
    -* Systematical errors are method specific and must be treated differently from case to case. (In VMC a common source is the step length or time step in importance sampling)
    -
    -
    -
    -
    -

    1.64. Code to demonstrate the calculation of the autocorrelation function

    -

    The following code computes the autocorrelation function, the covariance and the standard deviation -for standard RNG. -The following file gives the code.

    -
        //  This function computes the autocorrelation function for 
    -    //  the Mersenne random number generator with a uniform distribution
    -    #include <iostream>
    -    #include <fstream>
    -    #include <iomanip>
    -    #include <cstdlib>
    -    #include <random>
    -    #include <armadillo>
    -    #include <string>
    -    #include <cmath>
    -    using namespace  std;
    -    using namespace arma;
    -    // output file
    -    ofstream ofile;
    -    
    -    //     Main function begins here     
    -    int main(int argc, char* argv[])
    -    {
    -      int MonteCarloCycles;
    -      string filename;
    -      if (argc > 1) {
    -        filename=argv[1];
    -        MonteCarloCycles = atoi(argv[2]);
    -        string fileout = filename;
    -        string argument = to_string(MonteCarloCycles);
    -        fileout.append(argument);
    -        ofile.open(fileout);
    -      }
    -    
    -      // Compute the variance and the mean value of the uniform distribution
    -      // Compute also the specific values x for each cycle in order to be able to
    -      // compute the covariance and the correlation function  
    -    
    -      vec X  = zeros<vec>(MonteCarloCycles);
    -      double MCint = 0.;      double MCintsqr2=0.;
    -      std::random_device rd;
    -      std::mt19937_64 gen(rd());
    -      // Set up the uniform distribution for x \in [[0, 1]
    -      std::uniform_real_distribution<double> RandomNumberGenerator(0.0,1.0);
    -      for (int i = 0;  i < MonteCarloCycles; i++){
    -        double x =   RandomNumberGenerator(gen); 
    -        X(i) = x;
    -        MCint += x;
    -        MCintsqr2 += x*x;
    -      }
    -      double Mean = MCint/((double) MonteCarloCycles );
    -      MCintsqr2 = MCintsqr2/((double) MonteCarloCycles );
    -      double STDev = sqrt(MCintsqr2-Mean*Mean);
    -      double Variance = MCintsqr2-Mean*Mean;
    -      //   Write mean value and variance
    -      cout << " Sample variance= " << Variance  << " Mean value = " << Mean << endl;
    -      // Now we compute the autocorrelation function
    -      vec autocorrelation = zeros<vec>(MonteCarloCycles);
    -      for (int j = 0; j < MonteCarloCycles; j++){
    -        double sum = 0.0;
    -        for (int k = 0; k < (MonteCarloCycles-j); k++){
    -          sum  += (X(k)-Mean)*(X(k+j)-Mean); 
    -        }
    -        autocorrelation(j) = sum/Variance/((double) MonteCarloCycles );
    -        ofile << setiosflags(ios::showpoint | ios::uppercase);
    -        ofile << setw(15) << setprecision(8) << j;
    -        ofile << setw(15) << setprecision(8) << autocorrelation(j) << endl;
    -      }
    -      // Now compute the exact covariance using the autocorrelation function
    -      double Covariance = 0.0;
    -      for (int j = 0; j < MonteCarloCycles; j++){
    -        Covariance  += autocorrelation(j);
    -      }
    -      Covariance *=  2.0/((double) MonteCarloCycles);
    -      // Compute now the total variance, including the covariance, and obtain the standard deviation
    -      double TotalVariance = (Variance/((double) MonteCarloCycles ))+Covariance;
    -      cout << "Covariance =" << Covariance << "Totalvariance= " << TotalVariance << "Sample Variance/n= " << (Variance/((double) MonteCarloCycles )) << endl;
    -      cout << " STD from sample variance= " << sqrt(Variance/((double) MonteCarloCycles )) << " STD with covariance = " << sqrt(TotalVariance) << endl;
    -    
    -      ofile.close();  // close output file
    -      return 0;
    -    }  // end of main program 
    -
    -
    -
    -
    -

    1.65. What is blocking?

    -

    Blocking.

    -
    * Say that we have a set of samples from a Monte Carlo experiment
    -
    -* Assuming (wrongly) that our samples are uncorrelated our best estimate of the standard deviation of the mean $\langle \mathbf{M}\rangle$ is given by
    -
    -
    -
    -\[ -\sigma=\sqrt{\frac{1}{n}\left(\langle \mathbf{M}^2\rangle-\langle \mathbf{M}\rangle^2\right)} -\]
    -
      -
    • If the samples are correlated we can rewrite our results to show that

    • -
    -
    -\[ -\sigma=\sqrt{\frac{1+2\tau/\Delta t}{n}\left(\langle \mathbf{M}^2\rangle-\langle \mathbf{M}\rangle^2\right)} -\]
    -

    where \(\tau\) is the correlation time (the time between a sample and the next uncorrelated sample) and \(\Delta t\) is time between each sample

    -
    -
    -

    1.66. What is blocking?

    -

    Blocking.

    -
    * If $\Delta t\gg\tau$ our first estimate of $\sigma$ still holds
    -
    -* Much more common that $\Delta t<\tau$
    -
    -* In the method of data blocking we divide the sequence of samples into blocks
    -
    -* We then take the mean $\langle \mathbf{M}_i\rangle$ of block $i=1\ldots n_{blocks}$ to calculate the total mean and variance
    -
    -* The size of each block must be so large that sample $j$ of block $i$ is not correlated with sample $j$ of block $i+1$
    -
    -* The correlation time $\tau$ would be a good choice
    -
    -
    -
    -
    -

    1.67. What is blocking?

    -

    Blocking.

    -
    * Problem: We don't know $\tau$ or it is too expensive to compute
    -
    -* Solution: Make a plot of std. dev. as a function of blocksize
    -
    -* The estimate of std. dev. of correlated data is too low $\to$ the error will increase with increasing block size until the blocks are uncorrelated, where we reach a plateau
    -
    -* When the std. dev. stops increasing the blocks are uncorrelated
    -
    -
    -
    -
    -

    1.68. Implementation

    -
    * Do a Monte Carlo simulation, storing all samples to file
    -
    -* Do the statistical analysis on this file, independently of your Monte Carlo program
    -
    -* Read the file into an array
    -
    -* Loop over various block sizes
    -
    -* For each block size $n_b$, loop over the array in steps of $n_b$ taking the mean of elements $i n_b,\ldots,(i+1) n_b$
    -
    -* Take the mean and variance of the resulting array
    -
    -* Write the results for each block size to file for later
    -  analysis
    -
    -
    -
    -
    -

    1.69. Actual implementation with code, main function

    -

    When the file gets large, it can be useful to write your data in binary mode instead of ascii characters. -The following python file reads data from file with the output from every Monte Carlo cycle.

    -
    -
    -
    # Blocking
    -    @timeFunction
    -    def blocking(self, blockSizeMax = 500):
    -        blockSizeMin = 1
    -
    -        self.blockSizes = []
    -        self.meanVec = []
    -        self.varVec = []
    -
    -        for i in range(blockSizeMin, blockSizeMax):
    -            if(len(self.data) % i != 0):
    -                pass#continue
    -            blockSize = i
    -            meanTempVec = []
    -            varTempVec = []
    -            startPoint = 0
    -            endPoint = blockSize
    -
    -            while endPoint <= len(self.data):
    -                meanTempVec.append(np.average(self.data[startPoint:endPoint]))
    -                startPoint = endPoint
    -                endPoint += blockSize
    -            mean, var = np.average(meanTempVec), np.var(meanTempVec)/len(meanTempVec)
    -            self.meanVec.append(mean)
    -            self.varVec.append(var)
    -            self.blockSizes.append(blockSize)
    -
    -        self.blockingAvg = np.average(self.meanVec[-200:])
    -        self.blockingVar = (np.average(self.varVec[-200:]))
    -        self.blockingStd = np.sqrt(self.blockingVar)
    -
    -
    -
    -
    -
      File "<ipython-input-6-2ff97f4bf03b>", line 2
    -    @timeFunction
    -    ^
    -IndentationError: unexpected indent
    -
    -
    -
    -
    -
    -
    -

    1.70. The Bootstrap method

    -

    The Bootstrap resampling method is also very popular. It is very simple:

    -
      -
    1. Start with your sample of measurements and compute the sample variance and the mean values

    2. -
    3. Then start again but pick in a random way the numbers in the sample and recalculate the mean and the sample variance.

    4. -
    5. Repeat this \(K\) times.

    6. -
    -

    It can be shown, see the article by Efron -that it produces the correct standard deviation.

    -

    This method is very useful for small ensembles of data points.

    -
    -
    -

    1.71. Bootstrapping

    -

    Given a set of \(N\) data, assume that we are interested in some -observable \(\theta\) which may be estimated from that set. This observable can also be for example the result of a fit based on all \(N\) raw data. -Let us call the value of the observable obtained from the original -data set \(\hat{\theta}\). One recreates from the sample repeatedly -other samples by choosing randomly \(N\) data out of the original set. -This costs essentially nothing, since we just recycle the original data set for the building of new sets.

    -
    -
    -

    1.72. Bootstrapping, recipe

    -

    Let us assume we have done this \(K\) times and thus have \(K\) sets of \(N\) -data values each. -Of course some values will enter more than once in the new sets. For each of these sets one computes the observable \(\theta\) resulting in values \(\theta_k\) with \(k = 1,...,K\). Then one determines

    -
    -\[ -\tilde{\theta} = \frac{1}{K} \sum_{k=1}^K \theta_k, -\]
    -

    and

    -
    -\[ -sigma^2_{\tilde{\theta}} = \frac{1}{K} \sum_{k=1}^K \left(\theta_k-\tilde{\theta}\right)^2. -\]
    -

    These are estimators for \(\angle\theta\rangle\) and its variance. They are not unbiased and therefore -\(\tilde{\theta}\neq\hat{\theta}\) for finite K.

    -

    The difference is called bias and gives an idea on how far away the result may be from -the true \(\angle\theta\rangle\). As final result for the observable one quotes \(\angle\theta\rangle = \tilde{\theta} \pm \sigma_{\tilde{\theta}}\) .

    -
    -
    -

    1.73. Bootstrapping, code

    -
        # Bootstrap
    -        @timeFunction
    -        def bootstrap(self, nBoots = 1000):
    -            bootVec = np.zeros(nBoots)
    -            for k in range(0,nBoots):
    -                bootVec[k] = np.average(np.random.choice(self.data, len(self.data)))
    -            self.bootAvg = np.average(bootVec)
    -            self.bootVar = np.var(bootVec)
    -            self.bootStd = np.std(bootVec)
    -
    -
    -
    -
    -

    1.74. Jackknife, code

    -
        # Jackknife
    -        @timeFunction
    -        def jackknife(self):
    -            jackknVec = np.zeros(len(self.data))
    -            for k in range(0,len(self.data)):
    -                jackknVec[k] = np.average(np.delete(self.data, k))
    -            self.jackknAvg = self.avg - (len(self.data) - 1) * (np.average(jackknVec) - self.avg)
    -            self.jackknVar = float(len(self.data) - 1) * np.var(jackknVec)
    -            self.jackknStd = np.sqrt(self.jackknVar)
    -
    -
    diff --git a/doc/LectureNotes/_build/jupyter_execute/statistics.ipynb b/doc/LectureNotes/_build/jupyter_execute/statistics.ipynb index 2dbf97f52..9632b6df2 100644 --- a/doc/LectureNotes/_build/jupyter_execute/statistics.ipynb +++ b/doc/LectureNotes/_build/jupyter_execute/statistics.ipynb @@ -2,18 +2,43 @@ "cells": [ { "cell_type": "markdown", - "metadata": {}, + "id": "1de4abfb", + "metadata": { + "editable": true + }, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "id": "9268be0a", + "metadata": { + "editable": true + }, + "source": [ + "# Elements of Probability Theory and Statistical Data Analysis" + ] + }, + { + "cell_type": "markdown", + "id": "b24d433f", + "metadata": { + "editable": true + }, "source": [ - "# Elements of Probability Theory and Statistical Data Analysis\n", - "\n", - "\n", "## Domains and probabilities\n", + "\n", "Consider the following simple example, namely the tossing of two dice, resulting in the following possible values" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9fa7c59b", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{2,3,4,5,6,7,8,9,10,11,12\\}.\n", @@ -22,7 +47,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d1c9912c", + "metadata": { + "editable": true + }, "source": [ "These values are called the *domain*. \n", "To this domain we have the corresponding *probabilities*" @@ -30,7 +58,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6626ea89", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{1/36,2/36/,3/36,4/36,5/36,6/36,5/36,4/36,3/36,2/36,1/36\\}.\n", @@ -39,9 +70,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "65c54c5b", + "metadata": { + "editable": true + }, "source": [ - "## Tossing the dice\n", "The numbers in the domain are the outcomes of the physical process of tossing say two dice.\n", "We cannot tell beforehand whether the outcome is 3 or 5 or any other number in this domain.\n", "This defines the randomness of the outcome, or unexpectedness or any other synonimous word which\n", @@ -55,7 +88,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "84e29b68", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{2,3,4,5,6,7,8,9,10,11,12\\},\n", @@ -64,14 +100,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "8ae71934", + "metadata": { + "editable": true + }, "source": [ "appear in a random order. After 11 throws the results may look like" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c3901951", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{10,8,6,3,6,9,11,8,12,4,5\\}.\n", @@ -80,16 +122,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9c659ce0", + "metadata": { + "editable": true + }, "source": [ - "## Stochastic variables\n", + "**Random variables are characterized by a domain which contains all possible values that the random value may take. This domain has a corresponding probability distribution function(PDF)**." + ] + }, + { + "cell_type": "markdown", + "id": "eb18a204", + "metadata": { + "editable": true + }, + "source": [ + "### Stochastic variables and the main concepts, the discrete case\n", "\n", - "**Random variables are characterized by a domain which contains all possible values that the random value may take. This domain has a corresponding probability distribution function(PDF)**.\n", - "\n", - "\n", - "\n", - "\n", - "## Stochastic variables and the main concepts, the discrete case\n", "There are two main concepts associated with a stochastic variable. The\n", "*domain* is the set $\\mathbb D = \\{x\\}$ of all accessible values\n", "the variable can assume, so that $X \\in \\mathbb D$. An example of a\n", @@ -104,7 +153,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2589c0ee", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\mathrm{Prob}(X=x).\n", @@ -113,9 +165,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "ef71f105", + "metadata": { + "editable": true + }, "source": [ - "## Stochastic variables and the main concepts, the continuous case\n", "In the continuous case, the PDF does not directly depict the\n", "actual probability. Instead we define the probability for the\n", "stochastic variable to assume any value on an infinitesimal interval\n", @@ -127,7 +181,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9c5efaee", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mathrm{Prob}(a\\leq X\\leq b) = \\int_a^b p(x)dx.\n", @@ -136,16 +193,15 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "cbf1d43c", + "metadata": { + "editable": true + }, "source": [ "Qualitatively speaking, a stochastic variable represents the values of\n", "numbers chosen as if by chance from some specified PDF so that the\n", "selection of a large set of these numbers reproduces this PDF.\n", "\n", - "\n", - "\n", - "\n", - "## The cumulative probability\n", "Of interest to us is the *cumulative probability\n", "distribution function* (**CDF**), $P(x)$, which is just the probability\n", "for a stochastic variable $X$ to assume any value less than $x$" @@ -153,7 +209,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "be829d81", + "metadata": { + "editable": true + }, "source": [ "$$\n", "P(x)=\\mathrm{Prob(}X\\leq x\\mathrm{)} =\n", @@ -163,14 +222,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "1f193798", + "metadata": { + "editable": true + }, "source": [ "The relation between a CDF and its corresponding PDF is then" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "3d29d961", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{d}{dx}P(x).\n", @@ -179,9 +244,12 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "fc5b2c18", + "metadata": { + "editable": true + }, "source": [ - "## Properties of PDFs\n", + "### Properties of PDFs\n", "\n", "There are two properties that all PDFs must satisfy. The first one is\n", "positivity (assuming that the PDF is normalized)" @@ -189,7 +257,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2a465c1b", + "metadata": { + "editable": true + }, "source": [ "$$\n", "0 \\leq p(x) \\leq 1.\n", @@ -198,7 +269,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d69e520a", + "metadata": { + "editable": true + }, "source": [ "Naturally, it would be nonsensical for any of the values of the domain\n", "to occur with a probability greater than $1$ or less than $0$. Also,\n", @@ -209,7 +283,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2208b590", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{align*}\n", @@ -221,16 +298,21 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f3d91dca", + "metadata": { + "editable": true + }, "source": [ - "## Important distributions, the uniform distribution\n", "The first one\n", "is the most basic PDF; namely the uniform distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "0f431dd2", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -245,14 +327,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "155c6cf7", + "metadata": { + "editable": true + }, "source": [ "For $a=0$ and $b=1$ we have" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "42993dcc", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{array}{ll}\n", @@ -263,20 +351,22 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "749d5c23", + "metadata": { + "editable": true + }, "source": [ - "The latter distribution is used to generate random numbers. For other PDFs, one needs normally a mapping from this distribution to say for example the exponential distribution.\n", + "The latter distribution is used to generate random numbers. For other PDFs, one needs normally a mapping from this distribution to say for example the exponential distribution. \n", "\n", - "\n", - "\n", - "\n", - "## Gaussian distribution\n", "The second one is the Gaussian Distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "6e2110dc", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{1}{\\sigma\\sqrt{2\\pi}} \\exp{(-\\frac{(x-\\mu)^2}{2\\sigma^2})},\n", @@ -285,14 +375,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d00fdbe1", + "metadata": { + "editable": true + }, "source": [ "with mean value $\\mu$ and standard deviation $\\sigma$. If $\\mu=0$ and $\\sigma=1$, it is normally called the **standard normal distribution**" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "23c37b45", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{1}{\\sqrt{2\\pi}} \\exp{(-\\frac{x^2}{2})},\n", @@ -301,7 +397,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "07558d2c", + "metadata": { + "editable": true + }, "source": [ "The following simple Python code plots the above distribution for different values of $\\mu$ and $\\sigma$." ] @@ -309,6 +408,7 @@ { "cell_type": "code", "execution_count": 1, + "id": "b99f544d", "metadata": { "collapsed": false, "editable": true @@ -323,7 +423,7 @@ }, "metadata": { "filenames": { - "image/png": "/Users/mhjensen/Teaching/MachineLearning/doc/LectureNotes/_build/jupyter_execute/statistics_29_0.png" + "image/png": "/Users/mhjensen/Teaching/MachineLearning/doc/LectureNotes/_build/jupyter_execute/statistics_32_0.png" }, "needs_background": "light" }, @@ -374,15 +474,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "617597ef", + "metadata": { + "editable": true + }, "source": [ - "## Exponential distribution\n", "Another important distribution in science is the exponential distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "18be0515", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\alpha\\exp{-(\\alpha x)}.\n", @@ -391,9 +496,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "cafcff78", + "metadata": { + "editable": true + }, "source": [ - "## Expectation values\n", + "### Expectation values\n", + "\n", "Let $h(x)$ be an arbitrary continuous function on the domain of the stochastic\n", "variable $X$ whose PDF is $p(x)$. We define the *expectation value*\n", "of $h$ with respect to $p$ as follows" @@ -401,7 +510,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f5c68a26", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -416,7 +528,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "291e3ff7", + "metadata": { + "editable": true + }, "source": [ "Whenever the PDF is known implicitly, like in this case, we will drop\n", "the index $X$ for clarity. \n", @@ -427,7 +542,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "294080d7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x^n \\rangle \\equiv \\int\\! x^n p(x)\\,dx\n", @@ -436,9 +554,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9d493962", + "metadata": { + "editable": true + }, "source": [ - "## Stochastic variables and the main concepts, mean values\n", "The zero-th moment $\\langle 1\\rangle$ is just the normalization condition of\n", "$p$. The first moment, $\\langle x\\rangle$, is called the *mean* of $p$\n", "and often denoted by the letter $\\mu$" @@ -446,7 +566,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6ca38798", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x\\rangle = \\mu \\equiv \\int x p(x)dx,\n", @@ -455,14 +578,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9a779b37", + "metadata": { + "editable": true + }, "source": [ "for a continuous distribution and" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9fc21016", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x\\rangle = \\mu \\equiv \\sum_{i=1}^N x_i p(x_i),\n", @@ -471,23 +600,24 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "a146b327", + "metadata": { + "editable": true + }, "source": [ "for a discrete distribution. \n", "Qualitatively it represents the centroid or the average value of the\n", "PDF and is therefore simply called the expectation value of $p(x)$.\n", "\n", - "\n", - "\n", - "\n", - "## Stochastic variables and the main concepts, central moments, the variance\n", - "\n", "A special version of the moments is the set of *central moments*, the n-th central moment defined as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "0b282f14", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle (x-\\langle x\\rangle )^n\\rangle \\equiv \\int\\! (x-\\langle x\\rangle)^n p(x)\\,dx\n", @@ -496,7 +626,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "512e6e16", + "metadata": { + "editable": true + }, "source": [ "The zero-th and first central moments are both trivial, equal $1$ and\n", "$0$, respectively. But the second central moment, known as the\n", @@ -506,7 +639,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "e244a343", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{align*}\n", @@ -521,26 +657,31 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c0d8e272", + "metadata": { + "editable": true + }, "source": [ "The square root of the variance, $\\sigma =\\sqrt{\\langle (x-\\langle x\\rangle)^2\\rangle}$ is called the \n", "**standard deviation** of $p$. It is the RMS (root-mean-square)\n", "value of the deviation of the PDF from its mean value, interpreted\n", - "qualitatively as the \"spread\" of $p$ around its mean.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions\n", + "qualitatively as the \"spread\" of $p$ around its mean." + ] + }, + { + "cell_type": "markdown", + "id": "12fb667e", + "metadata": { + "editable": true + }, + "source": [ + "### Probability Distribution Functions\n", "\n", "The following table collects properties of probability distribution functions.\n", "In our notation we reserve the label $p(x)$ for the probability of a certain event,\n", "while $P(x)$ is the cumulative probability. \n", "\n", - "\n", - "\n", + "
    \n", "\n", "\n", "\n", @@ -555,17 +696,15 @@ "\n", "
    Discrete PDF Continuous PDF
    \n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions\n", "With a PDF we can compute expectation values of selected quantities such as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "7d318e93", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x^k\\rangle=\\sum_{i=1}^{N}x_i^kp(x_i),\n", @@ -574,14 +713,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6ef87b82", + "metadata": { + "editable": true + }, "source": [ "if we have a discrete PDF or" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "d11f1bdb", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x^k\\rangle=\\int_a^b x^kp(x)dx,\n", @@ -590,15 +735,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2a8abb3d", + "metadata": { + "editable": true + }, "source": [ "in the case of a continuous PDF. We have already defined the mean value $\\mu$\n", - "and the variance $\\sigma^2$.\n", - "\n", - "\n", - "\n", - "\n", - "## The three famous Probability Distribution Functions\n", + "and the variance $\\sigma^2$. \n", "\n", "There are at least three PDFs which one may encounter. These are the\n", "\n", @@ -607,7 +750,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6c14f838", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x)=\\frac{1}{b-a}\\Theta(x-a)\\Theta(b-x),\n", @@ -616,7 +762,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "62149f95", + "metadata": { + "editable": true + }, "source": [ "yielding probabilities different from zero in the interval $[a,b]$.\n", "\n", @@ -625,7 +774,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f8f51c0a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x)=\\alpha \\exp{(-\\alpha x)},\n", @@ -634,14 +786,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9a038bf3", + "metadata": { + "editable": true + }, "source": [ "yielding probabilities different from zero in the interval $[0,\\infty)$ and with mean value" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "bdaf914a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\int_0^{\\infty}xp(x)dx=\\int_0^{\\infty}x\\alpha \\exp{(-\\alpha x)}dx=\\frac{1}{\\alpha},\n", @@ -650,14 +808,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "74226a02", + "metadata": { + "editable": true + }, "source": [ "with variance" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "32215b82", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2=\\int_0^{\\infty}x^2p(x)dx-\\mu^2 = \\frac{1}{\\alpha^2}.\n", @@ -666,15 +830,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "688f69a2", + "metadata": { + "editable": true + }, "source": [ - "## Probability Distribution Functions, the normal distribution\n", "Finally, we have the so-called univariate normal distribution, or just the **normal distribution**" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "082e6778", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x)=\\frac{1}{b\\sqrt{2\\pi}}\\exp{\\left(-\\frac{(x-a)^2}{2b^2}\\right)}\n", @@ -683,7 +852,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "ba9c8bd4", + "metadata": { + "editable": true + }, "source": [ "with probabilities different from zero in the interval $(-\\infty,\\infty)$.\n", "The integral $\\int_{-\\infty}^{\\infty}\\exp{\\left(-(x^2\\right)}dx$ appears in many calculations, its value\n", @@ -693,7 +865,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f9540188", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\int_0^{\\infty}xp(x)dx=\\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}x \\exp{\\left(-\\frac{(x-a)^2}{2b^2}\\right)}dx,\n", @@ -702,14 +877,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0507fa0a", + "metadata": { + "editable": true + }, "source": [ "which becomes with a suitable change of variables" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "74ee9f1a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu =\\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}b\\sqrt{2}(a+b\\sqrt{2}y)\\exp{-y^2}dy=a.\n", @@ -718,15 +899,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0cf42992", + "metadata": { + "editable": true + }, "source": [ - "## Probability Distribution Functions, the normal distribution\n", "Similarly, the variance becomes" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "e3554ca3", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2 = \\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}(x-\\mu)^2 \\exp{\\left(-\\frac{(x-a)^2}{2b^2}\\right)}dx,\n", @@ -735,14 +921,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "728ba052", + "metadata": { + "editable": true + }, "source": [ "and inserting the mean value and performing a variable change we obtain" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "60276744", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2 = \\frac{1}{b\\sqrt{2\\pi}}\\int_{-\\infty}^{\\infty}b\\sqrt{2}(b\\sqrt{2}y)^2\\exp{\\left(-y^2\\right)}dy=\n", @@ -752,7 +944,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c5b45c52", + "metadata": { + "editable": true + }, "source": [ "and performing a final integration by parts we obtain the well-known result $\\sigma^2=b^2$.\n", "It is useful to introduce the standard normal distribution as well, defined by $\\mu=a=0$, viz. a distribution\n", @@ -761,7 +956,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "a005fdfe", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -776,10 +974,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "12c13ae4", + "metadata": { + "editable": true + }, "source": [ - "## Probability Distribution Functions, the cumulative distribution\n", - "\n", "The exponential and uniform distributions have simple cumulative functions,\n", "whereas the normal distribution does not, being proportional to the so-called\n", "error function $erf(x)$, given by" @@ -787,7 +986,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "68e56af7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "P(x) = \\frac{1}{\\sqrt{2\\pi}}\\int_{-\\infty}^x\\exp{\\left(-\\frac{t^2}{2}\\right)}dt,\n", @@ -796,22 +998,22 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "99071464", + "metadata": { + "editable": true + }, "source": [ - "which is difficult to evaluate in a quick way.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions, other important distribution\n", + "which is difficult to evaluate in a quick way. \n", "\n", "Some other PDFs which one encounters often in the natural sciences are the binomial distribution" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "08b3b2e3", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} \\hspace{0.5cm}x=0,1,\\dots,n,\n", @@ -820,7 +1022,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "57d2b4a7", + "metadata": { + "editable": true + }, "source": [ "where $y$ is the probability for a specific event, such as the tossing of a coin or moving left or right\n", "in case of a random walker. Note that $x$ is a discrete stochastic variable. \n", @@ -833,18 +1038,16 @@ "\n", " * The probability for every outcome in a single trial has the same value, for example the outcome of tossing (either heads or tails) a coin is always $1/2$.\n", "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions, the binomial distribution\n", - "\n", "In order to compute the mean and variance we need to recall Newton's binomial\n", "formula" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "4ce5e39f", + "metadata": { + "editable": true + }, "source": [ "$$\n", "(a+b)^m=\\sum_{n=0}^m \\left(\\begin{array}{c} m \\\\ n\\end{array}\\right)a^nb^{m-n},\n", @@ -853,14 +1056,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "4b87bcf7", + "metadata": { + "editable": true + }, "source": [ "which can be used to show that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "29e93603", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sum_{x=0}^n\\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} = (y+1-y)^n = 1,\n", @@ -869,7 +1078,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "524d4e2f", + "metadata": { + "editable": true + }, "source": [ "the PDF is normalized to one. \n", "The mean value is" @@ -877,7 +1089,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d129841d", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\sum_{x=0}^n x\\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} =\n", @@ -887,14 +1102,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "f68c25df", + "metadata": { + "editable": true + }, "source": [ "resulting in" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "f19452aa", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \n", @@ -904,14 +1125,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c75f2dc5", + "metadata": { + "editable": true + }, "source": [ "which we rewrite as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c7b760bf", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu=ny\\sum_{\\nu=0}^n\\left(\\begin{array}{c} n-1 \\\\ \\nu\\end{array}\\right)y^{\\nu}(1-y)^{n-1-\\nu} =ny(y+1-y)^{n-1}=ny.\n", @@ -920,20 +1147,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "6fc3e294", + "metadata": { + "editable": true + }, "source": [ "The variance is slightly trickier to get. It reads $\\sigma^2=ny(1-y)$. \n", "\n", - "\n", - "## Probability Distribution Functions, Poisson's distribution\n", - "\n", "Another important distribution with discrete stochastic variables $x$ is \n", "the Poisson model, which resembles the exponential distribution and reads" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c67cc7c9", + "metadata": { + "editable": true + }, "source": [ "$$\n", "p(x) = \\frac{\\lambda^x}{x!} e^{-\\lambda} \\hspace{0.5cm}x=0,1,\\dots,;\\lambda > 0.\n", @@ -942,14 +1172,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "3988d52a", + "metadata": { + "editable": true + }, "source": [ "In this case both the mean value and the variance are easier to calculate," ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9b3e4562", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu = \\sum_{x=0}^{\\infty} x \\frac{\\lambda^x}{x!} e^{-\\lambda} = \\lambda e^{-\\lambda}\\sum_{x=1}^{\\infty}\n", @@ -959,16 +1195,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "88138c21", + "metadata": { + "editable": true + }, "source": [ - "and the variance is $\\sigma^2=\\lambda$.\n", + "and the variance is $\\sigma^2=\\lambda$. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Probability Distribution Functions, Poisson's distribution\n", "An example of applications of the Poisson distribution could be the counting\n", "of the number of $\\alpha$-particles emitted from a radioactive source in a given time interval.\n", "In the limit of $n\\rightarrow \\infty$ and for small probabilities $y$, the binomial distribution\n", @@ -978,7 +1211,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "36ecffde", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\lim_{n\\rightarrow \\infty}\\left(\\begin{array}{c} n \\\\ x\\end{array}\\right)y^x(1-y)^{n-x} e^{-\\lambda}=\\sum_{x=1}^{\\infty}\\frac{\\lambda^x}{x!} e^{-\\lambda}.\n", @@ -987,9 +1223,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "be4e015c", + "metadata": { + "editable": true + }, "source": [ - "## Meet the covariance!\n", + "### Meet the covariance!\n", + "\n", "An important quantity in a statistical analysis is the so-called covariance. \n", "\n", "Consider the set $\\{X_i\\}$ of $n$\n", @@ -1000,7 +1240,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "93522854", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1015,7 +1258,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "e667c0aa", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1030,14 +1276,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "44f76dd9", + "metadata": { + "editable": true + }, "source": [ "with" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "1041b2af", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x_i\\rangle =\n", @@ -1047,15 +1299,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "e42984a2", + "metadata": { + "editable": true + }, "source": [ - "## Meet the covariance in matrix disguise\n", "If we consider the above covariance as a matrix" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "a46f958e", + "metadata": { + "editable": true + }, "source": [ "$$\n", "C_{ij} =\\mathrm{Cov}(X_i,\\,X_j),\n", @@ -1064,22 +1321,21 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "37763243", + "metadata": { + "editable": true + }, "source": [ "then the diagonal elements are just the familiar\n", "variances, $C_{ii} = \\mathrm{Cov}(X_i,\\,X_i) = \\mathrm{Var}(X_i)$. It turns out that\n", "all the off-diagonal elements are zero if the stochastic variables are\n", - "uncorrelated.\n", - "\n", - "\n", - "\n", - "\n", - "## Covariance" + "uncorrelated." ] }, { "cell_type": "code", "execution_count": 2, + "id": "aedc8b8c", "metadata": { "collapsed": false, "editable": true @@ -1089,27 +1345,27 @@ "name": "stdout", "output_type": "stream", "text": [ - "2.941866404575299\n", - "[[ 2.85091337 3.42078103 10.33711888 6.57154252 3.22094791 6.36117602\n", - " 8.03761519 5.89565264 3.47387858 5.73484667]\n", - " [ 3.42078103 4.10455924 12.40340043 7.88512489 3.86478158 7.63270833\n", - " 9.64425009 7.07413172 4.16827044 6.88118231]\n", - " [10.33711888 12.40340043 37.48133064 23.82773778 11.67882608 23.06497046\n", - " 29.1435666 21.37703055 12.59592669 20.7939646 ]\n", - " [ 6.57154252 7.88512489 23.82773778 15.14783702 7.42449643 14.66292841\n", - " 18.52723079 13.58986647 8.00751823 13.21919813]\n", - " [ 3.22094791 3.86478158 11.67882608 7.42449643 3.63901111 7.18682538\n", - " 9.08085812 6.66087937 3.92477093 6.47920156]\n", - " [ 6.36117602 7.63270833 23.06497046 14.66292841 7.18682538 14.19354258\n", - " 17.93414191 13.15483121 7.75118364 12.79602861]\n", - " [ 8.03761519 9.64425009 29.1435666 18.52723079 9.08085812 17.93414191\n", - " 22.66054752 16.62168613 9.79394867 16.16832385]\n", - " [ 5.89565264 7.07413172 21.37703055 13.58986647 6.66087937 13.15483121\n", - " 16.62168613 12.19213479 7.18393678 11.85959007]\n", - " [ 3.47387858 4.16827044 12.59592669 8.00751823 3.92477093 7.75118364\n", - " 9.79394867 7.18393678 4.23297056 6.9879924 ]\n", - " [ 5.73484667 6.88118231 20.7939646 13.21919813 6.47920156 12.79602861\n", - " 16.16832385 11.85959007 6.9879924 11.53611562]]\n" + "0.6530742540053943\n", + "[[14.12788968 14.881788 12.12937662 11.19379506 13.19466812 6.37692363\n", + " 8.24924624 8.20509391 14.99435648 14.6834195 ]\n", + " [14.881788 15.67591616 12.77662945 11.791123 13.89876748 6.71721168\n", + " 8.68944595 8.64293754 15.79449156 15.46696223]\n", + " [12.12937662 12.77662945 10.41357064 9.61033524 11.32816737 5.47485224\n", + " 7.0823185 7.0444119 12.87327414 12.6063219 ]\n", + " [11.19379506 11.791123 9.61033524 8.86905621 10.4543859 5.05255759\n", + " 6.53603432 6.50105159 11.88031314 11.63395187]\n", + " [13.19466812 13.89876748 11.32816737 10.4543859 12.32309075 5.95569422\n", + " 7.70434005 7.66310422 14.00390021 13.71350226]\n", + " [ 6.37692363 6.71721168 5.47485224 5.05255759 5.95569422 2.87836018\n", + " 3.72347283 3.70354373 6.76802186 6.62767384]\n", + " [ 8.24924624 8.68944595 7.0823185 6.53603432 7.70434005 3.72347283\n", + " 4.81671821 4.79093776 8.75517445 8.57361898]\n", + " [ 8.20509391 8.64293754 7.0444119 6.50105159 7.66310422 3.70354373\n", + " 4.79093776 4.76529528 8.70831425 8.52773051]\n", + " [14.99435648 15.79449156 12.87327414 11.88031314 14.00390021 6.76802186\n", + " 8.75517445 8.70831425 15.91396388 15.58395707]\n", + " [14.6834195 15.46696223 12.6063219 11.63395187 13.71350226 6.62767384\n", + " 8.57361898 8.52773051 15.58395707 15.26079358]]\n" ] } ], @@ -1142,16 +1398,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "4ad05ea1", + "metadata": { + "editable": true + }, "source": [ - "## Meet the covariance, uncorrelated events\n", - "\n", "Consider the stochastic variables $X_i$ and $X_j$, ($i\\neq j$). We have" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "3f643cb0", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\begin{align*}\n", @@ -1168,14 +1428,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "bedb81e0", + "metadata": { + "editable": true + }, "source": [ "If $X_i$ and $X_j$ are independent (assuming $i \\neq j$), we have that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "8a8f5bdd", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x_i x_j\\rangle = \\langle x_i\\rangle\\langle x_j\\rangle,\n", @@ -1184,14 +1450,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "cc3e8c15", + "metadata": { + "editable": true + }, "source": [ "leading to" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "cf107fa4", + "metadata": { + "editable": true + }, "source": [ "$$\n", "Cov(X_i, X_j) = 0 \\hspace{0.1cm} (i\\neq j).\n", @@ -1200,10 +1472,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c3d6eefd", + "metadata": { + "editable": true + }, "source": [ - "## Numerical experiments and the covariance\n", - "\n", "Now that we have constructed an idealized mathematical framework, let\n", "us try to apply it to empirical observations. Examples of relevant\n", "physical phenomena may be spontaneous decays of nuclei, or a purely\n", @@ -1217,7 +1490,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "11084473", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\{x_1, x_2,\\dots\\,x_k,\\dots\\}.\n", @@ -1226,9 +1502,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "ec3bb41f", + "metadata": { + "editable": true + }, "source": [ - "## Numerical experiments and the covariance\n", "We will call these\n", "values our *measurements* and the entire set as our measured\n", "*sample*. The action of measuring all the elements of a sample\n", @@ -1242,18 +1520,16 @@ "interested in finding the few lowest moments, like the mean\n", "$\\mu_X^{\\phantom X}$ and the variance $\\sigma_X^{\\phantom X}$.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Numerical experiments and the covariance, actual situations\n", "In practical situations however, a sample is always of finite size. Let that\n", "size be $n$. The expectation value of a sample $\\alpha$, the **sample mean**, is then defined as follows" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9654f276", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\langle x_{\\alpha} \\rangle \\equiv \\frac{1}{n}\\sum_{k=1}^n x_{\\alpha,k}.\n", @@ -1262,14 +1538,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "9c339ccc", + "metadata": { + "editable": true + }, "source": [ "The *sample variance* is:" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "9d523f50", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mathrm{Var}(x) \\equiv \\frac{1}{n}\\sum_{k=1}^n (x_{\\alpha,k} - \\langle x_{\\alpha} \\rangle)^2,\n", @@ -1278,15 +1560,13 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2793f264", + "metadata": { + "editable": true + }, "source": [ - "with its square root being the *standard deviation of the sample*.\n", + "with its square root being the *standard deviation of the sample*. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Numerical experiments and the covariance, our observables\n", "You can think of the above observables as a set of quantities which define\n", "a given experiment. This experiment is then repeated several times, say $m$ times.\n", "The total average is then" @@ -1294,7 +1574,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "b0432b14", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1309,7 +1592,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c1981b2d", + "metadata": { + "editable": true + }, "source": [ "where the last sums end at $m$ and $n$.\n", "The total variance is" @@ -1317,7 +1603,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "679d42bc", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2_m= \\frac{1}{mn^2}\\sum_{\\alpha=1}^m(\\langle x_{\\alpha} \\rangle-\\langle X_m \\rangle)^2,\n", @@ -1326,14 +1615,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2bb94e0d", + "metadata": { + "editable": true + }, "source": [ "which we rewrite as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "0611f240", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1348,16 +1643,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "624f9965", + "metadata": { + "editable": true + }, "source": [ - "## Numerical experiments and the covariance, the sample variance\n", - "\n", "We define also the sample variance $\\sigma^2$ of all $mn$ individual experiments as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "c0d8ff9e", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1372,18 +1671,26 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d058f856", + "metadata": { + "editable": true + }, "source": [ "These quantities, being known experimental values or the results from our calculations, \n", "may differ, in some cases\n", "significantly, from the similarly named\n", "exact values for the mean value $\\mu_X$, the variance $\\mathrm{Var}(X)$\n", - "and the covariance $\\mathrm{Cov}(X,Y)$.\n", - "\n", - "\n", - "\n", - "\n", - "## Numerical experiments and the covariance, central limit theorem\n", + "and the covariance $\\mathrm{Cov}(X,Y)$." + ] + }, + { + "cell_type": "markdown", + "id": "76e956db", + "metadata": { + "editable": true + }, + "source": [ + "### Numerical experiments and the covariance, central limit theorem\n", "\n", "The central limit theorem states that the PDF $\\tilde{p}(z)$ of\n", "the average of $m$ random values corresponding to a PDF $p(x)$ \n", @@ -1397,7 +1704,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "bd4e286e", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma_m=\n", @@ -1407,20 +1717,22 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "877355c7", + "metadata": { + "editable": true + }, "source": [ "In many cases the above estimate for the standard deviation, in particular if correlations are strong, may be too simplistic. We need therefore a more precise defintion of the error and the variance in our results.\n", "\n", - "\n", - "\n", - "\n", - "## Definition of Correlation Functions and Standard Deviation\n", "Our estimate of the true average $\\mu_{X}$ is the sample mean $\\langle X_m \\rangle$" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "abc25d1f", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu_{X}^{\\phantom X} \\approx X_m=\\frac{1}{mn}\\sum_{\\alpha=1}^m\\sum_{k=1}^n x_{\\alpha,k}.\n", @@ -1429,14 +1741,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "29a4c67d", + "metadata": { + "editable": true + }, "source": [ "We can then use Eq. ([7](#eq:exptvariance))" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "46b6a9e4", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2_m=\\frac{1}{mn^2}\\sum_{\\alpha=1}^m\\sum_{kl=1}^n (x_{\\alpha,k}-\\langle X_m \\rangle)(x_{\\alpha,l}-\\langle X_m \\rangle),\n", @@ -1445,14 +1763,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "350ee280", + "metadata": { + "editable": true + }, "source": [ "and rewrite it as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "321d0a3d", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma^2_m=\\frac{\\sigma^2}{n}+\\frac{2}{mn^2}\\sum_{\\alpha=1}^m\\sum_{k\n", "
    \n", @@ -1552,23 +1880,24 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "03919ae2", + "metadata": { + "editable": true + }, "source": [ "which gives us a useful measure of the correlation pair correlation\n", "starting always at $1$ for $d=0$.\n", "\n", - "\n", - "\n", - "\n", - "## Definition of Correlation Functions and Standard Deviation, sample variance\n", - "\n", "The sample variance of the $mn$ experiments can now be\n", "written in terms of the autocorrelation function" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "f4edb79b", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1584,7 +1913,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "209c3c0a", + "metadata": { + "editable": true + }, "source": [ "and we see that $\\sigma_m$ can be expressed in terms of the\n", "uncorrelated sample variance times a correction factor $\\tau$ which\n", @@ -1594,7 +1926,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d0c7027f", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1609,19 +1944,16 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "8183355a", + "metadata": { + "editable": true + }, "source": [ "\n", "\n", "For a correlation free experiment, $\\tau$\n", - "equals 1.\n", + "equals 1. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Definition of Correlation Functions and Standard Deviation\n", "From the point of view of\n", "Eq. ([10](#eq:error_estimate_corr_time)) we can interpret a sequential\n", "correlation as an effective reduction of the number of measurements by\n", @@ -1630,7 +1962,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "04f300ab", + "metadata": { + "editable": true + }, "source": [ "$$\n", "n_\\mathrm{eff} = \\frac{n}{\\tau}\n", @@ -1639,7 +1974,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d9bdb1eb", + "metadata": { + "editable": true + }, "source": [ "To neglect the autocorrelation time $\\tau$ will always cause our\n", "simple uncorrelated estimate of $\\sigma_m^2\\approx \\sigma^2/n$ to\n", @@ -1648,18 +1986,13 @@ "autocorrelation time poses an efficiency problem if the set of\n", "measurements is very large. The solution to this problem is given by \n", "more practically oriented methods like the blocking technique.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Code to compute the Covariance matrix and the Covariance" + "" ] }, { "cell_type": "code", "execution_count": 3, + "id": "93013c0b", "metadata": { "collapsed": false, "editable": true @@ -1669,15 +2002,15 @@ "name": "stdout", "output_type": "stream", "text": [ - "-0.029613363972682966\n", - "3.7448615806559786\n", - "-0.2360682191515046\n", - "0.8855417382991412 8.735738558766299 10.381627865854956\n", - "2.6079169911277265 2.2886847885377843 7.0110407067093945\n", - "[[ 0.88554174 2.60791699 2.28868479]\n", - " [ 2.60791699 8.73573856 7.01104071]\n", - " [ 2.28868479 7.01104071 10.38162787]]\n", - "[17.33900713 0.09216046 2.57174058]\n" + "0.12898627064868978\n", + "4.517350858882083\n", + "0.7469898175164704\n", + "1.0712953943627344 9.116048442683864 13.773329728649545\n", + "2.9898254753574576 3.041797190646905 8.203753611274545\n", + "[[ 1.07129539 2.98982548 3.04179719]\n", + " [ 2.98982548 9.11604844 8.20375361]\n", + " [ 3.04179719 8.20375361 13.77332973]]\n", + "[20.87647541 0.06602663 3.01817152]\n" ] } ], @@ -1723,9 +2056,12 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "65e8cd76", + "metadata": { + "editable": true + }, "source": [ - "## Random Numbers\n", + "### Random Numbers\n", "\n", "Uniform deviates are just random numbers that lie within a specified range\n", "(typically 0 to 1), with any one number in the range just as likely as any other. They\n", @@ -1738,12 +2074,6 @@ "of this section, is an essential building block for any sort of stochastic modeling\n", "or Monte Carlo computer work.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Random Numbers, better name: pseudo random numbers\n", - "\n", "A disclaimer is however appropriate. It should be fairly obvious that \n", "something as deterministic as a computer cannot generate purely random numbers.\n", "\n", @@ -1758,18 +2088,16 @@ "\n", " * the algorithm should be fast.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG\n", " The most common random number generators are based on so-called\n", "Linear congruential relations of the type" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "4daecdd3", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(aN_{i-1}+c) \\mathrm{MOD} (M),\n", @@ -1778,14 +2106,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "fd1c5e47", + "metadata": { + "editable": true + }, "source": [ "which yield a number in the interval [0,1] through" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "d8c06853", + "metadata": { + "editable": true + }, "source": [ "$$\n", "x_i=N_i/M\n", @@ -1794,7 +2128,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0d971106", + "metadata": { + "editable": true + }, "source": [ "The number \n", "$M$ is called the period and it should be as large as possible \n", @@ -1803,11 +2140,6 @@ "that is if we were to evaluate $(13)\\mathrm{MOD}(9)$, the outcome is the remainder\n", "of the division $13/9$, namely $4$.\n", "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG and periodic outputs\n", - "\n", "The problem with such generators is that their outputs are periodic;\n", "they \n", "will start to repeat themselves with a period that is at most $M$. If however\n", @@ -1818,7 +2150,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "d12a26d7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(6N_{i-1}+7) \\mathrm{MOD} (5),\n", @@ -1827,7 +2162,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "2ee32cc9", + "metadata": { + "editable": true + }, "source": [ "with a seed $N_0=2$. This generator produces the sequence\n", "$4,1,3,0,2,4,1,3,0,2,...\\dots$, i.e., a sequence with period $5$.\n", @@ -1837,7 +2175,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "441be869", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(27N_{i-1}+11) \\mathrm{MOD} (54),\n", @@ -1846,15 +2187,14 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c0803129", + "metadata": { + "editable": true + }, "source": [ "which still, with $N_0=2$, results in $11,38,11,38,11,38,\\dots$, a period of\n", "just $2$.\n", "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG and its period\n", "Typical periods for the random generators provided in the program library \n", "are of the order of $\\sim 10^9$ or larger. Other random number generators which have\n", "become increasingly popular are so-called shift-register generators.\n", @@ -1867,7 +2207,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "43aef6df", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_l=(aN_{l-i}+cN_{l-j})\\mathrm{MOD}(M).\n", @@ -1876,9 +2219,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "1c7bddf4", + "metadata": { + "editable": true + }, "source": [ - "## Random number generator RNG, other examples\n", "Such a generator again produces a sequence of pseudorandom numbers\n", "but this time with a period much larger than $M$.\n", "It is also possible to construct more elaborate algorithms by including\n", @@ -1889,7 +2234,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "fed2dc23", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1904,14 +2252,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "dc9d8537", + "metadata": { + "editable": true + }, "source": [ "followed by" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "aa9465e9", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -1926,21 +2280,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "def99a7e", + "metadata": { + "editable": true + }, "source": [ "which according to the authors has a period larger than $2^{94}$.\n", "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, other examples\n", "Instead of using modular addition, we could use the bitwise\n", "exclusive-OR ($\\oplus$) operation so that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "61c8f9ef", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_l=(N_{l-i})\\oplus (N_{l-j})\n", @@ -1949,7 +2305,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c59c90b8", + "metadata": { + "editable": true + }, "source": [ "where the bitwise action of $\\oplus$ means that if $N_{l-i}=N_{l-j}$ the result is\n", "$0$ whereas if $N_{l-i}\\ne N_{l-j}$ the result is\n", @@ -1960,20 +2319,17 @@ "\n", "In Fortran90, the bitwise $\\oplus$ operation is coded through the intrinsic\n", "function $\\mathrm{IEOR}(m,n)$ where $m$ and $n$ are the input numbers, while in $C$\n", - "it is given by $m\\wedge n$.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0\n", + "it is given by $m\\wedge n$. \n", "\n", "We show here how the linear congruential algorithm can be implemented, namely" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "06587f00", + "metadata": { + "editable": true + }, "source": [ "$$\n", "N_i=(aN_{i-1}) \\mathrm{MOD} (M).\n", @@ -1982,7 +2338,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "c3255e8e", + "metadata": { + "editable": true + }, "source": [ "However, since $a$ and $N_{i-1}$ are integers and their multiplication \n", "could become greater than the standard 32 bit integer, there is a trick via \n", @@ -1992,7 +2351,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "8e3ec364", + "metadata": { + "editable": true + }, "source": [ "$$\n", "M=aq+r,\n", @@ -2001,14 +2363,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "4b7c18d5", + "metadata": { + "editable": true + }, "source": [ "where we have defined" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "4e58c88d", + "metadata": { + "editable": true + }, "source": [ "$$\n", "q=[M/a],\n", @@ -2017,14 +2385,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "1fecdb9a", + "metadata": { + "editable": true + }, "source": [ "and" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "aa126ce7", + "metadata": { + "editable": true + }, "source": [ "$$\n", "r = M\\hspace{0.1cm}\\mathrm{MOD} \\hspace{0.1cm}a.\n", @@ -2033,24 +2407,23 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "20cab2fa", + "metadata": { + "editable": true + }, "source": [ "where the brackets denote integer division. In the code below the numbers \n", "$q$ and $r$ are chosen so that $r < q$.\n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0\n", - "\n", "To see how this works we note first that" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "904a6320", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -2065,23 +2438,24 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "36c6f816", + "metadata": { + "editable": true + }, "source": [ "since we can add or subtract any integer multiple of $M$ from $aN_{i-1}$.\n", "The last term $[N_{i-1}/q]M\\mathrm{MOD}(M)$ is zero since the integer division \n", - "$[N_{i-1}/q]$ just yields a constant which is multiplied with $M$.\n", + "$[N_{i-1}/q]$ just yields a constant which is multiplied with $M$. \n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0\n", "We can now rewrite Eq. ([14](#eq:rntrick1)) as" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "319af13b", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -2096,15 +2470,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "0c426357", + "metadata": { + "editable": true + }, "source": [ - "which results\n", - "in" + "which results" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "52547452", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -2119,14 +2498,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "86bf958f", + "metadata": { + "editable": true + }, "source": [ "yielding" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "d2015392", + "metadata": { + "editable": true + }, "source": [ "\n", "
    \n", @@ -2141,9 +2526,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "83495015", + "metadata": { + "editable": true + }, "source": [ - "## Random number generator RNG, RAN0\n", "The term $[N_{i-1}/q]r$ is always smaller or equal $N_{i-1}(r/q)$ and with $r < q$ we obtain always a \n", "number smaller than $N_{i-1}$, which is smaller than $M$. \n", "And since the number $N_{i-1}\\mathrm{MOD} (q)$ is between zero and $q-1$ then\n", @@ -2155,52 +2542,7 @@ "the starting point for each generation of a random number. The period\n", "of $ran0$ is $\\sim 2.1\\times 10^{9}$. A special feature of this\n", "algorithm is that is should never be called with the initial seed \n", - "set to $0$.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Random number generator RNG, RAN0 code" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " /*\n", - " ** The function\n", - " ** ran0()\n", - " ** is an \"Minimal\" random number generator of Park and Miller\n", - " ** Set or reset the input value\n", - " ** idum to any integer value (except the unlikely value MASK)\n", - " ** to initialize the sequence; idum must not be altered between\n", - " ** calls for sucessive deviates in a sequence.\n", - " ** The function returns a uniform deviate between 0.0 and 1.0.\n", - " */\n", - " double ran0(long &idum)\n", - " {\n", - " const int a = 16807, m = 2147483647, q = 127773;\n", - " const int r = 2836, MASK = 123459876;\n", - " const double am = 1./m;\n", - " long k;\n", - " double ans;\n", - " idum ^= MASK;\n", - " k = (*idum)/q;\n", - " idum = a*(idum - k*q) - r*k;\n", - " // add m if negative difference\n", - " if(idum < 0) idum += m;\n", - " ans=am*(idum);\n", - " idum ^= MASK;\n", - " return ans;\n", - " } // End: function ran0() \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Properties of Selected Random Number Generators\n", + "set to $0$. \n", "\n", "As mentioned previously, the underlying PDF for the generation of\n", "random numbers is the uniform distribution, meaning that the \n", @@ -2216,16 +2558,15 @@ "Two additional measures are the standard deviation $\\sigma$ and the mean\n", "$\\mu=\\langle x\\rangle$.\n", "\n", - "\n", - "\n", - "\n", - "## Properties of Selected Random Number Generators\n", "For the uniform distribution, the mean value $\\mu$ is then" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "268aac30", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\mu=\\langle x\\rangle=\\frac{1}{2}\n", @@ -2234,14 +2575,20 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "25bd4ea3", + "metadata": { + "editable": true + }, "source": [ "while the standard deviation is" ] }, { "cell_type": "markdown", - "metadata": {}, + "id": "29e8d709", + "metadata": { + "editable": true + }, "source": [ "$$\n", "\\sigma=\\sqrt{\\langle x^2\\rangle-\\mu^2}=\\frac{1}{\\sqrt{12}}=0.2886.\n", @@ -2250,13 +2597,15 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "90a07c88", + "metadata": { + "editable": true + }, "source": [ - "## Properties of Selected Random Number Generators\n", "The various random number generators produce results which agree rather well with\n", "these limiting values. \n", "\n", - "\n", + "
    \n", "\n", "\n", "\n", @@ -2276,16 +2625,13 @@ "\n", "
    $x$-bin ran0 ran1 ran2 ran3
    \n", "\n", - "\n", - "\n", - "\n", - "## Simple demonstration of RNGs using python\n", "The following simple Python code plots the distribution of the produced random numbers using the linear congruential RNG employed by Python. The trend displayed in the previous table is seen rather clearly." ] }, { "cell_type": "code", "execution_count": 4, + "id": "3c296708", "metadata": { "collapsed": false, "editable": true @@ -2293,14 +2639,14 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
    " ] }, "metadata": { "filenames": { - "image/png": "/Users/mhjensen/Teaching/MachineLearning/doc/LectureNotes/_build/jupyter_execute/statistics_178_0.png" + "image/png": "/Users/mhjensen/Teaching/MachineLearning/doc/LectureNotes/_build/jupyter_execute/statistics_181_0.png" }, "needs_background": "light" }, @@ -2334,9 +2680,11 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "7a028dda", + "metadata": { + "editable": true + }, "source": [ - "## Properties of Selected Random Number Generators\n", "Since our random numbers, which are typically generated via a linear congruential algorithm,\n", "are never fully independent, we can then define \n", "an important test which measures the degree of correlation, namely the so-called \n", @@ -2346,7 +2694,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "bc325e1a", + "metadata": { + "editable": true + }, "source": [ "$$\n", "C_k=\\frac{f_d}\n", @@ -2356,7 +2707,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "a7738ea8", + "metadata": { + "editable": true + }, "source": [ "with $C_0=1$. Recall that \n", "$\\sigma^2=\\langle x_i^2\\rangle-\\langle x_i\\rangle^2$ and that" @@ -2364,7 +2718,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "b647158e", + "metadata": { + "editable": true + }, "source": [ "$$\n", "f_d = \\frac{1}{nm}\\sum_{\\alpha=1}^m\\sum_{k=1}^{n-d}(x_{\\alpha,k}-\\langle X_m \\rangle)(x_{\\alpha,k+d}-\\langle X_m \\rangle),\n", @@ -2373,24 +2730,33 @@ }, { "cell_type": "markdown", - "metadata": {}, + "id": "273afa83", + "metadata": { + "editable": true + }, "source": [ "The non-vanishing of $C_k$ for $k\\ne 0$ means that the random\n", "numbers are not independent. The independence of the random numbers is crucial \n", "in the evaluation of other expectation values. If they are not independent, our\n", - "assumption for approximating $\\sigma_N$ is no longer valid.\n", + "assumption for approximating $\\sigma_N$ is no longer valid." + ] + }, + { + "cell_type": "markdown", + "id": "70391792", + "metadata": { + "editable": true + }, + "source": [ + "### Autocorrelation function\n", "\n", - "\n", - "\n", - "\n", - "\n", - "## Autocorrelation function\n", "This program computes the autocorrelation function as discussed in the equation on the previous slide for random numbers generated with the normal distribution $N(0,1)$." ] }, { "cell_type": "code", "execution_count": 5, + "id": "2b08e1a4", "metadata": { "collapsed": false, "editable": true @@ -2400,19 +2766,19 @@ "name": "stdout", "output_type": "stream", "text": [ - "0.05290417684691035 0.9902552771282336\n" + "-0.012633802944855959 1.0011828302640124\n" ] }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
    " ] }, "metadata": { "filenames": { - "image/png": "/Users/mhjensen/Teaching/MachineLearning/doc/LectureNotes/_build/jupyter_execute/statistics_184_1.png" + "image/png": "/Users/mhjensen/Teaching/MachineLearning/doc/LectureNotes/_build/jupyter_execute/statistics_188_1.png" }, "needs_background": "light" }, @@ -2453,534 +2819,13 @@ }, { "cell_type": "markdown", - "metadata": {}, - "source": [ - "As can be seen from the plot, the first point gives back the variance and a value of one. \n", - "For the remaining values we notice that there are still non-zero values for the auto-correlation function.\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Correlation function and which random number generators should I use\n", - "The program here computes the correlation function for one of the standard functions included with the c++ compiler." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " // This function computes the autocorrelation function for \n", - " // the standard c++ random number generator\n", - " \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " using namespace std;\n", - " // output file as global variable\n", - " ofstream ofile; \n", - " \n", - " // Main function begins here \n", - " int main(int argc, char* argv[])\n", - " {\n", - " int n;\n", - " char *outfilename;\n", - " \n", - " cin >> n;\n", - " double MCint = 0.; double MCintsqr2=0.;\n", - " double invers_period = 1./RAND_MAX; // initialise the random number generator\n", - " srand(time(NULL)); // This produces the so-called seed in MC jargon\n", - " // Compute the variance and the mean value of the uniform distribution\n", - " // Compute also the specific values x for each cycle in order to be able to\n", - " // the covariance and the correlation function \n", - " // Read in output file, abort if there are too few command-line arguments\n", - " if( argc <= 2 ){\n", - " cout << \"Bad Usage: \" << argv[0] << \n", - " \t \" read also output file and number of cycles on same line\" << endl;\n", - " exit(1);\n", - " }\n", - " else{\n", - " outfilename=argv[1];\n", - " }\n", - " ofile.open(outfilename); \n", - " // Get the number of Monte-Carlo samples\n", - " n = atoi(argv[2]);\n", - " double *X; \n", - " X = new double[n];\n", - " for (int i = 0; i < n; i++){\n", - " double x = double(rand())*invers_period; \n", - " X[i] = x;\n", - " MCint += x;\n", - " MCintsqr2 += x*x;\n", - " }\n", - " double Mean = MCint/((double) n );\n", - " MCintsqr2 = MCintsqr2/((double) n );\n", - " double STDev = sqrt(MCintsqr2-Mean*Mean);\n", - " double Variance = MCintsqr2-Mean*Mean;\n", - " // Write mean value and standard deviation \n", - " cout << \" Standard deviation= \" << STDev << \" Integral = \" << Mean << endl;\n", - " \n", - " // Now we compute the autocorrelation function\n", - " double *autocor; autocor = new double[n];\n", - " for (int j = 0; j < n; j++){\n", - " double sum = 0.0;\n", - " for (int k = 0; k < (n-j); k++){\n", - " \t sum += (X[k]-Mean)*(X[k+j]-Mean); \n", - " }\n", - " autocor[j] = sum/Variance/((double) n );\n", - " ofile << setiosflags(ios::showpoint | ios::uppercase);\n", - " ofile << setw(15) << setprecision(8) << j;\n", - " ofile << setw(15) << setprecision(8) << autocor[j] << endl;\n", - " }\n", - " ofile.close(); // close output file\n", - " return 0;\n", - " } // end of main program \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Which RNG should I use?\n", - "* C++ has a class called **random**. The [random class](http://www.cplusplus.com/reference/random/) contains a large selection of RNGs and is highly recommended. Some of these RNGs have very large periods making it thereby very safe to use these RNGs in case one is performing large calculations. In particular, the [Mersenne twister random number engine](http://www.cplusplus.com/reference/random/mersenne_twister_engine/) has a period of $2^{19937}$. \n", - "\n", - "* Add RNGs in Python\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## How to use the Mersenne generator\n", - "The following part of a c++ code (from project 4) sets up the uniform distribution for $x\\in [0,1]$." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " /*\n", - " \n", - " // You need this \n", - " #include \n", - " \n", - " // Initialize the seed and call the Mersienne algo\n", - " std::random_device rd;\n", - " std::mt19937_64 gen(rd());\n", - " // Set up the uniform distribution for x \\in [[0, 1]\n", - " std::uniform_real_distribution RandomNumberGenerator(0.0,1.0);\n", - " \n", - " // Now use the RNG\n", - " int ix = (int) (RandomNumberGenerator(gen)*NSpins);\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Why blocking?\n", - "**Statistical analysis.**\n", - "\n", - " * Monte Carlo simulations can be treated as *computer experiments*\n", - "\n", - " * The results can be analysed with the same statistical tools as we would use analysing experimental data.\n", - "\n", - " * As in all experiments, we are looking for expectation values and an estimate of how accurate they are, i.e., possible sources for errors.\n", - "\n", - "A very good article which explains blocking is H. Flyvbjerg and H. G. Petersen, *Error estimates on averages of correlated data*, [Journal of Chemical Physics 91, 461-466 (1989)](http://scitation.aip.org/content/aip/journal/jcp/91/1/10.1063/1.457480).\n", - "\n", - " \n", - "\n", - "\n", - "\n", - "\n", - "## Why blocking?\n", - "**Statistical analysis.**\n", - "\n", - " * As in other experiments, Monte Carlo experiments have two classes of errors:\n", - "\n", - " * Statistical errors\n", - "\n", - " * Systematical errors\n", - "\n", - "\n", - " * Statistical errors can be estimated using standard tools from statistics\n", - "\n", - " * Systematical errors are method specific and must be treated differently from case to case. (In VMC a common source is the step length or time step in importance sampling)\n", - "\n", - " \n", - "\n", - "\n", - "\n", - "## Code to demonstrate the calculation of the autocorrelation function\n", - "The following code computes the autocorrelation function, the covariance and the standard deviation\n", - "for standard RNG. \n", - "The [following file](https://github.com/CompPhysics/ComputationalPhysics2/tree/gh-pages/doc/Programs/LecturePrograms/programs/Blocking/autocorrelation.cpp) gives the code." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " // This function computes the autocorrelation function for \n", - " // the Mersenne random number generator with a uniform distribution\n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " #include \n", - " using namespace std;\n", - " using namespace arma;\n", - " // output file\n", - " ofstream ofile;\n", - " \n", - " // Main function begins here \n", - " int main(int argc, char* argv[])\n", - " {\n", - " int MonteCarloCycles;\n", - " string filename;\n", - " if (argc > 1) {\n", - " filename=argv[1];\n", - " MonteCarloCycles = atoi(argv[2]);\n", - " string fileout = filename;\n", - " string argument = to_string(MonteCarloCycles);\n", - " fileout.append(argument);\n", - " ofile.open(fileout);\n", - " }\n", - " \n", - " // Compute the variance and the mean value of the uniform distribution\n", - " // Compute also the specific values x for each cycle in order to be able to\n", - " // compute the covariance and the correlation function \n", - " \n", - " vec X = zeros(MonteCarloCycles);\n", - " double MCint = 0.; double MCintsqr2=0.;\n", - " std::random_device rd;\n", - " std::mt19937_64 gen(rd());\n", - " // Set up the uniform distribution for x \\in [[0, 1]\n", - " std::uniform_real_distribution RandomNumberGenerator(0.0,1.0);\n", - " for (int i = 0; i < MonteCarloCycles; i++){\n", - " double x = RandomNumberGenerator(gen); \n", - " X(i) = x;\n", - " MCint += x;\n", - " MCintsqr2 += x*x;\n", - " }\n", - " double Mean = MCint/((double) MonteCarloCycles );\n", - " MCintsqr2 = MCintsqr2/((double) MonteCarloCycles );\n", - " double STDev = sqrt(MCintsqr2-Mean*Mean);\n", - " double Variance = MCintsqr2-Mean*Mean;\n", - " // Write mean value and variance\n", - " cout << \" Sample variance= \" << Variance << \" Mean value = \" << Mean << endl;\n", - " // Now we compute the autocorrelation function\n", - " vec autocorrelation = zeros(MonteCarloCycles);\n", - " for (int j = 0; j < MonteCarloCycles; j++){\n", - " double sum = 0.0;\n", - " for (int k = 0; k < (MonteCarloCycles-j); k++){\n", - " sum += (X(k)-Mean)*(X(k+j)-Mean); \n", - " }\n", - " autocorrelation(j) = sum/Variance/((double) MonteCarloCycles );\n", - " ofile << setiosflags(ios::showpoint | ios::uppercase);\n", - " ofile << setw(15) << setprecision(8) << j;\n", - " ofile << setw(15) << setprecision(8) << autocorrelation(j) << endl;\n", - " }\n", - " // Now compute the exact covariance using the autocorrelation function\n", - " double Covariance = 0.0;\n", - " for (int j = 0; j < MonteCarloCycles; j++){\n", - " Covariance += autocorrelation(j);\n", - " }\n", - " Covariance *= 2.0/((double) MonteCarloCycles);\n", - " // Compute now the total variance, including the covariance, and obtain the standard deviation\n", - " double TotalVariance = (Variance/((double) MonteCarloCycles ))+Covariance;\n", - " cout << \"Covariance =\" << Covariance << \"Totalvariance= \" << TotalVariance << \"Sample Variance/n= \" << (Variance/((double) MonteCarloCycles )) << endl;\n", - " cout << \" STD from sample variance= \" << sqrt(Variance/((double) MonteCarloCycles )) << \" STD with covariance = \" << sqrt(TotalVariance) << endl;\n", - " \n", - " ofile.close(); // close output file\n", - " return 0;\n", - " } // end of main program \n", - " \n", - " \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## What is blocking?\n", - "**Blocking.**\n", - "\n", - " * Say that we have a set of samples from a Monte Carlo experiment\n", - "\n", - " * Assuming (wrongly) that our samples are uncorrelated our best estimate of the standard deviation of the mean $\\langle \\mathbf{M}\\rangle$ is given by" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "\\sigma=\\sqrt{\\frac{1}{n}\\left(\\langle \\mathbf{M}^2\\rangle-\\langle \\mathbf{M}\\rangle^2\\right)}\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "* If the samples are correlated we can rewrite our results to show that" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "\\sigma=\\sqrt{\\frac{1+2\\tau/\\Delta t}{n}\\left(\\langle \\mathbf{M}^2\\rangle-\\langle \\mathbf{M}\\rangle^2\\right)}\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "where $\\tau$ is the correlation time (the time between a sample and the next uncorrelated sample) and $\\Delta t$ is time between each sample\n", - "\n", - " \n", - "\n", - "\n", - "## What is blocking?\n", - "**Blocking.**\n", - "\n", - " * If $\\Delta t\\gg\\tau$ our first estimate of $\\sigma$ still holds\n", - "\n", - " * Much more common that $\\Delta t<\\tau$\n", - "\n", - " * In the method of data blocking we divide the sequence of samples into blocks\n", - "\n", - " * We then take the mean $\\langle \\mathbf{M}_i\\rangle$ of block $i=1\\ldots n_{blocks}$ to calculate the total mean and variance\n", - "\n", - " * The size of each block must be so large that sample $j$ of block $i$ is not correlated with sample $j$ of block $i+1$\n", - "\n", - " * The correlation time $\\tau$ would be a good choice\n", - "\n", - "\n", - "\n", - "\n", - "## What is blocking?\n", - "**Blocking.**\n", - "\n", - " * Problem: We don't know $\\tau$ or it is too expensive to compute\n", - "\n", - " * Solution: Make a plot of std. dev. as a function of blocksize\n", - "\n", - " * The estimate of std. dev. of correlated data is too low $\\to$ the error will increase with increasing block size until the blocks are uncorrelated, where we reach a plateau\n", - "\n", - " * When the std. dev. stops increasing the blocks are uncorrelated\n", - "\n", - "\n", - "\n", - "\n", - "## Implementation\n", - " * Do a Monte Carlo simulation, storing all samples to file\n", - "\n", - " * Do the statistical analysis on this file, independently of your Monte Carlo program\n", - "\n", - " * Read the file into an array\n", - "\n", - " * Loop over various block sizes\n", - "\n", - " * For each block size $n_b$, loop over the array in steps of $n_b$ taking the mean of elements $i n_b,\\ldots,(i+1) n_b$\n", - "\n", - " * Take the mean and variance of the resulting array\n", - "\n", - " * Write the results for each block size to file for later\n", - " analysis\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "## Actual implementation with code, main function\n", - "When the file gets large, it can be useful to write your data in binary mode instead of ascii characters.\n", - "The [following python file](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py) reads data from file with the output from every Monte Carlo cycle." - ] - }, - { - "cell_type": "code", - "execution_count": 6, + "id": "5848dd32", "metadata": { - "collapsed": false, "editable": true }, - "outputs": [ - { - "ename": "IndentationError", - "evalue": "unexpected indent (, line 2)", - "output_type": "error", - "traceback": [ - "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m2\u001b[0m\n\u001b[0;31m @timeFunction\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mIndentationError\u001b[0m\u001b[0;31m:\u001b[0m unexpected indent\n" - ] - } - ], "source": [ - "# Blocking\n", - " @timeFunction\n", - " def blocking(self, blockSizeMax = 500):\n", - " blockSizeMin = 1\n", - "\n", - " self.blockSizes = []\n", - " self.meanVec = []\n", - " self.varVec = []\n", - "\n", - " for i in range(blockSizeMin, blockSizeMax):\n", - " if(len(self.data) % i != 0):\n", - " pass#continue\n", - " blockSize = i\n", - " meanTempVec = []\n", - " varTempVec = []\n", - " startPoint = 0\n", - " endPoint = blockSize\n", - "\n", - " while endPoint <= len(self.data):\n", - " meanTempVec.append(np.average(self.data[startPoint:endPoint]))\n", - " startPoint = endPoint\n", - " endPoint += blockSize\n", - " mean, var = np.average(meanTempVec), np.var(meanTempVec)/len(meanTempVec)\n", - " self.meanVec.append(mean)\n", - " self.varVec.append(var)\n", - " self.blockSizes.append(blockSize)\n", - "\n", - " self.blockingAvg = np.average(self.meanVec[-200:])\n", - " self.blockingVar = (np.average(self.varVec[-200:]))\n", - " self.blockingStd = np.sqrt(self.blockingVar)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## The Bootstrap method\n", - "\n", - "The Bootstrap resampling method is also very popular. It is very simple:\n", - "\n", - "1. Start with your sample of measurements and compute the sample variance and the mean values\n", - "\n", - "2. Then start again but pick in a random way the numbers in the sample and recalculate the mean and the sample variance.\n", - "\n", - "3. Repeat this $K$ times.\n", - "\n", - "It can be shown, see the article by [Efron](https://projecteuclid.org/download/pdf_1/euclid.aos/1176344552)\n", - "that it produces the correct standard deviation.\n", - "\n", - "This method is very useful for small ensembles of data points. \n", - "\n", - "\n", - "## Bootstrapping\n", - "Given a set of $N$ data, assume that we are interested in some \n", - "observable $\\theta$ which may be estimated from that set. This observable can also be for example the result of a fit based on all $N$ raw data. \n", - "Let us call the value of the observable obtained from the original \n", - "data set $\\hat{\\theta}$. One recreates from the sample repeatedly \n", - "other samples by choosing randomly $N$ data out of the original set. \n", - "This costs essentially nothing, since we just recycle the original data set for the building of new sets. \n", - "\n", - "\n", - "## Bootstrapping, recipe\n", - "Let us assume we have done this $K$ times and thus have $K$ sets of $N$ \n", - "data values each. \n", - "Of course some values will enter more than once in the new sets. For each of these sets one computes the observable $\\theta$ resulting in values $\\theta_k$ with $k = 1,...,K$. Then one determines" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "\\tilde{\\theta} = \\frac{1}{K} \\sum_{k=1}^K \\theta_k,\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "and" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "$$\n", - "sigma^2_{\\tilde{\\theta}} = \\frac{1}{K} \\sum_{k=1}^K \\left(\\theta_k-\\tilde{\\theta}\\right)^2.\n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "These are estimators for $\\angle\\theta\\rangle$ and its variance. They are not unbiased and therefore \n", - "$\\tilde{\\theta}\\neq\\hat{\\theta}$ for finite K. \n", - "\n", - "The difference is called bias and gives an idea on how far away the result may be from \n", - "the true $\\angle\\theta\\rangle$. As final result for the observable one quotes $\\angle\\theta\\rangle = \\tilde{\\theta} \\pm \\sigma_{\\tilde{\\theta}}$ .\n", - "\n", - "\n", - "\n", - "## Bootstrapping, [code](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " # Bootstrap\n", - " @timeFunction\n", - " def bootstrap(self, nBoots = 1000):\n", - " bootVec = np.zeros(nBoots)\n", - " for k in range(0,nBoots):\n", - " bootVec[k] = np.average(np.random.choice(self.data, len(self.data)))\n", - " self.bootAvg = np.average(bootVec)\n", - " self.bootVar = np.var(bootVec)\n", - " self.bootStd = np.std(bootVec)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Jackknife, [code](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " # Jackknife\n", - " @timeFunction\n", - " def jackknife(self):\n", - " jackknVec = np.zeros(len(self.data))\n", - " for k in range(0,len(self.data)):\n", - " jackknVec[k] = np.average(np.delete(self.data, k))\n", - " self.jackknAvg = self.avg - (len(self.data) - 1) * (np.average(jackknVec) - self.avg)\n", - " self.jackknVar = float(len(self.data) - 1) * np.var(jackknVec)\n", - " self.jackknStd = np.sqrt(self.jackknVar)\n" + "As can be seen from the plot, the first point gives back the variance and a value of one. \n", + "For the remaining values we notice that there are still non-zero values for the auto-correlation function." ] } ], @@ -2999,5 +2844,5 @@ } }, "nbformat": 4, - "nbformat_minor": 4 + "nbformat_minor": 5 } \ No newline at end of file diff --git a/doc/LectureNotes/_build/jupyter_execute/statistics.py b/doc/LectureNotes/_build/jupyter_execute/statistics.py index d46d27034..9720a012f 100644 --- a/doc/LectureNotes/_build/jupyter_execute/statistics.py +++ b/doc/LectureNotes/_build/jupyter_execute/statistics.py @@ -1,10 +1,13 @@ #!/usr/bin/env python # coding: utf-8 +# + # # Elements of Probability Theory and Statistical Data Analysis -# -# + # ## Domains and probabilities +# # Consider the following simple example, namely the tossing of two dice, resulting in the following possible values # $$ @@ -18,7 +21,6 @@ # \{1/36,2/36/,3/36,4/36,5/36,6/36,5/36,4/36,3/36,2/36,1/36\}. # $$ -# ## Tossing the dice # The numbers in the domain are the outcomes of the physical process of tossing say two dice. # We cannot tell beforehand whether the outcome is 3 or 5 or any other number in this domain. # This defines the randomness of the outcome, or unexpectedness or any other synonimous word which @@ -39,14 +41,10 @@ # \{10,8,6,3,6,9,11,8,12,4,5\}. # $$ -# ## Stochastic variables -# # **Random variables are characterized by a domain which contains all possible values that the random value may take. This domain has a corresponding probability distribution function(PDF)**. + +# ### Stochastic variables and the main concepts, the discrete case # -# -# -# -# ## Stochastic variables and the main concepts, the discrete case # There are two main concepts associated with a stochastic variable. The # *domain* is the set $\mathbb D = \{x\}$ of all accessible values # the variable can assume, so that $X \in \mathbb D$. An example of a @@ -62,7 +60,6 @@ # p(x) = \mathrm{Prob}(X=x). # $$ -# ## Stochastic variables and the main concepts, the continuous case # In the continuous case, the PDF does not directly depict the # actual probability. Instead we define the probability for the # stochastic variable to assume any value on an infinitesimal interval @@ -79,10 +76,6 @@ # numbers chosen as if by chance from some specified PDF so that the # selection of a large set of these numbers reproduces this PDF. # -# -# -# -# ## The cumulative probability # Of interest to us is the *cumulative probability # distribution function* (**CDF**), $P(x)$, which is just the probability # for a stochastic variable $X$ to assume any value less than $x$ @@ -98,7 +91,7 @@ # p(x) = \frac{d}{dx}P(x). # $$ -# ## Properties of PDFs +# ### Properties of PDFs # # There are two properties that all PDFs must satisfy. The first one is # positivity (assuming that the PDF is normalized) @@ -120,7 +113,6 @@ # \end{align*} # $$ -# ## Important distributions, the uniform distribution # The first one # is the most basic PDF; namely the uniform distribution @@ -142,12 +134,8 @@ # \end{array} # $$ -# The latter distribution is used to generate random numbers. For other PDFs, one needs normally a mapping from this distribution to say for example the exponential distribution. +# The latter distribution is used to generate random numbers. For other PDFs, one needs normally a mapping from this distribution to say for example the exponential distribution. # -# -# -# -# ## Gaussian distribution # The second one is the Gaussian Distribution # $$ @@ -206,14 +194,14 @@ plt.savefig('gaussian.pdf', format='pdf') plt.show() -# ## Exponential distribution # Another important distribution in science is the exponential distribution # $$ # p(x) = \alpha\exp{-(\alpha x)}. # $$ -# ## Expectation values +# ### Expectation values +# # Let $h(x)$ be an arbitrary continuous function on the domain of the stochastic # variable $X$ whose PDF is $p(x)$. We define the *expectation value* # of $h$ with respect to $p$ as follows @@ -238,7 +226,6 @@ plt.show() # \langle x^n \rangle \equiv \int\! x^n p(x)\,dx # $$ -# ## Stochastic variables and the main concepts, mean values # The zero-th moment $\langle 1\rangle$ is just the normalization condition of # $p$. The first moment, $\langle x\rangle$, is called the *mean* of $p$ # and often denoted by the letter $\mu$ @@ -257,11 +244,6 @@ plt.show() # Qualitatively it represents the centroid or the average value of the # PDF and is therefore simply called the expectation value of $p(x)$. # -# -# -# -# ## Stochastic variables and the main concepts, central moments, the variance -# # A special version of the moments is the set of *central moments*, the n-th central moment defined as # $$ @@ -287,20 +269,14 @@ plt.show() # **standard deviation** of $p$. It is the RMS (root-mean-square) # value of the deviation of the PDF from its mean value, interpreted # qualitatively as the "spread" of $p$ around its mean. -# -# -# -# -# -# -# ## Probability Distribution Functions + +# ### Probability Distribution Functions # # The following table collects properties of probability distribution functions. # In our notation we reserve the label $p(x)$ for the probability of a certain event, # while $P(x)$ is the cumulative probability. # -# -# +#
    # # # @@ -315,11 +291,6 @@ plt.show() # #
    Discrete PDF Continuous PDF
    # -# -# -# -# -# ## Probability Distribution Functions # With a PDF we can compute expectation values of selected quantities such as # $$ @@ -333,12 +304,7 @@ plt.show() # $$ # in the case of a continuous PDF. We have already defined the mean value $\mu$ -# and the variance $\sigma^2$. -# -# -# -# -# ## The three famous Probability Distribution Functions +# and the variance $\sigma^2$. # # There are at least three PDFs which one may encounter. These are the # @@ -368,7 +334,6 @@ plt.show() # \sigma^2=\int_0^{\infty}x^2p(x)dx-\mu^2 = \frac{1}{\alpha^2}. # $$ -# ## Probability Distribution Functions, the normal distribution # Finally, we have the so-called univariate normal distribution, or just the **normal distribution** # $$ @@ -390,7 +355,6 @@ plt.show() # \mu =\frac{1}{b\sqrt{2\pi}}\int_{-\infty}^{\infty}b\sqrt{2}(a+b\sqrt{2}y)\exp{-y^2}dy=a. # $$ -# ## Probability Distribution Functions, the normal distribution # Similarly, the variance becomes # $$ @@ -418,8 +382,6 @@ plt.show() # \end{equation} # $$ -# ## Probability Distribution Functions, the cumulative distribution -# # The exponential and uniform distributions have simple cumulative functions, # whereas the normal distribution does not, being proportional to the so-called # error function $erf(x)$, given by @@ -428,13 +390,7 @@ plt.show() # P(x) = \frac{1}{\sqrt{2\pi}}\int_{-\infty}^x\exp{\left(-\frac{t^2}{2}\right)}dt, # $$ -# which is difficult to evaluate in a quick way. -# -# -# -# -# -# ## Probability Distribution Functions, other important distribution +# which is difficult to evaluate in a quick way. # # Some other PDFs which one encounters often in the natural sciences are the binomial distribution @@ -453,11 +409,6 @@ plt.show() # # * The probability for every outcome in a single trial has the same value, for example the outcome of tossing (either heads or tails) a coin is always $1/2$. # -# -# -# -# ## Probability Distribution Functions, the binomial distribution -# # In order to compute the mean and variance we need to recall Newton's binomial # formula @@ -494,9 +445,6 @@ plt.show() # The variance is slightly trickier to get. It reads $\sigma^2=ny(1-y)$. # -# -# ## Probability Distribution Functions, Poisson's distribution -# # Another important distribution with discrete stochastic variables $x$ is # the Poisson model, which resembles the exponential distribution and reads @@ -511,14 +459,8 @@ plt.show() # \frac{\lambda^{x-1}}{(x-1)!}=\lambda, # $$ -# and the variance is $\sigma^2=\lambda$. +# and the variance is $\sigma^2=\lambda$. # -# -# -# -# -# -# ## Probability Distribution Functions, Poisson's distribution # An example of applications of the Poisson distribution could be the counting # of the number of $\alpha$-particles emitted from a radioactive source in a given time interval. # In the limit of $n\rightarrow \infty$ and for small probabilities $y$, the binomial distribution @@ -529,7 +471,8 @@ plt.show() # \lim_{n\rightarrow \infty}\left(\begin{array}{c} n \\ x\end{array}\right)y^x(1-y)^{n-x} e^{-\lambda}=\sum_{x=1}^{\infty}\frac{\lambda^x}{x!} e^{-\lambda}. # $$ -# ## Meet the covariance! +# ### Meet the covariance! +# # An important quantity in a statistical analysis is the so-called covariance. # # Consider the set $\{X_i\}$ of $n$ @@ -564,7 +507,6 @@ plt.show() # \int\cdots\int x_i P(x_1,\dots,x_n)\,dx_1\dots dx_n. # $$ -# ## Meet the covariance in matrix disguise # If we consider the above covariance as a matrix # $$ @@ -575,11 +517,6 @@ plt.show() # variances, $C_{ii} = \mathrm{Cov}(X_i,\,X_i) = \mathrm{Var}(X_i)$. It turns out that # all the off-diagonal elements are zero if the stochastic variables are # uncorrelated. -# -# -# -# -# ## Covariance # In[2]: @@ -610,8 +547,6 @@ c = np.cov(z.T) print(c) -# ## Meet the covariance, uncorrelated events -# # Consider the stochastic variables $X_i$ and $X_j$, ($i\neq j$). We have # $$ @@ -638,8 +573,6 @@ print(c) # Cov(X_i, X_j) = 0 \hspace{0.1cm} (i\neq j). # $$ -# ## Numerical experiments and the covariance -# # Now that we have constructed an idealized mathematical framework, let # us try to apply it to empirical observations. Examples of relevant # physical phenomena may be spontaneous decays of nuclei, or a purely @@ -654,7 +587,6 @@ print(c) # \{x_1, x_2,\dots\,x_k,\dots\}. # $$ -# ## Numerical experiments and the covariance # We will call these # values our *measurements* and the entire set as our measured # *sample*. The action of measuring all the elements of a sample @@ -668,11 +600,6 @@ print(c) # interested in finding the few lowest moments, like the mean # $\mu_X^{\phantom X}$ and the variance $\sigma_X^{\phantom X}$. # -# -# -# -# -# ## Numerical experiments and the covariance, actual situations # In practical situations however, a sample is always of finite size. Let that # size be $n$. The expectation value of a sample $\alpha$, the **sample mean**, is then defined as follows @@ -686,13 +613,8 @@ print(c) # \mathrm{Var}(x) \equiv \frac{1}{n}\sum_{k=1}^n (x_{\alpha,k} - \langle x_{\alpha} \rangle)^2, # $$ -# with its square root being the *standard deviation of the sample*. +# with its square root being the *standard deviation of the sample*. # -# -# -# -# -# ## Numerical experiments and the covariance, our observables # You can think of the above observables as a set of quantities which define # a given experiment. This experiment is then repeated several times, say $m$ times. # The total average is then @@ -726,8 +648,6 @@ print(c) # \end{equation} # $$ -# ## Numerical experiments and the covariance, the sample variance -# # We define also the sample variance $\sigma^2$ of all $mn$ individual experiments as # @@ -745,11 +665,8 @@ print(c) # significantly, from the similarly named # exact values for the mean value $\mu_X$, the variance $\mathrm{Var}(X)$ # and the covariance $\mathrm{Cov}(X,Y)$. -# -# -# -# -# ## Numerical experiments and the covariance, central limit theorem + +# ### Numerical experiments and the covariance, central limit theorem # # The central limit theorem states that the PDF $\tilde{p}(z)$ of # the average of $m$ random values corresponding to a PDF $p(x)$ @@ -767,10 +684,6 @@ print(c) # In many cases the above estimate for the standard deviation, in particular if correlations are strong, may be too simplistic. We need therefore a more precise defintion of the error and the variance in our results. # -# -# -# -# ## Definition of Correlation Functions and Standard Deviation # Our estimate of the true average $\mu_{X}$ is the sample mean $\langle X_m \rangle$ # $$ @@ -790,16 +703,8 @@ print(c) # $$ # where the first term is the sample variance of all $mn$ experiments divided by $n$ -# and the last term is nothing but the covariance which arises when $k\ne l$. +# and the last term is nothing but the covariance which arises when $k\ne l$. # -# -# -# -# -# -# -# -# ## Definition of Correlation Functions and Standard Deviation # Our estimate of the true average $\mu_{X}$ is the sample mean $\langle X_m \rangle$ # # If the @@ -814,11 +719,6 @@ print(c) # measurements to calculate the cross terms. Therefore, all measurements # have to be stored throughout the experiment. # -# -# -# -# ## Definition of Correlation Functions and Standard Deviation -# # Let us analyze the problem by splitting up the correlation term into # partial sums of the form @@ -834,7 +734,6 @@ print(c) # \frac{2}{n}\sum_{d=1}^{n-1} f_d # $$ -# ## Definition of Correlation Functions and Standard Deviation # The value of $f_d$ reflects the correlation between measurements # separated by the distance $d$ in the samples. Notice that for # $d=0$, $f$ is just the sample variance, $\sigma^2$. If we divide $f_d$ @@ -853,11 +752,6 @@ print(c) # which gives us a useful measure of the correlation pair correlation # starting always at $1$ for $d=0$. # -# -# -# -# ## Definition of Correlation Functions and Standard Deviation, sample variance -# # The sample variance of the $mn$ experiments can now be # written in terms of the autocorrelation function @@ -890,14 +784,8 @@ print(c) # # # For a correlation free experiment, $\tau$ -# equals 1. +# equals 1. # -# -# -# -# -# -# ## Definition of Correlation Functions and Standard Deviation # From the point of view of # Eq. ([10](#eq:error_estimate_corr_time)) we can interpret a sequential # correlation as an effective reduction of the number of measurements by @@ -915,12 +803,6 @@ print(c) # measurements is very large. The solution to this problem is given by # more practically oriented methods like the blocking technique. # -# -# -# -# -# -# ## Code to compute the Covariance matrix and the Covariance # In[3]: @@ -964,7 +846,7 @@ Eigvals, Eigvecs = np.linalg.eig(c) print(Eigvals) -# ## Random Numbers +# ### Random Numbers # # Uniform deviates are just random numbers that lie within a specified range # (typically 0 to 1), with any one number in the range just as likely as any other. They @@ -977,12 +859,6 @@ print(Eigvals) # of this section, is an essential building block for any sort of stochastic modeling # or Monte Carlo computer work. # -# -# -# -# -# ## Random Numbers, better name: pseudo random numbers -# # A disclaimer is however appropriate. It should be fairly obvious that # something as deterministic as a computer cannot generate purely random numbers. # @@ -997,11 +873,6 @@ print(Eigvals) # # * the algorithm should be fast. # -# -# -# -# -# ## Random number generator RNG # The most common random number generators are based on so-called # Linear congruential relations of the type @@ -1022,11 +893,6 @@ print(Eigvals) # that is if we were to evaluate $(13)\mathrm{MOD}(9)$, the outcome is the remainder # of the division $13/9$, namely $4$. # -# -# -# -# ## Random number generator RNG and periodic outputs -# # The problem with such generators is that their outputs are periodic; # they # will start to repeat themselves with a period that is at most $M$. If however @@ -1050,10 +916,6 @@ print(Eigvals) # which still, with $N_0=2$, results in $11,38,11,38,11,38,\dots$, a period of # just $2$. # -# -# -# -# ## Random number generator RNG and its period # Typical periods for the random generators provided in the program library # are of the order of $\sim 10^9$ or larger. Other random number generators which have # become increasingly popular are so-called shift-register generators. @@ -1067,7 +929,6 @@ print(Eigvals) # N_l=(aN_{l-i}+cN_{l-j})\mathrm{MOD}(M). # $$ -# ## Random number generator RNG, other examples # Such a generator again produces a sequence of pseudorandom numbers # but this time with a period much larger than $M$. # It is also possible to construct more elaborate algorithms by including @@ -1099,10 +960,6 @@ print(Eigvals) # which according to the authors has a period larger than $2^{94}$. # -# -# -# -# ## Random number generator RNG, other examples # Instead of using modular addition, we could use the bitwise # exclusive-OR ($\oplus$) operation so that @@ -1119,13 +976,7 @@ print(Eigvals) # # In Fortran90, the bitwise $\oplus$ operation is coded through the intrinsic # function $\mathrm{IEOR}(m,n)$ where $m$ and $n$ are the input numbers, while in $C$ -# it is given by $m\wedge n$. -# -# -# -# -# -# ## Random number generator RNG, RAN0 +# it is given by $m\wedge n$. # # We show here how the linear congruential algorithm can be implemented, namely @@ -1157,13 +1008,6 @@ print(Eigvals) # where the brackets denote integer division. In the code below the numbers # $q$ and $r$ are chosen so that $r < q$. # -# -# -# -# -# -# ## Random number generator RNG, RAN0 -# # To see how this works we note first that # @@ -1178,13 +1022,8 @@ print(Eigvals) # since we can add or subtract any integer multiple of $M$ from $aN_{i-1}$. # The last term $[N_{i-1}/q]M\mathrm{MOD}(M)$ is zero since the integer division -# $[N_{i-1}/q]$ just yields a constant which is multiplied with $M$. +# $[N_{i-1}/q]$ just yields a constant which is multiplied with $M$. # -# -# -# -# -# ## Random number generator RNG, RAN0 # We can now rewrite Eq. ([14](#eq:rntrick1)) as # @@ -1198,7 +1037,6 @@ print(Eigvals) # $$ # which results -# in # #
    @@ -1222,7 +1060,6 @@ print(Eigvals) # \end{equation} # $$ -# ## Random number generator RNG, RAN0 # The term $[N_{i-1}/q]r$ is always smaller or equal $N_{i-1}(r/q)$ and with $r < q$ we obtain always a # number smaller than $N_{i-1}$, which is smaller than $M$. # And since the number $N_{i-1}\mathrm{MOD} (q)$ is between zero and $q-1$ then @@ -1234,43 +1071,7 @@ print(Eigvals) # the starting point for each generation of a random number. The period # of $ran0$ is $\sim 2.1\times 10^{9}$. A special feature of this # algorithm is that is should never be called with the initial seed -# set to $0$. -# -# -# -# -# -# ## Random number generator RNG, RAN0 code - -# /* -# ** The function -# ** ran0() -# ** is an "Minimal" random number generator of Park and Miller -# ** Set or reset the input value -# ** idum to any integer value (except the unlikely value MASK) -# ** to initialize the sequence; idum must not be altered between -# ** calls for sucessive deviates in a sequence. -# ** The function returns a uniform deviate between 0.0 and 1.0. -# */ -# double ran0(long &idum) -# { -# const int a = 16807, m = 2147483647, q = 127773; -# const int r = 2836, MASK = 123459876; -# const double am = 1./m; -# long k; -# double ans; -# idum ^= MASK; -# k = (*idum)/q; -# idum = a*(idum - k*q) - r*k; -# // add m if negative difference -# if(idum < 0) idum += m; -# ans=am*(idum); -# idum ^= MASK; -# return ans; -# } // End: function ran0() -# - -# ## Properties of Selected Random Number Generators +# set to $0$. # # As mentioned previously, the underlying PDF for the generation of # random numbers is the uniform distribution, meaning that the @@ -1286,10 +1087,6 @@ print(Eigvals) # Two additional measures are the standard deviation $\sigma$ and the mean # $\mu=\langle x\rangle$. # -# -# -# -# ## Properties of Selected Random Number Generators # For the uniform distribution, the mean value $\mu$ is then # $$ @@ -1302,11 +1099,10 @@ print(Eigvals) # \sigma=\sqrt{\langle x^2\rangle-\mu^2}=\frac{1}{\sqrt{12}}=0.2886. # $$ -# ## Properties of Selected Random Number Generators # The various random number generators produce results which agree rather well with # these limiting values. # -# +#
    # # # @@ -1326,10 +1122,6 @@ print(Eigvals) # #
    $x$-bin ran0 ran1 ran2 ran3
    # -# -# -# -# ## Simple demonstration of RNGs using python # The following simple Python code plots the distribution of the produced random numbers using the linear congruential RNG employed by Python. The trend displayed in the previous table is seen rather clearly. # In[4]: @@ -1359,7 +1151,6 @@ plt.grid(True) plt.show() -# ## Properties of Selected Random Number Generators # Since our random numbers, which are typically generated via a linear congruential algorithm, # are never fully independent, we can then define # an important test which measures the degree of correlation, namely the so-called @@ -1382,12 +1173,9 @@ plt.show() # numbers are not independent. The independence of the random numbers is crucial # in the evaluation of other expectation values. If they are not independent, our # assumption for approximating $\sigma_N$ is no longer valid. + +# ### Autocorrelation function # -# -# -# -# -# ## Autocorrelation function # This program computes the autocorrelation function as discussed in the equation on the previous slide for random numbers generated with the normal distribution $N(0,1)$. # In[5]: @@ -1426,427 +1214,3 @@ plt.show() # As can be seen from the plot, the first point gives back the variance and a value of one. # For the remaining values we notice that there are still non-zero values for the auto-correlation function. -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# -# ## Correlation function and which random number generators should I use -# The program here computes the correlation function for one of the standard functions included with the c++ compiler. - -# // This function computes the autocorrelation function for -# // the standard c++ random number generator -# -# #include -# #include -# #include -# #include -# using namespace std; -# // output file as global variable -# ofstream ofile; -# -# // Main function begins here -# int main(int argc, char* argv[]) -# { -# int n; -# char *outfilename; -# -# cin >> n; -# double MCint = 0.; double MCintsqr2=0.; -# double invers_period = 1./RAND_MAX; // initialise the random number generator -# srand(time(NULL)); // This produces the so-called seed in MC jargon -# // Compute the variance and the mean value of the uniform distribution -# // Compute also the specific values x for each cycle in order to be able to -# // the covariance and the correlation function -# // Read in output file, abort if there are too few command-line arguments -# if( argc <= 2 ){ -# cout << "Bad Usage: " << argv[0] << -# " read also output file and number of cycles on same line" << endl; -# exit(1); -# } -# else{ -# outfilename=argv[1]; -# } -# ofile.open(outfilename); -# // Get the number of Monte-Carlo samples -# n = atoi(argv[2]); -# double *X; -# X = new double[n]; -# for (int i = 0; i < n; i++){ -# double x = double(rand())*invers_period; -# X[i] = x; -# MCint += x; -# MCintsqr2 += x*x; -# } -# double Mean = MCint/((double) n ); -# MCintsqr2 = MCintsqr2/((double) n ); -# double STDev = sqrt(MCintsqr2-Mean*Mean); -# double Variance = MCintsqr2-Mean*Mean; -# // Write mean value and standard deviation -# cout << " Standard deviation= " << STDev << " Integral = " << Mean << endl; -# -# // Now we compute the autocorrelation function -# double *autocor; autocor = new double[n]; -# for (int j = 0; j < n; j++){ -# double sum = 0.0; -# for (int k = 0; k < (n-j); k++){ -# sum += (X[k]-Mean)*(X[k+j]-Mean); -# } -# autocor[j] = sum/Variance/((double) n ); -# ofile << setiosflags(ios::showpoint | ios::uppercase); -# ofile << setw(15) << setprecision(8) << j; -# ofile << setw(15) << setprecision(8) << autocor[j] << endl; -# } -# ofile.close(); // close output file -# return 0; -# } // end of main program -# - -# ## Which RNG should I use? -# * C++ has a class called **random**. The [random class](http://www.cplusplus.com/reference/random/) contains a large selection of RNGs and is highly recommended. Some of these RNGs have very large periods making it thereby very safe to use these RNGs in case one is performing large calculations. In particular, the [Mersenne twister random number engine](http://www.cplusplus.com/reference/random/mersenne_twister_engine/) has a period of $2^{19937}$. -# -# * Add RNGs in Python -# -# -# -# -# -# ## How to use the Mersenne generator -# The following part of a c++ code (from project 4) sets up the uniform distribution for $x\in [0,1]$. - -# /* -# -# // You need this -# #include -# -# // Initialize the seed and call the Mersienne algo -# std::random_device rd; -# std::mt19937_64 gen(rd()); -# // Set up the uniform distribution for x \in [[0, 1] -# std::uniform_real_distribution RandomNumberGenerator(0.0,1.0); -# -# // Now use the RNG -# int ix = (int) (RandomNumberGenerator(gen)*NSpins); -# - -# ## Why blocking? -# **Statistical analysis.** -# -# * Monte Carlo simulations can be treated as *computer experiments* -# -# * The results can be analysed with the same statistical tools as we would use analysing experimental data. -# -# * As in all experiments, we are looking for expectation values and an estimate of how accurate they are, i.e., possible sources for errors. -# -# A very good article which explains blocking is H. Flyvbjerg and H. G. Petersen, *Error estimates on averages of correlated data*, [Journal of Chemical Physics 91, 461-466 (1989)](http://scitation.aip.org/content/aip/journal/jcp/91/1/10.1063/1.457480). -# -# -# -# -# -# -# ## Why blocking? -# **Statistical analysis.** -# -# * As in other experiments, Monte Carlo experiments have two classes of errors: -# -# * Statistical errors -# -# * Systematical errors -# -# -# * Statistical errors can be estimated using standard tools from statistics -# -# * Systematical errors are method specific and must be treated differently from case to case. (In VMC a common source is the step length or time step in importance sampling) -# -# -# -# -# -# ## Code to demonstrate the calculation of the autocorrelation function -# The following code computes the autocorrelation function, the covariance and the standard deviation -# for standard RNG. -# The [following file](https://github.com/CompPhysics/ComputationalPhysics2/tree/gh-pages/doc/Programs/LecturePrograms/programs/Blocking/autocorrelation.cpp) gives the code. - -# // This function computes the autocorrelation function for -# // the Mersenne random number generator with a uniform distribution -# #include -# #include -# #include -# #include -# #include -# #include -# #include -# #include -# using namespace std; -# using namespace arma; -# // output file -# ofstream ofile; -# -# // Main function begins here -# int main(int argc, char* argv[]) -# { -# int MonteCarloCycles; -# string filename; -# if (argc > 1) { -# filename=argv[1]; -# MonteCarloCycles = atoi(argv[2]); -# string fileout = filename; -# string argument = to_string(MonteCarloCycles); -# fileout.append(argument); -# ofile.open(fileout); -# } -# -# // Compute the variance and the mean value of the uniform distribution -# // Compute also the specific values x for each cycle in order to be able to -# // compute the covariance and the correlation function -# -# vec X = zeros(MonteCarloCycles); -# double MCint = 0.; double MCintsqr2=0.; -# std::random_device rd; -# std::mt19937_64 gen(rd()); -# // Set up the uniform distribution for x \in [[0, 1] -# std::uniform_real_distribution RandomNumberGenerator(0.0,1.0); -# for (int i = 0; i < MonteCarloCycles; i++){ -# double x = RandomNumberGenerator(gen); -# X(i) = x; -# MCint += x; -# MCintsqr2 += x*x; -# } -# double Mean = MCint/((double) MonteCarloCycles ); -# MCintsqr2 = MCintsqr2/((double) MonteCarloCycles ); -# double STDev = sqrt(MCintsqr2-Mean*Mean); -# double Variance = MCintsqr2-Mean*Mean; -# // Write mean value and variance -# cout << " Sample variance= " << Variance << " Mean value = " << Mean << endl; -# // Now we compute the autocorrelation function -# vec autocorrelation = zeros(MonteCarloCycles); -# for (int j = 0; j < MonteCarloCycles; j++){ -# double sum = 0.0; -# for (int k = 0; k < (MonteCarloCycles-j); k++){ -# sum += (X(k)-Mean)*(X(k+j)-Mean); -# } -# autocorrelation(j) = sum/Variance/((double) MonteCarloCycles ); -# ofile << setiosflags(ios::showpoint | ios::uppercase); -# ofile << setw(15) << setprecision(8) << j; -# ofile << setw(15) << setprecision(8) << autocorrelation(j) << endl; -# } -# // Now compute the exact covariance using the autocorrelation function -# double Covariance = 0.0; -# for (int j = 0; j < MonteCarloCycles; j++){ -# Covariance += autocorrelation(j); -# } -# Covariance *= 2.0/((double) MonteCarloCycles); -# // Compute now the total variance, including the covariance, and obtain the standard deviation -# double TotalVariance = (Variance/((double) MonteCarloCycles ))+Covariance; -# cout << "Covariance =" << Covariance << "Totalvariance= " << TotalVariance << "Sample Variance/n= " << (Variance/((double) MonteCarloCycles )) << endl; -# cout << " STD from sample variance= " << sqrt(Variance/((double) MonteCarloCycles )) << " STD with covariance = " << sqrt(TotalVariance) << endl; -# -# ofile.close(); // close output file -# return 0; -# } // end of main program -# -# -# - -# ## What is blocking? -# **Blocking.** -# -# * Say that we have a set of samples from a Monte Carlo experiment -# -# * Assuming (wrongly) that our samples are uncorrelated our best estimate of the standard deviation of the mean $\langle \mathbf{M}\rangle$ is given by - -# $$ -# \sigma=\sqrt{\frac{1}{n}\left(\langle \mathbf{M}^2\rangle-\langle \mathbf{M}\rangle^2\right)} -# $$ - -# * If the samples are correlated we can rewrite our results to show that - -# $$ -# \sigma=\sqrt{\frac{1+2\tau/\Delta t}{n}\left(\langle \mathbf{M}^2\rangle-\langle \mathbf{M}\rangle^2\right)} -# $$ - -# where $\tau$ is the correlation time (the time between a sample and the next uncorrelated sample) and $\Delta t$ is time between each sample -# -# -# -# -# ## What is blocking? -# **Blocking.** -# -# * If $\Delta t\gg\tau$ our first estimate of $\sigma$ still holds -# -# * Much more common that $\Delta t<\tau$ -# -# * In the method of data blocking we divide the sequence of samples into blocks -# -# * We then take the mean $\langle \mathbf{M}_i\rangle$ of block $i=1\ldots n_{blocks}$ to calculate the total mean and variance -# -# * The size of each block must be so large that sample $j$ of block $i$ is not correlated with sample $j$ of block $i+1$ -# -# * The correlation time $\tau$ would be a good choice -# -# -# -# -# ## What is blocking? -# **Blocking.** -# -# * Problem: We don't know $\tau$ or it is too expensive to compute -# -# * Solution: Make a plot of std. dev. as a function of blocksize -# -# * The estimate of std. dev. of correlated data is too low $\to$ the error will increase with increasing block size until the blocks are uncorrelated, where we reach a plateau -# -# * When the std. dev. stops increasing the blocks are uncorrelated -# -# -# -# -# ## Implementation -# * Do a Monte Carlo simulation, storing all samples to file -# -# * Do the statistical analysis on this file, independently of your Monte Carlo program -# -# * Read the file into an array -# -# * Loop over various block sizes -# -# * For each block size $n_b$, loop over the array in steps of $n_b$ taking the mean of elements $i n_b,\ldots,(i+1) n_b$ -# -# * Take the mean and variance of the resulting array -# -# * Write the results for each block size to file for later -# analysis -# -# -# -# -# -# -# -# -# ## Actual implementation with code, main function -# When the file gets large, it can be useful to write your data in binary mode instead of ascii characters. -# The [following python file](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py) reads data from file with the output from every Monte Carlo cycle. - -# In[6]: - - -# Blocking - @timeFunction - def blocking(self, blockSizeMax = 500): - blockSizeMin = 1 - - self.blockSizes = [] - self.meanVec = [] - self.varVec = [] - - for i in range(blockSizeMin, blockSizeMax): - if(len(self.data) % i != 0): - pass#continue - blockSize = i - meanTempVec = [] - varTempVec = [] - startPoint = 0 - endPoint = blockSize - - while endPoint <= len(self.data): - meanTempVec.append(np.average(self.data[startPoint:endPoint])) - startPoint = endPoint - endPoint += blockSize - mean, var = np.average(meanTempVec), np.var(meanTempVec)/len(meanTempVec) - self.meanVec.append(mean) - self.varVec.append(var) - self.blockSizes.append(blockSize) - - self.blockingAvg = np.average(self.meanVec[-200:]) - self.blockingVar = (np.average(self.varVec[-200:])) - self.blockingStd = np.sqrt(self.blockingVar) - - -# ## The Bootstrap method -# -# The Bootstrap resampling method is also very popular. It is very simple: -# -# 1. Start with your sample of measurements and compute the sample variance and the mean values -# -# 2. Then start again but pick in a random way the numbers in the sample and recalculate the mean and the sample variance. -# -# 3. Repeat this $K$ times. -# -# It can be shown, see the article by [Efron](https://projecteuclid.org/download/pdf_1/euclid.aos/1176344552) -# that it produces the correct standard deviation. -# -# This method is very useful for small ensembles of data points. -# -# -# ## Bootstrapping -# Given a set of $N$ data, assume that we are interested in some -# observable $\theta$ which may be estimated from that set. This observable can also be for example the result of a fit based on all $N$ raw data. -# Let us call the value of the observable obtained from the original -# data set $\hat{\theta}$. One recreates from the sample repeatedly -# other samples by choosing randomly $N$ data out of the original set. -# This costs essentially nothing, since we just recycle the original data set for the building of new sets. -# -# -# ## Bootstrapping, recipe -# Let us assume we have done this $K$ times and thus have $K$ sets of $N$ -# data values each. -# Of course some values will enter more than once in the new sets. For each of these sets one computes the observable $\theta$ resulting in values $\theta_k$ with $k = 1,...,K$. Then one determines - -# $$ -# \tilde{\theta} = \frac{1}{K} \sum_{k=1}^K \theta_k, -# $$ - -# and - -# $$ -# sigma^2_{\tilde{\theta}} = \frac{1}{K} \sum_{k=1}^K \left(\theta_k-\tilde{\theta}\right)^2. -# $$ - -# These are estimators for $\angle\theta\rangle$ and its variance. They are not unbiased and therefore -# $\tilde{\theta}\neq\hat{\theta}$ for finite K. -# -# The difference is called bias and gives an idea on how far away the result may be from -# the true $\angle\theta\rangle$. As final result for the observable one quotes $\angle\theta\rangle = \tilde{\theta} \pm \sigma_{\tilde{\theta}}$ . -# -# -# -# ## Bootstrapping, [code](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py) - -# # Bootstrap -# @timeFunction -# def bootstrap(self, nBoots = 1000): -# bootVec = np.zeros(nBoots) -# for k in range(0,nBoots): -# bootVec[k] = np.average(np.random.choice(self.data, len(self.data))) -# self.bootAvg = np.average(bootVec) -# self.bootVar = np.var(bootVec) -# self.bootStd = np.std(bootVec) -# - -# ## Jackknife, [code](https://github.com/CompPhysics/MachineLearning/blob/master/doc/Programs/Sampling/analysis.py) - -# # Jackknife -# @timeFunction -# def jackknife(self): -# jackknVec = np.zeros(len(self.data)) -# for k in range(0,len(self.data)): -# jackknVec[k] = np.average(np.delete(self.data, k)) -# self.jackknAvg = self.avg - (len(self.data) - 1) * (np.average(jackknVec) - self.avg) -# self.jackknVar = float(len(self.data) - 1) * np.var(jackknVec) -# self.jackknStd = np.sqrt(self.jackknVar) -# diff --git a/doc/LectureNotes/_build/jupyter_execute/statistics_181_0.png b/doc/LectureNotes/_build/jupyter_execute/statistics_181_0.png new file mode 100644 index 0000000000000000000000000000000000000000..ec260ba1d7a73b3c8e2635ea60b394535a7b2c39 GIT binary patch literal 5097 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 literal 0 HcmV?d00001 diff --git a/doc/LectureNotes/_build/jupyter_execute/statistics_188_1.png b/doc/LectureNotes/_build/jupyter_execute/statistics_188_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b13e4947fbc92ef72452f125285cf81f4f43e2b3 GIT binary patch literal 9758 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 ISG5TJKWV-}IRF3v literal 0 HcmV?d00001 diff --git a/doc/LectureNotes/_build/jupyter_execute/statistics_32_0.png b/doc/LectureNotes/_build/jupyter_execute/statistics_32_0.png new file mode 100644 index 0000000000000000000000000000000000000000..5adbf9cac8ebb8be16a1feaf148ded1c82ea19d6 GIT binary patch literal 18480 zcma&O1yodF*EURdhcr@(fYMUZC5?2qlyrA@NC*f>BOx*L(A_!o0Mgyv{U3bZ@BQ9C z*0=t(n1eXy+;i97`?{{Z?}_-L@EH@06b%Lj22)x}Tp0!iHVAl8qaXqQlTk5z4gBJD zme6!ou`_daGjcSAkvDR-x3+V(wlt=4HFb2dw6o=4{>aSsp31`6+1`ndg~jH-Z(z1_ zG-sJLI%@$MLA96Ca)NYjd>;o(i*liHT`1AE|Fsunj) z#0(?cewJz=&K_CvZ7_^hoHdGuR7GNiP*vJ{&6LFh^Xew8&oq6uvj}wb6%o?mHXbe1 z)NIiHStO?&xKF~Y*|702uc|h$BD|$8?|(P-fyT)N!Z>MneQq!~CKuHnU9EJN%dSD5 zvX&rR1Q8rbZmnG|VH^YzDIpr9Kq{2L@BrXKW&Cpazh7Aolw@ubl}nP84`qrLWs21E zRfCj^JO3W5$$$&yA>v%J`Pf|9ezMt^KT(z$7)JbuOJ8xnU6WFE#;uCf%Nk1jc<>&$2rwE7u|t%BhJ!4_L=w2n@Z<>9YXsCn|qP zF*d}=@n8_M(ko9at`jPprzAo^!CfNI6H_*(96$nra}wE!y+y(;o>?ErVl{zY(U*YS z{A&D!wfDL5RWZM?ahl~*f?PZrZKQsFE$i^iRcJI%F1z39eTqNfrbG=-vq&+z{e8&n z29Ba(LLMhK!m0H1|GryGs}$Pw_#1PV1Vc!MA`89}tJV{_Fm%2!vADbdNmSxEQOEJG+15JuypH30H;4fjs9?J%oIXFcV%2~Ti8GO5KNT_U? zWvuS^yoMXHPFpaZQ^!oyydq2Si)v==3u!?jnrTD$vyp;csKhXhY1l*mMdsFD`}3_z zz$Vni1^x=(t^0l_TZ+L{NOyMAio$Qd-WQqqFxK6V{Jv!O*^SGe5#&M@s8{yXYwP>_ zHx>xo96FAE9##%YrjPLasp(ScYF$!WI~_{C59_LPKS(pHvOil(b`nBfN2-Z8$_A}< zE%7x#vo1$sB)``d+jn(XZdUg>gxq5%@;))=T)$iRSl{B?1j$9YawqRo)mc7lla}Bl zBX_kZi9Yu{@Y2oLId1>{sC1+lZ==y)Ii0huxM6p2^%Pr>TpuCHVgvQ6HkoJNZ!w4# zv9iHwAeyjiy6oOuO<@|+a%(?ii{De6a4mPeAoqW@zc@D^+4D_qz68{Gcs}*%0PW3@ z*T$gVf5xLh>cZZR{m9~62yAmwA=@@>imV{aeCXeDu=?NeH?CYr5iy@;%&r$IK;YyEPOl-)ugOijmdALkC|7&H6^9=1B1jpy1&89NRDhx z+gJDxXYR46eTMUtA&HGRcn!W*TPI%xisl7Iul{`Q36Q-vSu~$7%X^}XczTj#1STt? zCq*$pzYitO9>bnig7XRb}C;FB9nU9DYw(3f=iV*+4ik zhFGcOuIeylC*F`e-d$`#V876T|2ogM&@ftG>zH4~l~8l`P`hVmb*vK?mIUM`__wZ4 zdSBk)m8voJ%mIBT6g<1_;^bR5V}~p(TY9bBSF2hzb=z|qr)2sO!gcz9MdfhcwPfCR zJxFIl^D;W-T}lXD`G$UqL(nuiS>{a4u4rW#i6<(_(e}F;f8OpgSf}R3jMoLze_Q$T z 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