From d88d9b56a08056ca8e8cbf72196ab22f3ab4ebc8 Mon Sep 17 00:00:00 2001
From: Anna Meyer <annapmeyer95@gmail.com>
Date: Wed, 19 Jul 2023 12:09:35 -0500
Subject: [PATCH] lec 14 notes

---
 .../13_Copying/lec-13-worksheet-solutions.pdf |  Bin 0 -> 189225 bytes
 .../13_Recursion/lec_13_recursion_notes.ipynb |  865 ++++++++++
 .../lec_14_comprehensions_notes.ipynb         | 1342 ++++++++++++++++
 .../lec_14_function_references_notes.ipynb    | 1420 +++++++++++++++++
 4 files changed, 3627 insertions(+)
 create mode 100644 sum23/lecture_materials/13_Copying/lec-13-worksheet-solutions.pdf
 create mode 100644 sum23/lecture_materials/13_Recursion/lec_13_recursion_notes.ipynb
 create mode 100644 sum23/lecture_materials/14_Comprehensions/lec_14_comprehensions_notes.ipynb
 create mode 100644 sum23/lecture_materials/14_Func_Refs/lec_14_function_references_notes.ipynb

diff --git a/sum23/lecture_materials/13_Copying/lec-13-worksheet-solutions.pdf b/sum23/lecture_materials/13_Copying/lec-13-worksheet-solutions.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..2cd79bf69b38e9871d7e64fa6a069d979f78e283
GIT binary patch
literal 189225
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%0Aj(8
zmbB1AVNbn7k#Vz6uxt4&vv22?Lrq|tUP}z6(wC9+6f|=vQ-=;H=qPy>P0Y|B(`-BU
zmqjAqDJ?JIS_`O?z5XlEBEnl^n;)hyDbBd47!?SLB5NV?0xkYz)Bi1XFGVHi>fzd&
z-{Y{;ZgR2hD`@vBEuk(yS3xmfC@~7WQMu9Ne|~i38U5F=g9WlzSF0eqzRQuIsza?v
zkw~fW)B62f>yc_F%AY;%p?PRckGCv=0RKuJ8J$>jsJpTbl%D8vkX&;XT67Y3w^A0)
zy2H_5>K(iUsY2ERdxRrTL7sTZ|5ff(#?0M$(&_qR`6*)2{=q8hdR79HM>YL*LL^81
z>mMBqE9H(>1BhTVVlHy1dJ{a;nY)C!mtxVZ+9cI*rR^-EIBwspQrvBSc75TXy9z;H
zRgK^)@Zf<+#FN-|tbzbTbY%|c0Rhwh`G&+=heoNhciFuxYjKs1#hMHe$-*qIkIpK*
zi9A`uOBI1AIc47N5sv!P{Aow1rRy9d`8x`tJCD4{r%3QQ>DoUUO6m4rBY0?K>hmYw
zean_RcTXxQtFS7!28jeg43QZQ!15NCF0@&FcbK+{RD{jW`L{^bosE=<&RwF0VQ}Yh
zp2BU%`-Lg{(DLtmgYQhP2brBp?d#8j6NK>-XwkA7BsBc`JT%Nv2*B7*^@R<>4Jw%Y
zk;&Ko@B!~INfWtM|Bkna<w7xTel5P$@#Ow5oA?d;AQpMeH(hp|n0j#99qANAXc?i*
zUXY$(fiPxl=_BjjyI$64izB9D4W*>hiI0z$B*D=G=Jg#J>t%uk!*qa5oCuc{{!W<L
z@ME}+ZiL;M(a6w|IGbV>j>fg@=OuJuCJMl}B|W?O&adsvAl@Z>)ibLupN4i7=B%})
zH>q2gjOPcNc!(#XpW*-ZKK0hq&z%juQ@-aLj5)N{rOTt319vAF$U}UZU9uT>6bBEU
zDJ!u{hjyIhQ?m$F7r1-6+{9@3V$hK8n*Quyrw?U$Bq?f2a6};V4I)Mh(tnB2o%Z3w
zhs(DP@JHxDGhMIP)_CBwjTu|EthA)FO!fG#n7rY)El`w#@hPb0vB}r!maX*2uvocj
zjd|^F26b}Ipw5H_!Dw)v)k}J$*?#MYc5#mUhX)#GHcUK1I!k8?$31#&nCZrkUL6DJ
zLv--IQP=$wNUpLvZ&BL#vw>543O()-eGIHWBA}w~<5hiD(Av7T5Fdm-$AjX*VXW3F
zTRl`LC-&yS`NJCQOR&aNnJ;Gz4N}dd3?J$#pL~pq8N;`NqP`WfEuz%w@$HipYzwUG
zzu3pMa)-!`5-WWA>cw4TpX%=I$r<CSaIKH$)umkz9{8po-VqNVBR}rXLkB`%I3U5W
zcgopNdE<FA%YQ^6J&nC8yv-laFWEE2T2%>C9Qf6DNi1;TA*3y9-~-~Je~ztN@Sq{G
zwhs<Mcx+|#2GvEl+xck4xR{1scl(~!h|wi9>s6aXm(e!**|xZ)g?u`PG9b#xFYCWF
z<u15`bX@RaFDe+OCuQY7{PPQ4=Sl#|yx5!;t%Kk-1afW-FBSfx_%I2@V<NW$)tp3+
zFvqjcZ-h6%o_l22Y-!2Hcn#w}|IUPxoA@^0Hv0WbZ%rFJSCU6suO{vsVC+x{L+8Mh
zA!HZ93kP+Y_RpjiQQ+Ot`faT^jm<8~8YQ6t$~?VE3WW!<U5WYm!!Ct4BQ2s-q=tE(
zCDPaCI0*0#{+JKcj(=8{V>b|O&yU9op&D1l6;e}Ft^t<t$TK2CH=9<-s8PkHM}!#e
zi531KBp#=rv-ihcX1ab`mskFm1N&P%L76_Q5ZsD)BhzgQ_3^ni?`v#d4CLybXKC&g
z@{*6Aw6qB^>f-xSGkcu*9CQEB0}j7}8VgD+=;KL&=#}B~+Lx$mR$U8Sgenb}H7VOh
zXv)6xpEMOQP#O|>5SHEJV$|i^T@%^P)|a%pw>yNUd~~wQMK(SercA|+AnLe<htH#F
zZX%XNu|WWve+-<7J{V%Y9_KWku-I0$lGND8t_Y<LzOynr4`V(y_p~OTFn<4q!toAZ
zQXIA3pesyn&ka#!q#yE-dM2+>eSo|1Lq8i;+vg{WM!Bwvd^LS{JhDB1usa~?l8}wt
zh;9w^F2t*a>;4Ft5m*N@O+5bd&Ib-0P*mI>IcjBA*`fhic(Tl)-unYp&?tHz6Hw<Q
z1E|o3%M5{M2hW*9Ml`<`eOun^R=6bj*4@OKR^6ybBp(as)C|SE#mW!2s<-#Gkl?-y
zkA2T8?58DB@*1Y1=mxFRLQn3hk#C4Nq$<9K80CcTqOyJH#)#@?{`OeJ;Q`$t6O{PU
z?V<i;><a=9t4J_;S&87p%ws%T$a(yS+l>!~5~eC>P5x%$xs4f|ZDU@Y<88^Jxh_@;
zd<gU@AiuVbV~#5HKt5mf{>`_HdXsr)__hCyM{YMBm0?U(_}gPzaa!Af-A$}{zi;A8
z2<HB1`r~&bZz^p01<iGo*wq|Oe#+bbN#~!@ob+Cm^NabW3L--0HRkJnW&8SPAx#qw
zt%<S;m+RH!^goZnVOGgvIz5hRY(g25J@WHhs7%wcMDy!6-5RlnWiVa&UQb?8tvRd+
z*fivawfjGOM8|;3DxJsdcY_Yut_{c6`e)Z!!@7~F{kVvc?BmflKugp)r2Ji@IQwe&
z7x0rgVkkrPDoW&iT_k}>u+vuLWVmyj$>50tC>}2WZ2TUHTf3l|{N1<?$38d)>an};
zohrm(emd5JsEck=of~dAk+{sH-@7Y7`9r12yvb@Us~8V@6EXnMwmMJ7?_1GWkHf;=
zQ1TM|n`he2-@B2leNiVF@0q9P2;-FCtSXTHR^zdNEWsFGc#!`q2AyHaq~BQ)>3p^r
zh?spBp#b)@^mt-xAvU{63K99KHec*5;jPMF97}UQnFT?I0HW(92bw~Su_T4t+UVGm
z&E}lt&Q}uW?K*_y0++6dtZB?6oe4ZrU)7R^_)X8dA?P_6I8*rnG3o%M6D?F^J_mlm
zZ8y#(-qyh1n^rYdbXZfdD=?o)NJyH|5;&Q3Rr4L?(J%QcxyXZusD+;Vd+Zv~mo@kG
zub_m+mXa4$qvBM#e4AAspi$NuDSy+|ERWV6Q<_E|cN%k8@HEjee!tfGMPyh@pZ)%i
zH^oGL*_y+8k2D8mPcnH1F`DG;aOmwevkj##RX-iQqf*Nl;kvDt>@6omCQN7$+D<ch
z<}*GXW@tUD;CY<8;MAchf7b1f_pi@EzYV}vdA9BwJU?!&oGBAeO3`@eahl27Gt!F{
z@P;~T^&&B+B}6VM!KaugDDYsMOl%fS9XFUe`G(KbLfG&87+qQza+{`=_T36bDW~d`
ztdM?xOuD#JKGyEs$v0w6`cw=|l@jO!u|U<?8)e%%o|hwb9#<j-&U|qbNKKD+bAH+s
z^dqb9wU5-bVYWZ6o=Ybo(WA8U%~;?U{!P@m!#6)u1y4-m-dw2{A7^Ohf8O{ob-Lrb
z-t?EW_g|lS=W}@obFZnXOK2FLS}JtBuzzw~<&Bc{h1=tMTdS5m{3Lxd8`Sfm;N^2x
z%98es1gThJt8eW>z3txo-d`eZ9WOXBrc3miRwWE$UEB;hJS}}Zt$&%9KI-4=VV5ck
zeTYirGaCAPI{mP?fmvCYB>5l3chcMFZpE4^ufQSUY?4)EYdWi4Tlt=QNkP2wSD6;K
z#}^UrK<ES=M-&Tun6!nqo5)C_ZbtiCGT-zz-DvVON*K=Kw{womtO%;V6%_8qNH>Sk
z3w>H=zRyB_D9Dd9df9pAL6rY*Dy<Q0ca=`8(w2Orxmj)X4O4D@X=8B$ebc(a_iBAm
zhP%MHIsIe1<ao)_JmhYbNRuP<>+$5jKSLpm^V>#A!fk=@((mK+$vC`V=g&W4^j_WH
z-W;(+SswFRN6U1#jvkJoHr$v1kAsOZcW<RB&N$zVB%^OrNUPbdSM}6byu6j`lKn&f
z?a~rL@oeRP(F?<C!pNP>L(*8+DmiFV;U7Hbs_<$8W}~B)qg#^{?>pCZYw*wh9W@A3
z{{^BCDd#Q!$8E%-mvCD}_qriEJ>$}g019zUavhzn%5f=<n_02JIKJ)DHqDF|jK98g
zYD7q)g?xi_O6(keb2U0wGk&@`ofdm@UTI4YNA-l-vs|eZwzFCT^MJ`qxVz&pF@^is
z&3xr-hsgNYtCUm1XGA6vjYKV>THJQBvY_)Zp8;{7s*Bc%Q^oZz<&*NLkM(b_#boa!
z!qojcOXGdldl#i+ZBtaAZOdq|7pHw9W=4GMTD<jcmD5={Li>KM)y+04pX8IgS!Y<&
zje6<|s^y2Hx_(co`%S(N619o0?yvKLPUx!0RA(3p<}W^V%ipT8b3|#x<{`5VA0Ln?
z+z54s+m1p@abAKGU)gPAI82w6pi(8CyjZyrZeN_tXPm4OSk92a<rUrRi@X*<Pnk&o
ztN&E^l&9Ao%GV%FW~Hs4Z`S7smH|3~<zXQ5#f?$eYM}ZlljoWDZSBiv%?I6^8h{Zj
zeU6rutW(uZevbvTr_TPnEw+wvM*9{SCCsq+1{vcHep{ht0#5ZIvz<A3!KtMh+;2(8
zd9&oy)}p&qdPUYob;lQ{i*w}Pl$1eMDQY$zG|$gQ>S&(3EHVu25PVXXz#MQ;gpPs~
z2m$Py@eUQgMp%Bq6U{&Tl3(Z;mx#hb!eq>O*|XhtT5jQ%+;~3&&1Kyxk>M}*+!yLV
zL)Ro2-<j7RxoB4<7!NOV*Q223lU0KQGmTnWAEKbAO6DQ)&#l|u5Elz&r&>8+Wfoeu
z&GW5ZTHUqZ*rSCK8Tc&ntJ?I3guVw%?ut<%oj1wh$X=|wbkrSYbGW{$De|#zn`k){
zjjmMGB({|_I*DdZ;e)`2!sFGcUQ$J%y)2@is2$rgpHPS!mnU9dx`TOKlJY)tN?UIT
zX}?bh(JzC@B<Xpr9Ze#DI6-BGmYC`wLDdP7xaSW>rs-yDhtEhr;HKXf`w5?g1Xu~v
zYN6ZB4#%sR^IGP!v;ew$OU06iAgqSJT7`sGsHLdvR7kBs@yf7N-D<TxT<yfQOEp~6
zTKOb;2$U;_t_BJE$qT^d&cih~uWBRc2ptn1YRvG)&UTc;tcC@KQda^Ph<2{brSlO+
z<2q?c8#eBGHSleUj6N7fdKEU3)t6_YMNQ)i-blFm!$~&<#Lk+_v<S(ev*ENgdpybt
zl(r#LreQTRxBU$AlSon6+?~nC|7r%*I{rzkZ-s+Fo<LcWap4jg$+974THm|lq={??
z41lp`!Gx8G0u2F;eZ$g9d)n@tyVqL$L~zVz2O{7&FJdV9Q23T%Xo9dkWrO5zAjGsS
z@V~F%Kj@2X6Hy$^x~#|8n_Mjg)nssL^0qA$QgS>V{|<Gq&_*BY5Zu6%s+f5#w=+t9
z)Wh`+4+E_3%2@f{H{~hc*og{Q`}m~Bmo?j=HM_KCCSg#2i)6CDRM!r#^W(FTV-8+C
zsviJDN#kTSV0oBd*y<x`_ylGP>GC>tUZC)3A2F{xc=lxfDZ1_tYdXqjBgtb-Y8haS
z!KH(VB-c-CojDuKhNoQ$y)%}r1;4hlM_KwaBd72BXH6VIo{mrfR5P4D2S@9wTm=QU
z5V_Dlg-oUU=37juq%YS3Bx)_PyEN_p(s=fy>%|)t`)WvQ0U`6gkWC$2l@Pt#fwoyk
zeqqbUPA|k$y1f7ihl#d%^<v9(FJ6JZ^b_LZs=ql*9CrCtk*(O%`tL7J>|tNsHXesz
zz7RS6=YH4z^8<|k{xNj5p!J0&4-9bwUK;zj)lgo=-ix@`4N@;0O>FyY#h4$q!qXCk
z)6LgKQZ%2WC`!5wWX1cj(iV&;e7n9PAY9Iz>teVL!;o90Qk$32O+LY|Cp@<9#5dQ)
z9yal|d1oDneAOSFU3}q-*ePwlVTvv?H;&VitaYY=I?$8`(imbvPNV$bktVlkLg6{r
zw{YQLQp)HxzcxnQiRh}2)AG|<@qw~0sI()DgS+^2-1zE~cx$Z}z~2<vQ5qlfV(~OO
zuBn0B%qOxvXXMkXp2Zagi&FN7)1#~LJmH@#rmC+RPNN*UcR>kLUNt7nh*$>VMRE~{
z)#a=8<fJVdR{vwG{kU!q);ni!`zXMO05<ZR>|!iEsmyxPIbs(Q3R-9U@rClS&T#^Y
zK{h1Ngc44pW>hWCtF4{dAVi)wuZ!iuZ#Z;m{;(<;atQxYU5`OH{v7*%e*SPz_MVR1
zm*BpspnWZ72_spD4?nXS0S1Z`-@fnsXG`N^gIRIYZ;xCVA|_h$S%X~k)o7~^9K!w0
zK=T_+Eh_j_7ioj^x0WXJ3N)hL2XI&UzqNduJBZ)+|4KKSV~hdP?=e3wRKlH=6;Sg^
z%+D%uOD72uJ-~<nwd7Aw5pX*YEQjoYUqjyt^2Z`#zJrPM)up+??Y&=udk=btzH>%r
zBoS`X2v^eN{t-;%qdl|H+~t_B1f$|Xhx=QCqR1`?O4Ty+S_B(xNEGyxmkG$@^;zf^
zqc2Y6l%atnnuvW`=_f%0NkLL>Nz`c$r*6?WX$CqM!^aQ52j>RGErAgF1jRsf<${&X
zFgwAiEftIJd9rM=N4#21NN2N4C!7&jedim)zOnJ$R^|Lmrdqp^;z<#V!(yYDZwXfL
z8^7zf&QdfU*d<AAfJ7r`9L5YXVn}AqT(wB~3x!AIs{qB?HcQ=0Mn=dEng$VBE{c^y
zJ|z({UY2jG`L@ZaYmBm6NroiO5`Wi;cUp&e14N&{L8n*x;+kLg{m6W6{4boZd0Rnj
zA=$@PfM8cM*G~O*5Pb)o&kS^caF`>;^*BnkNsAjtr$lLT<6qsxX-u@vYsEJqVGTr<
zXQbCuTi`xKUMJ>H4cuQfV;%O!1mN2NnYV-E+0uJVuHJdVnb2NX`BXZXO)dC#7TCz8
z6zCWLb}Y@2FUZdp=yhHmRUOUKbmTyA08Gv9)+K+fS}lcGd_rwv{CcgxvQshjKRchs
z_%NTL8G;thN)R?G^RAQ^-`n@dKX?MkWRHEd_?&r?;aA(60C}$PPyTppQt|8a%MeIU
zzWxC^YhRxY{(n0!$tc$k(v{-(f5n9=%{#riw~gOZ7+n6Ryf9s7N96ym`0uFpm}m6c
zr_k3?QKc_09+Y_V*e~bh{F!&H&@fl$?heS{P+P`9NLW@nne6kL%6`D}RdB0jJdmPW
zIh@<HOfRlFX<cIA6906EbhHP6u4X`ELPXCIMHX6@me4=>Qa>Yik190YIb1(3?o%IY
z{XbGEeGb+}taVy=U^elgpWV6Nn7p>W3&-zik|Rks&otQBzg=x-(wm#rF2N{S#2P9(
z5MLu;X^p0I-J6Uiw)3xn{Dp%Z*UrXbrOBZaarGZWe40X^+w`nxWmHD=BL)(z^ARCj
zwVFVWI5^C%`WHF?HBMQ7oAiN7(c4bJ4#tW2wX{3YM@qZOF=biA%wTPkYX~1WvIC!6
z{>e>G8AFo0Ez*9fTEyl{hULQxHnF}0Joc%3?I-_7*Ev68jH)d@;E?_uDN)EJm!I;S
z3)LHzyX>vwC*z~!ammw5BGY(=N7QouJe1gLwIxEI+XgsTxkKyE8e&foWB$(Vg`}p2
z;MnAIX=v_v_=B$N{YOe^{7!A8Id(p(rNTTjfPYQsi)fskyWD1qZk9rBC3Ie~bavVD
zZNrH62|}5hD#^PC`O^Efm0A2DvXf<vX3c2?w^wU4g_AOLA1H=N_hpienm8+bus){w
z?+S0su1fOoUdfb=^#<@2(CT@YeIhSG{4ckSNSIWq+NV%|UVlV}q>w0fA-*Al*T)x<
zPq{u}bB!}31+7DFcNre<b~MVvDfi$g%1aNN9{7UX6@t~7yf%p!?F&?YQ}4pd#eXa~
zz%P8`4EE%0mnMC}^euU>EShgZM3f?j=MGt7XPKgLR!B3n27h&?k-VBko1dP2e&>H3
zsn$l_CRz$ZG_9;&Xne9DEG$vwooV6myShahrU207t14%nLdQl5*PMN-vh_v^(YH*~
z_)Q)1YGQ#bPrV|2X?AABos936<DcSMSm8Ju-v<P%r4Z|c@0nh6`K~V--i?wv_C{G5
zV0Oi7<DP%R&L4=(4))6?VHdME{3ku*LXl}+lj{I$Docm`Q=^bmgnoRc{0K@7_ovu(
zztVL`_}pxHWuLlNqA4YLpiJ}WpXP17u~s$W5zDXrTWoD&*Uxoq#>I0Ob(n6HOvjtA
zm>o`iP=xGX^1|>u{|~C(I)?<7VTfs@cP{&_MbxE!nfBa4s3z}99bRKvPNpqlo@+S<
zaWPNEyRi(Ju<N_{jqEyjne`;NYz+!2*9*~klwG-QYvY=n$}fD-ffhzQ&-B~#c-qn2
zhW!2LzNXo&6Z1CXxojI$`R4;7K4ZS%7H@J~ldt<QXf&bl!6lk-(eAHeCaRmVlFG07
zyNwIE6k4cYzPO*!SnJ58*6r%E8=`qRnW3oW5qGm^9Aa$Sy;6wPKWXjy%i3A?4Q5_}
zs@~)OaG!r$!a@E)16C!&_XH7}yUvA>ZkrM9AmBF(PwT(mR@<gj%WLzz`D=gAdch8}
zF!|T$d>l6(z9AuAi0^Z(r12|0D#a%#gN7bO1+VYy99wb5*Lp{F^e6K8(i}ZOn0e(T
z!*3Ncj+~?SItMm?^MZL}LI!erxgbrn@#Db#KhydHf(Z8c;mvJr(yzd?cLE+q)WbY)
zjM~m~KyrCiwW#OP4ykL^w$~?a{f}VS3Y%6H1j_ible#PzeFhskb-pJ!0*SLuahRnu
zD4DbUQ(kIoC$h%JUFpU}Q)TuB89OX7mL!&_-1;;!pG%kLa+*i4(?bF|d5+V}lDBOq
z%>xa)%Shtq(Ndc&L2vHhjvi(xpe5;dN2k{ir=QuJ9wW!vIgMgbfHR!-4eWuz7kNc8
zSt*YK$F&XIb`{W;fX1{o`bzQMXkVTg9YJPw-(X8MVj904KQG2s+pXE`A`(qL*k)+G
z96;5(h_%HB3H)enJd?QqRjzORbxb3deSYlf5zr(Z7=dLiFMhnnHaV8$WBq@~^YK$*
z>QFrSNI39dBKiEL8dG*#?a5b}SW|d!uR%VC2AA)h@LMFGdMX1XsJN4|#PGu+tgspH
z5Npwy%sGkgPUU`>jQX*|OzAVsLLd~MVYIPci42tNY12Hia5+v{VDY|TxECU0m-|&)
zS3Y8MKrwmp(YIn5?YVMvzt`L9Zci~7_KZMq4u@S}V?*&hi8sV>*WtNxw^*s_v*b|4
zUjm}XVtkwD2z{#;*K@m}0tjT?d3g+0=_T^+#ZCD*ynSArd75kI$e^@jJRumzPc2aV
zj2r*}@B}PHOuEk~d{-n64#tJ0#Rj7s(<AH|L-z27D{qU&7ebgfBH94a0-M0u#{TPf
zyI?e6kabG5`j?5B;ve?H50<@t>%HCq)7bW*%>TH=+hX_akN~J|>(`(C%8XPBr^Dzt
zoUh6KeSf!b2V-_fH;em6#Xr^vdJMTWa{NHreH?Hq>FbW)^K$*re*W$7Ykv%pYGxoI
zVSR=-1*;WxJ$We`;uH97;$`@4f*%2I?GZIX);9WyBLzk4c1HqMv=G--hkqZjE&bfO
z;Pr;kz1nmyd7eMaf6uw^sTWXpcv&<c#k(V6tkjIdp)c2U=@X)S-bf0Hq*tz;2$MeS
zURqh)Xrg<`@%&{xDx{S{d6uj~9YS0-@CV_>JNfyBY~_~~h?^d!?=5u0j2L+wB9Yh&
zZM`bJG2LD%ony7fw!b-<2od&2leq)s1?vg9DP!~LQLi?fP<RJN>Iolmk<0&Fwq1(t
zjfNDv9Hu9UyF=)PX<yFdkAcfjY#*0s_yN}#JooJg!GDFN2XQdwE`emN&jl5OH+?04
zoUz`B-`7QsUG>f>^ZRyw$jSzaZ#a;9fsi~}h{TsCaRi@15pyw6m!j_Bxk#1MX6}D`
zZcFP0T_FRl094+)zbTP&xVA9@Eb}z;e1)FT2*32Sr`isgf9H)jskx;!RLrR09IiTU
z(Hs^5d5GPo;ic~Qo6>Pz-uG2O`dbe3q@o+7a5w(MvR3x!k_$M?|Cx-HGz}4d?QXbb
z-%_hG)Y-{P2w^vLV?g@42iLULe%`OeEsqIr<oD8agUoPvj&ay*n3T5rz1i5$Vba>}
z&HT-dH=8}D_WP#*IA&Pe*{v3Uy&HRHB^nvV5B+PG$RI60^Wk0huseFOK{$R6-M)d>
zyR_^fIIXaGM)D_b)>S7&_RMoYQ5-Xd01BPF!0RQHwb|!>n11=#B1wm$iyYIA>;U2A
z5|!7MLf{o|@d>F~pDS5X_|hP0M6LlEPtR<o$wy;BuNlVXc}FWX8t+Q7k-lHD{8=vW
zwIfhipPl~(e7TVZV=R5C7-mCsj_++NmJUn%x}zY3gy1@_ZU};A(ta55Xk+M^<xb;=
zkiHy*b*m|#v?LEZ>30i&{9a_SJFDa2I-}lSs4!#loANs}l9>2>h-WC$8;D-L#qQGE
zW=MpI+M+L;uS?k0{}12=p3WRa=hg3EOY`-q_Hz>%B-_BjESjl~+;%*=sYu{|AOE9^
zY)U1z><{qEY~ExQbLtt-S<a`29K!~(icI0Y$L&vHi$=4%dP4v`^MLO^h`n{BQiWOM
zrvpzGlAfQ(u5}13(VN@tcOb-vW@yd)^6wE}uY7diPV!^xu~*O=BJgU-7q=4O6)cA+
zV4!VRN2&m_ScUKwve?=W-u&Mwj<^Re^@K!zFf9%1;ska-btYszM!c@m{%*C)_Du;3
ziX)1(OUeo|49}G|(`W=9u+ws9J2%GDjbIkIMn`Yh_g#13>FCnfh!_}D@%(bjzQr4q
z**Cy)1X=qEI06+Is?E$|!|<w@m%l@I$E$n1td1`g#{YX1GF{@AqrHU}N=#&64=|)P
z_Wbe*wQ1Ky`MCZ%<M)b$)P7zYxQ!DabBMRiK{x6)z8Qp+hox(0s?rJTG$!KZns>aq
z!^=9fQd#@R0Ce_Id!1&;gL?GACT_OOYctAnRdP(t+q%jZ&U(klPs+{H5%};(UQOt6
zK+x>tKr!?S#}twuA4jW#a;hzl6pvt)R3KkIJo6jrzjY+22L?RjI3u=QLKU$RrV2&{
zV{fuLevf@&LgJw79rsyO4ZUp^@xqEndkaEHrIQvFK=A8hglgx(2X(z1+3(-6H0R?M
z==k;?EIj(w#i5eF&Fm)o;`)qyz2mjS;Maihz8&CO*;iql7q_^tDLg&hMK)H$oc`41
z8w2h;AwEoGlaBCMt%1TXXsd`^cJqK|<IFQ_2v`?66|MMbXt3iP22x56)1P8XMMC(c
zNm3k5B*obT&1|cDj+cq;IBX&*GA2|$6y7M0pf<p>0hk`CG7$+K88;oajXs+SHSEzf
zKQ)}0#2(7$C%2g?4hHI^dd=-L6HtF{E&f~oy((Oe%W*8b+j@^MN?0GK=-V1+6h{>*
zWE7lL`W{d4a)dp@Ph?AY-uDPHWQjbaILvsUWSH}kSxI&I%W|6V#9eL&6?Z@2lb$Mb
zz=t!+RtVo_ZMO!9Vz|G-{jY;z<s9#;m3|(z)$l0dGe}^96Vq+^ge^awe0gsUalibo
z8ix|5)J#BCt17dH7F7YF!as4VYvYppA!egLQ-h<Qb`)Gj*nYSQ#I*|P*T(Q)xs}5#
zj@vZFT0XQx{GuJs&tsEH5_Jpu<vDbj*U-SLstzmE3b#;pH6`Ga7c4tb$$PdMHaV=M
zo6G%!(CEwKheQuI<*P9`O$uXQ$s*j%GX=AzZ(y_vF(WWxg*X~XiT&Usn(AQhzlk(D
zTX)@(<{hV*h?LEhBcmBLy;McN`(C*!NQLjsE%Xiwv|a?Q+&XbzZ3zDxSb#d!lKgyW
zK2qfq7moKat(&(;4pu-b<y`AN3@OY<-PuJtA{gE=C(*3lo$!N$*AP-kAHuVS4(>Mr
zUk_b-QmDs0DY4wb3cOqnJ{7jJ?dxCSen!Dt@8A*OpKw9imJ+LHm=>7$FKuAQHJg3`
zYu_z{;~mr?$SseH6$ps*3l#W2l!42AH1xh(f@2Rdv7X2xefRKszRVM>Tm3W#GpPAf
zYxUufr~w{U;WoLtHh8q|Y~ip%LGjc2X0j?Eq7l?Ob8;McAb%S#u}3K&GUNvjxPi_!
zz{duo7Q!K%%^R+Ylk?WW-OsoKbw$3)3;J7ov>c+|{wlX&Wwa^x+|Fr7dqPV)*OC{z
z$H?S8w7~FxmD_i}?Aeu~pU!&gX59!<&No|TOyNX!+%kCgn+l9S?>5eUGy(9Q7%H{Z
zv_Fa3f28y|)vghwl0A)%hR}k8+W`a&Rz4%hq7=WFhB#s-?6NO8{j{xs8{1FddyD%_
zF^cbrFK`wAlgvQg7;3%YvAh@pgsr-b&R68wSFWDDyKpv_CMjTc;IZZLyTTQ5vm8j(
zj&NRlo&?xpdvL&n#KOAoRckDkxb(kmXBcRpmRlOp)Ft2`1gLwQWveCfgbHky%5;cY
z7c4ugRkY|3i?hU5#u6ri|I4w7UV88LjX#Q2RB(pUfs!TjMC9e<iQWR+g_nU8erZ)+
zkp;-#AdohROj{$Q`3874f9X#l{HrU6inNszR@?q4@<fYFbHKHE^R&yh^G!%+kw(00
z?QcwB=eyqZ=?a;Xn*qEnI53Id0CMt|ZP_1S%rElBsMUBe=BIZ>8nTuLNt|TeF8ZZd
z>2#E4<xB(%-b(+Oy=?N~4)2!bk@6?kJ7w*^J-YK1y!xkOB<YB@O)-uNaQV;Zd$BgL
zE%Q24e&dIBiyY0i1KUK4rGLFzVc3miNuWi|`SO}3j{iW=f960JTHvJRoeVN|FyZs(
z%!Iy(*a?IDFeP2R_Vs^OB6(M_O`ZT>X50ILPDNzZLA-s5=$DU7gFG3wZE|*q(G(f-
z2X035V7PEI(lDXkZ!z9KBq6Bp^$5=E>Jfjdmk{W~Q0~1QySnZ(YW&KuPF~(m@Rf{1
zZP@oZDH2ryCzA|hb~~y#u&z9|uf_51@Q8arGlC48;kB3H^K71r6S(cb6Ro>sLZr9f
zM2MLH`)lxg#Ym(vnq#&~#&g#)7slWU1X~0ssMaM*ij|t+@4kjeiAI#DLR?!w2(Rf6
zCDSelfc;+xW0V3+vXX7$ypR+rH8JksJtXcT9hMcZc5eX!h>DLxlH)Y}r~}Bv0`g)?
zdu(3Ou|4u=G<g?+hyAcBIX<LG<v2cX?oSlhUsnhb?xeuy0QORoc&%LDyIw?9;s==d
zcreI0+eAh@Ro<m^2l!OA|LmxC0e!fwyMn8$srHZ@v6)qifAueFUYGIbs^oTu_E{iD
z;k4r)?FMHK8seEq`4m#cP{SepM)g`4$eIL(5Fab~O}i%~@UayVy>s*$l)${ut6jQV
z433$roSQF??RvpK+qrw;1A<kDb@un@M}-lP21R0On#5U=rRtZyrR~GU%SK5E3V7R|
zYLM_^W#st){lA=JiOea>zkW+MGLt^*%n?HM*0K8;U!~FLO;{oUw=@()5f8GG4{K;f
z)O=2qb99R0$PjPs3&c+n?$(=kl`*?!(^$KM(|H}K<iN4nfDuv}owUBL{IWqR+bXA<
z;{|Y5i0mCbSylm@wcnmGs{O`#Z|qFQ$%6-XD8bRJ@q3b9fkQz|JIeCMbYaBqn)1j5
zsZ{+dXXRrJKO!&D$m=@BsA+Ar|G>h~OmD?%1+)JJX<ok#_JOI|wXTr++&0|puQiM=
zua>1?bv0-P&i!!6U;EQA1>U*OZ7!Ok=uccvgQo`NfJ&ZtKuGFw2inHVOP$Dux;?cE
zo#h(7gITqZ`l`hTuC~X%YXSaaPGh(fL1_9y?&3JGKYJpR=Gxc{>qEh^$lyOgTti5X
zjDp%W5}&t|w@-PWFv+sXF40D!U}FU2h8r}`;8U<d@^;{JT9bkZ5etJjR~(*`w%EBN
zuKZz1R2zj9c^yc`Z8e-EuStu%KWOrnKw16&;ah!@;w3vHIH%^+ri3maoem?EtuiFM
zL*Obnw{J`aZ%kh(L#D-7ZfvXR6i8J0KZB<*J-PdLI0QKTHs7|U+u{uHp=e#3{+Lsl
zw1dRuSUqhoR}LD^i+_;9h)u6P!f{Y+R)&`f><g#{3#=U$4Eivsh7l18Xw14>0k(0m
zn%Y<~H%Ht-_2GQ4VvGd)$*-^61<DjIxbm02+6&CFE5qu{S6)f{gC-5#Flcz+qIJR{
zek5!&08j#_z&!UbC(;x9>hMh~E3^GdCcpzH@PR9j?hAxx?Lc@TM*`D3I|U?kaIM1+
zQ3`s?K-zkY;nD3t4SY`-XW~AhRCKFfzP|NajG)rs10H##-p%FHOOK?)+Zsf~7@38l
zI1>Le4(i8k9fw1au^&R*q-ZsG;zTI=mJ;WPO)qJgIs5uGBCn`0GLgems`&;s#v1uJ
zrp&>oz;GrZu~y<Ta58;Kw<9LeGdZjnQ6wOy{15e1pdhRl+4~)gVPazJRciNyC|X`!
zECayT&dWP^FCLV2NzWWz0&WvJpX<y^(=f%f?{w_!K<;>hiuY;dIF-4BzE|^=&!zF4
zIbe#B?aWiF+rf+f%;XI!$!sV;8sQ6Fp{3fU8UYsNk(MH0UXa&t3gx_kdovqJWq1Gy
zAL6E9f?uj)GeZQ-mD8#*99e-e@Pz|Y&POjVa-k~j__3VI3QRTp32XSq6vSJdj@@c8
z$0J>*KGm_92$>O^qq9ys!SGh|bQzSq12v@p3wAw4UW>B-tU&}B`B6L!I!B86@K+5%
z|2Krtc1arVXr!gUE&-5CmrtSeVGhQMP$=QYYhNsmk?j>W3|F(~wB{ga`kR9hJ+%Os
zPT^r+p`r0aTIE*n*r3%!s89)9f^%&*(G6qlU&DQC9dJxFU%Ojl#po=T@1+BTgA<nz
z!?qB6)ctRZ1RIy=FoaxoBoull9`~yf%ct8=dW1cc({w95qn6>h!^T*=u%E+y<k}{o
zsGq2JE}AF>FR|1F+eEFH=a0_qfzJmG0C&_(LoYFcZ#TKu<@0zJY)(m960S;CbYWl)
zQN|q1flgH*m?J0qU*|6swh)_pi;I;vRJP8~;XtE;l3<Cvl;wnjWnY8VXS*!?^eku0
z9-Z$g-7kNZlSM|V|69Wpj@`g4{ay5v+dL}e!%4Ddinq<K=x`KLBJrOO^1i@p&OcH6
z&AM2)?-d{RiW(;2RQ~mOq3Gr7L|kk~95A?ACE2-&n)H%1AIo^*uKZ#LXR?z=hC61q
zX0i}>4(9xtxUFe`t#y}us$-9>;qXK}FRAiepb~;Pvot$Dy0MfZ+v{AwV@&5HP`~%3
zdZ?l}XJ2=vO{-hUYW#$@yFExaAb$snyO^TDPAuoMzqP41F`9x@BK#3fGtb-h9ht)J
zoZ~8!T{hJ&Sh~5RJb;o2snAL5b_(-cpmGIywyY=Z?#FK0fgeFxY2t|dHi0U2KM~yt
zUsutkHk_S2<uU$w?$NHN0qb+lLn=vL9iC{@^GTzhPkyQX)b{_F6?g|q;Ff6{#5g*N
zGl^*!!`M1)+mc$wt_>%g(XtG{t3mR3;G<^nOZ(RPT^UM!fN9q@4B+CK#7S93<WENU
zBgO{qAD!}$SK*RMYP7J=&o}H$+7Ze_JBu_9#*D>W<lHC1G2Vdn_M3p~Y5as7MEmk~
zeFt#sLe1yW#Ia|AkJ!J@S151PLf-=?<qvhtm0zybpi=RmPb)%}s=ETk&-D%cs|KN=
zgVcultVi;P(rr$e*p|=MBZ2*9-kqYQ7Pg4TVY6k>n)I3>zL3E4@S#7E)z)ofo?%`>
z_i`_lH0A(q8Ha^*)7J+9-{*-MRG~yXV%uCH>E8MUgVE-kiMFUtiV`>H&lW#m@UMdR
zw%AFBYY+#8-4Mo29et&f5}hPWqaedDHTVoL#a2CS21%>6U=xU}=oF4kPJPR6(auwf
zp7v%zLT;qZLr9M1?fz71hjUMeiUV48RSW!+yoCe%+k(3N2WydObAlyf44<a>Be`_7
zREO%q;5oa}@{K{dAE!7@T4kMFQSyDlSu&FrC>5$Zxh6hJ8{4&)0?^_~T4fd><gNVu
zwFh<Yi<Dz#XE~3Trz+W<TN-<PHNM1JHj%E<Rcc|44aU@{!Tn22+{KX}+%w?nYb-`<
zyK-g?f*rjVx>KxP?kDmtbuuWplk$<S=m>ni^3bSGnsf873Y?MHd$S5>%+?`HvBRgu
zv}FaN8+G!M#IjQbJd;K+a1yDJk9;)uEHl0$)AI!qQafWW5wm*p&^NtBEPf$|rGHNP
zE8yl5#=<^~cbjlg=^RExPG|)l6>;U+x_*Nxq_?0t%_rfC$<OKT0^*WH#{=CHd4z5{
z!9A8o#k+*$_9aJw+~HOI&gaS+Ade5y(p6q!-8kIjzSnWTl=4)54I$yjAz^-UB6r_p
z^Iu#Ze2KaQwSme!Y?H-}x7ludI{AsR9ObK2`Jv!uTfuX`fxqed=1;(_c&qN53D;yf
zys<hpsTpO`CpE!K^k8*zlGsn>q-9UJSYFk@{@j1O#1jm7fn_AfnUqL#R$G4Z;@RUC
zI$dWM+^I&UQijwLi8{F5He3H=hmVM!ow!p}oLr&X+5U!fr0NFvaG3ET*!3!f{_Jbz
z8yy@gR@WYTiyTmL%FuyO;#;H8FWGm>&%av)G}z#kjInhg`Ll$fq$tad_J#AadMPQ2
z+9WNOw2pGisq|%qXHH%lTsnz%aPx^XqY7`lXHZ(1ZQ2+hE#B@pXW`)?`IUEkulJ?Q
z4#fLP1f6yB9QFA{*P$-aKvz=jiOGL9Y$oyFc|3KS>5LBcLZ<K9y^RTl%%LuiqZP|t
z`IRnh&3y+HQXk4{Q*SiZC5b$|lBj<U5MA18;AvObGpGqo{!yXM7Y#$y>}@YK-cQXA
zy5bsKQ{UkWDihGb=h9!ifEir6JV6E_4)M0f(9u;KG57KPUH?(d$&=R_{B&a`)%$rh
zLM5%wrB}{Xrpysg6=Xw}M_GR1^q;BTl1L#ibTBob-XOcNoiaE}xI4tN2NNo3I1^+S
zCpbvl#PUpPiCFuT6_}S?lnF=Qe0G!Nanfz(<2z?QPLqS(+Z?;Y#yIAV`lHsQ^OD>J
zHPAA|yDeRHv_@YrW`ory6|1yF1}EYGG9xXfTstlxEqDu6y=Q;6#?6*nGp%vK9$N{I
z4_8@(^Pq#yde7x4^n4~MPcvlFR$h7GKwz`j+iD}(2l|d~HyVPL15a)xc%L`rei>O*
z65`i8fa)a9qz@g-Kv)oN0br~h#@=jkuy8j$Jbs1oDP_v<?_sbl?6L)qI(^?qIku2$
zZ-CKpn9H$}n|YZMdjwDe{m2zrtrwpmKtR_Nt!v@b+xz%?g?IeRwpQ<pKI)-^F?K5Y
zqQceNq-kkFiZ30;iagodYZDPAFgkcpL0_33kp(_QTh*x9e#yAvfr0XUve_~q!PU4#
zA;i1z<Q~-&G7MCA=-T@xQebpszlbJAjb<8sOW;oWr&oG<s>yN1&mYCh6JKkxoniV2
z;qVZn4FCRg=;S|hH6pe=)TzLuJ!-z!MAO^oH$(+g>t+5<JgfMbod3RW7!P?d=}?6f
z*-ly<Yi!Xtf?P@x8IM6#DQJ{e7<2u-;hnK>2wx9-7)m*yps!>_eV*U@@%#g7qD_uj
zTwg9}N(}RIu-;2eZcmWnkYEf2Nwo2Tca`wyRGMnrQi?~HysBed*s}YdCj?}JtOX9g
zJ~Yow9p4LHN`*`)Q&@ng;8V#ufIP|ZL_5XGg`AquToCVIbxVkx<@j^9En>yJDy`+%
zZ;8oBjQh@|0wX#uE`x<Ij3vg01Aj)BYxU>+6u8LQkQ`sxa+A@HA0Bt6iQNAgsnU_U
zzdbWdk&bw@cI{kvQ)#6>cd0Ale6so=)c^1V83Ob3eluiT4bRA%bqbp0zF5<d)pKW7
zAQ?TU4%x>FPRTD7?xAv%r31`7!Ad25x~2+pB7u+WtGxZPyTW(Yd!+-jY!*10_u-`{
zjU}k}nz<bjPr#2>5;><N^%W`S9O{#@^eaZ37b9byw~cZ34A<har(>Fke*5C4cQJL3
z4(M@st}R2kb$mbKjiLD*B;vjYKWqAUpF$QdD+jsTJN~Ko1OAtsr123LWXa0yf^gUZ
z`=dyN`R53RN0a&FTCnh#-9$6Qb#C4wQV_K|vM;!g6ix&-BfcVN*wZ(>7*&zMmJiQq
zs?x_$hM~1iR2iI^Gx#{)Us8~Hh3h)niA2c4{BFaIODX8y;tlDLSX(oJS^4_{-N+{+
zvt^@nCXjRl+^m=l?HklE+2%>V^jY5NV2&G@z{YiL6(NaOrWEfMV(BJQMY`6^=(9YW
z$O0mVq|N9tG>B!6JymLEUYNV@nFWeX%L#+Lh}XA)!@L&6#T@sTF}Tl!kT=ETp~>TF
zo+rAYS-ba~@4DOqT3&P=*@!K002Tyu>|szf+c2L$(d6duITk?RFt1&J3en4JO#^KY
zx#~oN5+gTC%w>PO)VG#u5fT5Zp?A5N@gUjkM1nGLYpH=1!yrZQm|E9`qBzhmxTK~#
z`~TzWI|G_Z+HgY%p(TKT^b)Fcsi6pNr~(4g1px&D2oexNv4FdTDm@gDCL07P3NE38
ziyu8y1w>3}N|8kjwpC=;-Mx2C!0+38fA~XkX3m+Jx6QoIJa3EV76sTl-Z9Gbgm11>
z_*4W%?9v0)`X%;73cT@{x~&g-@V_S9>Fmh$VO~t@`B`Y*Kpx$Y4Shzo&J<$c7Dg2K
z1Z&R9N~E9+>{vp=LSQ0;hCO1HrusQ3&3ed^f|=(H@z&V!bJCIjIlxGQYV5cOFAtm4
zKeznhi=Nx*Uv>|iBrBl}RTPnH=r(z1VyqPc)6A@zTc|g^<Ttj+&4S!O;sDh$Nv}@Y
zY})?>dbnI+JKtGyKW6mHS_S@p*c0fP`=o^(K@fXQ>qy>`N{O|+zL(*MIoRm$;ZklI
z;S}|U5FX#8on(AxVBU?W<$JrDp1+}YJuX06c;<F>^?sal&Eumz4X`#>Nj1h($;JDR
zS?P}BmVtR(wqjD+AR`b`OK7|}v-+IHQ4W%;f*iEdFx(m_D%F9QZ5<EkejG6hq1eYs
zASMKyze(A+xmCcuub5#osU*<tt=0x{UtE7h>4DI4ueW_&=Ekosd+x(D{lhPvQo9+i
zg0R&%z<QLV$FejBOrbR!w^z{b;IvL3ZKxzO>Eyv7gf8S@h4T+I(A=zuA2!2ri^J`@
z5Xg~~7j!A{wiXpeTcxO3H-Orx6N7oQ{t_rmh1P>K5Iq+QNM%E6u{)H<BfhC9+cBQ!
zb~#~VZP2Pf_ZL(IsP*7%>l_b9L3pG+N~<`~CFWA?v-V9NNHQSkZ7rWi-h+rIz(e|5
zWl6?S;x`C#9UfoAh7gcu0vZ)T4}?lw=Wjr=C|YC6T+5N3M3w1o2rxQ7jHf`8{`!r-
zfcN|oz>2_zG|A4&BgG}_krq(dL68zo_e+MP?D%Q_<REb<k)nvKGl%fWo#UTWKmZK#
z+e5k^wnf3a0JeZjO&`AtJ_a#Vc>>c&u&r%}o`O!%9-veGAAlXe>+KmATqTsUNrQ6<
z;v5!bhM%0adDKbPlH~Gd&9nc2$VztlD0m_%#Zx0kyyKe?(H?uh&c?)<^#DM~{&KCD
z4Gr1zF;p#inrbMdh=1$jd_nGk{8KQVuMPf<1Ql&CvwjhhLOO<uxs)a^6kqW(=NdWw
zB3;%a6anYXx})ICXog>u(T*hl64bytDG0*f#j8Ox7m!X&1!sa0WbxLcEVRXZN(fgy
zv@Yp7^bJuPU_gf#H`0UBSUI589<gn%z<(eyP41=l0t?ouOw>m)cpx#W+8Of?C9-&}
zgJe7d$3Tu~+ID&(&nDmopHr>IG}R=i*<{6=U7L?p24w68UIgm?lBJ=lu{idAi5RZ*
z)f<*<K`g|q)*-L6Y;2ype&NKWY@{84OF{X;gI1yH<@ay+&l&kcw&NR%GMEB$JGaGJ
z1u>q??>$Wh+8D*}z&JY36c(`%0uNCJ{e94;6})CL(45*6#kSbj#1)<~&O$vUJdm)g
zKM&DK0>AqyMbt--0}U`k`0=PW90%G23CaOrwNsG;s?-S$!C;K&YFS4<4mCT*)CFv{
zfmS9TazSJZ{Tlwp!0K=4oxq78RD2YbL8(duxpvLYhTE(L2h6ls=&uT)J`pZp{=w5L
zZdsn4El}QbF>02_q9K-bW#v4}O0@5Y$$KbZUpljes&j^l-Img?Mg9u~2GON9JA#(U
zNi#Fz;~Lmnhkrx5{u1W$uGj(EL<y+oRBG85FZ6`=gx|5^pSjQr%6|gCLJ6@Q00-SA
zH&YsF3jiDIW7fL?{kSk7N7Z-<c-w`Juql#(r7yhY(0eI^WyrrZ8K2V-UN3|`oFp&c
zsvN<qd0+M5r+HCT>kJp*!Q0WLmW6iJp^JA}6ZUf-EIHM4R2&?A;FgpblqdEsAY3}t
zcY`%)5cRs}<S2A$glIEs)x(MD{1?WL9?;@_w4c$D#EW~TqaXdyl6=79bLiM`TRK7R
zgAkiJdvs<^E>S9(!HUEZSj#x3i}F6IT>v$n=dc4YefhSrs@yYMNYlX@SfWM>0Q;#I
z_})=fbv<IqufvBJ6j0n%C+I997Xr9543$D=gvA#r2Wtb>0yylmh>HjchOn7a@8h8k
z0k`$`NP#aJ96h#k3r2f4z&~l)&>2GCemQ*IY_>e$WrcoCjopFk+3J=4CSL-L^#BlY
zjCsPLT0|!YI#YDkUF0L`21!<Cq5g&G>ywvH^*VP1+_A*9h=!VvYo;?dwf=>i|62Wr
zu>63ED)c~iC>h*kGFDoAWDF?e4~7gb_Um<1Y}+r2gPfiDIVr`ooaKAtS`8V>4Xlvw
z3`1b87(udU@i^3ClOIw~mEQ*`L6Am)d}nfAdIW$imRi;&w`;4rvjFidH(-C`NQ*yw
z>8_ZF#m9e7KOpPsC^m*Hi9l^oDz{wB|1kUj{h?)q5nL>VHYij*zY_&MECv3Br81KX
z1MK+gFyNykZ;AJSm<Pm)EQmHpQ3uOWVlIQvs0An^!_+w*A84r)`&2VT(MR%@4*hZG
zQ8OT1fYHy~zngsVvnk8s5YPu=F`Q!uPfyYwKm&;Bw04FgPm%lK5-D1S3P_R=4NGL0
zX76%gL6<}3-}TT7+Oq>KC9LlbMLY0S1KiBH(ab*g5=hj(OL3qD>2>gvafga+K&)?N
z<oEI6yVI;Z)d5zufMAPL^m-GWR&)c$(R82xu>tLnY3lknmZ%OnKM)gCH~vq66{s;A
zQkt8c@;*1_tb(FR82sRYG0A~aLG_Du1Ka>jF>M<%GGI7%BgXSNFZ6l9k4hGT_IX>A
z$Q9t=)KrDVTNWeZpYyUj=-=R8PK%=ZtgE^tNWRSQ9eYxcNuhSQ_p#=v6}esow{|=#
ze;0yFu~GFxW*>%2LgD!VDxOK|E~4SQPoJoD#sUB_MVt*?VFN1lLWnHZa@lr@_ZRuw
zHr}mub{qtvXYS53Ygy>qy~WzYTws~IMd}(!zWW`SY6$Lq@W798%e51Zm`EjT6uSAw
z|JU>ZIn(y#K1z#CJL4kR4{I0V&tg;54;f_pN>jZ5s4`3FyXr#t+O}tb=}CToP<X~)
zLQxTV=!so?(vZ8vfil|iA+uIwsWwqFfL9!Z1!@-Q1m7e7F(;v2|2Yupqz!NHZyQ1}
z9B8PF4MB3uk1sd9?yo1jd5iaec>o68KM;L)@Eg||*(Beeu%OTyjuKGr*Bxj|JemuE
zat|O<BBQ1EHKn`68VDfy(=H6keNzUd?NszK#@zpBmgh7x*KZ0l1)RA+(#l83SczTG
z<A2b)Fp=SpR>Dl9mJ`HR@M(6N*QXR)3Vm2Ud!ZA2N0`Wnj;U(D1=XkFz~^8GS)TD2
z(<S$wL3#uQ#F^qfuF}|}5UdO!e;P?Ov5*&P0T?_e#hpbK0p~`L>LQ_$Em~6pwZU#u
zl`{2T^8#9Rk3+2jZ^lL%ACRRHSZ`6)4G*vcvf(477vuJC6?VV0uwyj<dC5?4e%0SM
zH4PH4tStS(1bZU@I-0@->O8kOV7H>PWAvgy*(_d2UgtDR#2gw729fbBZ`q}n<5Sjo
z6tXqo*Evuq+gB_UYUe5$qg>GGc%aQK76RZ0aR)rK1A7McXJOb}XuzP<i>p|+5G&_+
z@}%hrK#`&K<tQ*LO-Km`PzwwSlcA^Dvjalz5d7vHLEPn!dA1_3y?kJjSfHLc&Bmjr
z1L-?d5F&OY4Ro(v(K9soHyd2XDOY-%I0VIMbC8>Dt9%+fwfwvycKlr2A*t<R<94TJ
zUMdtBhNTlO%_Im!q#bZ4?>e{dsSQIvT(XP|{oLt?<+j9#aI*JzuaSiU>3_zv3{=Fl
zTHPFMM(>KN*0bp`m`ICcW1CeG#-R6`XEnG${G!SBJk{}Bl_J#w)c<bqZ1=5E_fU7H
zp8LVzl2EPU&iwQH8lKJ9W6jrpZ7`UussqP<;cU-4aXC;Jd<guD2;Bx#C^@r~4yHi4
zYBB!bOFgIA+#78E5H*(Z{pXm&835A<Qt8(1HK3r>8fpU|tiTjJi@^d69(aNPPV}BN
zvm`a>?|UT}D;78s@IGu*gX0FE5V-w_&#a*bJzH`*oD<v5AR`|&xFpD_&ZjSrFD#vc
zEE(Vj43?Q7r30zZABw!_dGOcP#9TlYG86xWwQbRlbC`7`2d+TD1*ko=&TO{<Nb4r#
zb*we=02;t@BIC4{I#33tBRwaD4)}@=Gdiqss4D>H;uU&cX86#%e205)7y>-1gUwL-
zjoW%Lo)KfQV{(yzTMr^W-{kyLT2hR)vPL>BA#^v$K!geZ>RxiBmF12?IU@iLbJ4mr
z@jp_9MhZbmz`0B}DTJ{A*8up$?#V?U!@TQ`P`TRy{tNW_>7TJuH}G6J`uj!}<YZK@
zuN4W?`(d3b88#aSCu}9Gf!_W{FQ|o$;4nSSiq{Vpl+ef)Bi`x^>&RN@&sn~@1c}Q6
zgsucUX`%2Zdclx8384#Jng)3nmMH;SE)7zJ24o&8a3{h&AZ3IKa+VH>Q&k{C(w4m2
z3~Azl*S{~`3bwH}1ud^EF@o4Ph5sd|6bm866|_>o1k;9sSRp3B1+k{LWk{dbNiP_~
z7LFF@r2cE}A<ZAlaR1TYwtG4`iK9t>$Smi(O*z!T^zGmBl3MUs1eoc}o|?v8<BB}6
z`-Z&8R}X`h6)C!iK*$IMxWI_1l`~<iQGs$ge|(dh{evWr$ErgswEW}@HV;ZUuedLO
z_r>^o>o{iNILZUMbi<Y|0ec8AJp{v3rm-BQ!gS#D`ib#lM<g8&VB=77gS@@f-=b5&
z3#5d*o{+?{lHc(;RwgwSa0^Q;0ByGjf%?<`FI5&Z<J1;MCJ#Xo=$A2ovi?u-SoWt^
z7XQkNQa6MH!m(7Q|30p)`wa_#0ko^-=}4?GDR8iY?LhdCbyhC%K(Yt2p6pTniQGp~
z3=GR88oEVDvr>cE0qOoS?y9XVV3EOmIJU<@v{TAm6r;8NPgKWZ@cm)ijH6qt|3#`*
zeMUs3c%PHP?C(SOrZQ+t%}GEN#{Q){APws?Z<b|vYbd=4@MMLfizfs5tiy;be-07x
zfLQmdbNh(yT`7sBX7CDIE=EkjIbTq}_5h>}WfpJRUvm!c0(C2ZB{VwHx&<h~4#5<*
z_x?C1h2lHXO9!f^7s^SuB&Y!aJhSNJS90s7Dd64)defqQ=^$;Y`XgYqgjhc6#M@`y
zwEGc&i3k(vFYxphkn2j~3Ag=j+(6<GVq#OjFAM@`eenYac7TxhjD|DZn%u&{es^kl
z{t!n3G!^)R^Z~+s0liT0nW>Rp5OKiG8-?vZKmb~3*4bKo)JQpW$a98_HgHF#(jh<)
zq~m~I%>!`+oMs((wpgbM9u|@e#I-Ac3aEN!|FH*xYk3TOw`7db@S*`|2T(Tc;#wXE
z%Z=RL1D6<~2!3FxOsmA8y8rf(-Z9{MhU|*|H!3hM5~J>uza9k~u;8aNF;2Pv(|-s&
zWa%}L6Y!yV9K@AK37@k6N+YDe$6A$gnmQD60ck#HdpZWvwbB2fuii8TCp%d2tbo*h
zojA4e>K<n4U=(&tquZMBKhc1N1}ss)y38b~bPUZ`n8+7HH)}DBVN=9l640j#iABe|
zz*a!!1`w7dr$@uPAk9r*o_(ul^{mbuFfBtsv7cLY`biPC(%y!eEVl-5yU>LWmc4Mz
z0<^yC3^}%3a4WeZX>)J%m<?En?-(z^B2g$wy+`(Z4TCSR7cDtK%f$K>$U3G?6vApI
zz$F2Lb4aOEMcMdny<Rk<i<u(w7R*i&ujTqb&mm?eQWm&^0j&n`dNDxaz}zKI`JMhd
zH)|OhzhsQDSxZ<;Lvg{G_M69LMPJiZ;aSUsgI`P+O;qqX_ac;q19vWzq?U^u?LPE?
zr`$ral&!YodS@uw&YcAu8|&Z!&JE$C;IeB+(u!ljArw-ZW908z^Qi3$46fJ%?+EIS
zwzedSH7wPF84=&!Q;?PfoO|W#+p#^Ma*u!>kLO%~*M2Vpwu<6a=N!l`BKpG@By{=l
zC`g1~2wRrbNczmCRqc4d(;Q|7m6WwQafT`IiTr$|78aa|ln0nZh8`~&J_17ZFI01^
zZH8z_6Ay#^Rx>WGJv2bTJNp|3>jR&te2Jn&01&?Z5Y_<oO^Yx?`7+cB*qS-=w5IL6
zcj5eF&o2ptaVHpPU&F2NX9Fz$tNzw{LmO8taJoPOjI^EzgeN1KTwOfsxv8T9ol&2p
zkKWbM4-F8+%`p84+6*Mety3|<_(*L?%-Y%8>Mc_qy317CA&?m;!o2Io3ewp2x$rGH
zr8f7ILIB1o&HIUY|3r<3<aO`@{oED>Gk<(Y{P57c9Hxf-B#qZO`?RZ+E3LP{&P^KK
zT;6gM7i=l&`uVJUEe{qT_`L3!1c3@%sJ?qL!vjOYWP9?f{=I3-?IQu{c<RUXniX40
zEdKm-^oLM?nq|69cH@r#b;NNLRN<!A7#bME(_TIDG0W8XIE+h8-r>O-5fQSA+QU*7
zMXZM5A$9y`!kwURY^<uSa|B@;WK>=ZF3vI?L@`0#``g+x#)Jha#ewHsq*FQ{*Fihq
zG0UOTA>G^Zu0VbOAD|j^{txD^xUBor=Y-Qff^a@sruAo|5GGOTf^gyuXEK-3BVCLA
zKTr{b=c$7^7Z|8mBSZMa#(X9>s0I#N-ooYv_pg2YIASzz{Q(p8%>XXV$Je0Gexpnd
zkIqdn2oN}b5(tDoTktKZb(gLWY*>ApElKA|UoL$IS1+QJ#Hqct5~KTs#5F0cDRSpY
znUngR;rS`%A;+0X)9}el=ND{V!VvUX$<hc*{cbVBhKwRQf|7x{=UVD38WQR?gbx*M
z7+3=WO81|^YyP;uFuDpuAlSl5I%84$y3X^flo{J2gZDHS(n>?HS!`U|p&BC#Q0O6W
z3UT@<*tM0<K1>MbpkktjNp@cQuke9LBlC}oGoj}|>9pv-b!HZj;&<{>>|HGA{{7q0
zu-5(wJ;@knHi8R(MS1z>1W@FiyuX%>-=r+ZFtnXZ5Smpx7Iosecm1Djp*dRf{B9x7
zPg{fPwya&t`I3dI;gKlcXl`8h+YmTEpN;>2TH01@&q{~o=U(E7bE`Ya&zmLuA2n2S
z{|jBPpOFcwXmC>A&z*LDbKPLHdYglG)F0qg;!WraCymS(rp;A|?P{NO+K*(nglZNO
znYA>eq4`;syIc0-%QiP0ow4){J&oF!#H6Is#f;uZ$qg|lg|Fi`LKQ@5xEUW69|>!5
zH@d)!b1ZYoCD0^YDgF?P-$ySD8GYCrlpD-5TW>l!H}ha-w57ljS={=wzk`ojr@jG5
zQG-C{Ie&ks1|nEZGrN2vFn~|Yo>NMveVsp#o5~hnl7=!(v?Ijx^91wy6F?(H1K=L+
zYf0SCC8wG!QsY&8PA3Ru{HU^Z(zGN4)$L;<#U(4%`LmQOkX4WLz|(kWPzlWzUvGw&
z)cAp$Yj^z@Cw^;5W;!IC*38Y+e%j`|ks?`VL_=3B$Vl^LJ&lt)Rd>>mnHY;!wdTE!
zbbg^W9*1MQM1nt_D(ik9hr}wHmB|dREf1Z1CD9dduN@8u^es98NaO@(nr?nTx|git
zhMz6$90fPteiy56R;kA%cuVwU@<gR<^nK80&Wj~WInIaz3Ob&18|&cv!t7OiP`aZX
zN>p8l?x;>;3pby#=u$Dbip<R_eC@mod%TU=U&}4OX?*p@zCzU$`IiSmdzS`49tanl
z>)-S~c(fY?yAB4^0^525xO@L06rm-LDou>Y@nPPFvP&9pQfOxMM6)uv)4s9FogaP(
zS{Oq0n+p8um?QBDitHmk2ai#X+%h82%e1`k1LTcW%FB>iV~qLV{q{0*Gc~iB&A*}n
zCQ>Y_S5r2PPI~ACZCM|u`i=}RY;@*_=|{A9G%fPqQD&(_J6g-Qr(w3Bif8y`cHp!m
z(b>U){x@z*y!MAbsgrAM<O;^*r1~IzJdLH9PBKj=M-j3zjD~ZmdfaZJKwbPlel+MJ
zeN*l<PakP*Ev1>INW8|tp9u3-aF7QzKrpiRB$t+eOb}4K30BX`v4NjDg0u@n>EKsv
zy+eopKKM|AkNQQ^1g_H{Xf#q0Ac%OB%;hZ4?^QD&l>o@A4Q~fm)FT5i3m*aTtg0RR
zCYK0CTzj^EXuX<=tXYH7NIyqqdn6Y@Sew?~YG{xEL?A&>C|sU7pV?7eq;s~nu;!>w
zydNk%@Y>;B{PVoF3plom8tR;johwG|LLrW1?h23IMOSHNjE<&w%Ho83TFC|{*w|k>
z5&}4Xm}Qp?hG0Sgx>#cWg#dJKw1)DuB<4t~=iUj1J~qMY`@RFhZJxN-#zA>NhAEG-
zrEi_0R3MjbB6rzCCioc@i-RDDsT%)=Gi=kjbt*OiE|2ho!3hp}U8hY(81c(u0yByZ
zl=<BA<DO6u4CtX*&MP*7UGa<-4pyOp&YhbIkW@vA-(ZRp>KGM<n)r+VgO#>ufR|I{
zjq@KSv0;%slJ{Df4CfP?pbj84$T&hHcT$W2!sjXoQH>)c>)dj`m>?+iaXJ>pO^wo8
z(M-wBJf#(~Ro`d9B*=z^L~^66po<m&^4PNP1jUrwKZ%LBZ*A|X7(a#Hpruzm-3yNT
zYl%Q($lTOwDZl2nC|ih33W8F;X1G<<&|CJyDKN+ETRyREboI!BiS$Ub|IiS0aus7l
z1j^!--@Z$u>CwCYl!a!(cly3rGIn#B%rFJF6Pk9yp->+5<jwf7=k9yD66RQ}aEaDB
zx?I-I#Yu0}D`d@5`R&*Kf0>nt;NMolyeCfwNA&203izlili~n|6v`e0KGwfFxjavU
z)7eQY!=d1XrM{9Lch;T+y5eHpGUVTRPV{MjW!rfm@jQHl5F%PKZ&T#8%OT7etQugn
zZE?96;n4H~1l^4sSY0GG1WXpD*P{a5c<X~e&VZP{#mCh(xf5KkFe!D+QeI;ZnHyVv
zKBh(<jl7wdIL=}b1;YkdRie@fr4KOgiGmUOQlu{`LbW2Vwq7?AIZpg8A|jjZG+Ov8
zSX(jsja<ptwX%+1V<#TyX0nmyb3IwZVh8|MNFpFxz;C?$0G>nUW@6tAa5_sx=snlX
zOpl!EV=-N|9kIEeK}@`QEdeGJwC0!xi0}EkoIGPhEvog>33siG#1`jR!L=DFSc0rP
zE@in<z6Vo&4&QpliM7`-LFpuVT1T2&YdWl83?;y+BLsrY28Nvnj;&SMPE3q`cnPMt
zAiqXg68NL9@<|HDK`3};dwG6S#C0aOe|(4}bIAV%fTVzps8;xDv?9onFUTeL%e5=~
zXmS*#qwRPTOs3K)P4R9<zq}>umWgKV9w%=wr6wSNmSI_()6da6)RZFL)?8TkXBll+
ztW<dv#Fhnew#;R_88?wbE+y~^FU<uXH!c$?8WDKXw_LH6U&N`+9oUy{IBhWpp+HGY
zp)B3JHQ7Y&X~1cgeC;7dT8F;z2HoY$FcweZjmwF1$q5<loS%MN`UhLC)c{t`B*;^G
zVUTCS^S8XcLkRYqK&R)MYfLhz*ZnysiKBO5JNWm2)%l9+RY~R9>#b>QH|mcR-|HnY
zk3+M?f*!Ya*<TK~Iw4c&1?%!MLoqBD>sIR<tX^9Lb8wq8agJpQMDpl75LxIT3S8)F
zth(1hJ!Pzv#7lG`hfIk7$0XNAA_$%^6X&CBcCRhkKT6^IMBze3C(3rr?(uvsguX=}
zWJ1gmt63{ok+&xvVcXehv!0Y<-3M6}aBRdzxd0&Q%qfi$FsIKj)5T(IEBtw?)Cf7q
z;F?D`bQbUV@}s_x*6vbF^%~(ktlV8VU~<(fe(kDeERm_y!WIdFc;&667cCXh!Vdr^
zTU*Hlb<}9DGXpe5A7x`TP2&^=wHXiKwx177NEdkX_%bwMOP1V*dcsjIExFwpYD>!X
zRR75CBvXBN&h)IL4^O!GJ365K-W>6>hx|!^m0yV<Pj+sF;QVT_>&C}G(tL!}`>OxL
zQ!g3ux9mg4{<k9{fV*R{rvYwE9IVSHNO!lVVzDMnvucFhV)My@ic_;i2d{{VbF+)_
z!qpxNtve<i*;cQ8(hRJ_p9{v>xF28gVS!{4`vATUB;S0R%TeHlV1lBfQVnpko(U(K
z_Tuj_nUtG*od<&gG|gvaAe??=@mSb+PeoX^**AI(nb!JSTkq40VXIH`(#A}^zF+i^
z)X@hb12S-3_CYeqUHXK(p)0F@z3|q&X?ACU)w#w3e;f<$@&g_(F)_Ic<t$@sFi(#3
zRJZ1qQLEoY#MRJqe!3X9@$H1uUcB1EcicUlUSr#G4Oa)!m~-?%J{gM%JDCL`;;Z4x
z-0AaM2IFqcw^{FS+DnX8o?19mmeJwZGn&%Ll2Nd((*fz3!bIf+_lQw=ZaLP`8jIPx
z;?3MW!Jrr2g46^EB>|_;6E6i=*n55ErD7xUFV(HKOoledb?|@xAm!RStaG8Nw;p5(
zo_OI!ux=VVToJm9HJ82g_1%S+@-N0!J$Y-k-X+iSgdo|UZwa@zhahrYx_I$c{&4O-
z>jq5NUG|5rdw#oozy1WK@yVVdn8O3txl9f*sEu$2PlpT=R?~f5Q8HsXOic9L#^vCr
zQ0LG3?i9+?4yZYP2oe?)6ErkpJ$>1i5!@iWsoiO5XrP(O@j@HafjV5#c71fo7vSrl
zi%2{icV*!=;HZ4dhJd}uMX(K1L<JBwBQNbyM18rLJ<NA)jKwQ$t&|D&gu^>S7|J<q
zMUdc#3<?>#sQt7xqA#Qf*Ekuf7vpZih+<Indt(?YSN{Q@_OrBbiqpWM9&*61X3bUS
z<=zMHA_NhxXkYF?uGSpGSiNrRG>73Y&3t)V|6MYi^{NN<xWEU38)d=I^5sT2)6&r(
zO*pk;A$jdpO+A8cdD)v?AytfFGe85X_DziUAqtY#-+UPKo}1jQfQAwr$uLU;M*ZOF
zF#y0AV@QdKylTP;;tv0th!Zj5x};31cK@f>PcNF}Lz6yIrpvetZcTu-R~94P#3e0*
zrSB;ti($LcTqNP_F3S?}<8>x0oK*k9-&*&f;Z^RK{VdIEgN6(^D`$dBl)e@!3c!Am
zp)&}{6Rl3u$tn67Ayq-M?=DgU$rq`d2a57!#9!YO1u}lX%79A+KV-XVNI=&SKr>&P
zC$Dn1IX+*FTdJ-o@B4%4PDFJA;XMCCTkpre?__D~aeWsKI9GJ6b+8LasdwpLys3ac
zi-=5;J27~F1-1PA{pyI-<MVqLWEm?L+wNSx7?=~5@}07cU05eQi#`PDacFEn8~!Y3
zi{~=82|V%KQki6Vz0dy%T;n_vo56Y?P*mac)k!EW@v+-=50bAD2$=!F-owkD%d-Qi
zd%jC$KVVk38Fn1M`<6kn@}#S6qZ+Hk?1HfO<KGm8w;NLqT9ni-j}N4Dg6k|X5|Sn{
zek^qZqD93jc5*{!)#Km1rDolb(;$M%_0zQL^&YsLptY20!F+A=MDF1)U?@PS;`;7n
z&K=yv`n#F``{Uk!gU1;+L;6!<O^s7RWhIpxVjopa%S=Mr_p@xnUcB;L)ee+H2>QD@
z`{sSF4Axtms!}3L;_asB6g?YVws`yUcYC1;Kuy5ASmUq*<-ZOT@w8O1gCrJ&fd(em
zg<=#2?(oUAh=tedvhA5yNXSfxjQ5q549h%;lYta6>vZrT+#<vx{}!lm1Y+qGGoKi}
zSCfmWz0Rth`tS$@&@km1hGE+&NS5Bx_F}+Cs^0_g2BeigP9xMwbHh7!I5^>i$wFl4
zU%H*>hs9``%9&_SGmh2t$RFC1Dr{dkCji5k7z?blX9+9PJwx7550t7@EWsh@@v#v;
zrJ{73US~o~)2PY9DAvONaew&^KP2%cK;nBsL2v_LSVs4pvn*4_ieZi!A*15`xwYZ<
z(*3S}v$z@8TG!hKNl^Ryi-F7Stoi%HYvPWRW%4IQFenB!<F2f%v<Y3vcl>N#Tm>$f
z5$*>h6+8}U)O<TDpg!rVTZG#@u{Q1wbF9K@Pk%PEyS4CHIQDHYr-B<j<*<L6k07{X
z$MR_(t&<+5E<UKXbA~zIsZb30vz#ONN;~pKZgGa$O*5c%m2VSH&>4pWR=2B11kpF{
z<7<u8VBBqOK{+p7KUC<2Z1hd(c9Ls<ql!VQdZ!+0aoGckO^ROca7cg_x~hi_R;#;j
zl#BN~SRT>~9xgV!4fSuluy=)e>~Obn+*3s?eAk1IoUz#eQ+_gCXx216kba{aL}V)*
z%&12*f^I%q&{6;kw7+8oy#rjVc`POn9^p|velQCEsP}OdQU1SHGV~va2Enxq@*!jO
zq=vCN?Yte0h00F@cm95)KqE0u$(aosGn3m>idaow#+<;(MX<e)JoISs_r-lw0Fe!)
z)uSP7q(B=yiIHoUXt{75yE7;$5uR2x!__^@{O!C6ONJ>ep$wb^yZK0AvuUFCa50#o
zvVrL;q*y9}$7ZWJs%AB*FoPw6tXbtjmskq?v$G53JnNmRE#kPJKR90vNN=(}WMy?^
z3C20yyZN?6^Qf@ag*z_94xTw-bua3<H17Fhpn6j3ju2>LgKKr`rupTGZvsWGo)W_v
zm{}V4=o1WV-v{Og(~dz)_%`9>55Q8ZC{(jH6A-IZiimwImr<~t7p%f~|6*k57bF^#
zUo79LBqs<Za1o^-Bj|fLCL57Mz5Mj0p_LbHhlX*t|8TWwI`@21`i29EQ?v2~kFmg>
za)L8aYEOZs%)kcv=cpWlEGBzX$rz*UD?HXo@Cbeey62v=9|=@VfsH;1PcFWhASp91
zl|l2-3M4;h8qM(q(#A1Q{^uZ!NbEZ%V(nje4ki?u7%)98ZH`4mOqGF_FAx%I7Q5aL
z9fqfz-{Q>?<?#V<JjJ32>_4Hqgf~U3E$lR4j?HTshWc^pnjnL;%XZ_AiLc!J>Eu*~
zo^M%hj`NNVCHa((fIvrbW*ab7AWw7q?z%07s0R}YzY5+alQ$VA8FS)XL^s6>O`NHK
zhu6~j2f5psq2{JPc4Fkhc@SWC1Hp@4Z(~|jPWQtqe1`ZUL&r{<k?OYMJCxVW^HjMk
zn^U-3^osg!YilQ8bjjsXj%!^{#^1yA7eeq~)>|))5<Fqb3m=9m%Jq%QdNMqWyXi;R
z$+Y&hJ?v{vDiSGdSC4mQI=>AbLFnS5AVq;jdA<-uuZ6~#zEsxMD-PPdzi6<78s{>5
z1&(ee_ybX)G@Z7F(VRp#+2-5${@ft#Ca{zTAKYIz_zE6znSUR<Mff;HFK{tAd)A5Z
z#8+#%MF(^Fsw7sK*wwnfPdD$pLn{4Hy)c=@omUb)F#jEE$3%q;_Ja=cQzJv)VD<tp
zI|p~S-|u7ob_~I2Br7K4n_nH%%q)Cmqe#=KY3Lsoro9bbo7q=Tq9M7P56Or>V{Ha0
z@Q8~UI$ip)<OJJ@&*%qnZk;jYwcNapBXMWj5Z%uN<<@GNNki2iL6|8lB(0X5dkcgb
z5G;xt%0w#D|H%7wI@eE8W=`@3d$`&!;oH3LTCC@HYYj%H95CX~`I1JCnlP@$p5(gZ
ze<2vSJ<wQd1WCYxru&wcOl-|+Bfe}y4BQeX&!6~eKhla)+c|S-I$9&qRaOQbMi-LK
z+W6ACX@a2H2Re6pA6SmhY8t6)^Cd9ElGHHvs~s{D@%hIWIL8!O;q(OCJruE;X`Y3E
zo8)lO(wsUk$jTxvSvOU)4oJQoYZUo1GE$Iq-rOG^kr#mOnXR1eU*sz;S-884+jf1v
zt3V$JN};D5#h0Ztlknt5F!fyXIn+Y~>?%jSB~J=!k{oM?IkxO;jn2G@K6T0xt7NUT
zQNef`tSq+IbW<t?d_^S@1=R5<Pr(bmq|y&<PLo5`9~@$9CwZ@f<Fq1%nQanjq`<jF
zgN#%J(nn7eSYj+Qs9Np_7v^uR$*9hz`$Y7v!b*fNWe+n#-<4bFPZKd=M4O{DOZpBL
zaL0<wC2W25l~r9pwmgLm`&+W4%bh=%++Ccv;M<)s^zJdUBAq-dd~=amy_Lipl&_qj
zcPXBVZ@!&D!<D|VC;tO2N7cQ2b#$`#B`Lj$C)6<@&^`3&o1rH(Ns>|5oQ-8>M%pZ9
z_L`P@m|Py?8|z!f4@`0f__L)6-IQFXf&)-pV|kLZVz#+ehIVllSQF~=f|dxx>lVGp
zBO-_r{kG@3K9@P#*v>i!vmL!d7&gwve`)=&ohT%&+E>on5}Db~vys}*aTyg#H`F@A
zl$WEXJA&W@beCtgTch(_z8l?UmDeAaokE)k`1qRB-9#I|{+o}Mih^5$KFd#kF-^pr
zauN;`;gF8n3wb`L0uzcf3VCjxhP5ZEg@&DKB$$si@^zvT;GB#Crg?E1S6q8eyjEN*
z^XifNy3l>(1TYb`0UQ`-ji#pVz2Lme9^NGGF8qh-`|SdZP*ZZUgoIB+g43q^p0*=N
zIzQ|pRqPLET!xP=re|T2ybUy?^^hX0s!2CvP^5<4`tsWUNjM#*3iTtUcd6NyUW~P$
zlB=A%6Y#^zoQBzssQ;;v_BMKodIpWuzN>ulq)Yz7<WP%^op1?@Q84HWY|gi+R6;#Q
z#_Zn4-AD^yFzA1G>`rc6OZUytPLHt<8?u@9%|1WIPpv77P-Q+o=_SxJAI70#!ibSY
z(8iA(UiyH(XrOe6-P)18tGy}Kam*Ly*!``5QuwvibNSUX1vjplFbCX4JtBusDL(L&
zg|B%DLhD(3&Q;1=n)L{RsK`pQUT+CKo_|wY(S1mA>2v_6TofCYc_V@Uc!Co4AKA<i
zMok00UBX8TB|h22LGSrl7W6`$GM^6`2A>1;pF6J>O4j~3zQeAaXwF6JFL0Z2*}XT&
zQD6(Jh<<2vTnluxuM*FzHoz6)(5<x+Mi8C}ze$_4;0j|HB_`GY8!9ZY`QV_BA$^&X
znEnC}ubSq2y{QGjkN#*<pmJpA{2tYCuyJ~VGKd<xpTQUD9wf1j5}@HF;vFnfAR}D5
zV|5Ta3OY6aXo{HxSNg+77zGZ3kav7%e>3X59fMkciXqPHC+G>W_3k_f;SbmgsG6&q
zEXBD0=5vfcFUzUZHv^X+c;?{7`}Kkp+A!e!y3d&(p@Fg$fI0S!+j5c92_?Z#m)o_t
zpN3H8dK4HsyGY}mz2XF|0k5q)3zvpf!K}n{v39?ZN0|TkiP=MvuR|r+qYHUqLYIlW
zXu%_rN-Y_*_BPC4f-=h}t@Z?G<tHNNWQN6D^4^9mb|)s*z73vA6q2RS0=93+mAUy(
z1)apJlQKJ6<n4id+y5&$B~K&WX2j36?Q46R`HX(#5PJIjhM3SrZq4(PrC#=VolU@N
z-xfZ?JUHA<IM#TC=!COvzRBB8Nof=W!rQ}<m!|mcL109bQ)kouZ@fO$<n2iAo_fda
z&fODTy<9z>Cq-x`cS0V@%0h!mjOETBKg$9p&wu=I(VOjVn^PqA4US#jW$b;jt(`lu
zc}KZFm$>BV(A1ahb2rxf4&5!PFy^<OtRC-1fxUVkPgNJl=x!d$ixtY1gWWo<@fARX
zpfch1{<HEmx6a_c*@l;R=#%mT>pPIyqmhD6F$tf1+vf*EpLHNj-Qyq&b7Tw(`N8Dg
z6tm~i&$e1K^?VCsSJF4ScGY0a_ud1PPAl<sUPC{A%4OHPz_Fs?S=sI%WAco|8;*I`
zO{Tr>odQNi*`$DVqrYf=3R5h$s0sfpNpxl-dmTTH_U5VVxM?chDIF!CBv!+~N)fPA
zJLy**6SWcqE|J(x7Sm6tL4Nn+i~_yjkXjaDVKIXb6~<yB#$iZv3!~TX+Ko)pd^=L=
z^e(D>q}<eLWxQG~Yhjd~%Zdk~t@(YB=amkjWK86B`Z_zrQQHnKa#eW_(<}tdaW;3m
z++gAyqLqC`QfW@-%xMY%)27&rFK|;a##F{#te~E{c{-^1efv^1SJ=lnlKqp;^V0mu
zW|@b~i+?_$X5A61s^ij*m`_5Qdqw)?B{lL^riAK?4BVUGHf<1R>M^$@u{<F}#Oy=l
zp6|HWR)%+~&ib!ELf`Wfp2chdqM^2V^D7@(m7H#6EvvwSLS9e*L`0K=WS*6;56gSN
zrSx`@;uWe2_IPnaFWR`3`TQjgb(XMvU*<1mY<taw?&bj)(k9P4?{-B2D%m`;&DTA9
zn9~1hbjYb)FHT+xli52^I8^ZQ`PF?(Sq;b?>da@FvBI%73jWf<Ai5_MHa2@Nnadh|
ztw&%;QRZ!U7THnNB<kHALXDw2CwG?@ZJCB{5L*NHn4-d@uo-Xh>Cqo&m{Ac|z_}H)
zn|byaj;&dwcB#X}B@8G}-9%_FDhdRGBo}W)(Hb9guD5<-Kcc+i4~|0Far>|CdC4Gb
z55(+Qw`DpO(Mhhj1w-XZj1it^8*CBf=gCXCshGKh<RGEc>UKj=<y(L=eIxyP(uY~+
z5dJ(wg(Ns@f~53W`be!-r+>r*n1S5j%Ij48g(p_$a&o)rij#q-S`-P`RJwTA*wt9f
z9_C*!ClI=RVV$i!OXsx4Eqh-UBz1{EpI-IAQ#0@O+E|A3Ohs<WM}i}hYnoI&Xkt5s
z?rFF<(<zrnqh-*bfB21!4eHd@_>*SrXY!ywfxo0m^XKV&9D#~#(P%6D_0TgL^_KM+
z;6M5K;G#Szz4aAb=>!<enSX{sItkL&>rpsdB)Gb%<Fy`%gz4&;6};sI<X&q*l1<hF
zf?j4NBjUxTCR`!oLxG+C;bkPER4NxWKYtg~>U6kUxhas?E}8Y(yqx?l5&_fIPf&Ov
zO51D^f8A86JZOwGD^LC=Qj(Oq72zCw+i8%iha5cSKnuFd96f2`dx15LlWCgB^|2;B
z2Z5~>3~X%r9Vn=*!8_53ah*3cRV3ov0O7Mzl1>e_NzYvet`#EQDk%5K)2u!D;c*sO
z%!j1cux0O~>7hq@x|G2f5-NOXn_l9s0s}b|E^Q*^<g|q?N)MenK;sz5t3InQ{OXe=
zzMN8F$CvR!logG93LxR0xMmHh#A5LkasKQI$9fHZ{n0wfDn~m-7{2)iP>_n?{AUP?
z*X0I9Ma{bsao%jH?)W8bt;tMP)(*;)OPgn+pgK!zx3`6@(1)?e7;7sC=hD%hB$xh@
zx3@lqa!aW|W0J$W-EzAHT8K!RflfSLR(6FDg{wc<$5-i#ab$T;do|`|RHVYhmCPy^
zKK>pU9gP^cYiSeL%`Z>DS=RWw&32y?idIM=>&m!+lSOT<&z32~X9q;jRf=3Z6Cy7~
zc$URr<Hr}#gz3y74iWKzO@t4+f3sOgG>0xclz8ljd+#(ShP)}FJY`w^cQv1Q@Wq1z
zAyapZo2XB`h613RUWGSrYz?pARfahVE$J8W1*#t_IQ}$FjZu?$D<xGd##GJQ^Y^P1
zxHd2WGD^_V)hAM#SnIOIhppvq*uzk<*b{DgfsxhmMjbugOue<B)6o^Gn$qkX^1=ph
zoobsf&X3?3w66oSSw5B4xPuLvX~STScjVfQX~3}Tr=eRs#ZYRzoK<tHa^Y2jtJ41T
zTP{~&ugwR1L^lwC1<d@@pY{@=rMz$hvL>coJaQh7vY@5~N?k&EsA!((--Gfk89RBN
zd*)<UJ)3d3Dvz_2_qc<My*V2PUD!l+71h5-WrZi-;5xzG!RgEXuyJ=c1xq7~6s+w~
z0{R%St6ipEL12qe$0wqjK{!`fs)MOBE}^dWr>zPUF%E8lO)k9C#J=fA+T$|MXL!2h
zSBRx_D&Kn=8dsbwH&g*9aSOb4UN6x(XCLtMSp|ftm*qD&jn)<QK<Lnn>}k6`f0XSA
zSnkQr+U*@-HiUu<4L;n*{ELB7q!i>x^&OuXny~$r%BBeVv#}zNCoKUkdaYQ_@{r!!
zOH`UaGx=!q5CZ!p2}NSJ*$Th<2Q}TQfnSYI>(!3UPLJIpXzQ!%AHB&LomrWju}z#E
z<B`f5q05~7LGk@TP;|q81}g@x5EtxZEG@uvHIU!Rnk#eu5KE8}E6K53UhI%#Yi+|i
z8Rwc;ZpmermW^qQnepKqV$|?U?4tf3*XAA^-dFb0N3(J8;>&TrgKKW6tkK`tU$(dZ
zph!7yw_Bbbr5@b$=w%N)FQsAnff-7{SjqyNV_{lRo5I4Bj6Kf${0Jjc)^*XMx5y+=
z+5=c7j85o{J`ju)Z4A9EcPpF;z2!myMHw|nRey{L51HgFcDad|akxb1Rwl2+Ceyc^
zX$kB?amk+!&I+1PeEp-wc^2DEdV*|x5j!w(-r|=s`*W2gY*rmPGz;xL&q0aJ`UhCi
zI30^7i?7tXWS{0S4NUhV37Tc!Ji?yktIUj+#U#}!BePz?Boce|9vE3#&TmhDoU6=)
z^LH0EmWd-ASRFmA!5)pH+W5MNip>%R>EkEJz9&tO^XD^B8DAS*Mv7Ql@$0AbBu$$@
z)p;=?<Toyj<bI?@UCPi)fj@@|DTP9XPc3ejC;NFiO{dj<sB}m_=^xz2A2-h6voPmK
zqpupjH=iP%KTx^P1p?3BinXdEU(4rNE{SntC~V|vGUm57Xa9n62ck&fij$iGtoJoB
zzNhY_SsVHU@&-waMnLW9CoG&n5+(8E8fj)&-q)JhWN=IY5pR8pih_D%cpYzlHB5pb
zEiOC9XwNhdU8T}CyL@h^&PzUYJ9fQ%!~bQN;s?vIi2C>`k<q8uO&FYV3es7;)L*au
z6wq51b{IN&e)c~jBlj`5b;hbX7WD}M6XzZuyhn;Vg=sBtxP6RRs{YUg^!A4RIMiFW
zo7hUJW~Rtc(LiPDAotKlb8hM0P@L|I1M6Vs_W%y=lKQyXq%>#<lW<6jt0chz(y%L$
zNA>8qYrGR9R9(yY?e+4Vq2vA@1clCaomm~GbAn~#xTma)kSPA@>z2(Au7}as!{_{@
zlhkZgj>7115dJ8MN;o@Q4Y>MOa-Mae`<(}7X~?<Pe7!Zk7^5w|)mzTX#cEWhSAym9
zF*0WP<PX&D#GeAj-$)!RXIBmMVXi!Za`QQ0Ej<VIPil8z+zJS{j$L{hM5^s^YkcUg
z($OatqEsfJgLU;WPTy>y=}_YpwT6o33=SM|r#MN**<u3M)H5~(JL?nrgLXaUEXGdt
zh2p)6>TfT2u6In>Xnn1g+B?SYDRhm8KSnfTe4b>1w%qt8nPIua=d>4gu+y4GAUuWr
zYz4V{3rb-RJ3{x9D@ne2Y1*N&$~z(Jj@+*&*1KBS9%Y_;$uVqn<BzQTtLXSmEt+M2
zAk)?{<5>2gY<&T>#&Eh(>pM8IC95N(&c`v;YFo!i<S|d-X!AbrZgNfa%*JPvNO5LT
z`0V?X<FRtYRd!#gv_UrDS28!McQZUE&m3H8yWT>_MhRRXE7nNcg5h~zM*<IHJ7716
z9!QS}F}W*Uk;#6xBF2pYdr|#fGW|w%F@L;-Gf^~hikm8Dc+Z{dFxn_Wtw#*2xgv^%
z3;U6F=Poq(YjzuwEzm!-P!YZC=c4`i6y;_<c5BaVM4n*vCEIsXM|EVC-J>!Kt_U<b
z)3SQ^O*p*jV8i}7slRFcRwLYg!Vbr-)OqU?S1k?I!zIXu71239u*~Izwqx`(ghh8r
zGgG8o2J`vfUT)594UKyGt5fqy6KSn*{(K?1g%OU`x|jpizLqp#k)r8}nB!JTVk=y-
zf0lJ$l`ZoasyR*I_F%6XvKQb(CH`8<dohW((bio`<#GZjE?L>tR8tdKsWp?hj-OfE
zLJ95`1B_Rxw^|aaWLovIrIv_Y|KlgaWkIzP9+F1t=T}GbohKp@Gy}vBRP%Tlql;3?
z3kN~<`C6VSjt==5wnD~4y8k^dl|?>hbl8%S>MtUri|jTL!^x=`W|>19-%t{VzVFi)
zjH@lmwh0#0Nvu1GB+dvE^umP8KN7-bWSlp>XxgbiP<60k23g-Tbd7ws+><lqrTMtQ
z8CKy8=5>3W;%3rp`_{N?*`T!K#v<e0Zth9`)>}Mb3-$6t(kbAD8yia~i4pz-VfgX0
zsQf)8Idvx*jTdxLpk)-g=#uGbRKczn<%bJljx9Y})cJa5FejGs^~cevsBbFpP2p@f
zyUyQP0{;vMR3BOwNntOCU^RPiH{3J}cwf@3_BvJjV5*)WB0I&izgWeysN#xQC2y)R
zZwj-8H=U@7uU=ngo|St2{geeM<p2m*3L7HET3|u7Je+$$fmv>vSyGwjb_$~C+c9a>
zB)pq%iYw@(q1Gi&YXCQzWp0ktnfYgg>qiTb0~`E1tebvSE>0=w8QBXqCam7$CQFuM
zy1&kR-r!s<WH8{aO&ICzAFb=5xe6v2iTbUMn_K0|jrmsyXBdq1L7|HoMjI=`<)>D<
z<1GEGQ8NjZZT(dZl=TU$KgNz&d^Mz|lpjY*eG`jzWWK7tnxF*Y`8=JucQk$G6{@8S
z-8$<6OYt{{jGh6~mtqpA2Cu6bT6+cKMt@MumKM^7dqyZ(!TCjD?e{3*U$pLMZJK%K
zGkv7?v^D<2ionNn;*I)Oy#mKnxKy!QFr;;ZAysTU_MWXO(|z-mAF+RK)PB#;goIrm
zlWN%u)UNfgkAG+$ppIWUs<XSmoA&*9b7C8#{xEP%Kr%BU5|XFAD1X&1t{AgIwzvs)
zC&DdeL|F>c%1mEmL1s!KrNCOXkIy`6fA22gtc>gm4)?v7i{~|O5>#@Q;)@cC6af8v
z9jLaiSIQ5RV&By?dZB_4463Id^Ug%(?(ncF-EJ{9AFG~-&%m_w>a31<y}zEG<aQVk
zH-E|D`Boj|rHQbWkW7JzYc93;1<Vx$#v1v}^GFk>A8N>%7s?FpOnZeyu$B5~^pRRJ
z<g?rZDvNWjRP%Le=JUU|sD^(Z-b=6kUjQ}D(0pdz6aWaq#v>vI(5jVbLpEc`JLP(U
zdy@|2J>?ypq?*+yIxmJc@=BLm6W{?-S-uTpPPKKySTibKW;I<B;Uj)vszHZ8dyN$M
zh+RT`*c-?wY=Awq=gsRhy&~t&_!TWo(=2O4$5|?xWmeVYM9n^6jN!}J4C-4H{FWPD
z+)TVm!fNLE%x)76Sn>Cl%T4$TP;UZ*;#^m#Nmj*497Nnu8#c>gpe>}Df@hQ!89euv
zW4hG4q0^pTbV|+PJC^`ASidE)cLa5X8e$?#kE~a?z%oFde~#)$EvJDi?6<W){#}p!
z!~;7zZuQZ%`nf7EdkpS$_BZ`7iJhifOqU{*m|0p`dNbOLG`Z4I`_}3|V$5}dk5s2r
z)!||DgR37&=>tLT15|#8gt)BzSB09eqYK)D8rh%I7@Tb`bH@p@rLG%41u}0jJ#8)5
zF9!q_G$`f=6mFO`@y~4{Oo6|}%g~9}Z633Zzni~+1Wz=_tQ$A#y3XJ8=Fn+k7v%w4
zmDMkC*1P4#Xm&{<UCWiwSQENohl1@Ok0W#K1iaR()Bc!8Wv19~=JCh#`I*KiG!852
z>`c%%k&>+b0*3mYi>e-l@e;X;CC8n=Hpww($8lmKZKzxCs{g50GiwyTsm!ck3^Iza
z8v#*Yj0F*8{7i};aGQsY?wW2AC4f?WRJ-s>jqJ)*3vgK4g&Oy%9<l<+yHvB}>OZ*I
z{rZY7TIXL+9W!t2Ti4VjD1SQD%h~D~F*?N9Au8d2&ZNeJwIIfO9Tt@uFGfh9UaK^w
z7PYMH)+fvT0Y2~ss_?FqSb@uXPdTQ*`OQjUXXeNexhIykUnvRtTXhNDO>^c(b7nIc
z>PqNthGpyQc+fGR9cxbm#@FW$Yg}Eoj7kZhWgqcH*I&2%_Rt0R0H5uk0;JJ3VVN(1
zn#qV!M1ltT*402_<3Y!2(+*#eo^$5MGW%vXNL{BBnYU}C_Wg=W|AFEdmK1(a19fQK
zgBPz<GeLngcbMjvpaT9>GWFfBmW<G=+6oN+?xZOv4`Z6#tBb9CD|ziE9toYEL3FIC
z<Gb504Nn8g_BEY+!d<Da_uLNUhx88M<3qHc_3?($^?v{k<MIQ=lssb|nF*OmHjNy!
z67kbQnNphwtpvH>hhA2_(=;HGJo@IoPWO78$c>>sK`_koFI%F=equ>BeNhxJQ*d23
z%b^WRWhHSuZYq>ZCrWA-_mxOL5)-5=y9Y)qR3)wR2f1~R-+l4xq@$0s+M}45$C0<3
z_9P0uY;|^v@g<-21=OS?e>vz;N-G;dNtSs$Svvd|)ML6G=cP?~SyH@ng2s*LvEt!1
zM8OlB>-!+Lz6aSdpEL~wsqSWTcR*QcL#I9Sae_i-YdYAC)}4Gag7|NBr?lD7c42X*
z*Rx8f%bXIv#!1|4YklkD6{+;itz#&jBY#;VF?*KZR?g_Yc;uh!OYz{3txrHkjQ+ej
zW~@mai#KbnB(7Fdgbz#7kuKyFPkF<Sj5ag9I*gAd@kULR@HLMm&9)XYB2KK%jm47R
z(uOx*CA}Q>9F`fYPndtFnJ^_hZ$IwW_N*@jyAk^?NUAX9<OEP+Hnu~u12ef-cl~jj
z`Xu|*0;X4ru?VC(C3DT=Y(EDpwb);2jUOFUQKR4SGBW%mS#YIQ>V3zF?DM<H5;rS6
z_pW>$kc?Klat?&e)gMRATAN}PqpbB0h4Y$jOG-eoe)7ifeSwWtzLWxga7_3vh&o@?
zgV87WCLn%FP~Owe;PHJBc*p<M%VDtmd|#is-8}Mc=Xa!_SHcOf{%+sO|74d`mHYd)
z;GvJ47(}zNXX)n@QZB9{$3>D*Ig?k_M%6ZP7wJ@{*0;qrda0N8lTPIwPUKbK$5xBq
z#c8#N$^1SaM7J&8vwSNVqs|Q9QQ6;r8|=K*%_5IE_CSh*9W`)|iVJ^<yatD%axxwr
z4ahR~+}|_gOW^JMU3pIfCE%gsL_I|_m(?B>_<HZFb^#mQYzbveQ1H+s$1^ML<-{7r
z?PTz_*2wt!uw3%<Do!})v<0)U!j=g-Elj1ai3FUp;SaQpS-f?kvRlk}et2g9E_1Ft
zqwj(rA{3$ZH7dYe40}HTCE0bFLn6GKyubg?#K$L=B5xth3={04MG2&AywA_WpAJEP
zocXZU7LWmAmhn(4%HVnRU{Hg&{lsGPSJzVQD=wM(%;=P>J9hln!EK``LQ;SB6(n;|
zJHoj$NlRcU7oN*!lk`nZ?(c=7yWbC=9)2YY&58PG-&*MOvn_@N*&fx<p&I5{@(0F`
z%X)1l;h%aQ<61W77Y}%kb8*R=;mt|tHVi_iT)Nl-V&+JF9(`j8osTo`gQMODkp6q5
z^>Aa1`wj2iUt<A*IA2D_ib-O;=}IUps6lv2HZYjaf<G`k9G=H5&z5KAV3*1z-=<-<
z&7-EX&KAudITUX$9$)vBVhBuY=~~v)7|V3Z8$d>G79LW~>7y?6|Gg$1Z12On&Vj@E
zH2PX@rsV^oK==a=q-HXk*mbHg&YVv?jH&J7l`62Il@KpxWaHN;^V#raBARI@ZRaX%
zSzBu)!<(O%On=?_YhpqGDayM2AYJ?Lw;3=o6DfYZGax|JVv5oizsjMB{>wx3J_5MQ
zn_ww<iM_tLMCP;D+Ax<`)a9tpeATxDF7}0Cq?e1ENo;Em!Qk1*dy}Z20!Y^mH=U2F
zbUIu`p^|f8HqHsfl}zwiqT~Fl<#vDY=?ZAGQJm*I<D;&*Jy9B9VKy``-zG4?vD#kA
zn@4o@v6YCV;YqJXEC|hcdq|q=K?%F(k4~619CqlbJWw){2RaNfa`{-_J41^c3Q5QI
zkKFHW>S{XcZvQmeQ_V)MgsacIe7Bc9K)(N?6ixFMH}$b+Cv+D0#h+|ZgRlvT=x3KF
zVIB6=h+?N75V<~n&~X#Q2RA-a(=0PT)t#!Jj+wAxoB^7X{`lOb>UcjRy*w(R%0!xJ
z&(U?jI8wwLq9WByxVn^tv>2j`Go5QIZy&R>rfJuR6$xsFCaX<`I0%0w)@TK;VVwtM
z_C<|$A8yBBp7RF-|1ZTWciBRgUi{zPBQH`J9C9TdbT-Sht<}!Gbs>N1rwwYWAZ8i&
zyp}(h-zAy<ifUPmh*01dkt^YM38Fri`F*pp>VDEd+cmzuV<Lxp$4>zfnc$==avDUs
z8a|R{nZggmsR|z}@f&x<iiG7QThesmH8RYs)kWjyZ}w!S(i@yJde%=VQr60Uk!PcE
z1Q*0BPaf`wuA6HK!+Av3|1VQt9uM{Q|33y}8-wg?#+E(%R^wtKvLqxLb%z;~7?P#B
zO?8cBMwT&zh+Gq8FEe(fYu}ZGW{?l1t~A<iO?A8Xet+jp-N!F~Hs^h|*Lm%)=S$v?
zF3^(!)*G|A435byzml75;Kyz2FIOp3w+wK+3o`Z%<qx^L+UJ;3OSol<V&X$eFB3wM
zh$orxSFov_CR*I`qu)(ssw%!JLm5ZIEAuRPI!y3M0)7G?X*?LFh$1cz?G!1ow6k-o
z!O~P+$Xw?6j5!cEKsG%WRm8$2*e>{MYRcyl4vRh!SGb^dA^wPk`QY*tWMYDXXUW$Q
zug{uDmmwte0$^53(&~)@n}k{87c7aMEH2?UA$iLd<(~{K`&tMtuO8n+JpE=W-gHHZ
zZP6cMusLdmLUp@o9P%e>9tMZ$`5nB;^##eaBi_Q2owAe+nS`E(ya_xuU+9U6h^N4K
zbD;O3wfe}oq!_HO*`hxsa*5}eKvubUIjt1_twX!=b*|+=2D;BPVJG+cwgQ_^rq5eO
z-p$TbDMNah!I0TP_x~=oJT$uUx(KlYr*vjiWz~>C3Xq}RX|{22OqtZM<fzm-C{|js
z{nM(nAKp!nlm!i(<Ex&(j*1V`IP_10)eoiVobi?ys?$|j;&&re7&3LhdFgP8Pl8KB
zG5o_H<ka`)h9@g`rf1w3;7%WEE|bLLUFPsrk-A2fDFdG~$NgMAY+@K9<n?$HO(#)N
z(VFkBciE!*>}<0E72?SKm}@D>%R;k{Z;KoyMCz!$U|p8Ox%%j{4a_Ax5EQs<l);>O
zY9%w0-<-v$B&6RqP7qa5y}j3g5N<iZkgQ@^m>>PFIQDsAUt3OdmTX?)KYw_hf-D$T
zLMZX5dLEtHzXYw8C!!oLTUzuQ#iAv$IW9y6>9PQE)APcW2XdXv*Az5eZ%6C0A4U+J
zQUb-L`@ZY9=M4LS+susN_5Pp2*TB&qQwLAe^+&UrH;adstc%cnB9loD#u-XuS#~&m
z#E83F{{q+CW<cU->g*@Av-%dNr_($6XIAZYG0p>g(f0!<5y0`0@CnMV^`wd*{u&0s
zC<~$!&pT`ub|gr;%vPzA_Oe=BV7l`6QGW#=MT`DyVxL6CnAcJLgyyi;!zUW1_2Uk(
zGA6Ra?es=6<XHp$7n1fmJ7w(NR!0xHR`|Pt;1Ytca_N<MG|Z$4-TwwYZJL#P8m_1{
zw6u3eUWNjKS8|Bl8*x}`*hoWp2O&Rgjwx|yj3}4%?hW@3Hrh3?M%r>TJH{E9ADcRo
z3SA+m0UT=N0^9zLM+$stj=Wl=Q<<G3qC`<XBX#}DkZ98Sg>x4!BsrJ&XXEkr(yq#5
zGt?zT&bJEBt`X(V5A~J-kKHS;$5iTo^S0Xt6Y{_5zCuyJ&I{$P%KQ#0UnJV89QW`i
zvPjQ2!eT$k`WmSm;`=+VET(264A-MRT4(HRTq9xhM+i$Jm|UqYR=-RhN<<Q~4ZQM+
zkm#E3Anu>l=W4mG@)YF(+~?CA3mKitWAQ12T`NJ#^o2xGv+T?4p*V31y0C)9`#&>w
z`mGVsV!Eyl2E(l7el(Di4i0rc9J%(Y3v{?bQ;GOS-$iDEH%wKLmPVAGReL2o!Iw>4
z8GhW{!tLxX3AH!EX3DM%<ybrHf81rdOHy_85#w**khlCN`$o%_QNF1Y>~Cf{(=}*}
zgCnQr190G5LWyyjYAaEvBOl5HuJ+!o?az+55gom6$=?EikXcMV^SD0duaR6gIvtw9
zmDl2?WYM?Un(-?d<IGesqiy6UDSqd_m)yZN^Yc)sSa|spbya&#asIh?$7aL#H){`h
zRNJk%bnidyjeKBC*A8-UOuEb7uzZMj+jOWZ-wrs;<qlrk`P7>b{u{CHUKVhI2)o>x
zHj<9FRIC_hSxz3?z~5}cKd*jS>pMpi<#|if^%6vo=8agUU=rK2p{553`%N9;FlUe@
zZEDavy~=Ti3F{O{m$`J?_M`iDV2UiopH&`P@6U@s54^b%C+mnavO+eED$u=iEqVRq
z0j=dKjlC=~lydU|c7MbBI!aQ{A7*8!fC-MHM#o$g6Q&qnQhj$`CY))s>2P{}P$6gY
zs!G64|0s)RBigRF^$4SciW!xEKkjW@`w4nby9(jo>fnr{Y5THV5boMf1HvX;irPM5
z)5dQ(oSemgl_Y1k(sj|Bj-um;MCqa~c#cfiye3Va`2OK}tzdlnmWS)4oTu|^7pg(^
zYVl7x%|iJh<bbQzwfdy{DIZj%FOP7L3LT+j@wGzvWO4IThC4{=#*XlGg9K~z2V~+x
zJEmu6*bgW0Fa8&6+*8UaRx-L4LQL%wQdh0wQ0P0A1;J`V6XDH)Pu(utUe&9-J1grm
z5)J=_HqLMjKPK*|YPn3cYa9`%e|z?L8|mhtiB#))vwZeR(tQ|`DwJWAXrbM8r*e(C
zrxu$gDMM62$5p0ya1xG+JjJh&_89DbzRIDF1?_0b&(8xc+t_`3xJhsSv)J)><%$p%
zlmnocaI{rC;E9dsET&q5!}2yO&gq=d8pYSJsUt2^QESD@1YyZR;oaxm`p1a!K~DMQ
zjvMmPKq-6NQ_Py*J}g-SC$3HKg)>HNz>g=C;n=x~qy!_$mD=ma`0Y5Y>Ar)JeZy*t
zVF|qWUIoPQ0Rq0@0P23aQxk(Cff8ui&*om-N{%?5bzKX&(2H=7xH&xLLWpz~!?Jei
z^z$Ya1W3!HN$oKVOgbt;?WglDE+1^f@8_K7XmMT7Xzp41j)Jw@-H$<v1q67*n$+hR
z|Ckr0{TTQqUy4%<cAl?z{7uB{itM1>g@Fj6?sv8Wat^*}AexN2{_(%*OE&-%imF1+
z13P0x-J&E?B|r*uJ+)#+WVxn08=uii6P5l=C03}oM{SkO9lbz_90F%bu^Fa31V-_T
z^}32GP>_)C#h<rR65ZjTvs&?>PYNH|T`?fh?8a5|ryrF54P%bTnA9j3y@2<<I)YuC
z`JB`CrnN$G7<fhVy&r|0^;`h2P>lUN+~v-ww);mgz1Cn)4Mp3$Pb%U|#0BJ+0Yci@
z5$}??1aEre>O_Qia?j3?$eNz>CEQAg{3jj-?x}{(AdUOJxrF5%O*mfD(!9S7Yekto
zmYNsAj5vMOIXq3OxYJR;<cqZ?pSWk4euZiD=4KE=K}Kv7>Mwdka|YT6c9BC~SSV@>
zJ^wHXPv_Loh=THVNu0X&;4_u5k0N2MXVwZw@cm@q->V@fh*BEns3PipxihCd{(<n6
zgdzisJ*L51rkn{g;tUkU9iVqxJ?6Q-FYT$pWK>LwUthVF$BnpMZOeDbNnE&aF1hCb
z`~XHpb|{`&YfF8<!wiDY<zTi>L?-SrP5Scj$@-<sX44Y~BdWeU;)nAM+t)h}T^0UP
zao%=pZ2H-5VEwt2`5An2*b$OO5>@I))M|-{m>mA5tp>{{p3iTENv<#|wRu5;;@1iK
zILB12;X&T=pjLl2p=5nMzH%8se(04%1vZz+@rVXO#cMzw2VGup$pgmFr|^m~(6)3I
z3VG0%@?1Je<McMx{364u|9?*J2Nz@_wE9P<)!<=q>W0bsGl+<fbmAx_S)#d+nMqPT
zj-X>x-!q2uQ;yV;Q@GAfT5y-b{|(Q>Oj29L&yZ^c&ARca#adq+R)#-;l9vE$mvJ%1
zS(z2{w6Inrijjare+ah^a&}s1ZKgayS6kh?x>Icue*gX`LJTEBm8no|OOafu>BEx7
z_p`g3o8~fuKlhc@^BQ<(+jOkqtD^l5Bl|RH^8;AgML+KdJwnB&9f!3xJV~mg1H*rc
zIF-l(rR4lK^$~2z4iS_?Vhl{N59`s$^8}r$F2wh~>XaSNyMVB@-p~1?O_#gkYDuO&
z!0zv{?02eN>yXK-MsL0b={6r~Ki{T>7ZYjrB@^$idpNXF)WpS#5TWfb$yIz$Y*+Cu
ziW+kGnOmXO-*&sK_cxzt(_NNbkHVo_6md9;q@!7u$OvX#ub$GR1Mjm9+#!fI{uLkp
z(k^SjbP<L)z^bfvaO@7dMNx;ZE!`3n8oBb<Pb+9m9q;R@tLVQz@O+<1EGbT5B&DBh
zx3{xB2W2*gJZP=Z%}Yu3thJizgb@`~-LatO&Vl{x=D6^QiI@nfiar_A9sEOJk{==3
z4IPa1n&zLzrCM?|oH5O-?>`L{SlETuF)NBt_<yd58)oIiYcHe->-0uFRZlcE6__z}
zE3L0ewX)nF95@&*6Ybu7M8qcIAwK-tk}Q2Vl}uGud_?6;`3%{z;S_&aoDr$lMOcS9
z?WAGwGIp{O)M}c`$3zr58ewWFftb{J7osUeT<uhc@yN(v$ses))~BHv3u}}9NnEI+
z4%a1hy$--*Au|SYaIPKJ{UGg1&~Df@YATQw+@ctd?6I&m#AHf)wg)F1Rq!;J1_#-&
zM_8xaFr$qs@y%TJrlLnLUKs6aXBs>CuIiM7ilAM)Zq#fOw@}6NEXMyK8`f^&|M>Z3
znaKV6#e3xG*q(}=JB#*r7g(}Hn*$BUM1?^qL>*byBxyw$ZN)ou`<9B;h81a<6h^@*
zgb0Euwv=G7jY0`hxrz}cM=#r~sJz(coR7f+y?V^+8|t!wB39S^58XN0uVhv%+ySh}
zU1a4j1sm1Bq(eJO(=kn%rW9jLUTo;5zrfr;YZvlH4d+W0@6gx@t(^*BH8Ywr;{diK
zldN5QH1cT4;QVV@IdY@La<dS#g4}2|**xgKhTimyoQR2kX$-z}t>+5mFvXC5VFbb4
z-&Wd%)l!n^%IxHzb6Las#j3}v-6}rG8j)+2Pl0|}X0+3f-^_dvzUnAW2~g<TG)Yw4
zT8u6@9Ky<DQA$YcxTq4L;t!d;+ooxRkTw0HQj(I}M0mOs&S>{y4ot~C<#gt|VC?Bk
zM<k|BTw73Fo`G_?Lwp#W7a7}E`-`XGz+xdV01`Fd4gsSr%(51nv16PUr(pRrQ6yk|
zfC2vRy)MW}Gfl5jPUUFGrZMSl+G!{(`-t}b78&prYSs+zO(`zUT>GBG=jnAyL=gRG
z4&LEb0KUYiu!(8OUFqFnf_!u@33RCrmGG&ZNYFrrcd!^IA7D#ZqdR!?wj-R%yMC0H
z!Ge%AwoG23<--f+gDd--o*r{O?I3Gb*jz0h=}lDO$4`fY<g&#$8<=Uf>dB%(IMU!_
zyaB^6;)KqV=3Q-AZlytA&uUQ*xLy$>%jFN6GGy|qg4TvtUv-0Fc!;hEPMeSxuNSOZ
z727!t<78WnT0EETLG^3DKo|)80hz!tbrnPKP1iR_Hop;M24t1|aZfos&6E8$tW#NJ
zTqXGE1c1d#(F;asitkg82f9;!nVQvvt5jLyJsInwk}_@=pMu}twjYE87l5RC!f7e!
z%PV3E-h!oA#5ttabQh%b-!kw2Fkp%U{J%w41$;(Zh{;n|Esd<~E6nbxa~7kHPx|u1
z1knNnC6J=nt|xGu@3(u_uOzZ0`#L=BkQ+#xcsAv28d)*mNB6((?BK88awIg`cPs^&
zp2MA-&>3Lbx9zgvnOoYk3A_gG<Ati@r${w*BC$iP>GuSU&&aa?+F{j>(|%AXI;ure
zsqQ>iaH~9a4veo#3^dI~xj&5dS*<uexRkX#TrsEir}h5Y%Ei;+uHuw9Y|}c(YNXTs
zH#Z5qy+;)?$0yso=a;3^6hSA#NJT5~#>E9nQ3!qO9gd2a+@89&b<!!9jK$NWy^`{T
zfr{bxPjI2QU0G~)mC1<vz26sG4~WEpp4aZ7#E{rgB0>)!zy}HJ1hoQ#cJs+RmyG2J
zBU4E!6i#ELUGIY;78KxA826^@n&7jJcOc(W)#qWRHySx625X12%~Y=B2Xe10++^!=
z8?0I_-@iLE{$O9u8HEwdHTLr0?F^Y@vnxYtuEy?UIWqocLwwS38o&((bK{H+R=cFY
zFcyCv^jxXp^7uhB6|8-jqVmhg3#No&5PAQpq!id-?>%HOp~s!fK8Gay9+x!C1Vy;e
z0&W|rUo=u+?_y(ZC<@@#)G^sMH7r!$qKV@U$(tw-<{z9{Lx5*lVZ^vXlYc>$JLMmC
zGtTnS$II`hS8)J=!#y<6@3qF|p1J^|h=URI7F<MLbROZ%xEgO=0UKu`10n`zNQ9ZD
z*q=D(s#PpxOd7l}8%PDSCz;50&?x;7);KvQrNBUN)3bW`VFW2kU`Pp!DW3-ixOm!C
zp<i{NVo<`U>B`_lZ^kdUl`x&<6j!&WCu~+`L3`D4<MC^!FM#+>U7aF(7y2ywNSj@^
z+Wb%ceeKV3&eX}|sj3KGixpFLWg$Xy8r1@uXqJ-+$~Zr@=T{O_qzqX_?!zku!m+(M
zv7^WML4sRPu%Q+nOaAWum&s?lsh5xP_6DivzQ8{T;E5&!tP4XG@}<YgF!)3ia=bDH
ztIKX-ws2b(%D4qQTxetsXGA~bLXzi*4F^P``>z7r%xA0Aq!8)z6zvZ!O75&*5#mm9
zrZCg0Ty&AEFtU7jDWhVjVir*9cuwKO@d?y{8wDks#+q*r?H^HqLN34fkAIjxJy(lO
zcY_e<N1NqyK*@IDtQ#p%R+MK*I2hp(B`_D%fNZSbd1Rv?Bq4~v@oylXZ5~cA112PJ
zv~^2M5uMKr<>Q@^0LKs-8t@b)jm#wMXSdk2`wMOfKzxpPD*$KaXsq&K&`GnY<lm3y
zRZnhXh@)AM4~!UWIg$p7w<9&&N&eEZ0frQPDRjGyz>bs`sWiLXn-@v*jCjW1QP8;O
zsCXL#r~L_E{2B*=USt!U&kZG1J!kti!b0IiZt|A#7EX?%KpctZ(`+be*4~l3qZ9tJ
z!YV3ub~gB2_$87-7hs!4LDzc-ECRy)caJ+oi-o~Q#Xl*cvr|{b-SWcmH@s9-`QA1Z
z<Mx`}tojn!Jqejf&h2tUU*_us0D!nXF^IC)?6=Ohang9|DGm!2(%gq1S7D9%@@1{{
znsOZ_dWvv?G3(K}4k~f}Izi5R0sH1>M(TdYFI68wm=(5kb@^KpMPQ~WwCYHeuF->B
zZEOb9!zN(|#h4NhvoU8mC%Ya$u~5IWpxoKHP!8{#kIeReoeX;Xf}?MK(4T#y^OMFs
zsctQ%EQ|wh(|x*c$udSl=OtqM3ls~AWb`SJxwc>5(x>F*ff0&~-vsp31yFD0NFjH~
z_^@G<eUP32Q&8yWm8XO_mq8IG%|?JAof%)A-7LXms1-ZKM+7<=v7cM~R?Pf&l;%$V
zUYiZ|4{$&IRGa!6KB7O#AygXlOEU?esQ5mJ9%K#(W2mavIUQ|#K&=be)Oysq0F<vJ
zz6?cC(DVN-V)?d+k$Zx%8*HEkXRL&EfsaZKzJFB#+y<D!QmWo{Y7e#a3XiZ*1OPTY
zBsBnn%~uwKKcVtAe9jRCx$#dbZNyo%hH6z?*xCgI2*Z?If(`eYU3FBU7!lmY0TGFi
z4o2oh`<~|-R=!-jL7vrqZi@bg_9;OVA_3w*HU93I9E_JE8YMz*u4aN$2w}Sjkk!6?
z)?WsW!M#hgiV3aRYp=LQ>5ARud${~~w@DB=DT(vjp1rT~9;fOvP7Gx*f${=<dla(~
zc8zOI{K^p#bI0iK!(TjZu5$@~_6O;w4s^egM32}D!!0VxI-VUJc=G*Eku^Gau=63T
zx<M@8M%XC2m*H|MvVC@`FlKjnc3ZVmzQ1MXh=}RP$Y=i(QrIS_#2vs8vG0Y#9hZ`4
znq)>x!1ecrw~(ao!KtEVDsrRJ{Pu-1p7lb*a@s=QXsw}uKSC(QS9Dn54L<|uS_u9h
zZb=k3Re6?k6IakIL==sN-5*{&Yx%fFGVDba97DA>!57aik5$Ya-!LmE&!V2iX#hMz
z7tsCUsj$$AZRgf+oQP~~7Yj@3qGST7H+<$D6(MXL5!?APK2@U)e~=_?#+Tdl;+Jj)
zefAgBCm2gQJ6!f(9fA!{%lShgUkDUITmff{<nRZ$0XxAu;>xd@Z-}Z;b~q|i3@wIb
ziW?>PeK&hjF?EZc0?*GOg68UA%K^Z1ocAb-?{&D_q;IwbYfk(pQ%uR-wHP^8+=n^<
zAV-AV{<0EA)q@X-Qw%W&+-2o?Y2FkO!22^Pe!hdO(fHS}-Y>O=Vba^Y;I$|St*Q7Q
zkc#a5Sd=39GQ7GoE+y+B;RHG_(!44kYq2IG5Es;#hY8BdazRtFdC{F(8W}Wau#m8m
zu{sbXf_6*mwS68I$BGLtr%1lm=H9;wS1|(-lAgkDhC6bADbLkiC=0vGO^dSwc#R<l
zv5}!Pr{^(HgdV^j<L?-SM{F334;8ow9m89Vgy^hU_K7?s?ALi6c{tA9O!xcvE`E5d
zuV=f4_J`@J=g+fD0d6%&T`L9FTn&~rY82PDeXiQFii+bdZ|E|d6pjVV%G=BBLz4V4
z*b5l~sjIAR^k#Jeyj>FTXWz|8zAIT_Ed={Kt61E5uer#n-mdTb8O-9`z>l&L7^(mc
zGln-9e(^w|Szr@WT0z&LF$Li_F{wRuJq?(~ib175lsk2Vl<w?sgMZ<|1xli@=#~o<
zprnwghm{6<?@uDeq@iGhtFhtL$`m@gC2TTDBP-Ot1yLxFiUrkDn<x3Ie9&n}CXYeU
zF#Ph>g>d4(=)+IpC9e*VL##JlRG3WIXtULv6|G0w2SjxmczFB#FdqSPrYQp#1PmG+
zz>YJ+elP=#7M~SDhx5(p;^$>eCy|b$+mx?uxUQ_{m->FWcfjTE43MR}S~caH-S*13
zV)%h;PciMXlGT|>wZqK~(YeWDoR>>|4D)vc7SGdp7QNK8O)dkX<1;0C_0=4hl{`ZJ
zrh)&HTL&oW3DSI76{c=5#Uf`DtmUeKK(52n@NJ^(g`0UOf#^6ux&|n>-Bc=3Nvcc(
zMzm8Vx*IGdavzP-n=5}2wMBVp^&OwnAFJrQk`VuV0j?;<mA?YGJ;bgpo{cKlsh@+5
zM)|If``)b>W_VJ90zipv0l0&D?`n#8>{$A8$(OIe&W`+OXcUkUZ4px1F8(0IiN2+f
z&I|20%WjV=?swFqh*E;u!^xAt4h{5F%*%Uw=m6~}_AQCHZ4f2O5k>?Lf2dF4%IOqg
zbfd9+w)8zru4;Fn_*y<+anqMy${z(tdtom&=4y{Dv`LCwV_2h4X*xlFIRG&BZ_zdm
zx%CI53D)MAstTL<$39Mx{1kEeWJe2EwXCT*k0c%Y{bN&`uKbV}_yuQ2ltN-C{a_wS
z?fJm-Hxv+j+?H0m*eR)BL+2w#<2^pXB>(F7kpmxjRMw<oy@18FE5;t;ey-zBZQ{6h
z3uQr#-h~V2Kzb5@dc?lb=3m5*j3|IQB&VI=pO)564dn&TW(fWOdMC3;sT=L+%T#rf
z0412>Cqlf*DLT8xsC}hT>!(&)2U(Ht>&TE)RuNP_F%&($I>1mJPjgspb>8dXJRI;H
z47qtgv^3DXcYrkhi&To_U+kKCVY@FBVMj`wWM2;zB*TRip;$5u<Tpv2A;mu?o4Q)w
zC?hSEwj~29re%{9vR23?mY2rK0Xv{I1UE`_Jm;!Tl*Qi)1ENIfh9>GaO_aUxfYIri
zHd1G^mYQVmJ9PXH0Ozb<f_C_;a6=+oT;TU<h>yC`zxU*7usb9pmoE2QJt)HvqheYA
z7n55t*ER%@vVz5E$^F|Z08hjz$lXT|X+9^sHwPT6ie}|u>EA1cOS@-}jh5krdn=Qa
z$&yzp=6Wvol$ORZC)9$~uYjs7s8;{dsO5{j^%Ba;#8i}$2Tb&$iu$wz_LP0IwS8y=
z>Hv4>WbeBpNlqD;9+4%+mgg#lACiiv|NFou5MLajKC4=tohmqel(PfJ6J`bP^Fh@b
zVozCf)xkHkdasQ!#L`06lU@OXoP_eD1Pkma))cJiNpGLzT@cO-^c2I>L_Kdyh_^SJ
z68`b*g^l(Vm&nh8g<!WnVpd|6?x2O-yPmXh*}ZLlv%Mk6$gvZgj8$1@^WXRZy94Y5
zP=Sb4q>qLb&+z{=FY2WTYwMa?7&o(|yOw(&_$}61g4rwg`o50!7a-^XEekDSUYo!S
z-rT+cuT2L$&N!0$ka+9tdNLS|z7^cN(Qjz?2Zq|UC$4%JQ-bboOr9tn>#0|J_LjKt
z?9B9p)<ecsfX)PM06zfIHT?)$vtuf+U+KYArLEe<f^}Nr(zxo(&F(TkfrX?n#f%bY
zJAQnuZFu<+BU|gi6LCoQZq1G!R2m;)0r!W+L(8x7VC)cCM#U<&^F*_~Ztzpz8p_Aj
zcBdT_Q%X=w(V~~Rp5RP~;7sRMj|Z<!w3N=HD0CwCNT}l&sA-Ec!TY!g$9|*;TPJv2
zzlI(#7YzU-12LBqzMa(St(aT}%YN|UKlO3htXRs`H7~L)Tx^XABif8}<%42BQG`ir
zx7#_DNT+Kd6caEyx4a9;e>8t)L6yLJKR<B;#79m-5ZpJ{6>4qa<Xb9QUN8jKr-^Fo
zv0T$^5O?5pj8KIVtyvHxsHLboQh4^Q^cMS8!i|xZo}BE1-}!-gpC65BFtjS9hX-?y
zHHF9r+I`aME$u?j&buf17W5P?9>!dD{DprVjP{O-%sWBsrWR{$(Qa$j&vhr<T!trI
zMzn#4VOC8;*_Ar(@pKPYjz89MI2lu7b%av`oF><eF;`-!7*<imL&jz8H0EnaZ2~=g
z2vP9_;tE|GcsbMu9aONw;ro^dTzTG=xcUu>1@R6rIsh&V&#qIk)oP@L<6&V65E!8+
z=lu`$IaU3L7a2wrbFuwOE$P%vc#A)HGPX;1dQFbc+6;OkMKO3{LD^&4zRxRI0u2NP
zK-9cyMkUa48>-u3R>GAw?}kfyPrh8DH|s70#(92p6vkv%%t<Hf^6a{OlA#Ho-|$fR
zB?8h&W{iIAi0t#22>=;GLJrc5ok;SMB3b#=DZI~8!StFmnDH>5<t0O0p6j`Wxn7L9
zUN9&c^j%B_eCmu4U2_nKj)CkQ5q{B~2>e7!cv45RuKnTga%vBlRVL!We$18jN&!hg
z3lU@%{%wSY3_GCK1^i#!ASUAjm{(<w+pwW(Rob+*GL8bb{4>5?l`m0WF_afgXA=sv
z#(HWgHekOLXD5Ay__Vc}EzNRM=jyj}_m@Cob$GE#?dj=GTk``HxN0X3DZtMi2V?I<
zqV{1LDB@cTfwCtAOV`x@e!Jy&ML;WB0t8w=I$&azCL+Eb&+TsD%Eg9vgrtFN;v?)6
zZGqgbQF_}6AcXQx0OA<&cJ(y_fobrlvVJZ`l+%n9Kt7w*z(Px-MRyffZW9b8VyJ2j
z+y<WRF`}U9cGD)rLN*P(klU*K&qY*fzvl^byikEh2qm~*__hKteM4gBRb}u|7Z39f
zgS$OS34XFG7O;*l>!b7++sa4)Xi>sZ1?UOH{Gy6^>Ju{x92ymYa?=_*KBo5iL|bgK
zSPKUbKSK{l48S=309LgBs($@>w-sT%oJK)0s_PJcU}5m-N!I9HZW9N4%m@fV+g<J8
zN-q3Ls*SJCCV&SAhF*Q)p;P3NRwo7Rt%|w&#E1eXZN!S9Wg_y3d698PwdNKP0upo^
zd!DlTji4-|trID-dgDs_MG{oXmwI^%-!>J9OwFzV27QygpM&KcnmE#SDnf=-4DqIi
zjE+?hv<1`-IwXW;@y_oP{zU>Li*Txn;I|F827+@e<5ux>d7<A2l7eZa1XGt&CqS|{
z;K;x<2hi4$ON<jEMiOAo>lywDNS$Y=NHWAL$+yln1B4EFigG5V*fB_On|qLyAF3Cb
z(^N7dP)TX{ZX53&e|I5Y44@RGAodMdyN*{jP%9=e^*z^>-DEdfH{5T7*8_b;Nw@vw
zo#=%X9>HQlHME*C?WNWPo;Y}NF|STCZZknPTuBT{?+P6t`AIG`sMY(a!YVIZoPISw
z{8S?ya~YFeB;ENoT5S~!j?8JC#QA-95M=#)r>3rNR2)Y1k(*w5q)k0yAP^DM4yWm<
zXvW3S_1;FDiWIebx;!_L7D>x5wrcSd9P@;_VSuOePyFWD;5AUFY@m(5;UN-M##Ph~
zFHqaK4GlXpzJK!`2tMrQ&zRceu#2wwBpYslW`c7ozZ)oF{MQm;2I%_+b7`Ywoeix?
zN8u4^CH5|N??Qk_)dUo@q}Pudf`8M96H8CG^<TTr_v0Np&6gY7v(VA~kVFbTY59m?
zV#Dx*@^c^#a!EmI!jCOh4ft%hP&OK$eH9SRxIF9e8@j0Fdqo+%?*VSvC${w;%~<9{
z^zv)WHLDw*TZg%-2!us7M6*{{SQYz{Q-ORgQ%n!T@@Qnq>!{ySf<IgH(xfQz7x_Mo
z0`Ua7SS&!Z^K8D%89tI%J%Vd?2Y96r%k`RQcH!xvg@|~VFBQHU$4gr%TyE>T{aS`3
zZp8NmlXo=NplM(Drx~h*^du3%byPd)<kxpi9(#f()Gj$Z&kzn4taRUax@~HCPiv=j
zXwcG`DzGxq%$|cJt^UQ+Hmi495K01rzqqA+x0S?b0qvdi;|^(=P8x(E9-)!I=Du{&
z(B4C0-SFRH6XkbJ%^Rx?)@)z~;}N@?T4cgwJCDZC7GtuU+YREMc+!RY>N6#7>-b5E
zp^g<h^`jKdIHYP#xuNJv+pYtJ-%T8sNb_JgOBoH!-@v#+HNW;^f#Hh4STT|MPB7@5
z<CJD`+M6@x5S>Y}C2Cy%{xnRIdH^VBnW=cUSqUZ3cjkYHV!#tMl!oA5MktYYS9)sO
z(d3y%TW`)tNOUHNrY?yCQ-X(Fe%ClDkp$2OC){@LZ$T~@|5+KyXY&tt3XBbAON}*A
z$eTdd+o0Ga(`soUucZ$mA8kx*Nn9{`_ju{6mM8!T%u@cmHMT*+DwS)(ZGFzI^jcK1
zDqN{232rRcw0Jp0D@QV#XU(UKpKT@H0t?XlL!F{(ONs=Wnf)g(bIDkckCGmrROE-4
z53wGcU}J;n_J}EZtUI_2Mk{AREs4#@d3yT073wv?DTV^=B1^M}H^E8i#u2|}u?C9e
zVz`~Y*%JNy!+%xAl84&Pyxx{WXHMp{gF-`yjr1sv)~N#|?A|A5n|E>Mm&V?wR$@gc
zYR3(RXijW91+}WCqMq8T0Cx_EuLs}j69LU1)&W6z_^F87dw6tc*q_CB@TWw%ovwom
zS2U~{betYQ3~%Ct!{g5!^xSqQg2_gbasg!9-w8Gpcssy?bWWJ#OHT@R%P@AH^qS=?
z(0U-%@4@71;Z_F3<}UN`>L6&uOVga?NlYpL7}IFQP=Bi!N}>G?&hqm7<iisq?m#?w
z6p`CdkX+t+kwFiAGYp=?M3z&%%=iQLBF!&Yd}K37;U>3@VHfBez>1-Hp!45OMgiwv
zRaPc~Dbb+1h&+Xl8Sy2`itl2moF{BfDz|obGq#|kIWN3oa+3vgfNNSgt=kFtp!W^#
zCSR5ktOby4;#4>|ipA8#v5MZDW`SNjMM;c{E4UlI$pix2*$I;1yaw$)@aDG+)~hcf
z1#<Yi;z-Y0nD2&?w+u;Zd@<4fM6<3bMIJp7@htZ67;b^y6Fg-GCM};rrEOcfyVyS7
zrkWiJwZ63q7furaa?_`5eR_*bq;FSQN3*pFCSM$M_>DWZx$piRNOV&)Y`nJAq<nI)
zdY|M#7MxtFQEd)0crNKJgAX1rOFXc|aKdTkNXEU5*8jA<(w|!VA8z~LDh5|gWg8u2
zEnAdo(0CzxbJHTA?2h9S51@jSPP7S0Ki$OsynjmockVXb62R`e`^!b)(q%_>B`Ct=
z<0HI$`I7dg@h@Db+bc(=-Yn2t(f^cIJODTFxld8{Um!%my(#=25MrS{u1UV{)VO8{
z1KIof_CVV`;<_1&Fdb<lgoTdja`(4XY@Nn$nx`J$O#8w7+R_bB4!ha87_`5Ty@6@!
zCe=Ej{Vjp4I(<TGtl(LVUS70WxgZL_ScV7^nSX3|0|L5cwVB%+PCc_0Rz_7wtpK`l
z;92$!^CTt0f?HV78dI=iL2F72Eb}3w`j0J_E>JBtgO1G`fy%*3cpSnJcmXll?Jske
zhjUcE9MqcJ@$7+zRzHT;9`&Cgv8Cz}s}|yW*EZZ-;Bhvl+2Htw785<*5@KEPIIUjZ
z@0j!$CZtnfpF%C~oHVw5ui!)$#$p{#GOD#<zJqj~krtVV&917mEjrEZxE&sUw#(ht
z+}8RT(oo$nc+QSz+gi9OVet?3R^V|4rdbtWrm{p2NB(rBw}IP4wEn=B>cU-F_Gs8v
z)xY|a3NQ^%odz9tLt~5`6?&+{FU*#5J>!`^8F#|f)^J!;ihGNHoWc*S_wQP3FPVt-
z3-KTPfJgH=vkSbHLi+?;mGuk1BDr+!J>gm}an@U8<XFml_iFmp<L&x_EjCv<rH}ol
z2+%!MU<NOQnRmJJ_J(l+kd?0aOPOqfaJ$@_$QFBunx0nyB$KTW3Si47$o?bjN}di_
zVvwU`54c|%0Nc!!S|h77)w$kD+ZwWCX$t_#-SQTCe`wLL?$)OSs{#ARcS6#wy?1%Y
z|5aD@TLRJMC+k>^l;yr2=J$Idt?7Pe94E~P-^`Jo08g_|((McwqMqonhkIp*(pdfh
zZu*BcfX1tYxn4Sh*m7<=o{5@2{y5dM8T|Z!TkvpGmU^P4zGWZBs3!;8HVU1!v-1hh
z{ofUS!eHmW8}zk$n87NR`IxKDEsHyeN~qM;sp2{&L3H+D@|E!S2PD{|2f7Q&$FqT>
zTDmOTa*3hAb7B@XpGw@`>K>bR%=f-<-v8VUvRjAACtHq6av$3((kV)AtI`b#>h02R
z9|G+i@W-fJvuodV)$+TGCH_r7#BJQvmBEvjf{tBQ^}IEw0U&sLzLLivyZtQ*0Am9y
z1+qc^UFs8w1M;Ds;iWZPbvooMTh~}47vYrj(=JEpo~x8Uc~v|ffww%8^Y8~-`<7@T
z2^wA7>l?{a)F|q)liarv9>D>j$f;8FZ2Iz`?IWP!Zz_%K3cl_Hf#E^QB*lOxb_%@1
z#==5OE+)7ACHXAdE@Z7%Eq1VC(DuRV(N9@(jsADqBxj8{!yB`v{_OqHinZ7VKeih!
zN^}kM>D%HU3+(Pehdt+eMV>}gv-r`V6Tk^nLerS1x;nKdGls<wE3_JR&^n?f^ov^4
zHV^)0pqe`jlj!Do>a#o8x0WUY<51ea#UTWiw^Q~iYbpt?xR$8o*Kd&rutZ&+f>^cv
z0gddQT<g>Ad+eSGAK3(rKKO*C<tf-Z?PeLcG%{Yh?Z49-^}CXuv{V8sD^*Cx<PJY4
zI>+)3a*m+A31*XmC^4GY1ngbduMu)vf*fKM;BmzR#4U-gQcnVR(OwOdU6=i`sOKn&
zsiBneCuQJLuy;B?+%gG#@awY16p1d@=+>_ZJ(sUQzn18k2byE)+u@MUR**jmygaB;
zhie%D4r2XM=(+<P>|M<UOXC^>15h7fM$yC8NnvK6pf}|R3#taYH^YBuQpib*l)FhQ
z@X<evD+Vii%aYpPMljsq<i^DkO5JUDz<(x)`*MOI6cw=i7rf(60KtfkUVZ=f$RL6S
z`a9}rv{B^SMHX*%#54-?8yBgVjVEZJ7i`KI3FQ&LbD@6+Gu}guBa0Ir@qPINafM4y
z0;MHFPj<j5^I>$zWG~eoyWExmCZQPI{C9XvVyedlK1SDG9^`d<yzC4idrur6lihH8
zd%oup{}C`Bf#pd&Fuf`YIpelWLOyaBY9_TyfhjOjua0|ShIp(0B9F)bLvVYxh<HK2
z+TolZ9p$71xz0fR$nO|m;wsb_`=BEzxGlR9Coo=fAVf`QjcH^o4^UX-DM-KBG*mmV
zr2;}n{0%<Mq=TNpriG4&z>tP`fg#RH65aG7FS<r2JG`eHC}5BjIzvK89p7#S;(V-5
zr%UGY{Yv<lTjBDM){Ncj*oP4rZET5&Uqbo$qbxqXr3Sa<0dVht>q~9(?Jq{tGf}&+
zSI(!1GGFYbC{hd-n>sLAJx$`_P42Osi#+N0Wr(9tlAaxi*)|b4GbLGTP>xclY{0jO
zJH*B08boJ)?zIOYi<dF1+pf^1C{0&?Kjg3Ydy4x~pbnjAQB#T%C3vyPUVm_!)i~ta
zd9&4f{r?wmFL)vM#H+OTKy;$&ZI+EG@trR#`=za<j$eeT4*tBq6|?0$xly=vvb#9Z
zKNl4azucj%3)&Yi9Rtyf>nJ*a-KkD2T2vyvSkf8~qFtK|5*%0y`n<oTcoN#l^qS+T
zt<W$aGTfe*H)cRl`H_%d0EpH5ZcYPWXEilA?&02xJJ!b!9gUi|>fjvF>FDZV0crr3
z1bH&SjUFV<{%(B2IobfU)9GB$L=jj6+G@{tYP#t=q6Fqs!y1@ug_NlXBTPY;V$am3
z%$DyX>L$?Gwr$=>pEn8ZOJT4hZq0j<D24dFC`pan<3r1{cCS&(Ls>2)w#X;S(Eu}w
z;6CIvi2^RngWHobUyijus}$C|JYBi7n>z#izESaewFdy<xwj#fm@5Kv`kEcF$1~{}
zx<i@r_2O~p@?z4qUM|prtIBx{k9+C82v>OT&ZGIZQD+=Xzk$J6uE$al@Ag&gF=ND_
z-3yruPoV8??pOu>3@?EBI$qW7D3qW8Qxy@VKEC-8TbFu!W_es|)^`kra>EpAs+xrt
zo>{v2wrOKq6w*3DW2CKz9CX&hRM0T$4<jON=}*nu7<B2289jy8=dYJ%VxQAB1U|Qj
z#qj4^^I=r2O+cbs8ekWMQxCN^nBdgD$?@EY&rC+U2o<D+U3?s`J)gn0=al>}FqIda
z5p@A%GpCguzCc@^FQ>}H3sQMyK#nYE(9Jf!zdg`Rhepj!^{cjnS$Xw!1WI3Qpcs)}
zvL8H*M8pT<@R6IrMwFu<O_$yZw6uqi*Ed093$z*NL1%(qJ`{rI7NV!0F{*uF#Dci?
z<8<T`Ts<#vp>@eW=^Vw#q90}Was%GPzVWg_L2JG|wP}C{E<7q*Es68u(l*ZoC;!`Z
zHP>g!1THti1%#k|=cRF<Id}1kr!7h6D2BG!1L?ondiXD<V($KYB=j%?xM>>e36%z&
z+n{!URG)t^c=?55fchyK!~pVjJ<F|fwZ=Eo?4G%OUFEkKs|D$uo6{*?Qskexf1AZ<
zRTvC;jh^$ls2ipR2xopKf#0~3*7V!X4_ue9U#B-*!8g!ZtlsVk9uD*w@WCmg+<XlK
z#c0*zq}4McF&nStU8^G*Y#W8r+cI1D_;r^;BnA)aXr9;PyLdgXlYmK~(<FsO??mR|
zr(bneF8Mi1U-R!?+Z#=0bx46cwmI^nd4p6FV4qUc59N(L2C?*Q%h*in<w2wdg<#D5
zI~_0`@iEzz%HupTx!7{>b6arm45MYwKtNXP%`PL=GVUo7qj_EOhG{ZgTZfJYs=@aA
z!KeCO`A8SxrvIkt=?M#kO_^GO((mE1bE_{YCKtvRaE%Yn^@BDpxPmepiYs|)UW2Lt
z#d+Z(j(b4r8bE3D^?q071V4<hLn9M*z?598o~EXpifrT=T3YiCT?m>f8K`=xtbi%i
zC<Fv0Lt?aO5Ya=32~Cp2C^k!OG;xbQfuLIM6A~QG8zsX+5f4uw{sQsy%-A7ec}$U}
zPI2+$@`p%sLyA>Gko7K(?7vf*abk7Ck&Kqq*;L!U@9r;(q%ywbZ(6S?)3d|h5ZK&Y
z+L8}gMEC=vgH6{G{(Pw{)xLJ?>h8cMUXVMF(6l=1J{1pfVgR^JIg74AgOmb!OzjBb
z8-ON^9n3i$MG4IceC6L4cB#LF-4Sxq<NocAwCU{UFXCD_wb^Zb0Ka%k!kk4{{{#(I
zz);Zx9usDnv4d&yyW7RbeaVm0G{SvCJC2?V_~i6IrCY$O^1q7eW4EON=YxD3i(S%$
zIw%LFjvtCr6&OwxyDoDExTXOyr1B97I|WU22hO$%(DD1(3C>99`{;>scHB*1RscNv
z<^O4Vo`jA|v|{`Zgq_G#vGmZHXFPIS;Wb`Oypu`@UUl@WKCM-t&Z}zr8Wjn4JlSgX
z1_Bt20URNLFKdGu(I`aELML{d7r64Mnasm49kCobea4RdhoTxU=-l*d%HYVZgwUAX
zM5W26agnS{aONM7eO)Nr+%{}KzZr?rOLYW$K)ZA3m2$1`*+#v$30cqhu@8)GIkm%T
zy|!ZyynXQkSN`bhpR_0MnkIM4i5&ay-UI$_wAEvcf@D%jt)UVN0ui^nL)eh;F3!(<
zc!KBEB*j8nYmXOonW@zZ+>%@N;~Xoq!BI>y!R1{7^oR4hijx{oGmJ0rrvuNHX@*S1
zWUt&kir*qt@>$<caK7(1KLc8;Hc9)lczoER{-HY!jqCeIs6&jF%2#>9KpsG#m0!;U
zNs8GUi8xAw*XYe<WefA?HXS=G)Wmk1Wmv(|)yD3*Ud7O+YUjk*k(?Tw3!C8rTx<_a
z(Zh0E&w7i)O+2p?-s@Klt-?GnLcBvGa98VQr)-qQJ%Q5S$U{vIPI8I%2GQhSBbLXH
zky0K=7duS}l|zgLYWxD)U0zM_6Y+$O;y1~5YVnvVr}9K<KNqC<oi?1my;n7ntM%0M
zqc-{sVD30=>$DMfMvIFqYit=RlCgz+Wsys5aItET-kT9O7)lUp%j7cU$0wo>rsf}N
zI<7K@QYLB5l;`A7ePoE3Yfh6XcwN)vQdlqcO3x1ktH=s;6s@$88AZZErA*|Aua(a-
zsG;oLV`8G5v<;^E(OVi8KjY8LFg!e{E}4#o?WETh1CpwQ#*bpbKq2@Ua7Z9*dJ4t3
z(-njdYA_|Y5xA+$p-u4}_Kuwb^GoB`W~r6d{F9rpqmL>NRXZVPDyB3~)CQdUiffuj
z(|2w4gNOlkGaLUiNeT<x*&L+@a`^L7Z8hDC2`=A^oU;~YwVd7^Vt2H)cQv>S5A4f%
zN)D$E<pLn&g_VD{`hl4Xj74H~8#Fz^^AOsl7!@Sd*3muHU3;u(r`4^t!@xQ>U%Y0W
z6Qw>n1_@{B_!#h_AU2?A=!a>bK~$h^{;Wyz^qIoXxHwOFVoqI?b=t+$_LsB-HR&BT
z6vv_-){lEX%l6*i7C-0&EfxO8_z<YXqBM2r$rBr^=gVkQjn;&~%HGM%#3QZ1?AuZx
zu7K76MKqFP^1*1!xi~0=OtEt&D}p~(R!Iqo^o_D1Pfq2A4vT6}Dda+G$Mo7OPzMFN
zuWbcV;uMolg=<D#+8)<%!g6%pUR%(naBW%};P<rM>bWk?E(NjAt$}X=qX)#XJzrc$
zGeH|7&#Wq(vl4cA4JVnH<!fvLvXWb$3@4h9fT0f-c><Fz>)8Q;sX}Z57&HyZJ?Zl4
z(EfHvNAbP(j*=2H=$z71N|?rLU)CcmX;HwH1Kg4H)|F?czE5~O+j0^VYl0Gc8G*Bv
zpFmatB5XzXqxKSp?G^S$M#BzLoZ{A@<MT)VeMwMDJhrvo&m;KZv5QxLk_9YK#bg|C
z7U;oDQ;VyPBE7XXNH2We0kn?d*6<ywZC%$R51GF`F*3e9{dt8zZ1{15nB#M4J3!}f
zS4)~V`f@UW1}j|AUM=EWIcmj!87ubEqSba4x^$UKGH5_8&`eF)D(7C~U5VykDk{nw
zR#5iT=P6OqE+EFI%YUlrYo_cbg@QE!-k?-(s4EUcDatx#m+Js72ioO|mH&sm<0`hk
z{F_axryp&`nkV*~n?59LhbLM5c=sa^)ShqbE^|RZQ0zzWB$%B<DiIrLyAPgKF@E&1
zcn~EdhP5i9oJWA}E%H<p37>W|V7XyibDJq~aedzb@`|P4q4k%|)Y17H>C5B3kqsv(
z`nIEIqD2RIb-?oZ@)ftB=I?F0H5+v08N#9w{X0+j1F{s+h>kc|Y`2dSNHMZ4Zd?}}
zc!FFR%a)1TzBpQ|>HAMd0Q~#b-YWg4k7~aH=G>?x(kOdBNOdkNQp<l+LrV;een98=
zB;9B5QrzEfS*F_Q8rxu3FL+UgQUC`RbQETqTHJEdV7;lbH;T?FMyOyzoQ_(zM4MU*
zJppDTSY+)d$Mf4P?_-E=jieI2-0)==6UH%yi{|`cNU7z)CiByf+GEF5NQrjS!x=wU
zJW|52>Qx4=QlLDJ3wKSmhb2L&Q^rh+XuiL!DI=kyyG(oWaJW!nsR@g@KXx9Cu(SQj
z2Q>(^I%UU%?{fv8<hg06JpnCb-TbMM*kZfG!S(&ZOyceI)IGdix-Qq)I!nMTx&hpN
zJVf>PdjAPdmF$oZ>u!pa&U8P6aMh>kcGlFPbPIB^!@4KsaDt7rQpEmFOlc1bumrxH
z5)h1#RRaXd1lw}|s=Xg5Zy+jMFzw-}YFSkUg(KDV8BQvvqUpLWlky!WwmfUC7+Uy`
zo+!tPEXc7PAS-lVo#&Eijg@MJRn_5C6>B}lj$w6>{0|!*&m*0R0yILI?gzFspkL5}
zBkQK@GSo`j)%CL0Q&L>OMU(Kh5OjKU<Cm4;_OXCJrKO5{K&+hg_J|?i29UfvEJ8Th
z3C=uKc*h<vB9KvI7~U3)>{n}~t;UcBK>1z|bP&rmyZ)O(t|diEUkV?7S@v^iS^YSY
zR^L~G4Lac<x5w^Xb}Gm@=wZF7+4cSVL47SJU`hw1T7+ISEd0{_q^%2wu5Tu>>TUK$
zE*h0B=!~>tW<fgA*80JwPq)IP^!oWFWxt-cdm$c=PZsw&3d-bApmpPfe-tst6=b#{
zr8j-c!ubz)z$c>hxRd}?$1S#fqf-NfKE^D38!*p#(w!<=h;L@t`U5;UUD@b`Dy%Ri
zki?}}pYGQL6>*n#jSyG>rsd;743a(gW&M};(_hxlC2BH8K)j59R)(Nyd1D*q4A^R1
zD9?J#caV99qn?1rUx?ppB{-T`#8GSTvyJr`a5>Rt7fWxk*eiP`M2vPZ2LW6D??T3J
zfC5M2tb70RpgvzExO@cpNMaWK_%f%zn#G(uo|@NSYZrpsT9|NeYVTfaeuRcH{5y8-
z3m(2kVWC&FfUPXre*KPc5hl~=fU5N2N*koDU6A?g`$z3Y4q75gLaV<e({k&8E)SWO
z6QT~cKn2C+e)AAP`IE%_&CC;pR%#9JChO|h@j16r&dEZnT$dKy+SYl_ix^ABrocfF
z==k#Eww1MCBMQ=V4xf?s%Zz4Lo=FSTl#xM=VBgRIGWP$HoH6PTF^J&P!%iSs?oZZZ
z0sY{J`tzFqwJgBy&p`$zSU{i8%h(n8sI2?A*7o<Vs*vq!SJW9OT5a!uwD1;1E%j30
zPj`QZwcYJ{`cDFQTI?grv2*2h{NUBf(deA`Lw&N*1uhqxtjWN)x(^7Jdt#FR9Ze5R
zlv&b{)xP%N=h)*E_#xVykYXvK_A%|^&C)g~=LbjxfrAd~hc5C68qnKt84L&!RIc-X
zQi=7~M%RzRzga_M0r`ZnHmI%ix-BgX6j6*KjGv#v&%8@$Sx74zNZ?4<ODaU)h7C4N
z%;r=~X#s9jKAEad_^*M?DHkE4nqs^)ci`BAU_s+cexrt6ZCq*&Q>p`zyDh?J#@!%V
zh1jwa`Vkv&NzcQx*q%(=r57^9$Mt)hMWpMS*#+=7*N{+F3+v{LI3i_Q{5ZM;=prTc
zao7m{-Q&_HmX^oKj_Hr;*%sUbx-KoyGqR~-TG${`AH54C1F3h&^?*yb9cwp&)3KjZ
zrYc%jZxt0kp>N<;1RMeo^F8!dX=D95`e??4l2N_!uFywl>FSNf{`6N)PRS=9SAAhQ
zt-YEx48HD`u9hM3xF$IDL*F^aHejQ4-i+|<^;ik{Yy7EMQSkXsYE`mo-Zm+`_U}B?
z+w9tRNWTyK#^WNO)f~}CrSo>Rh+L<7DDHamE_;&Rn06mKfxIX~I(5RTqt)8l8aNlW
z^zZW~PFl8(_rcKzTULJ9A=jzec$3WG%Kek$TcA#htBbd`YXRMbA+Et_kN&}%AK~^q
z4~QKA481QMp=V$)$C?q$Tdj_RfaKi>GSh10$zc+Y0URlr>`j#4_3y}HS0jD?;F~Ve
zKoLV4NK}+wGc}*P_HN!1mZ8=Ake{KdZBO!rgqs@BCZQWUo>jWEQ20M^$EJueg=`M#
zo~pUFih>~MtfZCy8Pc7oY^~`hVo-wN*oTjYnXg2j-}(zu3{G}44F$|6Y5Idg@Jr*|
z6&kXT-2Zlqbz7LvZh!k&k#)E0xmVD}&DAtLM`MRd&2`@In;-A1y>N+kp!bUL0<UUo
z+qFo&A5UPteovJYb_(p<HGmZt6Qj3utib&d(wE$*P9`l)HA6AwU`QKVD*KN`)_9yV
zgLDXyQR-W*F$5Ta`>omDnjuds?NEiD4WxEZT%t7GMYn4ufXe9PWO46eCmud(a9$=J
z7o?s*^NPFF`ydlfQvana6eO=ge0U0Lgkb$>%XXv2x=PA!6;R6+KcmXK0b0W^zSb|^
z;HqY$d(%#lc%E~c$fiwcLj{?60dD)m__xcd0!Dm+TIAXyYs0p?g~?U>GIvs;G#WsC
zOd+7FlP1b07zmF3pp;AN<3l@7Rl+#Z%><ls^i6il&uWdcN4J#nMik9g1~eiB<pNhA
zU(afxFtlsL0<|%ZnDKAF?brHV-^63rq@i^ni`K__iob2?6g^7t_@O>ALBp5}_^=wg
zK#Jq`XPnI(o;p;R>N6dCTp{w@tDo!DiFbUG4r-Er%z)n|TdVuLDFZv>4>L{k=`+qF
z-dtOft{)oMalo1|%oRlS<?Kxo8RuHk87ZZ@vvVas@Wst1+`eW>*mKeyT)!HEA`ol1
zO2}RP-Rkjn4dTcHCxfPLJ(1G-h$&^mWi4mggNF%OR7MfU=U0$;(696fV)&r>6g=A@
zD05^)t6xa?LolFcaumMWX`%1jBDKw<Tw8~$TCdtVbvj;`s5Qy$O-Cj*6+LHB#Z_M6
z^e{);f7}{RQohy?^m}vC6bdJsZG7Oxb2mUe0#o|39A41stk|g@bn?MrS-t{T5`ZNF
z;Eg%rE?LipEzm*=RzAN5-_bMy*&5I@{)Z`zz+`=5ZKfkiMZliy4BXu|y;t9pRqsss
z=B!za;F}6%RT6#<E;j;0+sh5Z;a1qW28!8MQ`$?Q8dIMgbbZss)>8$>5n{V3%SZ3e
z$Y`ehZein;^a|;whlBfFPi+rq-oO9qqZ*}3sw&RU%oT3sbLp1+PSD8{f+ygoM8R<(
zBLdk28Ts)-MB#`*z!#*h7SG!LQ;qcH|2w!+6=^6-yw6~#sV15vGc8>?*t%M<1V}I1
z+CZb$Z1lJr5E{~jveRXH+7D0K{?h=*fT3$eq;XS=g1?-mT>6F>9Df%cdcNOQ{MT);
z_e;}~Vk3C(7?pp=P}r^EOxe4kdh(}(D{T^a|6Cq?P-RyZhOVYK@~7s{>#5iUzsBr9
zs_TtB?z4QC_x&3K*c!j<05`U$5!2|1gw8O?ORV(<%U&s3B;DaX|KCYM4e_Z*taX@%
z2!#bcM6_n6nIxAY*NzpaosmvAd%g9nzNyi*ZJQ5u?_B8L$?OHk5b3&4ss;VtUO8Ij
z#HkYk{K&bZ*L@aZ<1=G+K9wQGwW~X(fo4{AiHI@(FFC5|KS1=w7}%J|%Cv9#2`YfR
zJY>~ADtX+@Xx4N3ITtI9>f#G#RNjnN%}(8lDX3T%M7_2`zC2dc%_Sw8kNFUf$;jij
z+dF=<(7whCkppoyz~~Ttw0!uu<U_p2eOt07=od-ov}D|R6bpjv)~u^m9ihw<c%D(F
z%lm&onc~)N(iLz<|Bt!%0EqHh7e$9Q4#QAXK)OSdj?_UW5`j?!5gY+Ws-f4RgE68W
zIwHlPh!k-%0s>N`BPL{1q)0LJ4$+7P5G>gd%{Iw<-}(oV+<W$U_uTv5x%Yt%Gykme
zt*@_dt@SOwe%hxq7)BKFQkLS5kY>jBTSH&B^c&|MRr)N~-kD#a&hbWS4=zC~`-1Sg
zJhTN(4pFN`&d!;Bw7F-z5Adl-cti|Wezt|5d1-UAnjpTVOcS{%eXM05x?mR#Ke*%@
zfA@328cCNOb|NPU`0TRyeR44lwAx;KD!*dlY~dFL>0gs%)Mty5b>0Vy2eGI9)mT7I
z2%AVd`6#i4xAoy%Sdv`t9AAq9ONYywJFp_&+N@2(-7(G7wPnM$^~;oMN|Bp4tP2*^
zJUPfZ)G+NJ615tEpSE<ov295|Nr==kosvzGWOBg`*sH|%g1&G=LR7cJQ8H-$xRB(s
zTyn6!o7euu?|efVOHTLVeS(cgRX?r>*0R_dJ4r8XMefhGxXfz6y^-GBLAY$&;K5nR
z=}~)yw&vv5OG4k#0E&Rueod5HAt|)v&h**}kudGuwO9SO&FpJ77o)fAjr%=_m$Ue5
z_{n*_B5Ridc<+%%^-@q1#AO79&+Aa%j6(_WNu=6z(eUHD=;K3SZJg_FKUA{M^|CYC
zL8<U(Uv1C2AMAJ_o1~l8QD$^L@-q|Nt#rdDecW$lX_{VK7kKHzi-{b<_w2S}I!i3T
zo%guHlIY=#m_RN=*2Vm<=aQ}qr^zLc<^S_XPabgv3&tb7j(IS|12J9BD=Y8Gb0S{M
zTx1RFv5Nauxzt+^zKc~tcj;RP-hMp)GX**vivLO?O)~6Me`g`b&>!(8g@t$t@bwm+
zUwq0vz}ubJ?Jd)lu9RZ08ngGxTSuLd(!w7-xW#(Y$>wb;v`?JtYEZ%sGX05qz%m?O
zjfDZ`B^ERab?-^tRlUz7wfzC%<HrlXv?%us$^E+JJ5Ig}hFN7tx=>Zq5Y=d}PnNQi
zYD&PJ2OJdySyPFI;lgnJLRmlkWr%2`VA1KiqYPNsFPfKhnU}f6+3186oo-%SIBjwZ
zZsCK|bP{@5>iUtCI|oM1^1q&^eQEI{w}|f~j8k_SdfvL)BpWOo@OC>oaKxL(bPrrW
zEUG8*`y_YjUYs}$udNW_dPC@Df>Hu`wrMWmd{~~>ie!t_YTCKqHpVc!P1mj3xpeQ7
zJi7gpdvLH+Y(IYskL)3(REPm5h>1LyaWGuU?hrnzz2&}any-duUXC)&h(z<_QdxC;
z-0#N19K-)JqfesJf4;3W3nofBo@Qd%>%Lz%I<u=f^20?AX5j~S=e0aRj!bf;pxt$}
zhXgLhY?V*rl0KVRCW_NcmY9t_`ta5_dW>7QHDg4t%94@?ci*I4XSBl<;NA4-6j$A;
z?Vcb>vU}e+t%@5!Oy(tL)m3P}Wc*0lr4}RVuVf&tdff5AeLq;yMKK<w&q<9foVyXg
z1=3-bXm>VD#sgt{EJYkf9!t#nr#NZ@8};bvk!Ck9>U3qCL+C{g*EhCAJ~=F5k@s)w
zu4%jN`NdwhQdSVGQVl1r`v$Zt>hS$As-N4DZ+k~b$G1OdY;^bNZ=qLU7J_Cu9rUNB
zk}z#SL!I^XcDPoOdB%$av<Tz|y1R6`k~HAQw+wrrb>}>a$TLOxc7Ik5AAM?;!U6n<
zM`F{y!Tb|vWa2<%d$d(g!?k$3g>K3`!uz$yKRe!pe@7o-1&s{TRsIe$EHv!p`*D#1
zm<@t6rhHAR$4*M$2r&h1?U63U4i4UEo-s6d)^8>=Xn3|>Q8q0R616@m{ITB!gFAej
zXWQr6GIfz>Rwb4@!M%`9Bx+xMjB|{Z;RvJ$w^wefH_T^w+;Gt{#K@Y`agI$nizqa%
z#ez)jVsP{nWxAD5DXI2rVST+XsPJLj<G(AnHCU1TeJqEhRylyyxNn`o==w?ig|9Yj
z*ES~}GX*$V5LI9?L$u#>a~o$*%$82-JDC=Exd|hOyWeF-cAp-KqGDD)D>_-@Mqy-D
z1mux!l<<dq-x`oIrmlo6eV6JIBkGmh(C}4cV}JYhZ1O|3$g%IXlk5*Xe5sixU<bE1
zfS)LlX|ga|sckGI`ygvla;W3etcbd_hT-av+)K2}U!&iJwp?SjZ$}X;K+<$)Exs&0
z*x=Tv6s7gc29vxV+8d&@uEt9Fdki;e$TlM}<D%Z59ov&tw*x~*yj|a=DU2Reirdw1
zX9*m25H`?J-ur3g-!zPVB!Q~ycALve^GW^e6N+|U0Z}ceOSW-S&$p+kpXA?<))A$Z
z*g{gO<={OlU4Wwrcl}LrjHRe0!yV9oe)#BGWMgYPhO(Hdj|aLgqY2Ovk0md0Gt;AK
z$=>le0fpm!jbgVa3wE{mDIRx_yc+YNUNdT}>W1L}XTVG6xtRws|9eY%NTShx7c17E
z1#>6M#SeFy=5qu$od(9%2jqpX%ykc!!TuKT!-b<q`CE|34s7og_QODKzn!+~uku}A
zfe(2!J#xAFcK7w;E&fsM)l)2=<=>i;8cXK{U?%`fAx$bs{3<TnnpnbrpLIo|fHIDI
zfMqlJpq2P@@UV#|;cNRoiW#MSxTKB7QK53LgfzEvIc}LU_gT+avT#m&gac-7cR5Y9
zu6$=<mf$(N);+z&n=;aGxZ2y_w8IFM=B3-gp++9}){aZ5rm*_E;YXVbst9h^A1jHc
znchLCO$-fRntM<pw`Z&@(Vc5k=eSDPA!>?Qs<=iCt*cLBG^k-)by@7yCpt_CLk67u
zepws&oL&F5piry-XtDFRBCuC)s``1-vGm&SVgEXN;$0@(5qn%>^$Pm*DF$xgGQmjX
z&BGTIGE#zb5+$9X%IFvq{7h~%rM2u*w6@RhrY0B^&F*gY@9e(sk`6(6<LfBruP}tX
zP$cZ*$JfKPnPfNt3r2hYewownW>=$yBgHohIYxNEIw%}ABscPi5+KE?Np7KZZKbi~
z?Ud(qI6b_1OLHor?v_^%YxTmV2-)kIDZ0Zbn)dyE4W6!DCU1Y-m_WQxX7|2LAL4;#
z_|I%pcp~#deKeEmsTSAmyUsKc^85q>ddz>oy?t^vb633Z8=<3E$Co<9lHH$&<ifm4
zNP$N)N?*qD!bOu@%F~vkhZ1K4f}4_Ldej7>>|}&VFWfKqEx{5`2f_u+*LzgMYNuoQ
zvKzndjC)IKs@&3Ch?iq0UXNtPTXYEFI?jW}-jy6te^~!D#6vg=_vW4Y>5yieX5meS
zd}(COmWV_MA(~qvrf4oX#JDa@d(AlXJ716EDYWP8XS17+<m6y&1O3SOT=-QUD8q(0
z;w6ZUtz+-u?Z=NFf4lu$Z%6paaGje+or)3o(S_}!E*p`yTdoF1S_aP!B$|wDbQKl0
zj7rEV#TeJ+{?$P+f_tYsKdvoY<t3m1#Ec0XVoZ71<2$4#CDHY_-65gAq{XSaI6l~J
zanm}6=DL4-4m7LXwy!xZ8R8HMC#HM!w$|~VG>j!1m`9D$I`S#k?&LAQY&Pt|+$ETH
z{V)`6OP53ukyNb;o%28M8GX?>kyVf;FJf@W?8}C-(Y%qYV8I>#ipTxoqP<VI5zKfK
zA#f;g@p_P-qD7m^E;VKkY4#1QadEUPOLCC$!!2@*Cf_IIdLGy+-YCh)a9)%UahOY%
zY=9`82lbEJx;)if#I)kMQ^5%`4-HrzB+Z_86EZ!`)xAK@VHM6MED1){L^pfYCc?!C
z+fy9wK}N5zhv_nMON-{eY>1@DOeAnA33_ZQ8p*6EZ+N^;erP{0_lOG*+l4SGaSv;2
z(4S`+!EtpA9JeClb-q5!pwIx);^cM>H;79M4x4bU7XHMOH2vt^WQOIHqn*&nl3&A@
zicXPdOMFzk97gxf(~JyZXWtBSGYT|OiC$mcwtb0f@M+MzLO0exgNeS~yF4Of;cHr2
z$6F`;J9msFvz%u+eg3+C%-g_OPCn)h!8EPZb`L8Mv%Rf=rY+wHeUD<#DbaeBdV@iR
zi(rvGcyH%PLL%WCYD^Sq`UH2YH5`uCHip;%^wE(kHzJchhj$Y`Bib2!>xYdEXy4bP
zB<xlUABP&rl_fBi#SURh@^&XH)T~nSE1%_;bEDd;Bb8gp&62c2i9Oq)*+#AhjkC9@
zH=qARKy-cuTYY*OWxW-aq{-P??q7d+XgIz+Iz=;xBu#CnZvKrW%{SdE^I$~;7Wx{U
zT;{APvL)|DycQS8a|1PQ&tCgJWKicN91R}IO;w|f#Mp#eiYVSI<oGvaA`VPhN^VpY
zNj1vF;Y~(1<%<e$r5#(8dl^)2!p=)Lx?af1bqdCx$N0o-)!-Af`Nl<A;f;^);uy=G
zSLB0Hb8<*v1h0rWZ%mP!)+VW5;Gx-iO70&P!qiXAMcml@3RclccUNP7b7@u)Sud?)
ze4gf`B<t%qQjyu3>`W+?b%^10!DgR5^kSi6A>g$qwh@4eYx9q<#_*cd%A{}dc*1_R
zeA?YJanTB`!A8wGmX_~n3)_)|I3Eqq7xM2WVdAFH+UP0QWkH><8hE@e`M6`;kFIsH
zs>lWm-|Yv#4{?mF`$;!u*-GFF=y0)y2klp5_=J{DPYdyWpgcM0CTYLB%^tjor3=3&
z)(XL_3Y+Tir`6sN4hVr*O_qz4e6svTvw;z>7vG+kQg7)9CrMIOg`pyxtP_rAUHIn?
z>gp+)t&T3vYQUPun53f{v^lzJ2w{AAjR}_wWkxtlDYRAIvp{n5O0utJXR0Bz&qYh_
z@d*%uEEgW(YLP8FO~`ROK5xO;Iyo|8Yeg%?zrRQ*145O`1|NE<7m6Kfn>zx7+7ptx
zt3}@XBn+!w$8?xBM`Qh*K9?&ZZ#}1PWEi2pze|`Qam^;`n`kiRgdZeaI8OT~9rMSQ
zBAU95Y;Q2mV)cp*ww`i>YC;iu?nxG|GHx3M&8F?D<XO))hiv!zUOX1vaH0ayi|5d)
z8y^=guGG^L&a$DJ?}i_l<VK_@9<Y;Rb&~0Dkf-pFV`>3OFXZ0iEU(#EMUU-?BPcdL
zK|WJ2cTY>${UFw~%k+u-MrqEi^!&<$R);=%`aaQ?DPRpqM>9^^Rn&WARAF}N%77pr
zK}0%NRKDwSrGPw{%bPK*)5ACSKyeT6g`duw@lzsLsggqRMoRrhAF0I<WCC`g1K<pZ
zrwR6o=dd@g@*<y5!&la9s42|CfZz4@XmSQC_<nbpf$`N7LFIZLM7hTeqXnFO%rN(R
zVwWaRr*GK6wF2pruFcaVR4E~ZZhUy=y;A8IE9uOj;k(HOpA+h#YVd%Itkv?iYGO&q
zirr}{{!!^ynA1FLQM6!9mWDB0_nkh=@M4ThwpZ1K_t=hpJX7kXA-ngyXB~E^4h2(J
zYsWspl2*u_tRl-myQf#96)9v{#cD}GxyJ=iE37wIn9n7syfKtu13M#-H;1Z>46rTp
zacyUZ43k-tg)e{zWLc$RlGiEkky1KT!7piBeU)m6PWNv|+UMZR)q{Db0KpTk%`4tR
z@k*Y<q%Gb;^;@6U3gH(Y=S0fig)NcDSG;-W?uB=-CaKVxRb|*ElV0#8&w*Z6jvrsW
zb_OZD&A@wZSg>w4M_by;2deu;Wk4iBtU1GKGju-Nbt*2q?eEN|_v1zUiOj&q&AU@n
z`nNsF4|HR@o#IV<a^@$OY}Wh(mw#*Ix4wPr(6<KsZHD6o6v?s(*u92<vRu-BVy8l%
zRL-1Qo5MwCsn*?mCixlQLB7O`Xg{4f(Ql>YWN>6>_Wz+ognsS$LyIRszo%+en{>wd
zb!!@9l6)2^v7oV$Op?D#kDFRfv{VYp9e}CJWXZwZu3u7^5TB^y_6YTf%eZH!@6jRX
za(Z4Z#?trY-42=IFju|rrPjiYoDw6_wxfyz(rxlljMbNYThHC0CQtnGVAtiUTj{s+
z(u?S#XF%0vrdSt`btXJZUziU|NS3j~QUxHQ@I^O7G1hD{HXp@;@N;7|?-@&)Xh~AY
z5_@BG<_#-1qKUzqaD?s;!~ajn?UnK-Jv0P1Z(Ms;R<^|u*gU!7{j*17@FD*_%%>H{
zeM)Enk9+9fQe7br4MHIe?nl&=bEL(DgR8*!U_UG06>OVTG);c|u&0Zk5?1+RU-+((
zjtX9xeX<D=iPRk{wcoLqCGR3*_IJ|^gvib5trNjha<zDyN!2%`;6}lg(I>xt6Y}BZ
zLwhT3W8>{(0Idno8?T0t@<~D{baytSt<gTD@;y~D&Az9PvgJ`!Soou#ae8?0n~|uR
zsBGSd$Q`f$U_%<Y!sAi?v%K%Y_P9N~?tORZ<oXds@suB#!N_72{%q*+3sk#n6Yo{E
z-Ji-v%5{lGff{m&|4*TS|JpZaTN36AWi209Try>3dcUM>u|`ImSG^w<ecv)ZM<Hyl
zCc%u&S2K4iy~M;~8G3VBu4uHM&w8wtPU3PtE(De44ZR=zgR*54zb!yVyy3FLAs@Zu
zB~a7|xQZ6VY!?xkzzH%r$B*bC^6WBP5I?Uwjs?6p`M9cRA;3(vZ(RS)`+8uV74yOA
zyK)loHn-GniiAI>d}!Wj+9M}P)vk3h3{j_QBdhI<2VOZ~RhRNabRzWyX<>PEW&6(4
zD?dYy^zz6r!N7!G?8pXfS)1A+=Gf%DC#ZN@of~lTwf~=jQ^%*?-H{$VVv3Egg|V1b
zXz~wmxdVfW*R>P&e_yzE3QBM1IA4lMZ{X%#&S*!vGG<0L*kK{t#W3baOkj$Wb>p$d
z`|Ysumat7W>Ry`pr==0py4yoI{O?_7b$;aBFNjbr1AfYW?d<WjQ2(Gr%+g<iHK1_r
zHs=G+L8r8JoSXbENNBrwv%{|ey3a%YaIlBQ9KG<4vS@7#5mRx#>#^#H+%HW@-|Tas
z%5^4>UElb)7M6zThS@|o!K``A$1g#hZvk2Nj`b~Z*e7l6d;QW}cNc_QvzlFYJonf2
z=4FguH%^C*qGf2?<@@esOa55P@vIjQtjjxKx8HUmxr^~|dDYl2X}q$BGJfSWOR$+<
zhT%2x8;+7%EqoukHSe&z${SNMTZ~H8HGkOmJ-D*P9p{Fu9@;zp_U87mex$u?oUyr#
z*K>ByZ~(IXx|4qd8FfYv<~B`wUVkO_ErezcjhM?cY}79l80zXK-FbuD<{4x4J*Vq#
z1`FAK;G_p|AyEVr9=v8+J^3jVjlrJ#7iLYX|4MEb*9D)uZkUk#Zf((~owt=9wXMqM
zc=CI*AhVmY>_}TZm$!;2yT>4UdN7mLuB<oOr`L5g#xi)9l#`KTYck3Of-+N>u{;Or
zJ}WaK|GLl#4s9&!*<IPjc-D_fcO3<uYlzb3^9C(Vt{W)>%`g>H<|4n^n+55wL*&Op
zaj<bb0iX5L8y_LYO74&V!$H;fmTSyryK=KvImZ|s@iu`wVEw8DpWRvjUN%2pGHI}N
z+Ilj3j(J;EIrx@C>*a@~J8Q&PVa@AyQq9^F;2wEOto*3roJH_;ukM$g-g{_Ol0vk?
zwNO6}-=nS9w6Qdw8)^;JcHeyU;3+`!@i?tKIfStFnYeo}%YUWS*bJKp?&y8i&q<@o
zRAykMR|Z!69jt<nba{XKj2XO90Df}baZT{YpR90BMMB7C-h5T$mpQ@r$<mqNzJFi)
z+|9~Lt^920^5d)q_CRjLt%oi^=7tbRy#)up+RBce&WnrFuD5uNoc*4lBxB{Hcb5Jh
zbAVZ`XhfTve+I`Fz`N=Y7-oy(>9=((wxHa6ZryzT)`^G{fu51yo0QoWFbIn&+X@4e
zOV4N5cp<CuDeZ-i5N*mWO!M$KZwYKb`|a<{=lIYXbKWzUa)F#Ojk-OW{9<_eJ!CNw
z=W_^KMB&CWO0AAEZ!XQfQoOkEU1mx@%)HTN9oSSDbr}8m98PBLmpw<#-HHF8)Y+x!
zm!j5p!~TjarLu05c;cbj$pS|^1-3w|*~4Sy^2rZf*M98pKMhBspuOjBGXEx<nUd0f
zss~FFv<cg?8@WpO#q_;^L$d8WwBq+?JaADLuPh-OHK)TI(IEmKRL=G6_V$6V$5`TT
zdx{RsoRt-KF<a(;2oW7TNfQ@yLEf#gXuGQ6c<kHnF#C<tH}&+>D*F5Tzn2x}^0_(-
zjH{HJZ`3$+KZY1_!YAyiTbxObe)!@wH6_$bF-L<y)^^y!lBFo%p_TW=$c7l4h5qte
zpiKGIMM4TsTpy%?2kL;jyIFb>CL5NTT^)J$_A$K1$|l!C7Xqlrz(US-v`NLXJ6(Ft
z#|d&Lpf-ZbUcommDnswdcORjes&NZi3A@{aX19K8CEZ?!6mNfPzIHCYD<J?hqJ;$o
z0O-29xMvoKf}d+CQa-+u`2@BMqMbk4!cscdeOeO`AAb)ciL|FQc~_#OTCkH*?TRx|
zupR<!del+h-5Yx;DNSc#7~r!6`##=|!oX1dSt-O|ckY3#tSOO6llX`frPA50-w`(T
znY0Z!+=f9s=H8<i1kpj(`I?t^X5m<~b&MSJNa?<_Jz7S<@H|4A!sKe8R#Jq_O5Svv
zt=H`l-|_8~6+bf`>H9+qdABQQgc*kj>-dH)`lU;EgH@0*fSf9@6M7EVNV$Sd@3vU4
zVGHdlNFGr?nIH%HcT)j{ner{M0%ek?D>J4XM}veP?7i(R?K{o9A;-zulja=+nVzH%
z0hyZ<)OFIA&XnO_C$zxAN!Vo393>?1&$5u6DoE0rFp`3%^Nw-9BxXF8(D4|xbTXA_
zYxMoIB*vond)M+$oZw2u;tPy$<I0;#5!Q)(qVW@Tv^<vszR#ONPu>CABL9s`G|P2Q
zcGw_Vf;_MuDZi9&(GE^QjrrBF%Z<LX4xHnyjXX&T50tgI?xA(>qS|+~1i}oo87&#i
z;gXz3ME_P(_ZG3n*Oq)d@m4UTy#b5D+^RQ~p_FOs?+9(zR<4!2ywZawHkL|6lpJ#Z
zsS;8|H^lvVY<If`uvF6t-xDwm$>J}pC^_`hEO5!R-CUFU#GX(rJli;ligH~tO<(ey
zeREk)P;#5SemHusS&)6K;c8g8gQGg%O~Sc%L%_%?JR;8tBahGZx4j7*UYs1MnNvrq
z(vncIN{qMm;yIM9B_2PNyvG<TtZE{4b;%dlcB^J&<mCKFHj3h|bM5LsVQqRw+C?(+
z);^x0<7PwiO~wO&CY8_^(=zF`*F!f!7+<pN<_=3pXuemWm3wA<vfa?(jXRMf?;n*O
zO$PRG`Q8x9-X015G)DnsTE-=N*q!N5%<DVSFT$_pP-f>(8;7*SVjb@fx(Gz*#Td42
zwm=fy2L__$W~o}~{-Oe|rTZ<8C;+dzEE``8r)aKtZv}oBL4_o8NCL`wqAn5xH1<=a
z_LEd|xh&92wQtlMwHMtsroV4BQwko4dh7&l?FGF_9it@D+1b80)9e>IYeHrqvR_}e
z412O&5|gsm<;|()1kqq_f@Z7k+kPFbhysaU6TnkD|IfL6<<=L%zOBD)6oIG(QBGWk
zpxI=6hC*ljD=)#WFzEk?eqJoh9+pkYdD`sst*>yf`JK-{d`e*+^j;_SE6a$ahV(Gk
z0C5cnny{&`fs@7_{ZX0wLE|XkV4=T-b*ohz259na48x)?ec|@dT^qYGrK#}Y0D(l!
zty_e>g9+zObfx+uSN=symfwcfzz7V~q#7h!iI}y=tH<9#EpYw<tP<21uGHwN$AV|~
zb!)T#miUS<_(>auvJ^4968XbfLVXRUC21EE_y{$Ik0xGU&umqdI|DfR`&TD!cQ2;T
zl`1#}-<z%>?K_(-k-di~wh`-EE0+9VRF|8{w1SNn$Id?+4E1naw+LsmYbf1-V|G5b
z*!o@N3|@N|vdr#1s<vv5e*c)wk+pn)YgBEEs$8hD@Q!q3CSVM<WNmR$+saTkwM5rS
ze1N!bV_ID#>d?1A<%ldHFD#a<3dE!){?q}^h8}$5tlr&mHJ?nc1%--c35-NSDB*1I
znrxeZZ;B=Hz#qK3WT{V(w-r^r%L=mg7CgJqOOkdS2JxxwRqRMImTaQk#!q!r>xa*^
zfx0{yMM?`heJo4g+C{!btGD6B2ncxLqTR9j3PnYOBRTzna#KYfr~QZOYnts6YqF<%
ztgXLfMlFIonpVkgr~&#X|5>v-Ntp^d8Ffxzh)?YVX@n^#`spg@zTBQ{VfQ)<W&=SZ
zI(Jwxn9-~&a*m;9M;|eXgL}e!dtwFD^s|Hm11*@f6=F-YqSN{(a>$TlGg-Gvfqmnd
z+z6v{w(S9$mRsGr8r(e>C|7B=Wd5%54<w$vL?aGbILF;aB^#H<_v}4!4ySqViP^~H
ztj4&^iNxphEt{gk0*<yw*6AL7&_y?P5&uvbJ{&3aK{Okmdg}qs$wBmL@MQk!ltV4N
zJ@h{jX?^m77qK^4G_BrC++|cRIq%s(KC@sbmhXmHu&So8M~DSeb>Nnp)yRm;e3OxE
z(Un2X7TsilYpiqUY*RplB>ZH&&h;Dfm)?sg!8Imo)pA`<YL}Eat<X66l-kx9TwmED
zpUj_{eMcnxsmQ^N*deK7l~J&ygKmK;xnpFC>eR$tt}>SFosTz3AlIn3&exu~PEwep
z7&^G>pUCSWHPlq<6LXTKfxzZ+)5(V}XB$gObS3I9>fa>Tv{s+V@4E4vc4jE~bZ8@2
zc(<TJ{g4J}6Q%=ZdDBkKvz?`+4{6;W%U%Z9$?Cz`8ir4weOz`oL5h32$D{ifx{r8r
z@<*Iz$xx7ebY-&6p}v?$4Wj|l<Oz=5K6U-3D4VOWuSDbqGeKzIF?Tl`s?29GIB~ld
z&CN?eg6T$k?aOt(GuI7<B`?a#*y%=xm@1XPUeQkW_&6A1iLi%C^tJ?Ww+G3-uT+!e
zXCKO{bFb)Vcn>U26*-~OB=1Mkof#+{t+1t=Wh4|GO6ywa$tn`LpdfUEtGgCd@Lb#7
z(@_eR5(i@0(^sp(v;58Dip5=+66fK*z7V1B^Id${n#>`WIm&nU3jGfxN`VHF;}vv=
z-QjWO>$WLqexSw^6ayun#NB$=lQi6ECkN$720sW1-0V!S?1m-}eZl&%K@Y7{Xy6%d
zSA4sgxmOcxRTX{tyf$(E4-%5=4GaX4@4=HaSuD)#mf6ROg|d7HtlfuW&E*sMDK?B(
zrd_VzDhcA@jL4J_c_UJ4<?|ygxI1Vs*lzsaUKp(PdMA^9Cd!e0f?2_w;cE!O+R@tr
zJIHZmzo}B+qZ(i}y7h?X=slb`-TN_9a`KE%uX<~ia8V}5#AOSlqH{ptTpxNawPL(6
zX?UDBuY`M$RG^jUIUWzWBEg^fUSIJKuPcVE*O!~pKf+aZDe85<mMLGZ#6sqZug~xo
zbk(LgJtM>5#jT*mG}uB8PR*=G{;rMD^k<NEizIALE|b7DCP;@brVqELtw4%$MZdeF
zcG%(5G>`b_J*@G$Qd!BKYFff?PGB~D2sZu3l9K07;}3|G`idTi-%iYGmLl*;KgGhA
zDkGBa#d7C<?7U3d?2j<;nL8S5DN(fTZ>4$EKZ|ZDNsjFZ>jz_)D{uL6tzA<{EmNX#
z53?&Y6mc(>0zrI0XSS`y)NHz+;8sB!M>3@5&RDPM&?#TXe<|P2vf^MCVF|V}n8-)B
zkjI+r&Z_jU!~%?Vu|3fgcY`x0zcCvKfQ6zzOx+fo3-_}8VwS#dF4g!kaO|G_ISGQ3
z1v&@I^^JvYb#9g^Mlymkvcc4WGYg3!-q)85&L4N)4<>oAWaUM|tYTIv!#1U#SLh#;
z{gNp#T{sWMc~BEW7~CeWDnAq;SHFG~C!n6d`mwn}kw$+n@g>|~Gw!0ZKukj!CapH9
z4lY;g*G<YU%3Q^XpW#zH+uW2@#E34~R~WYPa<muA>EJ>ZC4Ty{>1=ai_y7!vvGSSr
zmg<WC)D33Z$Y(NVBK<wl$RSretm}or%@gjYN1rJHDXWd8@_RzG$AvA9z0{FW8qp}&
z+rc?Yd>e{>yS&hm&#erRmFftYKI!mCOJ_Z`2K<U(BmcHHfTpck%-9gEq)Hn5-3Qwx
zVaUzG4O`N%rf+yJezBihXZF&tM;A}4`$z@}`B^AF3TK3wI!~yO?*DG{7G7ArlkbMp
zKsZZ#P&7l3*r+hUPCu`EJ%BJ55XsRx81yErVrtZ(!HD`nnPa#9&C5ec2j_I=Rtl*$
z%~(oSY30j1#wv&9^Tu~Kb{7S3L+TK8Bs#r9UGPj^dp@o)CnENALuA(NBNUxg@4>bg
zE_2DV4wjs=Ilc;s3`wu6jVUwwpvXcPQWU!t|0|DV1<4QhUuVoqPGIM*wBjUM9nQ1m
zH>T=*ahhd|-{``|i0Y5+qr-#*cHja{boo6<j7k$;>xSM|e^3FkbT{xzC;y3$a(8#*
zmG&03SVTT)1$JInymR=BSmPVt#+R|&gEoyWtJ0rI3&v%M_l-T+z|eH!3OL5WDowl^
z(A<bK6dRyCc2SbkVZJTdU8Mjyd4N&%Bg(X6sxCjA2KIB|(RHoEw+1d0!nVY@Z0Sgc
z2S28_-xl9xdpyR{;$;m7`J2<N=!o)9t;nA9W;o0kL>TnHyQ#nMLpfw}`i$~hu2bX^
zI{f%z@m3LPspyR1h)jks$wO}OyX8)B4B%^|^#swekJYu&eP5g2_DTr}gp+dFRdxOm
z`iFIsjz8RQl5w~D&hzDO5nyELt~gIiL7^e8ufrkIWCtxuy=-e<N%K1#%oZ4kZbZ_9
zm2wXzC&e|u(JFG8<(%v<>v~!xn~lWM5X6^v_eBD`<;-(+)N2Y>6A2Qbo!kRzdnm`R
zTqH`(hP*VhK(ofz<z_}`ZmE?lO-^@bN*uD2Szsa9;&>^?BNfx?jR5nrqubL1ltKjN
z_uoi};~()rKDtJtIaeR$b(#OF?Je!T;TZR$A%P<ejg0M_1&9R`*CuLcPaUOeWERj^
zY9u5O3jGAREQs2jb3nX+Tqm@`Fs^n{>LL#$$adn>GW)ioN$Jp5^NRl{FQ24-O$-mE
zyAWe)<MRfi1SW_g@i^(>?eQ+ki3ojfJoi8WBPEzKU(2$7$9^i`VhUqDsUK}pn;;EG
z%r5fTDdH7_d64|UDZ;+4_Qo(cZvH?@BgREga7r@D(%rYX$=d!dOs}8}h(i5LHNBYH
z%$wL1=?<)<7RHoS#mdT!_GKI%P{$B5wShqeI|0QH$V4$AG|8ta!XESrxx1BY5U`95
z4-;XIYQl|siHlyE1BFXGtN@bsFlS!s!V9;CQX@m(S#0`+;kUlWfM1kIrNHih_?x|%
zmL}kmc9g7BrM^V_V)U6z&J^CV6-8_6lY221F&2s8i_niDzgL$%-#JoWiMSRSIRgPr
z-i3H0gjR*)<mE0~i&Nfm3G5lB6-A7J<)>vH4s+|}HZz-^NRA%H+KL$6BCPmsNwTzr
z+M78i?Qi!O7g&fBL<OzE{U(>)dr=)C`hi{IENjy&h*3{#ZMUd0-HhzurV4U0U!7O`
zz<xQ!w24|ot_j}80dVaWO<46Y*D&7k|Kf9FLct%7Yq^BkFV}gzj5f)T|3~<COa$?_
zWvgtBW?tM>GVH0E<9#@bYvg~F>D>D4RP+(ve^hM*{Nb}gTn(ZL!j3L3LML|%pS&Dh
z0%-_RAx94{Af)!`k>XSCz96Z6k6pG6&sIu}X8I%h7DL$K!m?F@gnhdQMqW3DyFOTl
z>qEdst>wCL2E}@x)MQrmUS-A^cHSJYd{GT1s%Sp!g80(;zU3}TM=b&~XI?H@y-m<|
zl2hs)hCc5Y+x<x?uJZ)6>I9ZVXSQ)!nOb%j?%IanvK=eby=pRjxsUg4Z=^p&SJ63D
zGnu5k>Duu32r8?4xmPLALOpp)lx+%$1-vjd=Mc0v>QMahbg=U)ckTh@Jwgr#)=&97
z=6c19AKoz*kOYdUGpgO%;vZBCw92(K4y&D9?wU`m-3a~*&Oj1EO`m8dO;tJ;JO5lc
zkYZhq6M!S2GW7?#C#obn@+5}5yg`~daRC%zyz(AT)X`x&_(MRBj}=^%D&MndGcfXa
z`BA}xjRk4dMr;^b>jJs#5~hQ3_8Nd_&>ctd6>gzr<>YjvN_*I#W*&dC6}``c@3o6N
zs|RSk>nz+v?t3hgq4rrYFN9kF7eke%S4q-VT+zeO5os{)a(ObPe#JLJE?5IOSr9o&
zPLe$o-cyU;2Q8TDi*r+aceg`coYu?R;n?z3kpboUV~C##j}i{wp+H(1Z&gmP=vddZ
z3DB*4wPi+`2<tp7!Z^=)8_1L5$pnW3>BKS}iW&;mHVEW;t~TzL21UmuVLCei8Lejv
zq@_5Kl^gDE)(F^jZoVw<bFi@Mtz$L%lol2odA6a98gAht3Q;780^ELeW<R@&y92sx
zEAiWREDT$FbRQsXc0RGV?!n{vWrIFbUHy*OHGvJlPLE*xoWmXps3)CB!HmB7m-jD~
z802)MfqAIHr@V#mCeSx_R{Pr1ELgdfPl%mebgB#Vb-!2Knp$!=`Vn?02)vO2PS{LB
zx9j||19`-?g@AMTmuRO1+{}=fa_V7}HYfVV>eLxHG2WvYwZY%yFuImy@^Dn{$RX@>
z4$Hf8JNCxweZpk=T9G^_8d-;r^tp{hRKCWCZlv%{v^<V`;H08j_57Iz`yGFftheQa
z#xoE^sJ$7nr+?QCQ|^Hpi<fq<w_3L}eYfqarT?e>aK-?Pid46TZYIsF{xjcLC>K0D
z{~9*FiYZ1ql?h}J4-LVvPt6H>h|Btsb?6Cm`LKL-;AQgH9fhwTZ(r1`1I;5IF8C~S
z5pp~hUlPG165V6Afu{6LUW{){3Rh}DlgAAK*;U@yc!<ZP3hHSILr0V1G4>$~rj{p-
z;poe_*6LCDD1zXO%t|0m%gk$*&M=>(QeGm4P$gs8z*eRB>gl5=>|WbKfiD|JFXyUQ
zU_`zi?fI|*HIXdMm(9|?C$|^ocqQ!{mHXys+ZegnQHi+Qn<w1+o_ePr%+p4Ag61lA
z$%e*d<Vv<zW3F52{NK?i$kJ&sc6<0ZWu8~+<@Hz$l7Km{Mh(L8V`K@T8J`yYLkqAr
zF{*#=J9-e2`;%I5Y$*!f=4=VVf|;6&od<gX9Ed`E(DTU$QjaU}$zzB94Sk(uJv~_~
zKMy|A6Z?(qFJ>EI2OuT&39@@|BuYI!Z{mD=39c!3WO&YBZjOI<8^p5wup5BEN(+$G
z{`s9Y#Ft)ZwHIWwyQ~8P#@ef}DT9dsXT45Z+|2Bj*c#J8&Z?8|R(YGg7F-pS@R~rK
z)7VCaADdtKZ^-S4Yw#urcF|Xj8g$0AaD2B);KD3+-N}p*Clruq8qMD2fCgNzC_Z#l
zHd8G~aKlp6GM39v)ugIrtj?q8VSw1^jpVQ|kcFKj2`Y@gA+%&M>HYmA%ctB==x}iP
zh2`aX!jdW<-)*!^Q{p42&{N#!Xm3)*?pKTzFgDvfIm_suJhDrD3pDJkN1nm8C!urx
zi#FM}0Jksj+<ObtOq1l$@&F1}IN6)LbR-3Pzc2+DD4h!45?hj$Iq6@ZrHKJjSJ_$F
zk$9fX0O1pWTl#3ql0hHl`(Gp-CG}#$r_;GP`f=HA%#Kf>xlJ7>U~JtfpU2z|z^<!D
z9d^40U1ed>f(Z2!eodNJ9B|?hu_N<GLl_*l^y}ypVLALGL`ddmmTqGD5ADuG90Gdr
zSWFePTNM?uCoDB&C_>~uRb(~hge^3$tvHlbqB5!Y@Ufvl(qffR5iyPH!PDnA8V({l
z!1CBnd0(D5LCfmoE4Fz0HT!y?U|hM*!g*x~<=^gOJ=Dmuvvbiyld5R0V%mISXW^uw
z8!-kzwH|XREhF^1xQIi<lp0&C8m#{k^V~~CBt3seh|{rKth#;6S$BD|2d24xjFd4|
zW^1uDXGZ?2kC!Bh+6k$D;omUwNuBgbOBklvx7d};)*U@@LjEYMRcW}OVkKR+j4wRI
z@Rx7!43+>D0yir&2Gb!N;^kfYy8Ozc7?@RbaK$G&A1?9nDD~`ww49nR1ZlH0BQ<2)
zQzuj#zw-iB0L&nAI`2k2U)^5MQixlimJ;<N@@5^J;9fZ-%jjaaE@AHS+r0r?z$!HQ
zmdLD><A*QM+^|QrB#Gtbaq`{7B_K~Sd(&K2htiHVCY5a^z_x9>4Y$mNr$Cf0>65FM
z7NlXR=Vr&NP2@krj*INU@1Ng=xX}xeqR$Ey0%ItYGgI(}Gwr+_rL{5E*2(3k)=fEw
zVD@GD&Cd%*tDB@CYK;D}qFEMn9oBiFfJx5w;3)<%g0GvuY(yh#rM+VNC^BG&#jOeg
zMC%4mF3tq-mC1d_>Hjm&<q>HF_EpJEr=r~FU|Yx^P9YxzZ6cXtV_kRMo+{$8rY%k*
zO)vO7LEOb4_#@6~M3Ca!V)6mQ&-umPF<<JE{lDSFBlQE;Gulx+$|2@E#8Am}(J$1s
zUNM^xX7wm`yLaYkP0O(MoHOgkMcnQ5y4ok~i6c&P&37;ooM3F-$LhOq1Z9US!S347
z#RZLtTQxYR@$cNj+fNrsNw%V}y1d*Q(1Ew#m)MmtTxRCnoL~cAu`1kO_ToTDkU@MN
z<`FJk+U?7L16WTgzl0s0(dg=!+*Y)@g;WJTe*DF^nQErErdsj7j95%*W?8=<(pee@
z<>KtF2xSm!kH2X64wb5D?VR_%KhIhDa<RQ(_u~Fg6?#6R$C-YjSvqjk7w?>1_jFx^
zEsNCQA^UB*ZiijoUr@7nKt6&xaGDF!_o8to>zKy=z;=vZ3oB_ZM^-^UBFD%uqq5)_
zQW&6<d_4H3r)wF#+@}X|pv`@MG_?T-AM=!YG>BT8zNT9T%%EA{I3O4XN2}y4n1|~4
zjhi=O1q`foD46$n3R2Yd=1qrB#WUeKL69-0v2z&;>*MCNPmZ(%X(xbSc5GWTIk64w
z!aW9@YJ7Iy4*;l7*rwEbP(R4PcdTf(-X&RHf%(c<<znT?h!aL6pfXZE`{c}r++!0q
z2XNy4l0~@%VCaUim<}Suz=eN`Z#jydhuo^ZaRu$xMp5Ge$itgI<$vK_npXS-t;+Kz
zjDR#Ng{>*3d9<m@hXx5bSpy;rVOW?g^hk*pcX6gweQ^*cB2_Dlm=FO5JSazU3l4a^
z)&Z`q*HM@QU~8$^L{hv*fLS^}qWUrB1Wvr0^v4VrYw#j})`|IvoF@my!Fn2`SiG><
zc7(Bg({Odn;bT{(g9~}2!Ta1E6ogQa+@TFKtu4X+s?S+ZIh16=J(CC#H$OSGT9T}h
zIri;~@ebfXm?{rs3Up_syny0+P6}d;WHGH$Yiq%LKd-ugi=E)lZl-c#2v!@+<mu_E
zV+V1fQzv))eblXzZh1@L>CEz{+@R$+%48b_sl;8Io;Swdaxuw37*3EM2{bfis@!th
zi38AI<z|)@>-;k68=O-Kq(NCAg1e5UIJ*RB+%_X$UBES2U`z&MV#c+zI$K86!f;JT
zb9jP~(1Yg^qW}Em-pF(3aBBC)+FH?k8Z8Fj9z7)aRIB~IHcq^Y5Vb=I!~$S?jP@}3
zjrQNf33%ZD#4{FulTJN+sSh@o`DSov(7>TBd}mU5(A^St_-spy?{dMhX-s69`K9Rs
zM)|lV)8WPPRxxNFw9TAO=N?xrD-c-Ik+^ci8h|ySU3JcTz(FZA$luEWa-5s1e8}uY
zCGPG$T4@Nj2n|XABv9mZZA85%m^Tmpop=)n8o~kTv{JjzYB+>DXU#x8wd5SYE;9j?
z-3+?nkqa)wpE5BDw>TndA+>To1#G_o2{iN4gryqB3=x|V-<D$BJ~Fh|<1`kl746V=
zd>`=^5J17_VNjR<^F?NbCQd|#&lWOFp^?0J95G{`ha(17E?^r9IJeHcA39|ZYRCh*
zjaZy#yKI>K*kI?j5T7i(%}ENWaPw7s{)Kfo06(hFv630t&98Q{AD4Ic8Jlwe14A-J
z#dsZzthRMk0^&JDgGW2-;0I^yNJ8bE+#^y<L4;*A+I2_R?|~y9eub2i)lf@!+|gS&
z)4*?{Q2Ysl3+}(T^Aut-O#h62EEWQm61W3~zi-k`2IoRRJ0aq|C%1P(L~MpR!w&R9
zL+KmHbM70^-M++3?V_tXY=lS31pJ^18}gZ*=CSf%AyVrr9<HoUYJCqA(ZPUV^G7ld
z&XR$T09>vT12}kf6F%{rJa7W26<6ZBp|z<E3;#9_5Y}>t!52p)@k8?O3R}2%&lV06
zQF{l)wZu@)=ICpw{N{yGYf~kL&Qu<Au}a&!cWY%m<xkw1|AOrPhg=5Zg?(M)fRVOY
zof50z8;FKtfQ&TqVd?@jw>e{RnsO%?mcC0*E|$j@)&mph$aTUiSuP(J`$?w^XL>o`
z4oCicSPdt#-&Zu2Al%IF1y(8clj-Q?0vth@D_M$*$6~sZcULY~vYECmp3)3dAWIdH
zjHTjFZnfgbCXRlP+*mA2aW21992IOKt}Tu}lN5C^Fjm2d$dOO~^NNHwy)^)qXk*{?
z!gBPv4aFjb>%Ok>(7ud7rjiE5^!9KraGL5}o?~%k$pd>rTydrszCBEpnP@f5iFnG*
z(-U!ipcH!=JaxT^JC=7>@{+|c5t`p~u{Hi417K3}C^8*ATmls#Qv{yJs}_Mz)Xy=~
zc_h$8=Hhxrd)KT%kcN3*?AxkC8C<&*pxy40ugz1Gaqy-q+0?M5TnPx*{WLu`_(3NZ
z*AKDj2^Nd)0QKocA_Xo^*fp0#=H}VxW^r+Cd01{E@GC{Q8pHHLfxa)KZoj~vBu#PW
z=IP_SQUU-U|Ekh|kM$;^DHIem97LUv=6`q!-6Ti6z@a~I<_-}={ubv?9@P~MlKz>(
z#3^k$8n}eF6SWYP?Qy5cXP5<CuS1UwB<J=>B?t=F0euhS2Po#gwJDi5fzEO~&FBMb
z2EFHwrkH#0F5T}6tZ;!?+o)tn+KedS;(Ds$;>~?@aRhsBe0ZSww>pI6T`C3Qe={5c
zC}Wo*73LOP>!F(9jGnT@%XWW2?8H59YXbIeY?YbnSx1066ptc#)(kJAm4UQc%>z1=
zE3l6mwudKTGSWIMXu@%K{s}0mO&C^!r{c5}-#tJ*{`ie<I#8}eKEEEm<rNy$!k8#F
zgD=D!U`Wj|b%7N?t{;Ngr$EBER*K9kKu~x#rGA2rKOeILIsOZ!{x#AONxMsZB~gD#
zzRKtiPm_2oa9G!Q&jElnu<2QoIP`Y)RTRau6BqlF`iitpF3$8TF-AtdCBSv9+5!Xn
z*qJ-~{drb^cfS&|jckooKh_Dg?p4C#CCDp5c=s7PBUalKJv33Qur0(*qNjLuRa)f%
z4^>?3R_r8IR-fM#L`aZ=9=taz8&(E<h!BjMj_(L4hgJRsBmT$3`wPdKKB8ua0eQ99
zX9nxJxSsDduf72o>pPHiRviF~{aV`WG)#%Op6Z;Bzo{MzPvXwU-*W~y_X?)>!WS<*
zb}=XzUQA1WKZ(fm)W_!~1}6S@*^_gLvD`epO9C9s$lp5NUx1!;D{!6nAOkY5>YPU-
zdz)F3-pc~gvaUuAJHrqq_3fb#(p)JH5P!fQi2A35{ig=@uXGuPD$Dt!Fff{p0u1vn
zi1-i7|L4W^f0YLRVb}9}ZVv*==f(RQ0RcZ99n1f*!JUiiz1tn120-*y0&TVu*V4=4
z*XZ9;$7zMT@}@rjBnph-FFNe?X)k)SH$eBdRKR32|84`51|6srCtuyabpXU+RQa1)
z;SD;d{1PkJ?=*`nfN6H??wx1ed!Y5$PiC}(nXT%myxk*{Yp5wPgHN@bHxIw_ECKQ2
z5z((Yf<ctH(Z1>;28jy@yS6O5@-O_}i{RgzuV=o07S#PG(;ocsewTd+vfZj`w|jvS
z^V~!1X{6`oMU!M=RMA%sMCzO+>YD79i#pts+6bJsl~g+C2v7e*bp0Qs)PJ&TzOp-9
zqn$giHn`RQ6FfK=P~!jZ?fm~(jqC~BJvmk5*lt68?{D6+z9(vpI8jMw2ez9h5vL$Q
zj&n3IXi}A4ENh;)e)VBeP)^yaJPiihJZTV|n}&ny{^jOXjMl)`ydnkbOJyDoY-cGe
z5refE4Xa5_M!U1%MOfFXptGGN+HGtcI?SoFK}Xj`r^G63)3q6F&-d5%Rvrs5Z(f^L
zCQjT_waq0@s@T>B)|yAXItnkafoB?Bl@T3S&jq)Wp?z+!o%l4I%w`Lr-xSyc;F{78
z4i+31eh!<K(TU)96P4)0^XJv@2R_3U_TYlSR^TO}lqIaq5A^%8LdE9$_eXsWxtOBX
zCgtCunox@NyaFnrANT;b0z-HG{jjs{-2^1ygPkJ)!`~pcApo{|8J*{bAI>ZG_T$@~
z57=L{ar$%4&9dMR^?RXacYa`h_1fsiPq4U8Lyy?+p1ngq00sK^I>ifK;hgh!`>R+(
zoIQT<9zlVfh?W(;ejN^i!`RReVFMt<zMzzCF?83z1bw3_fP)H17m9T;x&|G=0cuV;
zP6ezAGyrAbKYWEYO>s_KLv_?LbcXOw1FT>L)<xDPHBcw$)1@d_xP?84ki2lo8J4a;
z$EpLaV0=J7tZ(2WbA)L408PLzIK=1^5RUVPRzb%~Ah@V4{1YfkRwDLcdqAi-26i+*
z;zsjm<Xu-Y*v`Gz_CjmInds3}B{T=A_22=J7hr)pSS?f+iaR!#_XeWk=D?JwEJ7<H
z5paWZ;ztZA#VC(12c<wGIAp#TRmG5l8V?lJVAMKCQKR{>CJ~XaY8Wb@M-1ct&9gtA
ztc%M3Q5M5Ar$bK7?NYGW9&Ne@4*P3U(S)6L(LhkO{fMxfZm^nffI8SmU<>RkjGN#E
zSP19<KYvt$LBSQs(8XWcz=+F+(rC;7U!J2*ur{Cp)HUKg00v`6z#78S5)dBP4~l&_
z1s{P&p4XhpM5u-D;c^Rez%3P>)`up5-6yKg0rt_i2vYO?iPY_X@Ck~oBMiYa7y~qg
z5db3)(BwL59lCk<5xxFSPocd9=q6Pdpa!s_fIEb!B%%nk0`FeI4G3sF2p<*O$bz?M
zN6ii$Dvtx7VfaE%THt>)3LkTxa0X0`GH=En)HvRS{-9<5odT;-M*_vQX?3=&S}GZ5
zy?a{IS$?9V*^NZ6%vDzqRZ^d+qxnCKGS_Lbt*rHoP7{B1qUsE_@ckV|Ltu8^FVvQM
zQEU7&mG;1owN&$H0a3)*Nr5mVK;QbFXoIyeL%2&3G$IVZmW?Kjqn|3B5kKCyt@Vsr
zn}ItUBch2&{HW3Epi_&@k?f#PfubtVSc?D%0AlpSby2m-bH&a{fns~vNUZ|{PokZ}
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

literal 0
HcmV?d00001

diff --git a/sum23/lecture_materials/13_Recursion/lec_13_recursion_notes.ipynb b/sum23/lecture_materials/13_Recursion/lec_13_recursion_notes.ipynb
new file mode 100644
index 0000000..4367f61
--- /dev/null
+++ b/sum23/lecture_materials/13_Recursion/lec_13_recursion_notes.ipynb
@@ -0,0 +1,865 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Recursion"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Review 1\n",
+    "\n",
+    "- Why does Python have the complexity of separate references and objects?\n",
+    "- Why not follow the original organization we saw for everything (i.e., boxes of data with labels)?\n",
+    "    - Reason 1: Performance\n",
+    "    - Reason 2: Centralized Updates"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Before\n",
+      "After\n",
+      "End\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Reason 1: Performance\n",
+    "# Try this example in PythonTutor\n",
+    "\n",
+    "print(\"Before\")\n",
+    "x = \"this string is millions of characters\" + \"!\" * (10 ** 6)\n",
+    "print(\"After\")\n",
+    "y = x # this is fast! Why? \n",
+    "print(\"End\")\n",
+    "      # Answer: Recall that assignment just creates a reference copy"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Reason 2: Centralized Updates\n",
+    "\n",
+    "# Try this example in PythonTutor\n",
+    "alice = {\"name\":\"Alice\", \"score\":10, \"age\":30}\n",
+    "bob = {\"name\":\"Bob\", \"score\":8, \"age\":25}\n",
+    "winner = alice\n",
+    "\n",
+    "alice[\"age\"] += 1\n",
+    "print(\"Winner age:\", winner[\"age\"]) \n",
+    "# what line 9 will output?\n",
+    "# Answer: 31"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Review 2\n",
+    "\n",
+    "Assignment creates reference copy immaterial of whether it is into a variable or into another data structure. Recall that references can be stored either in a variable or inside object instances for other data structures."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Try this example in PythonTutor\n",
+    "\n",
+    "alice = {\"name\":\"Alice\", \"score\":10, \"age\":30}\n",
+    "bob = {\"name\":\"Bob\", \"score\":8, \"age\":25}\n",
+    "team = [alice, bob]              \n",
+    "# TODO: discuss does this create new inner dictionaries?\n",
+    "# Answer: this line only create a new object for outer \n",
+    "# list, which directly stores references to existing\n",
+    "# dictionary object instances\n",
+    "\n",
+    "players = {\"A\": alice, \"B\": bob} \n",
+    "# TODO: discuss does this create new inner dictionaries?\n",
+    "# Answer: this line only create a new object for outer \n",
+    "# dictionary, which directly stores references to \n",
+    "# existing dictionary object instances"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Review 3"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "True\n",
+      "False\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Use 'in' to determine if the given thing is in my_list\n",
+    "my_list = [\"meet\", \"me\", \"after\", \"2:00pm\"]\n",
+    "print(\"me\" in my_list)       # TODO: predict the output\n",
+    "print(\"Meena\" in my_list)    # TODO: predict the output"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "False\n",
+      "False\n",
+      "True\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Let's try a nested list\n",
+    "my_list = [11, \"meet\", [\"me\", \"them\", \"us\"],  [84, 19, 22], \"school\", 2.54]\n",
+    "print(\"me\" in my_list)       # TODO: predict the output\n",
+    "print(84 in my_list)         # TODO: predict the output\n",
+    "print(11 in my_list)         # TODO: predict the output"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Warmup 1"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[11, 'meet', ['me', 'them', 'us'], [84, 19, 22], 'school', 2.54]\n",
+      "True\n",
+      "True\n",
+      "False\n"
+     ]
+    }
+   ],
+   "source": [
+    "def search_list_depth2(target, some_list):\n",
+    "    ''' returns True if thing in some_list, False otherwise'''\n",
+    "    for thing in some_list:\n",
+    "        #print(thing, type(thing))\n",
+    "        if type(thing) != list:\n",
+    "            if target == thing:\n",
+    "                return True\n",
+    "            else:\n",
+    "                continue # do we need this? (answer: no)\n",
+    "        else: # its a list\n",
+    "            if target in thing:\n",
+    "                return True\n",
+    "            else: \n",
+    "                continue # do we need this? (answer: no)\n",
+    "                \n",
+    "    return False  # after all possible searching....not found\n",
+    "\n",
+    "print(my_list)\n",
+    "print(search_list_depth2(\"school\", my_list))  # in list\n",
+    "print(search_list_depth2(22, my_list))        # in nested list\n",
+    "print(search_list_depth2(\"house\", my_list))   # not anywhere"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Warmup 2"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "True\n",
+      "False\n",
+      "True\n",
+      "False\n"
+     ]
+    }
+   ],
+   "source": [
+    "list_3_deep = [22, [33, 44, [55, 66], 77], 88]\n",
+    "\n",
+    "# let's try it our previous function\n",
+    "print(search_list_depth2(22, list_3_deep))  # in list\n",
+    "print(search_list_depth2(99, list_3_deep))  # not in list\n",
+    "\n",
+    "# write other tests to be sure that it works\n",
+    "print(search_list_depth2(33, list_3_deep))  # in nested list\n",
+    "print(search_list_depth2(55, list_3_deep))  # in nested nested list"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def search_list_depth3(target, some_list):\n",
+    "    ''' returns True if thing in some_list, False otherwise\n",
+    "        NOTE: Anna hasn't checked if this code works (it probably isn't perfect yet)\n",
+    "            The point is just to illustate that as the list gets deeper, we have to add more\n",
+    "            layers of nested if statements\n",
+    "    '''\n",
+    "    for thing in some_list:\n",
+    "        #print(thing, type(thing))\n",
+    "        if type(thing) != list:\n",
+    "            if target == thing:\n",
+    "                return True\n",
+    "            else:\n",
+    "                continue # do we need this? (answer: no)\n",
+    "        else: # its a list\n",
+    "            if target in thing:\n",
+    "                return True\n",
+    "            for thing2 in thing:\n",
+    "                if type(thing) != list:\n",
+    "                    if target == thing:\n",
+    "                        return True\n",
+    "                    else:\n",
+    "                        continue # do we need this? (answer: no)\n",
+    "                else: # its a list\n",
+    "                    if target in thing:\n",
+    "                        return True\n",
+    "                \n",
+    "    return False  # after all possible searching....not found\n",
+    "\n",
+    "print(my_list)\n",
+    "print(search_list_depth2(\"school\", my_list))  # in list\n",
+    "print(search_list_depth2(22, my_list))        # in nested list\n",
+    "print(search_list_depth2(\"house\", my_list))   # not anywhere"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# what about ANY depth list? \n",
+    "# that is the goal of today's lecture"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Learning Objectives\n",
+    "\n",
+    "After today's Lecture you will be able to: \n",
+    "\n",
+    "Define recursion and be able to identify\n",
+    "- base case\n",
+    "- recursive case\n",
+    "- infinite recursion\n",
+    "\n",
+    "Explain why the following can be recursively defined\n",
+    "- lists\n",
+    "- dictionaries\n",
+    "\n",
+    "Trace a recursive function\n",
+    "- involving numeric computation\n",
+    "- involving nested data structures"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "<div>\n",
+    "<img src=\"attachment:Droste_effect.png\" width=\"450\"/>\n",
+    "</div>"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Announcements\n",
+    "Quiz 6 is due today\n",
+    "\n",
+    "Project deadlines are unusual for P8, P9, P10 (use the extra time next week to study for the exam)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Recursion is defined as the process of defining something in terms of itself.\n",
+    "\n",
+    "**Good example:**\n",
+    "\n",
+    "*Hofstadter's Law*: “It always takes longer than you expect, even when you take into account *Hofstadter's Law*.” (From Gödel, Escher, Bach)\n",
+    "\n",
+    "**Unhelpful self-reference example:**\n",
+    "\n",
+    "*mountain*: “a landmass that projects conspicuously above its surroundings and is higher than a *hill*”\n",
+    "\n",
+    "*hill*: “a usually rounded natural elevation of land lower than a *mountain*”\n",
+    "(From Merriam-Webster dictionary)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "**Mathematical example:**\n",
+    "\n",
+    "A number x is a *positive even number* if:\n",
+    "- x is 2 or\n",
+    "- x equals another *positive even number* plus two\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"attachment:Recursive%20structure.png\" width=\"450\"/>\n",
+    "</div>"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "**Term**: branch\n",
+    "\n",
+    "**Definition**: wooden stick, with an end splitting into other *branches*, OR terminating with a leaf\n",
+    "\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"attachment:Trees.png\" width=\"400\"/>\n",
+    "</div>"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "<div>\n",
+    "<img src=\"attachment:Base_case_recursive_case.png\" width=\"250\"/>\n",
+    "</div>"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "**Term**: directory\n",
+    "\n",
+    "**Definition**: a collection of files and *directories*\n",
+    "    \n",
+    "<div>\n",
+    "<img src=\"attachment:Directory_structure-2.png\" width=\"450\"/>\n",
+    "</div>    "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Define recursion and be able to identify \n",
+    "- base case\n",
+    "- recursive case\n",
+    "- infinite recursion"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Factorial of a number"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Goal: work from examples to get to recursive code\n",
+    "\n",
+    "#### Step 1: Come up with examples\n",
+    "\n",
+    "```python\n",
+    "1! = 1\n",
+    "2! = 1*2 = 2\n",
+    "3! = 1*2*3 = 6\n",
+    "4! = 1*2*3*4 = 24\n",
+    "5! = 1*2*3*4*5 = 120\n",
+    "```\n",
+    "\n",
+    "#### Step 2: Identify self-reference\n",
+    "```python\n",
+    "1! =  # don't need a pattern at the start\n",
+    "2! = \n",
+    "3! = \n",
+    "4! = \n",
+    "5! = \n",
+    "```\n",
+    "\n",
+    "#### Step 3: Recursive definition\n",
+    "```python\n",
+    "1! is ???\n",
+    "N! is ??? for N > 1\n",
+    "```\n",
+    "\n",
+    "#### Step 4: Convert to Python code\n",
+    "- **Rule 1**: Base case should always be defined and be terminal\n",
+    "- **Rule 2**: Recursive case should make progress towards base case"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def fact(n):\n",
+    "    if n == 1:\n",
+    "        return 1\n",
+    "    p = fact(n-1)                                   \n",
+    "    return n * p"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### How does Python keep all the variables separate?\n",
+    "- Frames\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"attachment:Frames.png\" width=\"450\"/>\n",
+    "</div> "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Try this in PythonTutor\n",
+    "fact(3)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "<div>\n",
+    "<img src=\"attachment:Factorial.png\" width=\"500\"/>\n",
+    "</div> "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### RecursionError\n",
+    "\n",
+    "#### If there is no base case what happens in the above example? \n",
+    "- recursion never ends......infinite recursion\n",
+    "\n",
+    "#### infinite recursion can also happen if the recursive case does not move towards the base"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [
+    {
+     "ename": "RecursionError",
+     "evalue": "maximum recursion depth exceeded",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mRecursionError\u001b[0m                            Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[2], line 6\u001b[0m\n\u001b[1;32m      4\u001b[0m     p \u001b[38;5;241m=\u001b[39m bad_fact(n\u001b[38;5;241m-\u001b[39m\u001b[38;5;241m1\u001b[39m)                                   \n\u001b[1;32m      5\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n\u001b[0;32m----> 6\u001b[0m \u001b[43mbad_fact\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m3\u001b[39;49m\u001b[43m)\u001b[49m\n",
+      "Cell \u001b[0;32mIn[2], line 4\u001b[0m, in \u001b[0;36mbad_fact\u001b[0;34m(n)\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mbad_fact\u001b[39m(n):\n\u001b[1;32m      2\u001b[0m     \u001b[38;5;66;03m#if n == 1:\u001b[39;00m\n\u001b[1;32m      3\u001b[0m     \u001b[38;5;66;03m#    return 1\u001b[39;00m\n\u001b[0;32m----> 4\u001b[0m     p \u001b[38;5;241m=\u001b[39m \u001b[43mbad_fact\u001b[49m\u001b[43m(\u001b[49m\u001b[43mn\u001b[49m\u001b[38;5;241;43m-\u001b[39;49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m                                   \n\u001b[1;32m      5\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n",
+      "Cell \u001b[0;32mIn[2], line 4\u001b[0m, in \u001b[0;36mbad_fact\u001b[0;34m(n)\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mbad_fact\u001b[39m(n):\n\u001b[1;32m      2\u001b[0m     \u001b[38;5;66;03m#if n == 1:\u001b[39;00m\n\u001b[1;32m      3\u001b[0m     \u001b[38;5;66;03m#    return 1\u001b[39;00m\n\u001b[0;32m----> 4\u001b[0m     p \u001b[38;5;241m=\u001b[39m \u001b[43mbad_fact\u001b[49m\u001b[43m(\u001b[49m\u001b[43mn\u001b[49m\u001b[38;5;241;43m-\u001b[39;49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m                                   \n\u001b[1;32m      5\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n",
+      "    \u001b[0;31m[... skipping similar frames: bad_fact at line 4 (2970 times)]\u001b[0m\n",
+      "Cell \u001b[0;32mIn[2], line 4\u001b[0m, in \u001b[0;36mbad_fact\u001b[0;34m(n)\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mbad_fact\u001b[39m(n):\n\u001b[1;32m      2\u001b[0m     \u001b[38;5;66;03m#if n == 1:\u001b[39;00m\n\u001b[1;32m      3\u001b[0m     \u001b[38;5;66;03m#    return 1\u001b[39;00m\n\u001b[0;32m----> 4\u001b[0m     p \u001b[38;5;241m=\u001b[39m \u001b[43mbad_fact\u001b[49m\u001b[43m(\u001b[49m\u001b[43mn\u001b[49m\u001b[38;5;241;43m-\u001b[39;49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m                                   \n\u001b[1;32m      5\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n",
+      "\u001b[0;31mRecursionError\u001b[0m: maximum recursion depth exceeded"
+     ]
+    }
+   ],
+   "source": [
+    "def bad_fact(n):\n",
+    "    #if n == 1:\n",
+    "    #    return 1\n",
+    "    p = bad_fact(n-1)                                   \n",
+    "    return n * p\n",
+    "bad_fact(3)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [
+    {
+     "ename": "RecursionError",
+     "evalue": "maximum recursion depth exceeded in comparison",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mRecursionError\u001b[0m                            Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[3], line 6\u001b[0m\n\u001b[1;32m      4\u001b[0m     p \u001b[38;5;241m=\u001b[39m bad_fact2(n)                                   \n\u001b[1;32m      5\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n\u001b[0;32m----> 6\u001b[0m \u001b[43mbad_fact2\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m3\u001b[39;49m\u001b[43m)\u001b[49m\n",
+      "Cell \u001b[0;32mIn[3], line 4\u001b[0m, in \u001b[0;36mbad_fact2\u001b[0;34m(n)\u001b[0m\n\u001b[1;32m      2\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m n \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[1;32m      3\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;241m1\u001b[39m\n\u001b[0;32m----> 4\u001b[0m p \u001b[38;5;241m=\u001b[39m \u001b[43mbad_fact2\u001b[49m\u001b[43m(\u001b[49m\u001b[43mn\u001b[49m\u001b[43m)\u001b[49m                                   \n\u001b[1;32m      5\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n",
+      "Cell \u001b[0;32mIn[3], line 4\u001b[0m, in \u001b[0;36mbad_fact2\u001b[0;34m(n)\u001b[0m\n\u001b[1;32m      2\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m n \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[1;32m      3\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;241m1\u001b[39m\n\u001b[0;32m----> 4\u001b[0m p \u001b[38;5;241m=\u001b[39m \u001b[43mbad_fact2\u001b[49m\u001b[43m(\u001b[49m\u001b[43mn\u001b[49m\u001b[43m)\u001b[49m                                   \n\u001b[1;32m      5\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n",
+      "    \u001b[0;31m[... skipping similar frames: bad_fact2 at line 4 (2969 times)]\u001b[0m\n",
+      "Cell \u001b[0;32mIn[3], line 4\u001b[0m, in \u001b[0;36mbad_fact2\u001b[0;34m(n)\u001b[0m\n\u001b[1;32m      2\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m n \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[1;32m      3\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;241m1\u001b[39m\n\u001b[0;32m----> 4\u001b[0m p \u001b[38;5;241m=\u001b[39m \u001b[43mbad_fact2\u001b[49m\u001b[43m(\u001b[49m\u001b[43mn\u001b[49m\u001b[43m)\u001b[49m                                   \n\u001b[1;32m      5\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m n \u001b[38;5;241m*\u001b[39m p\n",
+      "Cell \u001b[0;32mIn[3], line 2\u001b[0m, in \u001b[0;36mbad_fact2\u001b[0;34m(n)\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mbad_fact2\u001b[39m(n):\n\u001b[0;32m----> 2\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[43mn\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m==\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;241;43m1\u001b[39;49m:\n\u001b[1;32m      3\u001b[0m         \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;241m1\u001b[39m\n\u001b[1;32m      4\u001b[0m     p \u001b[38;5;241m=\u001b[39m bad_fact2(n)                                   \n",
+      "\u001b[0;31mRecursionError\u001b[0m: maximum recursion depth exceeded in comparison"
+     ]
+    }
+   ],
+   "source": [
+    "def bad_fact2(n):\n",
+    "    if n == 1:\n",
+    "        return 1\n",
+    "    p = bad_fact2(n)                                   \n",
+    "    return n * p\n",
+    "bad_fact2(3)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Self-check: Tracing example"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Tracing a recursive function in the Python Tutor\n",
+    "# do this on your own\n",
+    "# Example 1\n",
+    "\n",
+    "def foo(n):\n",
+    "    # I always start recursive functions by printing the parameters\n",
+    "    print(\"Starting foo with n= \" , n)\n",
+    "    if n < 0:\n",
+    "        print(\"base case, returning 100\")\n",
+    "        return 100\n",
+    "    else:\n",
+    "        temp = foo(n-2)\n",
+    "        print(\"Ending foo returning \" ,  (n + temp))\n",
+    "        return n + temp\n",
+    "\n",
+    "foo(13)\n",
+    "\n",
+    "# What happens if we replace < with == ? \n",
+    "#    Recursion error if the original n is odd"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "in collatz with n =  13\n",
+      "in the odd case\n",
+      "in collatz with n =  40\n",
+      "In the even case\n",
+      "in collatz with n =  20\n",
+      "In the even case\n",
+      "in collatz with n =  10\n",
+      "In the even case\n",
+      "in collatz with n =  5\n",
+      "in the odd case\n",
+      "in collatz with n =  16\n",
+      "In the even case\n",
+      "in collatz with n =  8\n",
+      "In the even case\n",
+      "in collatz with n =  4\n",
+      "In the even case\n",
+      "in collatz with n =  2\n",
+      "In the even case\n",
+      "in collatz with n =  1\n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "1"
+      ]
+     },
+     "execution_count": 5,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# Example 2\n",
+    "# The Collatz Conjecture problem \n",
+    "# https://en.wikipedia.org/wiki/Collatz_conjecture\n",
+    "# run this in Python Tutor on your ownn\n",
+    "\n",
+    "def collatz(n):\n",
+    "    # I always start recursive functions by printing the parameters\n",
+    "    print(\"in collatz with n = \" ,  n)\n",
+    "    if n == 1:\n",
+    "        return 1 # base case\n",
+    "    elif n % 2 == 0:\n",
+    "        print(\"In the even case\")\n",
+    "        return collatz(n//2)\n",
+    "    else:\n",
+    "        print(\"in the odd case\")\n",
+    "        return collatz (3*n+1)\n",
+    "\n",
+    "collatz(13)   # try other numbers\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Trace a recursive function involving nested data structures"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Write a recursive function to search *ANY* list of lists/tuples \n",
+    "# for a given word\n",
+    "def search_list_recursive(target, some_list):\n",
+    "    ''' returns True if target in some_list, False otherwise'''\n",
+    "    \n",
+    "    # base case 1: success!\n",
+    "    if target in some_list:\n",
+    "        return True\n",
+    "    \n",
+    "    # Strategy: iterate over all elements in some_list\n",
+    "    success = False\n",
+    "    for thing in some_list:\n",
+    "        # Because of base case 1, we know that thing is not target\n",
+    "        # TODO also want to include tuples\n",
+    "        if type(thing) == type([]):\n",
+    "            success = search_list_recursive(target, thing)\n",
+    "            if success:\n",
+    "                break\n",
+    "\n",
+    "    return success"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "True\n",
+      "True\n",
+      "True\n",
+      "True\n",
+      "False\n"
+     ]
+    }
+   ],
+   "source": [
+    "fav_stuff = [\"apples\", \"peaches\", \"oranges\", \n",
+    "             [\"A\", \"B\", \"C\", \"D\"],\n",
+    "             [[\"sedan\", \"SUV car\", \"minivan\"], \n",
+    "              [\"bicycle\", \"road bike\", \"scooter\"]]\n",
+    "            ]\n",
+    "\n",
+    "print(search_list_recursive(\"apples\", fav_stuff))   # outer list\n",
+    "print(search_list_recursive(\"D\", fav_stuff))        # list @ depth 1\n",
+    "print(search_list_recursive(\"road bike\", fav_stuff))# list @ depth 2\n",
+    "print(search_list_recursive(\"bicycle\", fav_stuff))  # list @ depth 2\n",
+    "print(search_list_recursive(\"pizza\", fav_stuff))    # doesn't exist"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 17,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[\n",
+      "A\n",
+      "\t[\n",
+      "\t1\n",
+      "\t2\n",
+      "\t3\n",
+      "\t]\n",
+      "B\n",
+      "\t[\n",
+      "\t4\n",
+      "\t\t[\n",
+      "\t\ti\n",
+      "\t\tii\n",
+      "\t\t]\n",
+      "\t]\n",
+      "]\n"
+     ]
+    }
+   ],
+   "source": [
+    "def pretty_print(items, indent = 0):\n",
+    "    \"\"\"\n",
+    "    prints the nested data structure with proper indentation\n",
+    "    \"\"\"\n",
+    "    # base case: not a list\n",
+    "    # edit: moving base case into a for loop\n",
+    "#     if type(items) != type([]):\n",
+    "#         print(indent * \"\\t\" + items)\n",
+    "#         return\n",
+    "    print(indent * \"\\t\" + \"[\")\n",
+    "    for i in items:\n",
+    "        \n",
+    "        # base case:\n",
+    "        if type(i) != type([]):\n",
+    "            print(indent * \"\\t\" + i)\n",
+    "        else:\n",
+    "            # recursive case\n",
+    "            pretty_print(i, indent + 1)\n",
+    "    print(indent * \"\\t\" + \"]\")  \n",
+    "\n",
+    "#data = [\"A\", \"B\", \"C\"]\n",
+    "data = [\"A\", [\"1\", \"2\", \"3\",], \"B\", [\"4\", [\"i\", \"ii\"]]]\n",
+    "pretty_print(data, 0)\n",
+    "             \n",
+    "# [ \"A\", \n",
+    "#   [ \"1\", \n",
+    "#     \"2\", \n",
+    "#     \"3\"], \n",
+    "#   \"B\", \n",
+    "# ], \n",
+    "             "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Explain why the following can be recursively defined\n",
+    "\n",
+    "- lists\n",
+    "- dictionaries\n",
+    "- JSON objects"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### dictionaries can have a recursive structure"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "person_info = { \"name\": \"Meena\", \n",
+    "               \"age\": 250, \n",
+    "               \"family\" : {\"spouse\": \"Rogers\", \n",
+    "                           \"child1\": {\"name\": \"Viyan\", \n",
+    "                                        \"age\": 2}, \n",
+    "                          }\n",
+    "              }"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# let's try to search through a deep dictionary. \n",
+    "def search_dict_recursive(target_key, some_dict):\n",
+    "    ''' returns the Value associated with target_key if tarket_key \n",
+    "    in any level of some_dict, None otherwise'''\n",
+    "    if target_key in some_dict:  # base case\n",
+    "        return some_dict[target_key]\n",
+    "    else:\n",
+    "        for key in some_dict:\n",
+    "            if type(some_dict[key]) == dict: # recursive case\n",
+    "                 return search_dict_recursive(target_key, \\\n",
+    "                                              some_dict[key])        \n",
+    "    return None\n",
+    "\n",
+    "print(search_dict_recursive(\"child1\", person_info))\n",
+    "print(search_dict_recursive(\"father\", person_info))"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.6"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/sum23/lecture_materials/14_Comprehensions/lec_14_comprehensions_notes.ipynb b/sum23/lecture_materials/14_Comprehensions/lec_14_comprehensions_notes.ipynb
new file mode 100644
index 0000000..1c61d62
--- /dev/null
+++ b/sum23/lecture_materials/14_Comprehensions/lec_14_comprehensions_notes.ipynb
@@ -0,0 +1,1342 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Comprehensions"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# import statements\n",
+    "import math\n",
+    "import csv"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Using `lambda`\n",
+    "- `lambda` functions are a way to abstract a function reference\n",
+    "- lambdas are simple functions with:\n",
+    "    - multiple possible parameters\n",
+    "    - single expression line as the function body\n",
+    "- lambdas are useful abstractions for:\n",
+    "    - mathematical functions\n",
+    "    - lookup operations\n",
+    "- lambdas are often associated with a collection of values within a list\n",
+    "- Syntax: \n",
+    "```python \n",
+    "lambda parameters: expression\n",
+    "```"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Let's sort the menu in different ways\n",
+    "- whenever you need to custom sort a dictionary, you must convert dict to list of tuples\n",
+    "- recall that you can use items method (applicable only to a dictionary)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'broccoli': 4.99,\n",
+       " 'orange': 1.19,\n",
+       " 'pie': 3.95,\n",
+       " 'donut': 1.25,\n",
+       " 'muffin': 2.25,\n",
+       " 'cookie': 0.79,\n",
+       " 'milk': 1.65,\n",
+       " 'bread': 5.99}"
+      ]
+     },
+     "execution_count": 2,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "menu = { \n",
+    "        'broccoli': 4.99,\n",
+    "        'orange': 1.19,\n",
+    "        'pie': 3.95, \n",
+    "        'donut': 1.25,    \n",
+    "        'muffin': 2.25,\n",
+    "        'cookie': 0.79,  \n",
+    "        'milk':1.65, \n",
+    "        'bread': 5.99}  \n",
+    "menu"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "dict_items([('broccoli', 4.99), ('orange', 1.19), ('pie', 3.95), ('donut', 1.25), ('muffin', 2.25), ('cookie', 0.79), ('milk', 1.65), ('bread', 5.99)])"
+      ]
+     },
+     "execution_count": 3,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "menu.items()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort menu using item names (keys)\n",
+    "- let's first solve this using extract function\n",
+    "- recall that extract function deals with one of the inner items in the outer data structure\n",
+    "    - outer data structure is list\n",
+    "    - inner data structure is tuple"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def extract(menu_tuple):\n",
+    "    return menu_tuple[1]"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[('cookie', 0.79),\n",
+       " ('orange', 1.19),\n",
+       " ('donut', 1.25),\n",
+       " ('milk', 1.65),\n",
+       " ('muffin', 2.25),\n",
+       " ('pie', 3.95),\n",
+       " ('broccoli', 4.99),\n",
+       " ('bread', 5.99)]"
+      ]
+     },
+     "execution_count": 6,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted(menu.items(), key = extract)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'cookie': 0.79,\n",
+       " 'orange': 1.19,\n",
+       " 'donut': 1.25,\n",
+       " 'milk': 1.65,\n",
+       " 'muffin': 2.25,\n",
+       " 'pie': 3.95,\n",
+       " 'broccoli': 4.99,\n",
+       " 'bread': 5.99}"
+      ]
+     },
+     "execution_count": 7,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict(sorted(menu.items(), key = extract))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Now let's solve the same problem using lambdas\n",
+    "- if you are having trouble thinking through the lambda solution directly:\n",
+    "    - write an extract function\n",
+    "    - then abstract it to a lambda"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'cookie': 0.79,\n",
+       " 'orange': 1.19,\n",
+       " 'donut': 1.25,\n",
+       " 'milk': 1.65,\n",
+       " 'muffin': 2.25,\n",
+       " 'pie': 3.95,\n",
+       " 'broccoli': 4.99,\n",
+       " 'bread': 5.99}"
+      ]
+     },
+     "execution_count": 8,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict(sorted(menu.items(), key = lambda menu_tuple : menu_tuple[1]))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort menu using prices (values)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# same as above\n",
+    "dict(sorted(menu.items(), key = lambda ??? : ???))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort menu using length of item names (keys)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'pie': 3.95,\n",
+       " 'milk': 1.65,\n",
+       " 'donut': 1.25,\n",
+       " 'bread': 5.99,\n",
+       " 'orange': 1.19,\n",
+       " 'muffin': 2.25,\n",
+       " 'cookie': 0.79,\n",
+       " 'broccoli': 4.99}"
+      ]
+     },
+     "execution_count": 10,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict(sorted(menu.items(), key = lambda menu_tuple :len( menu_tuple[0]) ))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort menu using decreasing order of prices - v1"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'bread': 5.99,\n",
+       " 'broccoli': 4.99,\n",
+       " 'pie': 3.95,\n",
+       " 'muffin': 2.25,\n",
+       " 'milk': 1.65,\n",
+       " 'donut': 1.25,\n",
+       " 'orange': 1.19,\n",
+       " 'cookie': 0.79}"
+      ]
+     },
+     "execution_count": 11,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict(sorted(menu.items(), key = lambda menu_tuple: menu_tuple[1], reverse = True))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort menu using decreasing order of prices - v2"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'bread': 5.99,\n",
+       " 'broccoli': 4.99,\n",
+       " 'pie': 3.95,\n",
+       " 'muffin': 2.25,\n",
+       " 'milk': 1.65,\n",
+       " 'donut': 1.25,\n",
+       " 'orange': 1.19,\n",
+       " 'cookie': 0.79}"
+      ]
+     },
+     "execution_count": 12,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict(sorted(menu.items(), key = lambda menu_tuple: -menu_tuple[1]))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Iterable\n",
+    "\n",
+    "- What is an iterable? Anything that you can write a for loop to iterate over is called as an iterable.\n",
+    "- Examples of iteratables:\n",
+    "    - `list`, `str`, `tuple`, `range()` (any sequence)\n",
+    "    - `dict`"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## List comprehensions\n",
+    "\n",
+    "- concise way of generating a new list based on existing list item manipulation \n",
+    "- short syntax - easier to read, very difficult to debug\n",
+    "\n",
+    "<pre>\n",
+    "new_list = [expression for val in iterable if conditional_expression]\n",
+    "</pre>\n",
+    "- iteratble: reference to any iterable object instance\n",
+    "- conditional_expression: filters the values in the original list based on a specific requirement\n",
+    "- expression: can simply be val or some other transformation of val\n",
+    "- enclosing [ ] represents new list\n",
+    "\n",
+    "Best approach:\n",
+    "- write for clause first\n",
+    "- if condition expression next\n",
+    "- expression in front of for clause last"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Which animals are in all caps?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 13,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Original: ['lion', 'badger', 'RHINO', 'GIRAFFE']\n",
+      "New list: ['RHINO', 'GIRAFFE']\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Recap: retain animals in all caps\n",
+    "animals = [\"lion\", \"badger\", \"RHINO\", \"GIRAFFE\"]\n",
+    "caps_animals = []\n",
+    "print(\"Original:\", animals)\n",
+    "\n",
+    "for val in animals:\n",
+    "    if val.upper() == val:\n",
+    "         caps_animals.append(val)  \n",
+    "        \n",
+    "print(\"New list:\", caps_animals)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Now let's solve the same problem using list comprehension\n",
+    "<pre>\n",
+    "new_list = [expression for val in iterable if conditional_expression]\n",
+    "</pre>\n",
+    "For the below example:\n",
+    "- iterable: animals variable (storing reference to a list object instance)\n",
+    "- conditional_expression: val.upper() == val\n",
+    "- expression: val itself"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 14,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Original: ['lion', 'badger', 'RHINO', 'GIRAFFE']\n",
+      "New list: ['RHINO', 'GIRAFFE']\n"
+     ]
+    }
+   ],
+   "source": [
+    "# List comprehension version\n",
+    "print(\"Original:\", animals)\n",
+    "\n",
+    "caps_animals = [val for val in animals if val.upper() == val ]\n",
+    "print(\"New list:\", caps_animals)\n",
+    "\n",
+    "# final version to uncomment if you want:\n",
+    "# caps_animals = [val for val in animals if val.upper() == val]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Why is to tougher to debug?\n",
+    "- you cannot use a print function call in a comprehension\n",
+    "- you need to decompose each part and test it separately\n",
+    "- recommended to write the comprehension with a simpler example"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Other than a badger, what animals can you see at Henry Vilas Zoo?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 15,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Original: ['lion', 'badger', 'RHINO', 'GIRAFFE']\n",
+      "New list: ['lion', 'RHINO', 'GIRAFFE']\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(\"Original:\", animals)\n",
+    "\n",
+    "# non_badger_zoo_animals = ???\n",
+    "\n",
+    "# step 1\n",
+    "# non_badger_zoo_animals = [??? for val in animals ???]\n",
+    "                          \n",
+    "# # step 2\n",
+    "# non_badger_zoo_animals = [??? for val in animals if val != \"badger\"]                          \n",
+    "\n",
+    "# # step 3\n",
+    "non_badger_zoo_animals = [val for val in animals if val != \"badger\"]\n",
+    "\n",
+    "print(\"New list:\", non_badger_zoo_animals)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Can we convert all of the animals to all caps?\n",
+    "- if clause is optional"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 16,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Original: ['lion', 'badger', 'RHINO', 'GIRAFFE']\n",
+      "New list: ['LION', 'BADGER', 'RHINO', 'GIRAFFE']\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(\"Original:\", animals)\n",
+    "\n",
+    "all_caps_animals = [ val.upper() for val in animals  ]\n",
+    "print(\"New list:\", all_caps_animals)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Can we generate a list to store length of each animal name?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 17,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Original: ['lion', 'badger', 'RHINO', 'GIRAFFE']\n",
+      "New list: [4, 6, 5, 7]\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(\"Original:\", animals)\n",
+    "\n",
+    "animals_name_length = [ len(val) for val in animals  ]\n",
+    "print(\"New list:\", animals_name_length)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Using if ... else ... in a list comprehension\n",
+    "- syntax changes slightly for if ... else ...\n",
+    "\n",
+    "<pre>\n",
+    "new_list = [expression if conditional_expression else alternate_expression for val in iterable ]\n",
+    "</pre>\n",
+    "\n",
+    "- when an item satifies the if clause, you don't execute the else clause\n",
+    "    - expression is the item in new list when if condition is satified\n",
+    "- when an item does not satisfy the if clause, you execute the else clause\n",
+    "    - alternate_expression is the item in new list when if condition is not satisfied\n",
+    "    \n",
+    "- if ... else ... clauses need to come before for (not the same as just using if clause)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### What if we only care about the badger? Replace non-badger animals with \"some animal\"."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 18,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Original: ['lion', 'badger', 'RHINO', 'GIRAFFE']\n",
+      "New list: ['some animal', 'badger', 'some animal', 'some animal']\n"
+     ]
+    }
+   ],
+   "source": [
+    "animals = [\"lion\", \"badger\", \"RHINO\", \"GIRAFFE\"]\n",
+    "print(\"Original:\", animals)\n",
+    "\n",
+    "#non_badger_zoo_animals = ???\n",
+    "\n",
+    "# # step 1:\n",
+    "# non_badger_zoo_animals = [   ???  for val in animals ???]\n",
+    "\n",
+    "# # step 2:\n",
+    "# non_badger_zoo_animals = [ ??? if val == \"badger\" else ??? for val in animals]\n",
+    "\n",
+    "# # step 3: fill in \"val\"\n",
+    " #non_badger_zoo_animals = [val if val == \"badger\" else ?? for val in animals]\n",
+    "\n",
+    "# # step 4: fill in else case\n",
+    "non_badger_zoo_animals = [val if val == \"badger\" else \"some animal\" for val in animals]\n",
+    "\n",
+    "print(\"New list:\", non_badger_zoo_animals)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Dict comprehensions\n",
+    "- Version 1:\n",
+    "<pre>\n",
+    "{expression for val in iterable if condition}\n",
+    "</pre>\n",
+    "- expression has the form <pre>key: val</pre>\n",
+    "<br/>\n",
+    "- Version 2 --- the dict function call by passing list comprehension as argument:\n",
+    "<pre>dict([expression for val in iterable if condition])</pre>\n",
+    "- expression has the form <pre>(key, val)</pre>"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Create a dict to map number to its square (for numbers 1 to 5)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 19,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}\n"
+     ]
+    }
+   ],
+   "source": [
+    "squares_dict = dict()\n",
+    "for val in range(1, 6):\n",
+    "    squares_dict[val] = val * val\n",
+    "print(squares_dict)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Dict comprehension --- version 1"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 20,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}\n"
+     ]
+    }
+   ],
+   "source": [
+    "square_dict = { i : i * i for i in range(1, 6) }\n",
+    "print(square_dict)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Dict comprehension --- version 2"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 21,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}\n"
+     ]
+    }
+   ],
+   "source": [
+    "square_dict = dict( [ (i, i * i ) for i in range(1,6) ] )\n",
+    "print(square_dict)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Tuple unpacking\n",
+    "- you can directly specific variables to unpack the items inside a tuple"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 23,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "('Bob', '32')\n",
+      "('Cindy', '45')\n",
+      "('Alice', '39')\n",
+      "('Unknown', 'None')\n",
+      "--------------------\n",
+      "Bob 32\n",
+      "Cindy 45\n",
+      "Alice 39\n",
+      "Unknown None\n"
+     ]
+    }
+   ],
+   "source": [
+    "scores_dict = {\"Bob\": \"32\", \"Cindy\" : \"45\", \"Alice\": \"39\", \"Unknown\": \"None\"}\n",
+    "\n",
+    "for tuple_item in scores_dict.items():\n",
+    "    print(tuple_item)\n",
+    "    \n",
+    "print(\"--------------------\")\n",
+    "\n",
+    "for key, val in scores_dict.items():\n",
+    "    print(key, val)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### From square_dict, let's generate cube_dict"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 24,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}"
+      ]
+     },
+     "execution_count": 24,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "square_dict"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 26,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "{1: 1, 2: 8, 3: 27, 4: 64, 5: 125}\n"
+     ]
+    }
+   ],
+   "source": [
+    "cube_dict = {key: int(math.sqrt(val)) ** 3 for key, val in square_dict.items()}\n",
+    "print(cube_dict)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Convert Madison *F temperature to *C\n",
+    "- <pre>C = 5 / 9 * (F - 32)</pre>"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "madison_fahrenheit = {'Nov': 28,'Dec': 20, 'Jan': 10,'Feb': 14}\n",
+    "print(\"Original:\", madison_fahrenheit)\n",
+    "\n",
+    "madison_celsius = {key: ??? \\\n",
+    "                   for key, val in madison_fahrenheit.items()}\n",
+    "print(\"New dict:\", madison_celsius)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Convert type of values in a dictionary"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "scores_dict = {\"Bob\": \"32\", \"Cindy\" : \"45\", \"Alice\": \"39\", \"Unknown\": \"None\"}\n",
+    "print(\"Original:\", scores_dict)\n",
+    "\n",
+    "updated_scores_dict = {???}\n",
+    "                       \n",
+    "# # step 1: add for statement\n",
+    "# updated_scores_dict = { ??? for key, val in scores_dict.items() ???}\n",
+    "\n",
+    "# # step 2: add if statement - but use if/else to handle None values\n",
+    "# updated_scores_dict = { ??? if val.isdigit() else ??? for key, val in scores_dict.items()}\n",
+    "\n",
+    "# # step 3: fill in \"if\" and \"else\" values\n",
+    "# updated_scores_dict = {key: int(val) if val.isdigit() else None \\\n",
+    "#                        for key, val in scores_dict.items()}\n",
+    "\n",
+    "print(\"New dict:\", updated_scores_dict)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Create a dictionary to map each player to their max score"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "scores_dict = {\"Bob\": [18, 72, 61, 5, 83], \n",
+    "               \"Cindy\" : [27, 11, 55, 73, 87], \n",
+    "               \"Alice\": [16, 33, 42, 89, 90], \n",
+    "               \"Meena\": [39, 93, 9, 3, 55]}\n",
+    "\n",
+    "{player: max(scores) for player, scores in scores_dict.items()}"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Practice problems - sorted + lambda"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Use sorted and lambda function to sort this list of dictionaries based on the score, from low to high"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "scores = [  {\"name\": \"Bob\", \"score\": 32} ,\n",
+    "            {\"name\": \"Cindy\", \"score\" : 45}, \n",
+    "            {\"name\": \"Alice\", \"score\": 39}\n",
+    "     ]\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Now, modify the lambda function part alone to sort the list of dictionaries based on the score, from high to low"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Now, go back to the previous lambda function definition and use sorted parameters to sort the list of dictionaries based on the score, from high to low"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Student Information Survey dataset analysis"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def median(items):\n",
+    "    items.sort()\n",
+    "    n = len(items)\n",
+    "    if n % 2 != 0:\n",
+    "        middle = items[n // 2]\n",
+    "    else:\n",
+    "        first_middle = items[n // 2]\n",
+    "        second_middle = items[(n // 2) - 1]\n",
+    "        middle = (first_middle + second_middle) / 2\n",
+    "    return middle"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# inspired by https://automatetheboringstuff.com/2e/chapter16/\n",
+    "def process_csv(filename):\n",
+    "    exampleFile = open(filename, encoding=\"utf-8\")  \n",
+    "    exampleReader = csv.reader(exampleFile) \n",
+    "    exampleData = list(exampleReader)        \n",
+    "    exampleFile.close()  \n",
+    "    return exampleData\n",
+    "\n",
+    "survey_data = process_csv('cs220_survey_data.csv')\n",
+    "cs220_header = survey_data[0]\n",
+    "cs220_data = survey_data[1:]\n",
+    "cs220_header"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def cell(row_idx, col_name):\n",
+    "    \"\"\"\n",
+    "    Returns the data value (cell) corresponding to the row index and \n",
+    "    the column name of a CSV file.\n",
+    "    \"\"\"\n",
+    "    col_idx = cs220_header.index(col_name) \n",
+    "    val = cs220_data[row_idx][col_idx]  \n",
+    "    \n",
+    "    # handle missing values\n",
+    "    if val == '':\n",
+    "        return None\n",
+    "    \n",
+    "    # handle type conversions\n",
+    "    if col_name == \"Age\":\n",
+    "        val = int(val)\n",
+    "        if 0 < val <= 118:\n",
+    "            return val\n",
+    "        else:\n",
+    "            # Data cleaning\n",
+    "            return None\n",
+    "    elif col_name in ['Zip Code',]:\n",
+    "        return int(val)\n",
+    "    elif col_name in ['Latitude', 'Longitude']:\n",
+    "        return float(val)\n",
+    "    \n",
+    "    return val"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def transform(header, data):\n",
+    "    \"\"\"\n",
+    "    Transform data into a list of dictionaries, while taking care of type conversions\n",
+    "    \"\"\"\n",
+    "    #should be defined outside the for loop, because it stores the entire data\n",
+    "    dict_list = []     \n",
+    "    for row_idx in range(len(data)):\n",
+    "        row = data[row_idx]\n",
+    "        #should be defined inside the for loop, because it represents one row as a \n",
+    "        #dictionary\n",
+    "        new_row = {}         \n",
+    "        for i in range(len(header)):\n",
+    "            val = cell(row_idx, header[i])\n",
+    "            new_row[header[i]] = val\n",
+    "        dict_list.append(new_row)\n",
+    "    return dict_list\n",
+    "        \n",
+    "transformed_data = transform(cs220_header, cs220_data)\n",
+    "transformed_data[:2] # top 2 rows"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def bucketize(data, bucket_column):\n",
+    "    \"\"\"\n",
+    "    data: expects list of dictionaries\n",
+    "    bucket_column: column for bucketization\n",
+    "    generates and returns bucketized data based on bucket_column\n",
+    "    \"\"\"\n",
+    "    # Key: unique bucketize column value; Value: list of dictionaries \n",
+    "    # (rows having that unique column value)\n",
+    "    buckets = dict()\n",
+    "    for row_dict in data:\n",
+    "        col_value = row_dict[bucket_column]\n",
+    "        if col_value not in buckets:\n",
+    "            buckets[col_value] = []\n",
+    "        buckets[col_value].append(row_dict)\n",
+    "        \n",
+    "    return buckets"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### What is the average age of \"LEC001\" students?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "lecture_buckets = bucketize(transformed_data, \"Lecture\")\n",
+    "lec001_bucket = lecture_buckets[\"LEC001\"]\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### What is the average age of \"LEC001\" students who like \"pineapple\" pizza topping?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### What are the sleep habits of the youngest students?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "min_age = None\n",
+    "\n",
+    "# pass 1: find minimum age\n",
+    "\n",
+    "\n",
+    "# pass 2: find sleep habit of students with minimum age\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### How many students are there is each lecture?\n",
+    "- Create a `dict` mapping each lecture to the count of students."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# v1\n",
+    "{}"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# v2\n",
+    "{}"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Find whether 15 oldest students in the class are runners?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "students_with_age = []"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Compute median age per lecture in one step using `dict` and `list` comprehension."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "age_by_lecture = {} # Key: lecture; Value: list of ages\n",
+    "\n",
+    "for lecture in lecture_buckets:\n",
+    "    lecture_students = lecture_buckets[lecture]\n",
+    "    ages = []\n",
+    "    for student in lecture_students:\n",
+    "        age = student[\"Age\"]\n",
+    "        if age == None:\n",
+    "            continue\n",
+    "        ages.append(age)\n",
+    "    age_by_lecture[lecture] = ages\n",
+    "\n",
+    "median_age_by_lecture = {} # Key: lecture; Value: median age of that lecture\n",
+    "for lecture in age_by_lecture:\n",
+    "    median_age = median(age_by_lecture[lecture])\n",
+    "    median_age_by_lecture[lecture] = median_age\n",
+    "    \n",
+    "print(median_age_by_lecture)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Compute max age per lecture in one step using `dict` and `list` comprehension."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Practice problems - comprehensions"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Generate a new list where each number is a square of the original nummber in numbers list"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "numbers = [44, 33, 56, 21, 19]\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Generate a new list of floats from vac_rates, that is rounded to 3 decimal points"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "vac_rates = [23.329868, 51.28772, 76.12232, 17.2, 10.5]\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Generate a new list of ints from words, that contains length of each word"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "words = ['My', 'very', 'educated', 'mother', 'just', 'served', 'us', 'noodles']\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Create 2 dictionaries to map each player to their min and avg score"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "scores_dict = {\"Bob\": [18, 72, 61, 5, 83], \n",
+    "               \"Cindy\" : [27, 11, 55, 73, 87], \n",
+    "               \"Alice\": [16, 33, 42, 89, 90], \n",
+    "               \"Meena\": [39, 93, 9, 3, 55]}\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Student Information Survey dataset"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Create dict mapping unique age to count of students with that age.\n",
+    "- Order the dictionary based on increasing order of ages\n",
+    "- Make sure to drop student dictionaries which don't have Age column information (we already did this in a previous example)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Find whether 15 youngest students in the class are pet owners?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.6"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/sum23/lecture_materials/14_Func_Refs/lec_14_function_references_notes.ipynb b/sum23/lecture_materials/14_Func_Refs/lec_14_function_references_notes.ipynb
new file mode 100644
index 0000000..63f982d
--- /dev/null
+++ b/sum23/lecture_materials/14_Func_Refs/lec_14_function_references_notes.ipynb
@@ -0,0 +1,1420 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Function references"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Recursion review"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Nested data structures are defined recursively.\n",
+    "\n",
+    "# A Python list can contain lists\n",
+    "# A Python dictionary can contain dictionaries\n",
+    "# A JSON dictionary can contain a JSON dictionary"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Trace Recursion by hand\n",
+    "# Run this on your own in Python Tutor\n",
+    "\n",
+    "def mystery(a, b): \n",
+    "    # precondition: assume a > 0 and b > 0\n",
+    "    if b == 1: \n",
+    "        return a\n",
+    "    return a * mystery(a, b - 1)\n",
+    "\n",
+    "# make a function call here\n",
+    "mystery(3, 2)\n",
+    "\n",
+    "# TODO: what does the mystery function compute?\n",
+    "\n",
+    "# Question: What would be the result of the below function call?\n",
+    "# mystery(-3, -1) \n",
+    "# Answer: "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Learning Objectives:\n",
+    "\n",
+    "- Define a function reference and trace code that uses function references.\n",
+    "- Explain the default use of `sorted()` on lists of tuples, and dictionaries.\n",
+    "- Sort a list of tuples, a list of dictionaries, or a dictionary using a function as a key.\n",
+    "- Use a lambda expression when sorting."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Functions are objects\n",
+    "\n",
+    "- Every data in Python is an object instance, including a function definition\n",
+    "- Implications:\n",
+    "    - variables can reference functions\n",
+    "    - lists/dicts can reference functions\n",
+    "    - we can pass function references to other functions\n",
+    "    - we can pass lists of function references to other functions"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Example 1: function object references\n",
+    "#### Use PyTutor to step through this example"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "3\n"
+     ]
+    }
+   ],
+   "source": [
+    "l1 = [1, 2, 3]    # Explanation: l1 should reference a new list object\n",
+    "l2 = l1           # Explanation: l2 should reference whatever l1 references\n",
+    "\n",
+    "def f(l):         # Explanation: f should reference a new function object\n",
+    "    return l[-1]\n",
+    "\n",
+    "g = f             # Explanation: g should reference whatever f references\n",
+    "\n",
+    "num = f(l2)       # Explanation: l should reference whatever l2 references\n",
+    "                  # Explanation: num should reference whatever f returns\n",
+    "\n",
+    "print(num)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Function references\n",
+    "\n",
+    "- Since function definitions are objects in Python, function reference is a variable that refers to a function object.\n",
+    "- In essence, it gives a function another name"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "3\n",
+      "3\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Both these calls would have run the same code, returning the same result\n",
+    "num = f(l1)\n",
+    "print(num)\n",
+    "num = g(l2) \n",
+    "print(num)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Example 2: function references can be passed as arguments to another function, wow!\n",
+    "#### Use PyTutor to step through this example"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Hello there!\n",
+      "Hello there!\n",
+      "Wash your hands and stay well, bye!\n",
+      "Wash your hands and stay well, bye!\n",
+      "Wash your hands and stay well, bye!\n"
+     ]
+    }
+   ],
+   "source": [
+    "def say_hi():\n",
+    "    print(\"Hello there!\")\n",
+    "\n",
+    "def say_bye():\n",
+    "    print(\"Wash your hands and stay well, bye!\")\n",
+    "    \n",
+    "f = say_hi\n",
+    "f()\n",
+    "f()\n",
+    "f = say_bye\n",
+    "f()\n",
+    "f()\n",
+    "f()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Hello there!\n",
+      "Hello there!\n",
+      "Wash your hands and stay well, bye!\n",
+      "Wash your hands and stay well, bye!\n",
+      "Wash your hands and stay well, bye!\n"
+     ]
+    }
+   ],
+   "source": [
+    "for i in range(2):\n",
+    "    say_hi()\n",
+    "\n",
+    "for i in range(3):\n",
+    "    say_bye()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Hello there!\n",
+      "Hello there!\n",
+      "Wash your hands and stay well, bye!\n",
+      "Wash your hands and stay well, bye!\n",
+      "Wash your hands and stay well, bye!\n"
+     ]
+    }
+   ],
+   "source": [
+    "def call_n_times(f, n):\n",
+    "    for i in range(n):\n",
+    "        f()\n",
+    "\n",
+    "call_n_times(say_hi, 2)\n",
+    "call_n_times(say_bye, 3)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Wash your hands and stay well, bye!\n"
+     ]
+    },
+    {
+     "ename": "TypeError",
+     "evalue": "'NoneType' object is not callable",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[7], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mcall_n_times\u001b[49m\u001b[43m(\u001b[49m\u001b[43msay_bye\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m3\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;66;03m# uncomment to see TypeError\u001b[39;00m\n\u001b[1;32m      3\u001b[0m \u001b[38;5;66;03m# Question: Why does this give TypeError?\u001b[39;00m\n\u001b[1;32m      4\u001b[0m \u001b[38;5;66;03m# Answer: when you specify say_bye(), you are invoking the function, which returns None\u001b[39;00m\n\u001b[1;32m      5\u001b[0m \u001b[38;5;66;03m#         (default return value when return statement is not defined)\u001b[39;00m\n",
+      "Cell \u001b[0;32mIn[6], line 3\u001b[0m, in \u001b[0;36mcall_n_times\u001b[0;34m(f, n)\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mcall_n_times\u001b[39m(f, n):\n\u001b[1;32m      2\u001b[0m     \u001b[38;5;28;01mfor\u001b[39;00m i \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mrange\u001b[39m(n):\n\u001b[0;32m----> 3\u001b[0m         \u001b[43mf\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n",
+      "\u001b[0;31mTypeError\u001b[0m: 'NoneType' object is not callable"
+     ]
+    }
+   ],
+   "source": [
+    "call_n_times(say_bye(), 3) # uncomment to see TypeError\n",
+    "\n",
+    "# Question: Why does this give TypeError?\n",
+    "# Answer: when you specify say_bye(), you are invoking the function, which returns None\n",
+    "#         (default return value when return statement is not defined)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Example 3: Apply various transformations to all items on a list"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "L = [\"1\", \"23\", \"456\"]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Write apply_to_each function"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# a. Input: list object reference, function object\n",
+    "# b. Output: new list reference to transformed object\n",
+    "# c. Pseudocode:\n",
+    "#        1. Initiliaze new empty list for output - we don't want to modify \n",
+    "#           the input list!      \n",
+    "#        2. Process each item in input list\n",
+    "#        3. Apply the function passed as arugment to 2nd parameter\n",
+    "#        4. And the transformed item into output list\n",
+    "#        5. return output list\n",
+    "\n",
+    "def apply_to_each(original_L, f):\n",
+    "    \"\"\"\n",
+    "    returns a new list with transformed items, by applying f function\n",
+    "    to each item in the original list\n",
+    "    \"\"\"\n",
+    "\n",
+    "    # step 1: create a new list\n",
+    "    new_vals = []\n",
+    "\n",
+    "    # step 2: iterate through items in original_L\n",
+    "    for val in original_L:\n",
+    "        # step 3: apply f to each item\n",
+    "        new_vals.append( f(val) )\n",
+    "    \n",
+    "    # step 4: return new list\n",
+    "    return new_vals \n",
+    "    pass"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Apply `int` function to list L using apply_to_each function"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "34"
+      ]
+     },
+     "execution_count": 10,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# what does int do?\n",
+    "int(\"34\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[1, 23, 456]"
+      ]
+     },
+     "execution_count": 11,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "apply_to_each(L, int)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Write strip_dollar function"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# a. Input: string value\n",
+    "# b. Output: transformed string value\n",
+    "# c. Pseudocode: \n",
+    "#       1. Check whether input string begins with $ - \n",
+    "#          what string method do you need here?\n",
+    "#        2. If so remove it\n",
+    "\n",
+    "def strip_dollar(s):\n",
+    "    \"\"\"\n",
+    "    Removes the beginning $ sign from string s\n",
+    "    \"\"\"\n",
+    "\n",
+    "    # Step 1: check whether input string begins with $\n",
+    "    if s.startswith(\"$\"):\n",
+    "        # Step 2: if so, remove it\n",
+    "        s = s[1:]\n",
+    "    \n",
+    "    # Step 3: return the new string\n",
+    "    return s"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Apply strip_dollar function and then apply int function"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 13,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "['1', '23', '456']\n",
+      "[1, 23, 456]\n"
+     ]
+    }
+   ],
+   "source": [
+    "L = [\"$1\", \"23\", \"$456\"]\n",
+    "vals = apply_to_each(L, strip_dollar)\n",
+    "print(vals)\n",
+    "vals = apply_to_each(vals, int)\n",
+    "print(vals)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Apply upper method call to the below list L by using apply_to_each function"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 14,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "['AAA', 'BBB', 'CCC']\n"
+     ]
+    }
+   ],
+   "source": [
+    "L = [\"aaa\", \"bbb\", \"ccc\"]\n",
+    "vals = apply_to_each(L, str.upper)\n",
+    "print(vals)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 16,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "'AAA'"
+      ]
+     },
+     "execution_count": 16,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# remember, these are equivalent:\n",
+    "\"aaa\".upper()\n",
+    "str.upper(\"aaa\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Custom sorting nested data structures\n",
+    "\n",
+    "Examples:\n",
+    "- list of tuples\n",
+    "- list of dictionaries"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Example 4: Custom sort a list of tuples"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 17,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[('JJ', 'Watt', 31),\n",
+       " ('Jonathan', 'Taylor', 22),\n",
+       " ('Melvin', 'Gordon', 27),\n",
+       " ('Russel', 'Wilson', 32),\n",
+       " ('Troy', 'Fumagalli', 88)]"
+      ]
+     },
+     "execution_count": 17,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "badgers_in_nfl = [ # tuple storing (first name, last name, age)\n",
+    "                   (\"Jonathan\", \"Taylor\", 22 ), \n",
+    "                   (\"Russel\", \"Wilson\", 32), \n",
+    "                   (\"Troy\", \"Fumagalli\", 88),\n",
+    "                   (\"Melvin\", \"Gordon\", 27), \n",
+    "                   (\"JJ\", \"Watt\", 31),\n",
+    "                 ]\n",
+    "\n",
+    "sorted(badgers_in_nfl) # or sort() method by default uses first element to sort"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### What what if we want to sort by the last name or by the length of the name?\n",
+    "\n",
+    "- `sorted` function and `sort` method takes a function reference as keyword argument for the parameter `key`\n",
+    "- We can define functions that take one of the inner data structure as argument and return the field based on which we want to perform the sorting.\n",
+    "    - We then pass a reference to such a function as argument to the parameter `key`.\n",
+    "    \n",
+    "#### Define functions that will enable extraction of item at each tuple index position. These functions only deal with a single tuple processing"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 19,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def extract_fname(player_tuple):  # function must have exactly one parameter\n",
+    "    return player_tuple[0]\n",
+    "\n",
+    "def extract_lname(player_tuple):\n",
+    "    return player_tuple[1]\n",
+    "\n",
+    "def extract_age(player_tuple):\n",
+    "    return player_tuple[2]"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 20,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "'JJ'"
+      ]
+     },
+     "execution_count": 20,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# Test extract_fname function on the tuple ('JJ', 'Watt', 31)\n",
+    "extract_fname(('JJ', 'Watt', 31))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players by their last name"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 21,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[('Troy', 'Fumagalli', 88),\n",
+       " ('Melvin', 'Gordon', 27),\n",
+       " ('Jonathan', 'Taylor', 22),\n",
+       " ('JJ', 'Watt', 31),\n",
+       " ('Russel', 'Wilson', 32)]"
+      ]
+     },
+     "execution_count": 21,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted(badgers_in_nfl, key = extract_lname) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players by their age"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 22,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[('Jonathan', 'Taylor', 22),\n",
+       " ('Melvin', 'Gordon', 27),\n",
+       " ('JJ', 'Watt', 31),\n",
+       " ('Russel', 'Wilson', 32),\n",
+       " ('Troy', 'Fumagalli', 88)]"
+      ]
+     },
+     "execution_count": 22,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted(badgers_in_nfl, key = extract_age) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players by descending order of age"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 23,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[('Troy', 'Fumagalli', 88),\n",
+       " ('Russel', 'Wilson', 32),\n",
+       " ('JJ', 'Watt', 31),\n",
+       " ('Melvin', 'Gordon', 27),\n",
+       " ('Jonathan', 'Taylor', 22)]"
+      ]
+     },
+     "execution_count": 23,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted(badgers_in_nfl, key = extract_age, reverse = True) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players by length of first name + length of last name"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 25,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[('JJ', 'Watt', 31),\n",
+       " ('Russel', 'Wilson', 32),\n",
+       " ('Melvin', 'Gordon', 27),\n",
+       " ('Troy', 'Fumagalli', 88),\n",
+       " ('Jonathan', 'Taylor', 22)]"
+      ]
+     },
+     "execution_count": 25,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "def compute_name_length(player_tuple):\n",
+    "    first_name = extract_fname(player_tuple)\n",
+    "    last_name = extract_lname(player_tuple)\n",
+    "    return len(first_name) + len(last_name)\n",
+    "\n",
+    "sorted(badgers_in_nfl, key = compute_name_length) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Example 5: Custom sort a list of dictionaries"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 26,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "hurricanes = [\n",
+    "    {\"name\": \"A\", \"year\": 2000, \"speed\": 150},\n",
+    "    {\"name\": \"B\", \"year\": 1980, \"speed\": 100},\n",
+    "    {\"name\": \"C\", \"year\": 1990, \"speed\": 250},\n",
+    "]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Extract hurricane at index 0"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 27,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'name': 'A', 'year': 2000, 'speed': 150}"
+      ]
+     },
+     "execution_count": 27,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "hurricanes[0]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Extract hurricane at index 1"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 28,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'name': 'B', 'year': 1980, 'speed': 100}"
+      ]
+     },
+     "execution_count": 28,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "hurricanes[1]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Can you compare hurricane at index 0 and hurricane at index 1 using \"<\" operator?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 29,
+   "metadata": {},
+   "outputs": [
+    {
+     "ename": "TypeError",
+     "evalue": "'<' not supported between instances of 'dict' and 'dict'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[29], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mhurricanes\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m<\u001b[39;49m\u001b[43m \u001b[49m\u001b[43mhurricanes\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m]\u001b[49m \u001b[38;5;66;03m#uncomment to see TypeError\u001b[39;00m\n",
+      "\u001b[0;31mTypeError\u001b[0m: '<' not supported between instances of 'dict' and 'dict'"
+     ]
+    }
+   ],
+   "source": [
+    "hurricanes[0] < hurricanes[1] #uncomment to see TypeError"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### What about calling sorted method by passing hurricanes as argument?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 30,
+   "metadata": {},
+   "outputs": [
+    {
+     "ename": "TypeError",
+     "evalue": "'<' not supported between instances of 'dict' and 'dict'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[30], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[38;5;28;43msorted\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mhurricanes\u001b[49m\u001b[43m)\u001b[49m \u001b[38;5;66;03m# Doesn't work because there isn't a defined \"first\" key in a dict.\u001b[39;00m\n\u001b[1;32m      2\u001b[0m \u001b[38;5;66;03m# Unlike tuple, where the first item can be considered \"first\" by ordering.\u001b[39;00m\n",
+      "\u001b[0;31mTypeError\u001b[0m: '<' not supported between instances of 'dict' and 'dict'"
+     ]
+    }
+   ],
+   "source": [
+    "sorted(hurricanes) # Doesn't work because there isn't a defined \"first\" key in a dict.\n",
+    "# Unlike tuple, where the first item can be considered \"first\" by ordering."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort hurricanes based on the year"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 31,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[{'name': 'B', 'year': 1980, 'speed': 100},\n",
+       " {'name': 'C', 'year': 1990, 'speed': 250},\n",
+       " {'name': 'A', 'year': 2000, 'speed': 150}]"
+      ]
+     },
+     "execution_count": 31,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# a. Input: single hurricane's dict\n",
+    "# b. Output: return \"year\" value from the dict\n",
+    "\n",
+    "def get_year(hurricane_dict):\n",
+    "    return hurricane_dict[\"year\"]\n",
+    "\n",
+    "sorted(hurricanes, key = get_year)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort hurricanes in descending order of their year"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 32,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[{'name': 'A', 'year': 2000, 'speed': 150},\n",
+       " {'name': 'C', 'year': 1990, 'speed': 250},\n",
+       " {'name': 'B', 'year': 1980, 'speed': 100}]"
+      ]
+     },
+     "execution_count": 32,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted(hurricanes, key = get_year, reverse = True) \n",
+    "# alternatively get_year function could return negative of year \n",
+    "# --- that produces the same result as passing True as argument to reverse parameter"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort hurricanes in ascending order of their speed"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 34,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[{'name': 'C', 'year': 1990},\n",
+       " {'name': 'B', 'year': 1980, 'speed': 100},\n",
+       " {'name': 'A', 'year': 2000, 'speed': 150}]"
+      ]
+     },
+     "execution_count": 34,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "hurricanes = [\n",
+    "    {\"name\": \"A\", \"year\": 2000, \"speed\": 150},\n",
+    "    {\"name\": \"B\", \"year\": 1980, \"speed\": 100},\n",
+    "    {\"name\": \"C\", \"year\": 1990}, # notice the missing speed key\n",
+    "]\n",
+    "\n",
+    "def get_speed(hurricane):\n",
+    "    if not \"speed\" in hurricane:\n",
+    "        return 0\n",
+    "    return hurricane[\"speed\"]\n",
+    "\n",
+    "sorted(hurricanes, key = get_speed)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Example 6: How can you pass string method to sorted function?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 36,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "['A', 'C', 'b', 'd', 'e']"
+      ]
+     },
+     "execution_count": 36,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted([\"A\", \"b\", \"e\", \"C\", \"d\"])"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 37,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "['A', 'b', 'C', 'd', 'e']"
+      ]
+     },
+     "execution_count": 37,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted([\"A\", \"b\", \"e\", \"C\", \"d\"], key = str.upper) \n",
+    "# hint: to capitalize \"hello\", we call \"hello\".upper() or str.upper(\"hello\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Sorting dictionary by keys / values"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Example 7: sorting dictionaries"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 38,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'bob': 20, 'alice': 8, 'alex': 9, 'cindy': 15}"
+      ]
+     },
+     "execution_count": 38,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "players = {\n",
+    "    \"bob\": 20, \n",
+    "    \"alice\": 8, \n",
+    "    \"alex\": 9, \n",
+    "    \"cindy\": 15} # Key: player_name; Value: score\n",
+    "players"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### This only returns a list of sorted keys. What if we want to create a new sorted dictionary object directly using sorted function?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 39,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "['alex', 'alice', 'bob', 'cindy']"
+      ]
+     },
+     "execution_count": 39,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "sorted(players) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Let's learn about items method on a dictionary\n",
+    "- returns a list of tuples\n",
+    "- each tuple item contains two items: key and value"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 40,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "dict_items([('bob', 20), ('alice', 8), ('alex', 9), ('cindy', 15)])"
+      ]
+     },
+     "execution_count": 40,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "players.items()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Write an extract function to extract dict value (that is player score), using items method return value"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 45,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def extract_score(player_tuple):\n",
+    "    print(player_tuple)\n",
+    "    return player_tuple[1]"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# FYI, lambda version\n",
+    "dict( sorted(players.items(), key = lambda item: item[1] ))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Sort players dict by key"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 47,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "('bob', 20)\n",
+      "('alice', 8)\n",
+      "('alex', 9)\n",
+      "('cindy', 15)\n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "[('alice', 8), ('alex', 9), ('cindy', 15), ('bob', 20)]"
+      ]
+     },
+     "execution_count": 47,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# we'll walk through this step-by-step\n",
+    "# step1: \n",
+    "# sorted(???, key = ???)\n",
+    "\n",
+    "# step 2: fill in blanks\n",
+    "# sorted(players, key = extract_score)  # --> uncomment!\n",
+    "\n",
+    "# step 3: evaluate the input, is it right?\n",
+    "# no -- what's happening? see next cell\n",
+    "# We want the input to extract_score to be a tuple, not a key\n",
+    "\n",
+    "# fix the code\n",
+    "sorted(players.items(), key = extract_score) # --> uncomment"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 44,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "o\n",
+      "l\n",
+      "l\n",
+      "i\n"
+     ]
+    }
+   ],
+   "source": [
+    "# when we call sorted(players, key = extract_score), this is what gets compared under the hood:\n",
+    "for item in players:\n",
+    "    print(item[1])"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "How can you convert sorted list of tuples back into a `dict`?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 50,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "('bob', 20)\n",
+      "('alice', 8)\n",
+      "('alex', 9)\n",
+      "('cindy', 15)\n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "{'alice': 8, 'alex': 9, 'cindy': 15, 'bob': 20}"
+      ]
+     },
+     "execution_count": 50,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict (sorted(players.items(), key = extract_score)) # --> uncomment"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Using `lambda`\n",
+    "- `lambda` functions are a way to abstract a function reference\n",
+    "- lambdas are simple functions with:\n",
+    "    - multiple possible parameters\n",
+    "    - single expression line as the function body\n",
+    "- lambdas are useful abstractions for:\n",
+    "    - mathematical functions\n",
+    "    - lookup operations\n",
+    "- lambdas are often associated with a collection of values within a list\n",
+    "- Syntax: \n",
+    "```python \n",
+    "lambda parameters: expression\n",
+    "```"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Now let's write the same solution using lambda."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 51,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'alice': 8, 'alex': 9, 'cindy': 15, 'bob': 20}"
+      ]
+     },
+     "execution_count": 51,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict( sorted(players.items(), key = lambda item: item[1] ))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### What about sorting dictionary by values using lambda?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# same as previous example\n",
+    "dict(sorted(players.items(), key = ???))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Now let's sort players dict using length of player name."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 52,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "{'bob': 20, 'alex': 9, 'alice': 8, 'cindy': 15}"
+      ]
+     },
+     "execution_count": 52,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "dict(sorted(players.items(), key = lambda item : len(item[0])))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Self-practice: Use lambdas to solve the NFL sorting questions"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "print(badgers_in_nfl)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players using their first name"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players using their last name"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players using their age"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Sort players using the length of first name and last name"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.6"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
-- 
GitLab