From d0c8ab82fe7cadca301832744fc08996a80680c9 Mon Sep 17 00:00:00 2001 From: Paul XPS Date: Tue, 27 Nov 2018 02:00:47 -0600 Subject: [PATCH] Moved usbMsgPtr to usb_buff ram successfully. Deleted shared_usb.h because it was a copy of shared_dict_usb.h This build_stm .hex does include some NROM flash updates to allow checking if the last byte programmed successfully because was having weird problems with that. But not ready to commit all those changes and they're highly unrelated to this commit. Now that usb code doesn't use any .data nor .bss need to fully separate the USB firmware code from the application. Main way to do this will be to have usb code be effectively entirely interrupt driven. Thinking the best way to initialize usb will to have the application code jump to the USB ISR and maybe use some messaging system with the 2 unused usb_buff indexes (4Bytes). The USB code will include the vector table, so it will point to the reset handler, but that will point to the application code's reset handler, just need to make sure that's at a fixed location. The USB code is just over 1KByte last I checked, so dedicating 2KByte should be good. Erase granularity is 1 page (1KB on C6, 2KB on RB). So that will work well. Write protection granularity is 4KByte, but really we shouldn't need to use write protection as there will always be the built in bootloader to save a bricked device. --- firmware/build_stm/inlretro_stm.bin | Bin 20444 -> 20940 bytes firmware/build_stm/inlretro_stm.elf | Bin 203936 -> 205760 bytes firmware/build_stm/inlretro_stm.hex | 2497 ++++++++++++++------------- firmware/build_stm/inlretro_stm.map | 783 +++++---- firmware/source/usb.c | 12 + firmware/source/usb.h | 1 - firmware/source_stm_only/usbstm.c | 65 +- firmware/source_stm_only/usbstm.h | 27 +- shared/shared_dict_usb.h | 2 +- shared/shared_usb.h | 23 - 10 files changed, 1735 insertions(+), 1675 deletions(-) delete mode 100644 shared/shared_usb.h diff --git a/firmware/build_stm/inlretro_stm.bin b/firmware/build_stm/inlretro_stm.bin index 1a9588cfc551f9d49c036864a51bd6d5953287f1..6fd776b66fe76342f8d619c82c0ded60b2b4e953 100644 GIT binary patch delta 11466 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 delta 10907 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 Cq6WJF diff --git a/firmware/build_stm/inlretro_stm.elf b/firmware/build_stm/inlretro_stm.elf index cba581de66a49d07bee0357ad252b36241c52e51..ca2ae04945a2b21fb72e08058482d372ad152ab4 100644 GIT binary patch literal 205760 zcmeFZ3w)DBx<5YeJ4u_iK+_hmO>b|K7TSj10l5?i4TLr+$VJ?iizY3Fl#9fI8bBq0 ztQB=F6kXbaqNuB=YmL@BT6NtcM|U@=x&qbRvRvYEb&cz;ZE0!#-+7aki+g_Ood4(l z`Tx)V^O=_SeP*7SdFGk#T%KoU-m-meg;@{;GV~*oEW%>%5~7+2>XIlSB2i8x5}`;N zLq@Z7=f@QS`M83p*yBY$_9(&+D^Fx8M1_Fr;Cw>ZqYU#y=^~3s;HwHyP>LiZBAhN0 z{^AI51ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC4 z90861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$ zz!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A z0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1 zBft^h2yg^A0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8 zI0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd50geDi zfFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC490861M}Q;15#R`L z1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC490861 zM}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgG za0EC49D)CL5lAG`yM(AN;<6 zB?L|nxV7;O9;?PkTBA)GH)&07NLC7;3V}xletq3`-E`OUWl3bO>3PfZ^W)qX8lEo~ z-9#7dK3YDaA*j9Ilwz9Twq+<9^`(MO2qgDDRiSlOJKx+QG`U>Dlu=p2NpJ@gfpHgO z$@9wQ$N|-x(McoxF*~Aiq92TYEqZE{HELzl#;Dg^Z#3MmPs&O=;nsH%MPSs$G%}8q z3Oey?@m?CQ_`Tw5#gB?XMT9a|nW!A6%u`NQ&Qxj$`!y*ml^d0v;-5sK*E>nz_rW&( zZp(7Is4m8|#7^}8@Q=w6PLjZii)!N5bwc`|2gVXT$s<2gP9<~5b)YLq9oand? z0BIpl5)XNYd`$jGx=EwHOQ~_(QXXy8*xb64j>Ry?_g!nx-S z=k8R7a<2=g%)XQ&hEi?}r<4q*EGD6pMRH1#V{(~bywqBAIDgS_{?4#QQ^P44mr}y5 zm=I1GH=MFKtXH~U&}pt}#TdU@mvR*^Cag=s6}k{VSwV~s#uBp7MvMfH3Qq(c1)gsr zh(y$)F&O+Vh@XB&h=Pv6+5wLWJ!cHI^7%g#NZSLG1z9LQj;T?E~ipx%-&e+uJkJC#cu_sRSM zxj!EJ3+s=x3lm5odg4)W1~HLx(1qj%vYb>S^r%=zHj-P(HnNl4i+R;V{wH&`QP-(# zswVorv!T_w1>qkM7O~E<@V5xF^_hkJ2&=;3(`VhfM*Th^lyV9wY-MJ-K0PbyKDM&Z zALKmoVu=4?s00bc-bD$v!n1sDA}oc&?FhTW;TNu`<7qk88LsiMvx3ee*K+WzLieH^ z`sHPE_MT;Bc@#%e^x@g$cNgHFSOHU-`ldYn)ql-v96;PlakruInTT#u_)#2YbHh4$l}j8SI1HOhoDacaElIB1Ck#n?8$5>7rCja(qOQbxDgHciu=K8&E*jG3 ziA!>Zb!-8Tp?9g=UT_$OmpBc><%VkCKFqnK(XGS0&S5Rr^$WUdF4L)|U!fa)S$z3V z>RQ}Sfc68$!Jhg3Zhf?+OAPr}N~@||<6yqgNk@bwaz0xyzrUjk5(U6r%z=0-(K)pKDn&Ea~FPR`Tb@2 zzr1kVx=gO;#Dxz12g5Dxu>3Zht5J7YUfqZ6L$K%l3$Iz;3D?o6KMWgv!ck5I(@9&L z;|*A)IGe`ty6o>TZJ)ak)IV4D5Sd+PFupv$lVlrXOeTAyzC-F#c95z%(b$GE(Wa0V z4_$ZwW%kMM2j%zu^7~%-{qqaQ;5*Y?;)^-G^n{RG6`3(?QT8noNOQ5`aNY`;_SM6=Es~_%J2K|hofRjT=GaF#wv|aHmF=)J+F_)U zNo^~u+gc$R%j}ElwxDf`?2EdUxr@D|GwyUGbl=NA zt1EKgF}Zbz>`Ais&B6+8Cuyn1$U};#Yq2LfMiq$&8+Fad#keYP-TI~FU81Ef!DO{B zgx8?MI6dLG&Z0J*uq8SqV){s42V!y5;*z;MR5cqZ95T3Ju z&i@Hfw|;N+B}6Bq_Od#P+6%0Sjx5yog`=QMVfwD{ zp}EZFHFlY0OYw6QKMR)<^1@Mg&cVM1X^@a0_Myz@?#1&DJZ<{-rXQx_iS zjzav+?#L5tZuNDma=*du+!@@_9V7F}i8jox=Ym_hb%@{9J?4ZO^ef~a1^Q%nZ0@I! z^QYdrZVBwG?j5;r`{Y$Pu=?U*=fdvY;P!O? z9PhsFyK~#*G%;}Zg@B&~XfV^MXgT6pvP03DG2-Bkb>@}^i&f*E?y~8sJS1D_B7wqz z1Y@#qt1BXBv~O!eT(p=i_())&pUSkqU&xO1&9u(4G<)LQGcCy@65R26v1zS&iZ%XT zc7CC0m}X5dO|xi>9r{*biIKFldJ^1X;19hdFn)jpiZ7DPH=)ax!3%i*aiGUvU~SY@ z+C{ABP1Whv-1%vaC~=Z0)wZ&Zc)s;yo2u+2OE@K92C^OpwU;OEwQC%qo$cp-F>s{+ zQ@_@l==8C-`}g3y*Y^=->&d|n5nkK-0p7~q_rP%m-(m9zbBFCehvvozoX@E7u=%9` zRpA+pClSv8+qZ(Uxg=sA`=gbpqCrRCaqkEQAAAS!8bL^@c_0>+cNBsBs+4Al^+jtUdikNwvG*`FS57|GM@36Dh5l=H(OHQ@OZDkzx zi`|R%7-rpZl3cg9TF@p(@3kLsF7t=_ec+-fhhDKJyMFL9pX_C8a>Eg4a`YKzng2D6 z;x`+P>LRii`L?Q&%UF<`r`L8ZNK;}ctl(6WZXR%gXjE$*6!@_zu_V|ky!PF z9Kko(^Y_6Q^n*R$4KkgdDL&#%AcH+$4PKe2d$0|8zPuvOAFs;u`@t8H=c6m~{N}1W zZw-2o=k+V{cm|KTF1TKAh{Mci#Y_`&*Lg{9tXIsv)4MaX{=63a-ST{F=#J0*r%%+Y zr5fkG-NLv+Qe#;)Ki*|<>@_x5FLS7+J*H(g%&Fc&veKI4NOmbQn~gDKuYHk&KFs!D z7bGJQ1Dku7T4-~;>w>h`c>Mw+DRu}mSo!BYq4KMG=UZuWva853RGO6~xqtR4CS8!k z!1cX?cCKaaf_PVPxaJGtn&%;9rnLw)Lt?n*=RKj)r+p*NXOn9!*Irg`NMl29p{3Xn z?|R61$i56K>Pp*`^MZbYrN$ZWno!n~t%8W; zB<9*{cuwJY*ZSUk$j}>b3YmS;;Og|h18MQm%bf4~-?C~@<1*J@oGmWhEvH=7w`jIJ ze#`PLXKsnmzu{*s5e?UPsUguT7*c&=*>1B~MpDQ;S3HqE`1fFX1W{s|N0OxD!SwIm ze*RCa9Ss+swrXsB{-@wu5QW+#2Aq9=_wPZ%A49EX?_vk6=DV6jeJlTOW6xLTi?7)!ovvwfdG87g}@2nOjDk+m0RCJ>AY6d#4Rv zhdpPmcX3W9$|X1GoJX8uQF3&(^NjPt*`WT;@+H>`Me3Y>-|dzy<)1j4oVQy(axyCD z?sIM`|Hyft^Hw0p+8TfH4OoMd^_opA79+>1HnqqxMJR2PW;08>IPgZpGC9tbBwdWMtquGY`Y(smtRo`-I+vB$+-|?`2iS>r^ z6^`ky?FMpk?P-U3iIr?gbjCPNxJcGWwz@PO$Wr=hPqUCWi}-A()lwO30qwSwQCp*Q z!Wl%$($kTW+DNmmK@Z&Dmn0^So@RCDkj~rB-jg%>q_e2g6A9FuXPGt^TrKr)G-%v) zXN#@h$bGPXpvda?=UdPDUvKDjMMod^%uU>Hep?5t{pH4UiXyDozIErmbkS+ST;g4Q z?vP6;Vj=rEqWhz#tu*aKwb?8PGt=r92$M*Qljt%QoO0flw5-0RUgJImOqT)4Q^0T8 z<{NE^)~duB^L^-<*#=j}6aeJX7#=;W>ckemwi}G~)RN&rsj2$DGXa zyCM0Sfwk6Pk7}UPBjhA`NzO>Gm?L`< z{Wj|gnYUc#-H3c&^(U0Z__n!}29|b+vQ4is8gu^Yn+DC(@UwCXu9iGQZ6HhGJI;ZTT#3l9A zwOrHXp-$Y*_zo0*;$+^;M0hhZuJUHy^G~ZtNy=~u#S^dZ^1HQ6x0upby`*&#bWbq4 zb@6Bq)1(MB--o-IV9#Cs!Hjf^y5X?th&Q1jIXcFqFOP92H0X_g^s~`?B8zwro_9+t z949ckiMFb~%hhOLSdZ(!MaEp$pJaWbA=y#oh(>Q$IpU)&nEhhWvie}p=zi9pXW^UJ zDlYjaX%rV{h>yUNgD^XbfAANJg{-Wd>eL_ zANyc1$j$rx!JWvR4}vPOxC*kNjH%j!Bkai&IH6?E!U zsvYG5+p8JjRWe^vDer`w^WcGneK}@#m_HY2H(Kv&Q|(Q1&9X-AgT-wWn`T&rLn)3K z)){3Qm!MB04;xD?PgSdPZ}i2xh@;84t6GpmGTEwZOm|GeTxv1WeIl8N6)&QxSdKS& zL=xFl2+lz>-pE1pihUX)9FVdieBvSHfz;W`(wSa*;5EAnyjUL_lWAqUu8%mNtcyIL zERFCcm+fAmJaE9MG$oepzCP-JF!i{HWQksqO?*$;ZDz$Gp}5Pl+rGP6Wl;KrqF8IE zr*(zcgsZpgfA_)KI!0NOp#Ocwrs}7vV=!lgLvgu}4Yk33(2v@ynZL|zEL%&4eBvP= zdB|@b@{xPm)2->{8dthiot5VkGSXZl9WNW7s}{yhA|o7y1n50{$e4sylcq$px*4s$ z-<(9GtdYJk3xr2+Tah+)eDb%R-4JA!n97$+xEAsNsiz5WOdK6 zxU5eu)nNaf|Ho`}>_u~lfw*?PwFc&XUAt{(TY$0V}W zF~#UxA+!n;6HRVU+q@?{-}*)Db7HM(%Yo8FZ)0hcFOfuc)9eUev^AzY2HY5*ia6&f zvIl$-)(FIv-iY$X(tmiBmWI;vJ~asdH@4PZzV?o?9w-%Y!P@xV+C88k^CV$x~Ss@_b<@;6rmnQLd`P%)!iX&KoX|ajmw- zS=8;7cC|x|`YFy+meh@^=<+0)8ue_>b}17vKUAhfn-Q~i=$wX~rVY(m^|7IOChvRX zD?K(>CRlg3B{>Y%31!JH;u4w!z1WyW5^?txy^0VEje(-R8#X zjIu*U;<%?;;h_6d$aBU_LJww|l(xAJ;ovdTT-!loDtXeVa-@(foM)9e+Dv6OwL@%f zHr{X462W9M$JrJ+c9;^%7TJg^!E(U3%NXy7FN%tHjOb<(i54=YV9!ezck2I!R3;~m{1c&2 zZE7iiaC8OZcMNk?UFnssFWb+uqX8EAOIv)&|-WO!rmaw|0(2$Vf2W zR~F89jbd4kH5=R;0WPsz&WU{{%8Aodw z>v+mE*7iroMAN6XG{;P18cy>{j9=h1uR=Z@wc3-cnu;`s=DKmFv~Z3;A@>(HYh9{o zKJ3rv`3BgZPaO$3Vf_>*#o0I~4vm-u$1co@PaKIRuPtyabcX&I&ekx{<+08#tV8$K zY%a37Fmw*bYzCVXxb?Bd(^LyE9*^*dS!OJr$DsqkBB%9{5{sobE+M zBmqs|gIxq?_xHSD!OgWB{@Y+c_iK#xUoVjKMXor~Z0gL;^F3SsT-kBg`z|pfn62;y zr>Bsbw1czHdVXc?as>^08f} zr9Gbzl$ZhxraMkKz4~HjvFq=!VMHfRFLpi*`*F%S$>q%zyd>Zo*tej-@xIFqUx@_% zec%Duv|x{Pk?0F-3i5$7qQO+(vGt!G^^`IA8ioX39S{SL_Ae%T2=1eVcE!K`9ZNFF zWHO!1CRTEK+i&!-*{p2KK$K8u(r@}6wrtZm|LJYB7P z|ID^DLyWIOdL>F%{Jn>WhfKkqnf*+fTl={`#SrT|EbY*C2*IA>ez){v6w4Fr$?ZQZ z5t*CS@7DfhTX|`Ej?z2Q^sPtMi#+ak>JCc}nMRtl4IM&M)N!1#1$*NAze9b4hUvcB zAZKP-u;-b9bnOi5NaM1)T(Q$L#^lyE>W-66Us&i zn$*y;b#bD`eL{E2dG-v`*QTw89hJ|zCDBN1#3_Q7g6{S9Xvtng3>(FZU#2{Tu5S45xiY?JJ5` zMirXGypl6GTdwT8G<=FeY;Gs?Wt#6i+PyX6nTYqMoV2JP)5ciZ0&odS_Gal_f zvyBe(o|JhHfu|VeJtp(+121}*cSz>#0Pmt zU%H$#!qg#UHaw}_5cRExjmoe3vdNtoNoV`kY@H;|z`S8CoPV0hPr*n#42^bZyCAzm zP&5U5ynSv-(ags1M}3E->*X>0Ta-PjebckPj3UQ7eM_}#A@R*VNxKI0)jqer*pv*d zm`)-6r=51AM~JuvyP{t~BChEn@o|I#a_CUsnQiHY0@OY<{)0VDeMhxR%4)X;dwzi$ z7DMu$zU#^)ZLsI(eNMewdc!U464xwnDhwfA8Lf_Mc>KAoE zPfPW8=M}I_%r3FJzOT+>PGWuxoyW~DCaQajh-xaHbA?2O6LE5M53JyBLhA70CU$n@ zXbuYpgB_9}_ruBFquMv1`)9o!;Xd;AF4evY&d1<{^88!xVeO0Hybq329vN@Z-<#42=@4U6^)FZ=~aZ=rf6Qa@(HwUq>t$?OuDjF4A++G<}2E@ z@BC5i0n~RNG}#Y&59()hS1jzT-^BW$HOCnCGS)P>O6A&<|YQLyzqTgMc>`B-OUS(sS@;+AlH4&ox>^TP2G#1)9o z3CAZQ9*y|yaC`#dF^JC$$1@Nggdec%ytZLlSvf3Ku;)h1fGL=%B=Ez)Qtjk268LUl zB4#QH{B?k>LYHRf$j;h&tOF7W{Aqw_RfGgi4PXU8{Eq{LVRUfx5%|ME2pi@*Fl^Wv zHN%Dkz8(nmZ3vsV{{oxe_%ENy$NUAvRuGGpbU^EOdV9|;eF$>^o*|nzOFttdvw*0+ z#eAv7d^w#@RNo_BhlkmpqtTc%Nef=3{vNhEe z$W8WX7EE-UaUC#>^(9#)!u+&~UgoF0@9f@s&Z(X<&ZWqTI3WZ+7~DAU$)G*BJ6L^@ zl^=y&R{-Z9!JZE;?2^yK-n|g)nbH^RId)+$u$ztN^7V+>cV^3(O=tF==tV+AlA~a! zC|lb*z-`3Xc>Jss3edehu;kD zF8#shJT|m8Un%d7VR^R?%c~!jw;?RA`7(J;VR=LAdr02MvZLC;o_m8!wJ~LbJ-dU4 zwJOjZL8jMW&z(W`eq5HqLWdyZpU`RP7>s)jA(zWo6P8gEmT^;9#&TJPdsxP{%Vl8h z^tLO>D3WqrigikZq?HQXo)p($&*6(lwMo#VBsir(tyP0N*z@qkrP?vz6@eGZIoNam z#lygNuqP{+AxvpF>mf;Qj~1G`FBamUf3PPd$lkMq3gF5@CBeJVg5F~tW_It(?yBUr zKo8cIHfa>bUNjJ~UF?veVfzMqmP3&(Dmc`W>SASA16;II^BC1MiV`Pl%Irn)#JmtG9XJ$eCa;6Dku)TWTkV_})Ehh?^h zWxhDzmi-9mFH8LMz>vgK10jjP3F|IfgF_f4EFi#WuxJ0kQMng3qc_yh)`{L=IIO<{ zhaKU1>@p5*!_uD(OP6t23i&ygbUrL$wu&OG)8hW4vg|?N&c@aSU_Ao#$BT!h5i$}a zVC)Z}^UXzuNZc^eBf?1kw4Xa<`AW#wK|a$t59lztIY1{0bX-_#os7xSVXYTl!i4Dz zOtP>BY8tYv@d|d>xfhP_8N`4a+jiRqmt)vG86`5@?90{TIAcnU`92dCq&6X>c#2 zX-Fy;;aO_jDGg%7{?de#Vna%Uswh5rpC{TaHn5cV@_1`>LxL$DH!TJFB}R7dqdpc} zrfATh#Q9HD`WW{&e)i1;`}TtE|H|-K@KoRt@hrf@?ljnbkKJ#)gF6ehUmV2x-qVhA z$jt2PgniRoWUtcHWK?JmOXC*gDq8V3? z*aVp*P;)_mr~2|0C8|)O8y_hQ-ED_-9)BHaoaPe3I(JAJ!#ca6^DMcRDZVIus%g5b z19}%Zj(D;G0>0ys({irTd7R8m_X)Djo379xQBI3vI&TT~)XF+DjY-RBQqIVNF?kb6o-Jswb9r&<4!2R;I`~!?kW)I%Q$Yl25Sa@W<9-9CC zN_mY_^zSbH(U(PF55jXP)>_ccz7KNig^W&R7ip>WC?e60peo#Up=I$cjd_-IL9G6c&P}t_d|EwPMEB7EJ+TP6m1G>*)3MI5i^^e z8scjm_JwITQui-Z2r>VlE=RG@ddh>t(H>8&hdL8!<`7F%O zV>`;w-CW9i1yMd7;d0bPi5(u5$zgAl6xt5uj_Pa@^4WG)2Q!Iekx!^Jrnu`Y@^@BO z>ol!SD2|WTU2nlx&N)V*Kx69gSnO@3U!5HKHlI#wu?H?24}tc?3MH}CjY7QzCY#+o zu2K4tbSTR`Kexlr!}n@Cs)OU~b(6(HW1Pv3T5+FnU59yUolq1NoqfF>_mPFDDGoK+ z?FUM~M@{TocJ@^*e8j8jx(0QPLT%~UnJ3)ZLKADP0I7{yg%ljeJkMY^2vExa%Vmyf?v2Jrv5{%b7GE-7b2TecHgx%4fU5WXAcfziR++w$Ym2^k1Fg5zq zDJdjy2ll6-6qfro@)!S<6k!SpID11}1#++LRqshO;$~d3cV8}ZzxyFKOIhj_Byn8Z z+{NA~?btnO#sMFz<2p#_Fh7Kc4wqsjZX>MBcRvufk#xjHn5LwNsBa2#Lpzi!hHhVf zmau!jn@O3_%d{>?!MA(*X5%P)DTyzoRX5Hq|1X}~RH{#ms-RY7EHe^OC{T2dlEm&P ziF6am{nl${+`Ue@D6gK>v5e49my_kHjzs4?d`S?IVCusx3bg;syukb?^IUUx`wsK2 zwtZ%jo$0lvwVKIzp=r6fKk(Ly+jdT4kuE4q~_lad$AwP9)k^aE$1clEL2RC;BMR zfBIv}MwCZsj;n>epW$mqR_3ffQ6RDSnxB=)5`0kwfAJHk8(0zie2i}%*x%t&hZ-yQ zsYvCgt&y>xmBE_dJ)n0iLs%0z`m?SG#itTJd}mhv?g8~NmhP0(zXRWk*e!@@BELp# zk(_G-;%86?)0lXZ6BBU@90hEcP2_m`&~PJBlg}n4g@pt1g0!CW=C%PWg1RnFJmf z#1{h3XRj|H?5xxrWVb7kBx)kbALD&?om#tYmDQ{@2~GG0;Gtqtgt|NCk*s3h6!K5( z$PdjKA@^(GSU_i3znE;YXOlagCV}d~JB}8T;yQ^On75}jlB`=ro2+K?kkC|wziVPG zU{ch+fbNcG7Gw8A0_B6M{0Ov%jW8OF%7`S#{E_*BH){NGpwC*gHK>H-S7B);3{L?u_>ZkJgOxOCwyO*743^}#mN8>(8f;(8Cp@& z);8xc@#$cXCK!?1<70cFV2>rJZr^D?weDS;W>u1G*>1v(sj1G{9<%CwhrCP1_fY~Y z-jX1$;x9&{27!pufq9WxkzQ36^)X)?-_{`Y#Kn-_X>w02hu-gF%n*ap`_Ve0i&+)y zDTM4`&%t0n`knRjE;(KF3c%;UJoPbkJHCp>cNdXfI#tXNa91P|^)Vr%-!EnmL$5D3 z=f@NK$j-#Y4zZPFXl&m>4r$-rMxTu)`13k6KiKnSkRDLBk^hz~v2`CwcI-@CVj~%s zWYK-33G(y==hj~YnJj0!rs9)zPtHkL#n$ztr{hwMIudZ;o^5$)V$gK_=W<`6WfLKIgH z#!Z?{LaS&XzMH!Z8@eLreM}W+NmWdZv?zMktdOf6s)_A>F|YLt&4^@0WRs|mcqV4k#o`2+<=FkdCyua#J zP24J%#g{$!3yk}^6%*_Ik4^b z*)%8O=o{wDR5DJnU%5A(?1dFoOd3ZXpF0}XCE}OCp4%^4%>rhk(Y!e&r2F5zKQk*^ z6$e|)ua>@!nuPATX2n6KA=df9h}Nv?b=A*RM@UQku`=(r!BJr?ehDqcTVkQbK4>u) z+B0o`39U=bkK*q;KdDv}C)DUum(;Kp7Ik5F*OcjJEwK%tj)@WExtd`FeHs2ra}i$>E`OJ%YU7HkzaoA$tKbW2aW%@=UF+=ldQy(UI#RPwUu4b_pkB1Z@Pp52ezArG9)X0V{^`JvoLuOS%_k@4V=gzF z1zj0Wd5 zoG<)MCTa`$4C{M6enp}5G^_J^)S2vOW$*Si`Pu*45lsqh%G@+B)fJE?Q?ZSC7pC40 zzXba?yZ7g^oRC*Br&o;|1D1#R98-JS{UKc@^uCR6?s2YeDw0cQ^*-hoaw)VWC#U+K z3g=4dE%pm36APytS4=->PPIK{7E+|blH)_3oRFd_95_DPK^*7I1Y=e9Rp$NIRCrl< zT7aDjzN~tBw%KA{VqRgcHP7r2o}T$(>;ck9^dnvto?+h{t6SsS66gJQ^Bew$`LF$- zT<9QkDy^ZxZgs`)eX9K2x@?OjbU$ z9BD+4R4wzw&h|4IkIFK>#62Q`-;wWAK2IJR70&T|KmKzCeQY@Palh0}NvXNX)a7v- zYP^m3F72?P$lGR^>+Qgbvj&g!6374%{Ol|0}*_eg!sf z!Jg!xJ5w^{icgn5=T!(qDUKMDI|cb3_f5b_)g0_1Xwz)}Z?o2V|1Ikd?@)VL>+kFS z5cNISeH`Cp--mS{-?0w{^diMys2WSPg&HUtlsn9HbFzKii(!R-$ap!k3W;&9*tp#wjFnVzB28r2X*e4&6So z-~97w!D(uwD_iTQ)yzpuTy9o2hP*~ri~qu(&ogO{U8SK@*6`u0xEd4HQ(3#02AFm! z{tmhHPPrvxu4u_9v_v82JtXIi@E<*IG9T8Z7=?-PRA)LV*HAlXGGi^qw>|2jL}NS^ z3PjV_=f#Y}m>ZZ)?Op44w=Hw1NW3Vp@0*`d60@K{)Fw#y zD@du=&vsThy*eVud#t$L@BE=uW9iqBt!}4Qfh0QcZ3I>n+4sPmrn5Z~r$QXLcGpn%p>ae8t_+19p;osf^SwyKYnm_DE}Op9(CUx zjvoMJ`Syq72gC6Re@D4kk9$98CFI@l&rtaTpw}bb+Y>71=nHNqcPrd3P^J%~Mx?JF z2=VU+W&9^VSv~xRBft^h2yg^A0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd5 z0geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC490861M}Q;1 z5#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$z!BgGa0EC4 z90861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A0vrL307rl$ zz!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^h2yg^A z0vrL307rl$z!BgGa0EC490861M}Q;15#R`L1ULd50geDifFr;W;0SO8I0762jsQo1 zBft^h2yg^A0vrL307rl$z!BgGa0EC490861M}QC&A<_^I{}73^f)eRBc!qfY+o%v$ zXjJj z_Tu@{+zr*Wt5(&nk`~r)tf}3!X=DASY-w^{QC^``R8Tm%u&7{?lvQ85zSh2}Hd|Vb zBKfu9BDs@utLyDI*Epp5+S}?j)or|4DwocvSkwH1yd^9L+8}n|AcVdw2wJU9tJi9^bfToy$w3+; z(Py`p_Yxpe_Wl~sFI63$Bx|@rOSpG}-R)m|eVuQWLQFn9g|8oL2 zZP`Tf@~=SY)=kwwE3by3gD?UjAnhaze~7cca42RZS}@2;YhVToVRvOICS&mi6Pe7&Gt2+Q1!-*o7Zo&uL{LBI&16go6+Z? z=uN9?SKDu0zxk%kTb$6rK`0^U;#GAwZ$?BR>&@EWU~L%6!?fGHp}1&u!LMWQocQNKUNZ3JF z(;au_sXnKJ;&XJ@oq6=4*hudN9RO_r?FGFTvg^e>=~AfNv(2HXK~{sWv}g7Y=#!=Qfy-3R&|=w8qOXd@*31N45x{|R~@ z%KZqs2mBt;dqHH9ZX44f+J=7obmqc7Z+xdJ6fDg8mV4tjY8JVh_9qK zm(agFt1#{*Nl>OXgft+|I=9au!^d(xNPu0(wk)EHCV$3hn zW)v3Ex9_N&#ePa>iIc~a(h(SmSm&R-OJZ~v0MY6T;Vz^Xj6*xM+HnTGL9b28!1^H3 zP4E_CO7dsr&rn3tR$0F;v^A2J=Fu8yH%(QQC{%Qpz*uMQ%G1})zfPN;`7=cnb(Bzb z33WA$X7g(>*^b$rfnHzO!y2IM^jOp6+LKKOX6eG=$cOLRa(iV(Y!%n)igeF!} zN1m1D=CO#jgjVO#QF&Ur8KX2NkKV3&1EXcZr2LsP^4X7K6fMhxltD-tMR!6<@@hIB zeLhE+K4S|KdI&@0k?keRZl_}<8YItQUBax4&ZD=K&};JO_)1w2RE(A&i%x$IdZy!{ zzZUY!C#P$58FY&@UZ;qqAH%My=<|YFWdB#Qb8q0OLbW=$#GGS>#u5XDYpUuQqwwLUt3DT1&gPxL=E25+G(&+m_2|b3M z|3Hw^O4CZU>9e%y*O~M*wuIgcSmGqQQDX1Sk~~`2OP}#GT3fjWbqwB-NAoJ_$`UP2 z7IgxY6X^f|5vZS*l+x%%Oq<(EtTSeU-h+xB!_dYgJSQ|hJQGX$BlNh-0%$S$--;-q zuWrvf0s&ub&4YjgN=Xh&`BZJ8ae3PG{6z)ef2+u&InN>K4|2Bqm86_I8=C9rAv!bS(dOJHaI6xT1Ao9~7b0 z>+PEy@Hi11_GS^5-CxiR_B!T|BE(u;cXM6XJsx(T;c?b%*i^UaCOH0ZC*h>lY^<-n zsb)h#D0aD53n{B^-QWz#`-y)Gm-do>3%_;9r$s4w1CtC7^>HeUo}fb)vym2BL!$Ev z3p0~v%%6cJO|LC1%#X_#W6+gwYA2+iNRKFt#kw~G>v}N;WCp_4lyPZ#Q5nj#o@Htm zgak}8EcH<^Z9@LcG~Jp4omGrR9)$=|FSA^JQP8JK`f>DjNzTXKnd9hI>EQyJVu3Bp zVk<_{PP#^-NfI?T&R9mr=FQ44Dws*5HYXQXuxYK%qfRW^()a=_9uqQ)Zq1|*Z_k@a z$5x7oL$!6MqPF`)K}Vx41vIIWO@s{+bxB#6mvmKQzJsbI7@&!hsVk3;kTQ!hVK1Zt zI%c&viV2}m*_B3AW28xRYst8@#ToRrycH=%5sto~P$2a=q|(1qVN5<9Wx-lrlwU=Q zCAv_`ubLsU?IrS%bmVzOA&i+Z3#e(+XH@9t>-7cdf+2txvJ4L>gt2l4BZC)k0HjQ< z7#Wh$z_L8a;7!%)@|o>{30{-0k6mV!rO4=ZvrK*>WU(gZr(^zNsY?Yu=#w-A3iPRk zyTGl0gzlbA?zj$E|~8lWGd0-j;A@WPkC5{p+>PRVRn8x9f9ch+1m7p z`RQT=!%_*H4ro#5Z-_9~oRN41uV!03he8cN<`j*As;|v?%pot7howjI|NfJZP2 zlcBQwc4T|+4p!s?nrA}fWx349G!L%A$}QIP0>ucrdmEE;K_MZ0?=~q_uXr-@vDB*q)aQry2euYY%k2s?WP22g8*)Dp4gyJuHD&X>p;p7q(gu`JJ*PL(8VEzOV|DCp4Q=^#y5# z5WZPrtl_sh&pHDI_rZWD=zR)l4I=&9O2pYoGcuDiVH{Oe^!C*gvBkyqY$iQ_N8Who zGd>m86&qe@#%-bBnSf|2<`BLAPT*96If+ifepQ;8&$x$yHoUi+;TlSCY^h|yJ`-v1 zY%x&i={qc0*)+yN_fu(3a%OUIawcZ$i+3{MQ!?_cv{S@h3zBa|+bgH(@|V%)#mZ9F zMfCGKOLAD2Bcg>hc^o~3E#d8XSh>=u#=`QVVQ*2)5iJ_={Z`ACD(kGmRAWk^mS*Q! z@w4l0t#yq9v%gH250tD_tvXv(f#3O6`?M8n>L%!>Yx6O=k@C{^5)@dbwbDP4%`0z3 zpl-NeVO3R?m0nXKbB7B}w9*4&$&6)}eitxz=S)cJ3bv-EV@IH~R?sz-Yanpla8cCv zpjaYiB+k5T<}y6X8L%#?7=WtsD;8>}=kH3dLU(<6hXqYMEf3*GfIQl9I+hDr^_XI?F&R1-ad{19xsCbA z{hlaD#TaMHtF(2peU}9_vZSYelEiFeH%ruASn^qxd}K(|I;JYKuyWBUMMyi(in3NLXK6AntXu<2dxWJe zN7}7&ox?)EVTpZcBi6D7NOoMQQbjS6PYoxB0Fos$58@z8{R0)KMxd)D_|YqGwXU(Q zVXMrHH7gdap@}84VsEF_(v4y&)0A1t%@c`gtbD+Xhzk)+HbKCOd-=*6!$wRlo~mND zgzcKRx3FSY;r!h*8+1cX+k{E1Zj>C!O3J9S_lV(=Mfs10iY+K#vp6(NP~! zMc%;OCTY_|I)q|?B|bLP;T1Pt!f@hbrl=BQHj}wQv$5vF7tt5$^@Xwdx{#B|u)dq+ z`x5?A>Nw=fNS=|Afzb-5hK*Kzc(mRGk6FY*@}Dmz|H~JT%XSR^V)gjR8iD3sa_g~R zT;kqmS3bxqlp&kkl>xO^@uGu*m0*|6w+F3=A}#T^gL_PrSb7G6Z0n}#AGhF zVxLju(4jG@dVMMk_@&VqS|8%_sxn4pTq-Sq3#3r`KW9#>C zm_)rG3;IqLG~vG^NH!_MLcC1KaU!6jG8u}15kW1yMD~uB#%0J$KI3V%nc5=#cy0c8 z7SrpIv5*y`v3c4|WKI}5Oc<}#>yUjsj-oOkDG!;(trfa~va%ylMsD&iNnhOudgNSW^wissVJ}L+Pq1HL~tLv21=39vT8jMgpBw#G<*ua$!iHrUqUwG z5%0uHZD5^G1=S4fqs8qA$0cU6L@kP`r_N`IVx$?fQPhJImr)9i;yhle_&+}lqTGyW z8{d5`f<*Z&gv6g_VL|yJs*L~3^$24r#!vhi7FH-fgP8cUEF3{ZCMf>gO)NnLzA8bX zLNQrpg7T8ggou#Ln^c4(M6$4`{22KYR4h!Dh0re{>XQ6~=&*byG$H0CCchbi|1b8w zJ+SKH&Ub$25l-F-2}y`N4hVu6ViE!-h>!%Npr}cBh?E)v2@ps^%!7xEmZeCkQdTTl zv?yrRiz&6#qNUVQwA5NlEoGHOYF%p8s!Od{YmudJKc9L0X3jC}-Fx@m{pU6?=lh)R z%zWqZo0&87JK0%%e@6TNNcKh45eZEVB5Qy$S&fWlU93zVgI?B9YKOwPC}P%d@+09b z_{_SDcw#upWJeND3g1Nha^lJ1YML)5o)UhVaZ8D(hIi2B6~xoR4XBN*am3TZ|K1CD zCGm{#JnBp$o+)~T2m{P{*40_~#4Hm!H}K2WV5rwL*2+?FGK-koNI~|Q)u6(A5GniY zmw<}!a^im@9tzjvGy5FzNI0AP^TbmUr%tLxTk%L_B;G*6lSFn>8O&w}B$1cIhLRnW zM8Cw!$xsVZCr14^Jd-0DwX<3ZK>s+0Rb!{=#xS z4%=CoKZLYb=sA3*{~8||te_0KKm@L2&1bzX72d>WCfTQqk_eT-<hFC%^<@s#ifv@@G{YWPpIe-rVv@UP&7 ztU1Kf!=F;;^Tad4e`4G(5YG&sq5jRpdxtxyKc8O84lkr{7VHL|7yc&WHW2S80(44N zBfW$^%)D}uSHrY-htiqj>)fGqvJcY2-C*}=UoO)7 zu!H1$3SN4yM4teyxip>LhpMp5Zk>CTFZ7Opoo6+yu{_6uwJUP>qZE<%n1(kLhGpEy zd$gXn9v_kSB)0&CjJ!t|<=x~*$hiZtA}3}3-X`~tR6wSF$xPjY%tx-2hTDC^SDF$k ziOiHjbM_%>2RZ4Jqau$* z3DO42$R|x?Ma#$*+x#*k$-|1Nh)$7MpNkoMa#$IgvvwTo zBKL==_h7nA`7sk&(K50|89A8lXF8bfx0ztRY%{s{A`^jPYIuL69X`YY#ZrwUL!g|U zF#pG}6PQSaaPVY;h+c$oCooBs6U@LA8q49R5m>}Li4;0P>Ta9qQDk|p7k!QeQCUudFgfG8=_g8o~@(~!I z@Xrw+DD8-774j3>yTNh&kL ze~Fms4|_iayU(&VpsF-?qcoAVsx+A?D2;s3t(C1Xt1k+mg<1b#6|;t+1!z8#Sf`SR zPDT>mNbk~Ql+e2cI~gK!ARp+q1KC21;56CW9F(&F6mwucweATr8<(*sl|mi3@OA}f zL%$#&yfO;e|K~%vn-N06ffPOsUK@lX$t*koYA2||*MXcM@(z$Z2 z+(jIX9)Q6j_#)6EP|*dOz+zJ_SP2AQHHm^R0r?HGT+jmKU^I0+*$lrhz--~j+i)dWOh6Yz7^^%hyMbTpr zWT(Psuot?tiGqV^5EOINcoKqjj4^O61y6w##ShX&P}xAi&~H#Mjxma!gy1x=V>EU7 z&mbuHF<2XOgcy~SE+XxSP=P@0X8F&qy;;mGc3RBQB&WA3ad^yMS;Y6jdh8+~Zvfc~L=%i`H=v7 zC29P~=EodV=J<@^P%Vm?PPqY!TUmY$pt^gppB(EF1}036!ol3;wG=2=G_L zMN4U(h(sxS^jR1vcoVFDhq&N0kc*>0ICYr_X<#h{tFSMSuK*dxR2IS# z{3IgzDwUr>fWI+(47>zc8B;k}a0cXWAS(C($OlB;1d=ic$Wb5zfsCYTVFDfzSApVR z5huYPz+sCa39K#0XF(lU_cGd4AU`591IX`*j0ci9nDIFC?v1vyf$`Sg!gzxryd1)U z6d*Se$pvy75f8{WWjs#z#~|KL#@qM=35m#;x0Ly?Nu>HrhdIGEm5w(CT zrKgF!3glBFKL#@R5?K8ltac+BJ&|_ty@)o-kXKEI>_r+EBZt#o6X=DAB&pI)P^Dkw z$DQ~nc}psaG50ZlXaW_?#}5h~2e}Gy3cd?uGm#$xd4g7`QTT#pkHnxO3b?cM9A%_R zTS1j_`dYdUAL{S2aX`Bw*Q2r*_*DVK$Vu|36AsRsCL%J*XcOg9Q8|=qc-RPh??iq$m_juSgJP~x z3yR8Vz_DTaMJQI*1J5r)JIMJxRl>oDiLuGV$P|^gQ>#w`wC0f=4!(6Qdj0w!7&(gZ z2^bak2T-OkMo(za7rkWpDqjGj0^k0j)pFM%9NftAUIB%VAd%%w7x^O*IdbWnGV*We zp-eJzxWy3;c9M}yMjyqPM+WCoku1fSM#gz4M|vwp85sFf;NP@nF|MBBjZ|RIaO{jgoDS)_%dXveU-*uGNx0x_Y4`O zl#F34rQF~P2RBF?jM7I%5xt=C9F1mwD3d*lHDRyNqbN(oBXDtQmeR|k-c{hH_Evh? zWZXmzZ8}26BeayEG(u$jJ4+-Nx8Yz08EBv)HBD(?1dLX^jVKA4@i7vw$Uu|?>6&ox zG#L4V=||1jf&%2T|3xCI_OPgpidngsc?rzJ@!dhp2K@n4ApaI(IFK9ksh`=PPqQ2J zsh`=PPg5K8a`r$!yVIS`?)0J5R-4`F&SrPIv)P^QY<8z#PDiWF z?sR9fJKfprPQQXWYO_1t+3ZfQBwuZIr+;>{JN@c9hyzz(L`d&_Idau2G#a0BvwtcO zxznFW6KZ2PJ!^(knq!o>GbNSO&T@KYrSWjnW!WDtr(53jUQ| z$>7Fu@UQe@?*(1$BKRpgUhh^BJR=k1QY`rI(zWS-q^(0TnPjw7m5iiSG76Q+9J0wA zvdJ8>$-Hcm`ISxPuuA3`CUd_`rrl3Q(kdB+%4F`h$=q*~x!)%94U^0^o6LhMncpxO z*#w36{4U7=8!_&A&RIGgx5oA`K>_yn7Hg-X1WW|tB7no%t( zaY?Jh6)F>7W)oMaOnjM5e3?yrnN9o_lX$yLyh9~EiHX<9#NYE1m$XV;p)&Cro47({ z;x#t$8k=~HO?nJDI1ae@$2)1I-=cx5~c8pnQ}l zgBQutByVSF9#Oj@ZR{E{i(tS`mTdlyN@14l6_2U?kL>A)`fvA1B zkpwOi`!|g9ePq8@wo`_KnUjkgc`Kw19ucmPQQ!2Vu8>hjLN%9V_Et&F>lrogFd0wt z%K&?+V z%A)BPN%yn#d!TbiQh%w`Pr4NJ7DNm*OL`P(?mz@uBz-gK^Gx*?N#9HQXQbO@(GGwX z`P&#F+2dK`t)RVaI8`7nI;Xg@YO7VEY0}7X8j*>nOZqfvnP`Tj%SXUSzmJhhP!5DV zeq1W;u7usbvJRzSGZg#E>J74XpCT!TvLIXGdm#JEF)U1nMlS=2aZG+yJQc)%ov=I5 zt4{3v;tG+!xglW?lx{<+p?{N&h3A?X(cAVtB-@ASXh{cR4{Ggdku)@304=iH5!D+b zk2+V&Xzw$ctkE&@+p@j|pkOqG!ukHzAg4LXR=yUxkutLXR=ICmCn(Ug!iC@tE`pklwb{p!+xB zn`5f{iYgc139|>H*nyG?--5!BfqEu^VWS&zJrFioG4wm&hbL_X&8Mul?UF5E zME>l(3Xs(cwjv`XE{27|xN<6nFGa(Mq8qX ze%NaUehj`N*P zNVn4dhQP1kwefwx`w66FWR~-*@xOv9zYIvP%Tcgz!_iL;MFWF4_;UysB_u~VnFGU&Sl%E0hO;DKAA3@p`AMs-VELKj!2SP93 zuO_e@Yq2?6)T%{EqMD+_e-xDqwdgB;tTiT9n-*~chz3O{`7EbM5m>7K+Sr9xeC;RQUoR_Z1-ypT@lrCyGgb@O$2T zG?)qL5RS(QNKsx4Z>y`uGQdgi3&X56EyL`+-yw*$HGNkuL+ekH~5udw`VDRQb2ThTnePJ3YlQ#{0Rk-mDBV$IEcQy1`<9tlaLGPx|uU&-E@n}S}huC zMBO7Oip)ffYEgv|=~z2NoL5cf{j-;r4mb2cF|R@~$MajmdLsP3X{?rf*GP0qaQGxGdfA9%q|oNM zbo4AOd`k&Kn`dkZh{~J6rK``l+^U6|i!v%bxSR9-({MMpT7qwQDcD{bzZSf&!!hHx z0{K3XZvy!Zkskm#PlSh2hK&aDB#;}3d=*FwkTRMo{}rgaK$RZ{@;xHI2l8tmmEAha z+fcRA-7{Y`PQ^S!HskLbk#*fZEjnUEIu;ysP>bGCBH7pufhRp+c~!4yo^5PgT$K(N zku}IN?%E&DL^;NR_cro5{&PT5#{l8?>7$8U0%SUoi-7zCkTOOruLboDP~~3$@-rd} zfqV$0vI@r8FE_xivaH>AnzCM_Mc*`{nRl3GQmaM#jY!3cL`7x07QJRfVvRI-x2RmL zMSqSFaSXr|SLPxO<&(M4kvZ*M~^(9czV>A&x#pZ^nEQ#me~w#o{ffHb+Z;S|2C6o!CZ$wfCBDd z9sbQ5oQ3*%6+E8c8-D^w0gwrMfQ)|$A6zGm|1l7**2);E{NF%r1XcbC5UvTz&jWb_ zNads2b5nYMrv7$m(E=l~^|wch@a>da>#V=yT6Dh=+4_4+i@p~lV*P!fB`?QF0*R=< zTeVxb8_#yV+^?i{T5{Hxh{}!Nu~%@HU1^J|Et;okjI`Xln^b^r6fhnK`voRv!(-Qh z_YpiYp%uu4Rrnac03QjMRF9txq%V*X6RCV1I7Q%;{}YhwiSQ_5Gmweb!|;77`Cw9a zlI{%?XMz1~!=4$|Jz?U_U>`JWr427mTnYATitQEY_CIkAn16Jb@Z7`=;02I>6izFC zC??(qW}aeNe@)y0?r@(gChi1XX6XUDLHj)p%Imds zZI9CVTDqf0>2fXI-=p+HNZEZ})6yg{PnQ2NQORMPqCYE9An`mUU1-Ho-G0*0+EE14 ze>guIp+%Qzk=y4gIW*GZVCGC-qur^&06@49;2?-(!D)Io%k$-FUJYQfRDgctx{zZUAB}9 zmD4l@B6M${GKx7o*Y`XOMUlfmio^$LLLP1AeYq*p%sk)B^)xfZk0zi1KKLopPvbJK`_42p@Wk#k zuNEU_>KrY9+sJ3$L3w1RmN#fQSEp|L9a`S180n_3 z)dH6(k{+NZFY$OgP!*Z?AyknskwyN*FY+a_jJacVkuQ~G8OYQfI!k+XmXl_pFiw%X zwfvZocaMlE@*XWeZR9$>De`_T&qdz+?As#005OYP_~nUWX1=G{fJ60m^8DGDz3=DA~?b+JW|BN zH(!-fWSj&0uwiTM9U>#4NJQRoGtGxdMhdu}_*{{h16q{;ng5uX|51?lGF9de_?iDv zkeT1%XZ}ZWqwzVD`2&)ClbJ6;>^j7gxwM%d3-)ru?oKk9uLAq4hHW!{4cOmQY`+bP zjB0SX@YWg5oCDg={Ef`~ry<@P-GHom+YaFYr#%0u^!#7^%zr9fopYsXY{9dVyaHtJ zS83$Dq^|*;u?E(-X&|#36&V{qkCQa2z!q)`*xa;$npYt*wt?iicIg6J)}3JUsJt<@ z8}wIPyEYjwgUf>yiYqdYf!4T4D#Tb5d@jU$v9JJN z{0p}7lrNr>zW4$Pr&{52vaq)sUmTR=c9vZfV`B#KSc+t^n`Ij-GLpc(%I6-?+}_~M z&|Jqa`Cu{ATgES4jqlfiw-=Zef~ z&~ychp7dwdXhn#3f7eJ?ynsiXaz%x7#Z$g3DrDLJ*|=h&BtNDrRwDLgh{w{FpjCjZ zl4MLP*a&uw)+!bmTR<*0TDI^zz+Pc(?F6~WX!*X#dIs!_{rGr7$(&wr5ZoX5T#@-Q zXur6B!t*@%%@FT0v%`AZxaq8l`%PKgUgJ#7e^ZukIA}g)f{#mbD#(nF5PLA<$(rvz z!zP#5Ei%r4U2fPj|3Wr)n=%3=7~TzAYwtiq0h>2$RMx1>@h1n|6-HS=tsfX)_SHn@ zC7}J%e2bO0FvQ!}>H)F{(-u{lg|akr{n9Ly*}u({rb&_yu{4tr`$LoD%vVimt_Qmp z%&9`+0jf$f3+w@gt+kQOo53zsY^N#~gL{op7HePw4}pwUaOe2CA``oUwn&NWngc=` zz-y2dRE8Q;MH(QB^j*J517sPFm?905kTynv63l*}pSA#gAAxgzr@Xupn*LlFEl$cygtWP$pj(o}&y z4YCa;TxD9^r}8N=476-6Q#tjYgDGG?XV|u5 zWrKapu>GEt5e54_Yg%Ls2jjeAIAtsZHyt_G<;pAr?U#{TfjK7uSgDm4*#9pCN;PyMqI9g;hfV)X^ow{oV`!S>3?YGWOu%C_7M(bP+ z_7TN)inJD7o_RDy+6dYdDSIH=Vd$_o4syO`;Fzqsd@y_SXl&>mkN9rnTlA65GG_+p zaHz9XtxUXaxhJ6Kh2=zTCAfQ}g)d=hoxBjLTJjS*Mt;{9mNUM$NXzf~RLt;rq2ToIWD;A0*AQ$X=q9e*ikKnfjx>=xDUqhmiDP&?p#J#_(#WOOy^08T%mk zqY2Q$9I1FI~Sw$?bC`Od}21J{YlL1N`y3NA|R>nziOC`rKlX^z$USo6x zb(4^@z>P^+BxbRkzha-^+ZT2LdfV>DCU8VLRGt7CF+s0i zl-{)<6QuioP46|6l-~PiTKPRm>AY7cy|e;5J<@mQUV{CMT6`qKymB4gpk3Dr!Ehsp zcilP&Cn{mQ>+XSw1-(g$Lz^4vjve4GlN{G|PioyewC-&oI^{)hk&nbqbkY2ZA?1Ux zgnOS}nZy@Ma3$((`vqb|`2DFjiG{okrOL8oWzXX)CnkaCZQFznpQC6L}dup_q6|A}^ySsPlP=J7`m#&r9Ty;RJaA zDm{^x(Gx1EpOMJzfrLrKGf`$jc^N(7Y8FcGf5dKjB!3O%58e^<4j^g@2TTwwn>;fI zTxR5UluhHQO(OVZ$rWk2RL_=#mxrvXIN3oKT%NPjLV3|SenY+4Au;&GB_%fWqSAHg6`i(jNJ$dpnF)_&WdV9ghMUkPAtT6KEWqL!?vXX;o z7p2Y2&Ga&I;m#ZpOdFegW%5+)rw50K zr6V2nhF;2t^)2nIWPKphS;pvB>K6wsQX5LPhVrx_S*X6s z(9|qrD&NM&Ye>aKAbrdIY_3$g{dKysI0JM{5EJ^2>x&L!8A3!0b*`dt!yrwBNenht zO-U~%!{%s+mM5z;hbC!5SiqQ=N-|96Rpw^6i8W07=+Z)OLSN%lw4H>CysuYD_m8mo z44~Cq*5516s`X~(&Q885%<92FR-8r2$YgMFDX3J_mrDd*!ieifk(E_U1`~k|$td~C zT1>ey7K}zGoKWy>!++XY$<`i)CK!3H>t|E-og^*QSXp6uIU-n}2d^vlH?)?~?ikyxE^0WQg zbmvj*QrwO!bz-2ajgIY+V@d`6c!kq@<@ivhhL&9|SB?-ENppr=Ta;qt(twnUp*NTa*Vq6kQz6=l27$eErh;G*@x|3)!)p&o!XH3^%daVq@ax>8D|s zqkLcUXe7Z0xqfofpBLFI#2ESCtWA^MupO@x)Og*?jMtbaxw9+Il=LLb%#?JtNIHYN z>Z`FsyR8<~gBb->KWEk8AhH>qP$6zhQ^qoFQ$giuWq*M8=QVOR#TlQOEA+ATi1}0@ zp5<}XmTNj$p6Rd{w%OZo{8uX4tf8LfyPxGj zwI2f3DfkP?&jXmaVjtK4Q}S(Hj=qoWG)Mt`#u`os##r{_^RH%b+w7l<)Nx)rJ>{#CmT7JX|)&z z%wHku`AjBOp(3Svo~YO!=#Bcpt$0J{;lLK_+R!Fm#s6Wv`G~hAF1F+$jg?* zJ24|?EtwR=_X`L*U2L*Nu-j(H@j$P!$rCwhNxTn$2Vsom zH9$975^u1GJYvaRKylgMC_fMMWlLfM5x)TFOFsa5#*(-U6B&Y_ON1*g5nQ%0 z=yFTm3Uq@dHv)aYk`DphXUY9Q@!CF9gu_7Ju;iOS@ftiM{SfFmOXBou1aB=cQoQpZ zGT4%r0G(#ZYM>34#2JssYD?k>Wdt`Ijj0cSeqzZpK=DorBTWFBW=Z@wQY7D!1Aq>< zWC74pOO^qhW=R~uh|IC%%|LPd!X&f=C@x|eayii3Ex8uxMoZoe^Z`pg1azMz_X9m^ zNs)-JQW11BO97f~$vmJ@OAY~w1FlB724PW%2M^dF zct~*xIEH{rut#wTIFx`(@RH&Za6|!@;2p)~pmJ8B98i)FkQxE@?5Im{iQ;mI!Ra_E zaCoUzD2JBC3gxhZ@35%AA!Um~Ih=GWltam0g%Z3V(Q1N2ic4@@aS7g4Tn;%S(3@eG zV5~%|3C1Zd0Y@I>mtdOW63kItg1L%IutaeQniZGeR>dV)t+)gm6_;R>;u3IhLTUtf zy$W+iuuE|Xo>W|d{fbL)Kye8;fWZR65yd6oI0i1kyNXM|;S5}Yj}(`HqZ+sbct;D+ zS^^Gk;1c90E&<0la0x~zEO;++^V<) zYZaGZo#GPQt+)jDC@#T6ic7FVaS3)REr=*r&Jz&nhm#LB%C_QE>?lD=xtq#U)5ek~t$tlV~jgUSPre5=0f3piprMaO)om zwFDK4OMv&9kV{ajxCFBlmjEvgpk0C`ic7FkaS8D1TUsE%i!G^3@Q~sXJgK+@Pbn_J z0mUUasJH}26qn$r;u5^2xCHMiF2QNVB{-|N1S!cf4+LovttG(5Cv!$HKye8Q6qf)m zKV>Nh#w#wtG{q%YgCGYf!1anvuvN1Oam9f)2zF{VVYgxv?A2_-XBC^^CCw&0q1Xhc zHJcD`Fr;k)yc0p@gb=5j$R^0sY(kvZBb#8jW)qH4Yy!?{SR77hZdPmp&TYu%#Ad5v z6L5}0_Fh07*pN6OCp$B-$**kHO6IRa>dEe4~`}EWLaq$+?zZzL9j6ZzP@N8%fTk^zx15Sj;2z z@{J^CPkQ-AlG7%=d?U&El3u=%B-$-%_62P-jTXvRjl=g-s z-%1An)yp?ZInB_^Hz`%|P|?jmn%fv|A}>3%6U6(}azdCLp=xNOcO1NuG`p$AH&^p5&GDOD)cZFCc$u4AINuj}0zs2F78d!gC28bJ1T8%P z^e2|&JFxM3ZX;a{^gc`St=ESv$+uPGb;d^7%{H@xaol7DsL2LUlLeqAd7w-hFQs5K z0_K8G2$KckO#fK~s1PtKWHTSx2w=zOK{q^;4^5i9Xwu|IlO|7^bX>wpH2Kj|$0d|H zE^%x8KT$T5^9z*Gh?&4Hg!ncP1#gJt<8*UH{&u533A~+>zdD9LMe`$quLW^qTyG_F zVm=XjImn*ac057v3cQQboLYawwQ0VOd|EN%AC5!-F z<|0+0830)d7J%|cjrB*3^+%2MM~(GIjrB*3^+%2MM-BZEkR`7nh#+7%2wLCNSl`sd`$qR) z;~z~LA8FF~Nt4D`nl%2>r16<1jo&nBe5Xm{KTR4RYSQ>oll0|a1Wg)$YLY&kXQlIj zF0|xgplpF!*?3)(#`Bsq-q)n50Zp1((4?seO|mvv1)4Oqph;5`nl!cHv=W!a5<2bq z97x^pjn*Wjbd5}{LzE5mhr4yzSmgHk?65%oUIb6n5FA9{lY=kQUxENO!Eyw$w*Wq* z*iQm{U!nT|exXp43!262wGqFTK${KHY_rs?CD3MrG`m%?3BHBE_G*);wMqC-GA2R0 z+Ho{Zdzz$4+R>yjrAcE>lWwlHljQuv@ZUu;coR2_m3E1K+eZMMVM(KPE4;o3!Hm57 zfb*sHhIaKH0N)eS2^fXGrTTMP>J^a|}cB4Z)UY;QSW9N+3 z>ESDMV+N?PLg_UK5wQX{_!8IT`(Jxo4xmNgU76D!-I499rmmmQqLLU(p$^>f(iV$SIF!iyDPk=MG zFfz-e$_^$l%$UI<1f0KYVd!{0^cF5@jG88U(3+vOA}|Iml09h2DY{NFt|KxRL!6x8 zeNPeoc1C>8jGoSlQH#r&qs6RHs{kP`XO0$g=GY=>^3PmMadI*Z_#B6h*V9=sYH>L; z)^t{=RgDmrGe?VAacsFcV=kJVoU{SI-Jwm+jGoSlQH#r&qeY)ls}mtEXO0%L;@EO? z_6nX`?;x1kdmlJ|L&VS~XGTwFg=#^lX_9AHGAx-5G|!TFIaFk@C3(nYp(WdaF1O@r zpv*vAnN9lWXC`f+Og9AqC;_v;N2f_2Y^FU#X)xUug)+^R3T1k06iUFPX`+X6(`_bg z0?waKlYJq`LU1O z9lo7def~zwaRg(Z=cFRe!8Vf~e=TN65Bv?_?RNMt0YB={Cce?bXcc5ydr;HiBd%Pt0VTZ4#{}P#NmPF2UgKjQENYnTU*}%+9iT@t-O@ z#&-?@O9ld-+zg37d)58}lM08VLJfgYsPPrZsYQSV0-pJdwLtF82x0t+p0nPd;z|U> zBj6d)*mzV}E){ABjDk&>oFh`9nt-QEV=Yi&zf`CpFbc62UXcp51V*9OFC3%IgI(0# ze1I(q-2p&dr%tIj7%bN5?SLDkxR#o`HQQ8(tJ)6PYNmiA(dQ}vco5g=ew5~c#Vinxk>Z*%fN2UP zn2SISLS?{j+3^MnWUT3h03`|~pgkI}cBl7j*I&9YnYGeDHNh@~*qWxo2B}a(utlOX z3GPFnZq0ULjENp(9A%@`+Gw-fXtho>ztgOT6_vyc8hu0>ozV@T?ECXqD$;O3+>*Ev za0deFk3dH8Qd&)L06~?I*kL6gIN}S4om2t>o}rHQ2~F;m3N-}AWX*PBFDe0n zF0kp{5L!;`izxts&rPZsmESK+asLP)*ROP$MO|5+QD! z;9>B4lqSImgxGRY;XbKQLtqqauGi!E_?-yO(ul9G--8ekH~4*>Z=ug0qM9b*5CpW9 zO8~|y)Z~=!MgMptr8ANW(Vh{UMGN0v|CY2}w4LxILZay4n=>Nk3%8T}2q8&yoaZaP z$s_$SLb7NJ%J+VgNk&8_?6)Vr^qzUa3E;zizAM0(te7AAOupj&Rs_@(LBC6677GEG zdE}P)|3sC+6l*mUpOZWoXAvS&9j|cTE{3A*AV8TQ8^H=m;f)oDehUl?+8zZyB1WSS)M}~GB@)*R+I~Cm z^$0LWu+b511^%QG5$r(-!|DzB+gbkI2y#n(-k|Nol|N=$fB2(AH6q?DBQFnYi>Co+uf_PlZM-Sb8KpVqhYkzI|62$r7%Ol&y&xYwN?#TKG0o8RzM*;fT z2sawmThMwRf#WFQIRuR40i?zBoI#!CMLskl})j#&hoBw9`I zl;RTXRa}DC6_?NzEeIhmatai^PA*-_E3)FJmrd9R}cAVu2DYMhHU-)pHW4 z%HOQPe*XMXmoNX{i2(o3uLtHF;f+>lwW#}ICM#kw$I$jSxGnsPSXL5vg zW2HT|4kKnuF}Cl6V|DA1#vg}UAfNFppl%iZFl%%@aU)IbMgY23YXUV!*V)Ma?vQDk zA(1@u-tDHLDayoibh^7;9Z>N)a3)`n>}wgi2R-RblOptDoNLmAM~#Z(Tq~VrrM`2G z6b_qf#KcV=UVwAi9pM^^*CPPE8-Sh6ahO${NyXcxbmk^s(Qmc$Gz+QBHmUGc+!3^O zj(N1pj!QgVPG7(3YbdG*9r)Tzn#A9duy}b$oU#_j+LfVW*9WIvFzx{QaO4tr8Igd zno)5|X{7RbfXBB{F?4)ttaqd1wt?|F*Wk%yMyP>%Mg^cA#QhQ)UHF8iN}&RDoYr(& zWyD7In>1g=&c~*42aWT|WoVOOM^C!L(Tj19(SuKnisK$i_aQ{^Ae@lT`HiuEQ0D{L zWxPEIK=sD$ab?SMgT3gv)tV9{^sp+a#BrjpG5t=C$jET(v7~k6{jJEqU0lBdS}`jl?o)Q znt<1KV~tXwP%6|A7zJyz7TlYqf^U>cosv~ez&pUPMyaq|D%21d1#9#$xUWkEzh6BA z^2Jyd<9#Ao)daj_9Geam&Ps(E0;6ElnSv-Y5FC$CsZFw~33y>S)+iNPr9usXQLsi| z0QZPg@I6AMlaf_Uz}wHUMyc?DRHz{^3fAZVL>YnLtJJYZsZb>qY6y&i zHQEO5YN_DoluBD9tD1oKvSW=>;U1|_LtqrF(U-wJE){&ERQgD=stI_>JJu)_PD_Ov z0;6D!79q+w1gH2^s+Fv20^S&pHA;oqQlW;xC|INGz`a{4_&Mzc`LSgAgCwt>Z$iKb zLBJd6vFT7@qg1FNFbXyuDy)+VwFE}Nj&4-gfxu@5;Z6i3N6;SEw0H?t%0^1nv=(4%$xiK?Lk#5$v)OqRg99o%BkTGDpA*{;_VRLWNYQ zAutNo%~Y6yz$_EaLqL`Z=1X)&8^9XHT@SEHp#)ncI^z+5Zp9_or?@Wx98z2Yh5BA( zva=EB#iH%RIu!*k65}glnI*#Q2*?uO4Er;M8rMw*c@2Vg9nl)8QA04-N{BK(Tt~pX zrHR|{oqq8k{X$v)p-C6LE>)`u-at?;CH8?5nDnVjwybZ!_oaCHNdTqkKkfO-h0{`6 zO~5xV#8wm)&PatC0;6CnY5<~)KyYfGO4mzPH347a5NlMv;6Wg76QH)A~qfsj!T6af|4t!JBxttrKE1nc4CYPfpO?TUw0;@ zA0nW<_=zg5=npwmq+#xC6aK5jmnWVB`~d0!)Gi?{1Vxv(oyf-sy=1jt>}@B()TwFy z9s%z#0*XaI1DHrsbF9qgjRY#o{)CVDY(u~n+YY}G873QsG0u3irI~7i0}`DV6<~YY2>jEfp0a(n4(pz+i>CNkt`V zI)RBk-S_Z0L=QkhuM=iV& z1thiaQz8OJRIS|Po^jiyLhY>p8x?93@gJR3#7_eu-RT6>prz^Ct*$?;EQYWdfh8uq z9RbB$3qWnB#LUo6#UgkfA+~a;@VHc{AvhpWzrUI2Oo;J!A%w-~P8>Eg1uVtI^)U$J z5XK|$Z7h7*#}0%O2z>3x#|XUOJ`H!ccn54g0xy59MBuHjO$fa1^(ewlg#8G-;Dwjh zMtHO9B*KRX2|+xq5uymZ(=`@>m$|ADc#CTZ05I zxwiBWbRI?6iSQ%>FDvu@(tZS9TrxM7QW8-w2qxwZRE;nL;bsJL z5vdJ0Zy=egN9N9vxol)^8SRG7GYI<-4j}NtF0UIMMhGRLeIn!_@EY!L1YW!yi%@|u z4WSlc9s;k^wj=NY?OKEl2wM;yK-h`E%d-0r4j>#t;Dy*X5O@XlBLrT0O-NR^U2_0= zvGo!JUS%yq;N{gSgeeFM5!N8wgRm9h5d_{#eF|YO!a)SyJUxo=I>JW?ymA^y!N82r z8zB#2FamFp79f-$@Lm-!RN*%UBIYI)??pY5ia`aT8-Z7M&ZVKA(%~P31O(m%+K*6} zfwqUR65&>aH3(}F@C&PvI}z?d*n;o?!Zw5*2#+8b=(P7=>Wng~3L%k#El5P0TxV;;sp z1ar`KA8;PBzFi1=5O}@MXujS0V}wr-&LW&c7;~|ej|Dys z;TnWF4xi_jdEWRP1aqMHEbwy(2}96t5%wbNLwFtG4TQ*0btv~8z;_YMDcG_?n;z{R zMmU1-3WCX}Ip=(#^o$;lA}>c+iSWNlpXZd#A!QSvXLt`H@QkdhV~g;hS@X=G36!n?rBrz?__0qB6AGL$k_&XnTCOPUl@3Ug@LzC7n-Cq ze%CV(VLrkVgk}VOA!Ov#<+m{m{DOmld;ARCR%hULywP7VwY8yfrC3zo(l~$Fs=B7u zrcO~kvwBjk=;&;3YF$)Z*U;FpKy)@NtD9fn(I}=(ytY=)M)H#r*o#rFEV4^P3w*{MqHX??#<~T|T3YH`8w7sMu5SLS&PKtX^kQ0KMSD|cW8K28)&*^y?c%x{ zCL!{I`sU`whPwG(3m1MS9nrL`j&haWDACn1zqav~F601dEw68GYN(^#x|WXlx|}7d zoQ*AA&Gkr%g<8nqFHgmbEpu*LOB8Ypp{9GC^2F z3F_M$pmz)0BA91ti1x!cQHIaBAyP(canGwhW$VY!}G%vIWcm%SF1O zp$>WK6z%-Y!Etb3)54|&P4&&=1$^DMti4mEyJA*-b62C#E<~->ch-v~o%M@k-6%g4 z%M63Da9JH{w`)PCU@ArOvsiwX$j?!txgM@+YFH_{T9Kcn+FpD83YlTVuJ7#X5S=X@ zs#UP~?TsBMVteC)Wy>4eSIPV?>Rc>tm|lJL)o4ztu1A%i0_L~q%9ydLtx>d&DOE+F z&s$3BnwPDpThVT_ipsBRsc%z0YnSDsLz>#qzLb;d+Ui#|FRO15%z$4ffU)PhI5{gQDK)sn1nUy`hfTnbf#YHOAJimIckInnr0Elq`9Ns&h0_>qvG(-bZTe!YtJ<;7!qXojl3i(*^jvaU|$Rn_L$lR6p~)hie24x^mLUfkNa0u6vYXR>a> zH?k9oj;321Wx34n?WxLRcUtT_1^zYushlQId*~?2bUk{*aw zU*QWD*SD)?qkD$wHf(533(zZ-mwfg#YIKWGfG28U+lCBnv{djs{EN5NAv!-dtcGyESisA!Oqpv)UiOepB2*@TRHZ$Eh>=@ zqmISxO^X(Hs(vF?KX?7i=;x+hS3T|O=$OKi!s2L2QSq4KlA_Vk;pp*=7@04Pe!jBy zy2~3|<~KGpG&YPJGje`=ed~h7(RTFJ4vgs0lG0IEj4J;^bYx5C;;xqYfOukDwE!bQ zGvfgM49UJ30=YJR_+Dx^>w| zvX(0p_1D_cX7Tz33qY9X&B%^M`P`u$`oyK1VWqW$-Eujat$fS^b?aP|$RxWH; zV}hwN>0Q&7&^NE^SX7O{qrDM5m+8rogiTD2Qnr5N(6nG#L!%tRF&@gt9*6lhJX$fv zFT!};+PJb)^?y0WG9#RX@QG>~itbqp>Rb6-SAE7G0(B!nUuJ$p1KI#)936}6)ZC+e zQ9C*x(lW{70jy>dYB8u)Otdfe z%WrM^Rzz1DJa3-l9e%Ou7Vwd(CQ+h+-9s98EZ_m!v~ZOjP%t%GT;Gc9%DTb~&C#tN zJqpj(##YX^>YCbbk>iEx1#;3Pi?X1#sdY)c8?CdWV_BQ*TT-{7vAKSgxPI2uiFH>? zQy2&_t3pz;GE|NiHnn$j3RaVxrRXV2hikT_r9^s~b0;`mk9V@7?St9Lz3iT7h@*;B z=QO?Ew6=wC{$k}H4%fO|dM?n|!HE%T9FwcY_zG`nSx^kWwX^<}8Dt2|(z-U)DBu7q z=xA$bXlk$HBufsT?aMkB%98kP0u9G+`6di%8Vj^c#5hDnu7W7JuuW7?foPBVVQ)0=0-| zaWhebz}0y(;Ka0)b-_EJ3!J)?am8NY&|JAs0o@OQa<1SD5FswDil~-zWxo}8Wm0i1kBw)3pY3Ybr_eKY&F{9w$R~Z)=gj}3@E3O`1^{Qeq`5;e4|tW% zuhHYK1^u0;^|*6U4ZJcfV_oQu;ChzL$hezvAsKf#CS4#NcRk`|EEn^|osbPOUf!47 zx-)5VhotiYcDZY^<^nSAq|CU0jJqorDhGF58ZHozyD;-EAmh$VyiMbK?$)r*<9%;_ z>n;kJtTXK5?2-0+Zp+l+4$rO&=$Ja??oSSMd>?|2_rHfIj|AGQP^zQrxMY==LenuRf zsXd_BA#v*bNT8-X_<>qEzS?9@oxd{1g3<>|7t9m*u|{#gp=s}(IQm_Orv6!n2I>DX zKa?YrzJ1zT?a-9-1O(NnNck>@ru>9MQ=SyC`jn4xXv$Cc6{X69`i`+b-k}+Pi9<8~ z*|628d^k?g0^m>OZzE2>y7XR$rv6(FO?xjztUl$RIJC?!PKp|PQtr@{H{;}`D_`T# zlvkw3%K3tGqfhyU-j=3)z6IEougi+13vw(?eZC*g)!*aLl=GV`SDuh-Y07!Z(Uot= zvoz)W*3p$O?rUkv`Hhz=pX+~1rRu}>5Ef2r>8l#}M`Oabtx=xK2@ zUxzBiTF!Tzy7Y!PdSe`Yw?ki#h@?$^=7HV<+5tfBsGo8IWcrf9F3pyh>_#udJLWC&=11!Ti4=LFQA8iPXK=6&`*Po;CZ3y zN42LE{rq5z=OHJ}`48i>eDfUnuQWZ*k=s!^L+an<^e@@o9U9U6KQmt1Z(&t>d6>5= zB{iOLo^NR8r@^6VpYwiK{-{G!&UJv1zYgSS&|DV;bousT9bn|t=eoeqcovA?>2-q9 zpT}T~@d)ph>HIW*;5Pq^~c z4ox}N7q0w}LsQOmhAZC^wKU}i9Gd>Vdr+*L>kT*lUVO7@XvXJy!_bU>=MYO%{)|IY zUgm$Rto+5-L%Hz}`QI8VIlmcp@5+_J&|hWoYViU1n&?4?8sFT$33&X?`or3&{#J*koa;4LE+-q3ks%8GyxacB-(h$4&3cI|j5%@o>p^o}sQyl!zYFwmLt=ja zPoUMRip*2z?*nbUbm~0j_Ts#w{|IRO*MFzZKW+)|PMz-tZC633&VL8AU1gm*zX!C9 za_aoEAk?alCQqF|2-?lhVbE@VUXPQ%4VvqF^{3V=haLZX0Qp-E{VC{o96E@^&p31{ z=3YtDN&u=&Wk08Ga@=h(sFRY92 zf@T{s`iC5QY|qCW`VY{54fHlgfAKi$U+Q-{^k1Og1$vg&PsSF&FF|v^h3OT7ehoC+ z2s=u542gYE2K6d1{A%5xvocaf! z@$UkClS9+ruY(4_pBgVtIQ0F@4`|$WmGP;6s47LzWFotHTP<(|7;KP9h0s6 z=a4@Px&%f{d7G~@@}M{l`Kyqd@_Y>XkDyrqqkq6}KLL?qJ0tp~>R(f?G4?!>-Gh9# zBOly@{B=i8f0toCuga|IV~Rsx)p{N5kVw^dNuHk+1JT{<dEFa5*zo`5~ z4gVE#R7P|-pa+_A(nhYJp-!C-hV6bFM{eAt_V?#V4~wJA;^=8{bX^?H^tt|1DXR9t z^`A>~{b%Sd#IHnqE&`)>z!Mume~SLh^&jb-prd;Jn}Pkc?}5Gz_V|qHjS~M5H1`X* z@0%G2i|0V&FUpS$l;<$$>!3dzH1&^x{v+mJ^GL(~A3^^OF5`GK7;+>bxW7QR(_SKI zSDpvD3-c-J)7}Ws-axf~PJ5%{^l^(kCO&SHi?8bOf%<;{o#~XnEl&T7ar9lFx9RaA z1M`QkgXa1iIhXm}9;g2u(7(ob#hp^7_d;C!mqGVM|2FcsLA&|!uqE3M_N70t9yx`Y zyT!?GFUWt1`4sn#Y5!8tzk@$cXd1syF1~>Bj?gr2wu=Xy^0$C)!hC&$mahZN{S;H4 zyFuT9`C*xs?*RQ5v=8Qo>3s+EP00UR(x{JTKo7CjJ-SHfh2zh^g8nV+&(ZeTa!X;4_0RT^47v;L3qYpd2Z-BV2Z1*GWf}0_<)Cjt{@SRI z{7(k$rauexy^eqIo8)2|(lhP5Gfsa4=oeGJY%Q-#PLx#>Kw}H20rO{XPKtwsyU`eDcaZ-E|(_0BG>|3RF-hmPZxCl~Z{7*9B#Vg84L zUWM^ukB)yiXzst6_E!eF1^zMlsR8ZUYXi;wIHSJ`^jDnxm7*Tq_SS~{x&FEb`ad79 z$4k^_H)z`)L*o0Oe+oI?rgh@*#q zej4?|_RRFgf_@P8k7;^loPKK@eLLvCVEj3w+wa#vZ*cnewmAK7gWl};>qXGq?=f5AAU#3{AOZed%t6EG-$WHljG={Kzp7#bHMgcgZhbS?~uQS z_Qm-;?cV~L`{ky;uZXkvWzhJG9Kc5g?A-$R$HBNsgnZKe7Rc{M`<@3r?QM&TzcY^B z1Nx^ze084>!yx~*-$a64q*-wJe5cfQpPc@3W5t9AZ=4jSKIM)@6P2IiYbLA&{V7xZIJdi=`t ztEkTm#z*_Z+eO6Nc;3v=_6CA>;}?N`5c+bwf&LiK{659xw<=D52I${9&!eTFPocg# zwf!}qE1mYbIWGQg(0q?}v)2D1^_})`gz~5zfBpdaD|nvH*81l`|J)g``k;VMJ(+!;74H+R8;F>SRiizgK>6GIxr^iCcYn~tO8 zVoD><_DgI?r#ut6xQCS8Izm5=d@{}jz3row(NAsATf124nXdiQwJLa~FBJ`CI zc`UtyhffuTs}KHpOnV;d0%utZM;Bc&I{v&{>}mEMoi%;xl4-Zz2xt8#bW0XDwl8gl zZq@YZwW135QuOtjsknA={S9@sS5L1Nl@qTO*H>OErd$mnjB z>d+kVZNgDao-(a#FA}(lfFr9oiCd3YYznRQOXYD>bv_WsIlJ0hC6gy`>lWi=FV2n2 z^MC5RFpR0wA9Wo(NeB}{Db?XD^)j5rS4Rsq)z!M9skLEbeR~T|mf)=ALY(ogTeff^ z4zrKq(f9iH1&iyho;pL{TB@sC)Y?_2BJmsw4qd8~dBhu$W1K_b4HsM|TGo!k>$v}e zQ{Om)*tn=e)XkKM;qW|9KFcd0^1=-cNf$PCwAbSmy)pJnO5r&rDgK|0UCVAGMHFp$ zhBbp&fW%^k1-r4GI2jK@AmO<463N7}oyV?Zw>q&kaqMZ^A(0Ro@d11REZFe{vjz#+ zfDpS`@dZfm3!HPSZo8@-BT8y_bv)AO*fMPAnCR6 z$()a~1h7hd<8C_J1<%I4AH)eh`CUObi2nx}>2lb&f?+k2tUR4h2z!QdM7!>tLcvmT zBHY6pu4!A2n_K2w0HuJB1Ir!t`c@POFv;Y$Je|$^)H;|ky~{iTl;i^ILl6$00pNuu za2Gf|u)E|(&0h@B#vo}rSW22pQu0w1LtMQ`5)O442l5`>@G-K#) zx1iV@Fh%S+5#)qc+X-xpMNt`nOD|)nyZeXhrrGqlGC7B!+X>Q_k-!AII`n@dZbHt{ zVau1)xt(^0a0rSVwg&8a)9GEO=47W8wV>e6NnYsL;eH+m7XAjrH5meB`0Us4CXd=< zOpkVo&1eI8K1$6vGwpOX$i|;X!r-_QO6<)U zfR78b1w%H2I1$f*$doPg*u;huoUwtwT7fOkS0_NcsbwFyt_??znmY}0(=au2S8>wr z7`O|&zBz_al=F((80scUc=}VOr^#quuoHptTgs;c?jg|{+re-IXKhS>I$fBT-^DFB zZxB+FH0reW3&TV|yrcZ+!tSqMg4bsInPY(~zVviQl+=fLop854!C$Tw+U`@UZ@B;rEMi!Cq8VzHw=1LSLx-Zd1C4&Xl71FzO%jb5IR6H*j%%~1B#>LrU7ow z*;aE*cqvGU)JNU#mtgUWqzJl98Uan(3PQa=`y7x>v;M>vwQP`B$o`8%;_D!o7vQJ{ z>{G$IylJIl44s)+xI3FPsK_o_;+n$_`UWAp5$hWTb#B>Fcah6>4jP?3zvr^mwd*bDbmW=Ky8_d{ zbM29l2VcIxD-#R$nNyrwW~=>~Ic}M5dzafR|NS&DN6}OLLbn_vwUvN_t8BbgR69Es z!CDK~CL0oZTTphfO^Bk(^mc?z0`9ZS-Uk|!eOCp9+Y0QJMQoIRfuJHHDsZ-}h@r>M zW;D9BMS3&*m5M(69WuFd!8bEh;I}7pIRs_i#f78n;=O(!6kg5gfeL%U+OE<#(P)@~ zhH8d2B(|l`)c+gaLqVSR@JtQ?CvZ5YJg^V^7y$fG>%;~C0bv4RWC<27)1mmK|qasw*W z1#J`0$TZHZ%HvY>ng`u3Xx>XaYn)kcOiR(bI8WA~d0!(zXCCYhvQT=^eDEHyZ zQuJz@HEd8B-{Vo^%=!E0QndGuEyGXEd*$M)m-?Tj=vSPxYG65DKf1f7-~X!={h)(| zM2-HAxU&H%`qMup{Qs>*(D(B0buaoDM)2vwD0&;|yU3)x2e@zq9?1LR&3n-Y%y2>F Uy@hB0z27~&7roX(xNEt80aaN^oB#j- literal 203936 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 O=;9gkO-kG?@cjiaq1d_r diff --git a/firmware/build_stm/inlretro_stm.hex b/firmware/build_stm/inlretro_stm.hex index 8cd50c2..92f4d15 100644 --- a/firmware/build_stm/inlretro_stm.hex +++ b/firmware/build_stm/inlretro_stm.hex @@ -1,5 +1,5 @@ :020000040800F2 -:1000000000180020C1000008FD000008FD2F0008B6 +:1000000000180020C1000008FD0000087534000839 :1000100000000000000000000000000000000000E0 :10002000000000000000000000000000FD000008CB :100030000000000000000000FD000008FD000008B6 @@ -13,1236 +13,1236 @@ :1000B000FD000008FD000008FD0000080101000827 :1000C00009490A4A0A4B9B1A03DD043BC858D05021 :1000D000FBDC0849084A0020521A02DD043A885025 -:1000E000FCDC01F0DDFF0000AC4B0008000000204C -:1000F000300400203004002038070020FEE7C0460E -:10010000F0B5BA4A89B0138801921BB2002B01DB0B -:1001100001F0B9FC1388B64A1A4080231343019AB0 -:100120001380019B1A8880231B011340B14A01D11F -:1001300001F077FCB049B14C0B68B14801330B605A -:1001400023787F211D008D43AE49AF4E0D70E188AD -:10015000018000203080602633401370AB4A2600B7 -:100160001570834201D100F0C2FEFF23A84CCAB231 -:100170002370A84B60701C600292707801380E28C2 -:1001800001D901F0D7FB04F027FC0F00FD053A0868 -:100190000F09A00AD50BC00B6D09160A770A9E0A33 -:1001A00046094F0957095F09B078B3888C2219288E -:1001B00024D88022D20004F00FFC1A00240047014A -:1001C0002702EF028E031704D304EF04FB04030598 -:1001D0000B0514051D052B0533053B054305480597 -:1001E0005C0572059305A805BF05D702E302B0239D -:1001F000894A5B0351690B4353610022227000F06E -:1002000072FE152B01D900F0AEFD18008023DB0033 -:1002100004F0E2FB160023002E00A905390044007B -:100220004F00A9055C00690073008000A905A905BD -:100230008D009A00A500B200BF00CC00D600E000FF -:100240009022D205136875490B4013608023D16852 -:100250005B030B43D3600022D0E790210123C90543 -:100260000A689A430A60CA681343CB600022C5E754 -:1002700090210423C9050A689A430A60CA68134397 -:10028000CB600022BAE790211023C9050A689A437F -:100290000A60CA681343CB600022AFE79021402375 -:1002A000C9050A689A430A60CA681343CB600022F2 -:1002B000A4E79022D205136859490B4013608023AC -:1002C000D168DB040B43D360002297E79022D2056C -:1002D000136854490B4013608023D1685B010B43C2 -:1002E000D36000228AE704234F490A689A430A60D0 -:1002F000CA681343CB60002280E79022D2051368BE -:100300004A490B4013608023D168DB050B43D3605F -:10031000002273E79022D205136845490B40136011 -:100320008023D168DB020B43D360002266E7902272 -:10033000D20513683F490B4013608023D1685B00EE -:100340000B43D360002259E79022D20511683A4846 -:1003500001401160D1680B43D36000224EE7902228 -:10036000D205136835490B4013608023D168DB0147 -:100370000B43D360002241E79022D205136828493D -:100380000B4013608023D168DB040B43D360002251 -:1003900034E79022D205136829490B40136080236B -:1003A000D1685B050B43D360002227E701231E4978 -:1003B0000A689A430A60CA681343CB6000221DE7AB -:1003C000102320490A689A430A60CA681343CB6025 -:1003D000002213E79021C9050A68174802400A6005 -:1003E000CA681343CB60002208E7C046005C0040A7 -:1003F0008F0F0000FA06002098040020486000409B -:100400009E040020F8060020A2040020F906002027 -:10041000FC0600202C07002000100240FFFFEFFF29 -:10042000FFFFFFFBFFEFFFFF00040048FFFFFFBFE0 -:10043000FFFFFBFFFFFEFFFFFFFBFFFFFFBFFFFF15 -:10044000FFFFFFEF000C0048152B01D900F08EFCD8 -:10045000180004F0C1FA160021002C008B043700AC -:1004600042004D008B04580063006D0078008B043F -:100470008B0483008E009900A400AF00BA00C40072 -:10048000CE009023DB051968D14801401960DA6875 -:100490000240DA600022B1E690230121DB051A68F0 -:1004A0008A431A60DA688A43DA600022A6E690235B -:1004B0000421DB051A688A431A60DA688A43DA6025 -:1004C00000229BE690231021DB051A688A431A60FC -:1004D000DA688A43DA60002290E690234021DB0547 -:1004E0001A688A431A60DA688A43DA60002285E66D -:1004F0009023DB051968B74801401960DA680240AB -:10050000DA6000227AE69023DB051968B2480140E0 -:100510001960DA680240DA6000226FE60421AF4B0E -:100520001A688A431A60DA688A43DA60002265E64C -:100530009023DB051968AA4801401960DA68024077 -:10054000DA6000225AE69023DB051968A5480140CD -:100550001960DA680240DA6000224FE69023DB057A -:100560001968A14801401960DA680240DA60002287 -:1005700044E69023DB0519689C4801401960DA685D -:100580000240DA60002239E69023DB0519689848BA -:1005900001401960DA680240DA6000222EE69023FA -:1005A000DB0519688B4801401960DA680240DA609F -:1005B000002223E69023DB0519688E48014019606C -:1005C000DA680240DA60002218E60121834B1A68DB -:1005D0008A431A60DA688A43DA6000220EE6102144 -:1005E000854B1A688A431A60DA688A43DA60002207 -:1005F00004E69023DB0519687C4801401960DA683D -:100600000240DA600022F9E5152B00D9B1E31800A9 -:1006100004F0E2F916001F002700AF032F00370097 -:100620003F00AF034800510058006100AF03AF0323 -:100630006A0073007A0083008C0095009C00A30080 -:1006400090228023D20511685B030B4313600022C4 -:10065000D4E590220123D20511680B4313600022D8 -:10066000CCE590220423D20511680B4313600022CD -:10067000C4E590221023D20511680B4313600022B9 -:10068000BCE590224023D20511680B431360002281 -:10069000B4E590228023D2051168DB040B4313607C -:1006A0000022ABE590228023D20511685B010B4349 -:1006B00013600022A2E50423484A11680B4313602B -:1006C00000229BE590228023D2051168DB050B43B5 -:1006D0001360002292E590228023D2051168DB028C -:1006E0000B431360002289E590228023D205116814 -:1006F0005B000B431360002280E59021C9050B6865 -:100700001A430A60002279E590228023D2051168FD -:10071000DB010B431360002270E590228023D20599 -:100720001168DB040B431360002267E590228023ED -:10073000D20511685B050B43136000225EE50123BF -:10074000264A11680B431360002257E510232A4AFA -:1007500011680B431360002250E59021C9050B6816 -:100760001A430A60002249E58D22082B00D045E596 -:100770009022D205516838330B43536000223DE587 -:100780008D22082B00D039E590224021D2055368F4 -:100790008B435360002231E5152B00D9ECE21800A1 -:1007A00004F01AF92C0031003700EA023D00430042 -:1007B0004900EA02500056005B006200EA02EA02C9 -:1007C00069006F0075007B00820089008E00930035 -:1007D000FFFFEFFFFFFFFFFBFFEFFFFF00040048FD -:1007E000FFFFFFBFFFFFFBFFFFFEFFFFFFFBFFFF62 -:1007F000FFBFFFFFFFFFFFEF000C00489023DB056A -:100800009A620022FAE490230122DB059A62002218 -:10081000F4E490230222DB059A620022EEE49023A6 -:100820000422DB059A620022E8E490230822DB051B -:100830009A620022E2E4802290239201DB059A6210 -:100840000022DBE490234022DB059A620022D5E4FB -:100850000222CC4B9A620022D0E480229023120222 -:10086000DB059A620022C9E4802290239200DB0516 -:100870009A620022C2E490231022DB059A620022D1 -:10088000BCE490232022DB059A620022B6E4902388 -:100890008022DB059A620022B0E48022902392013C -:1008A000DB059A620022A9E480229023D201DB05B5 -:1008B0009A620022A2E40122B24B9A6200229DE4D5 -:1008C0000422B14B9A62002298E490232022DB0597 -:1008D0009A62002292E4152B00D950E2180004F02D -:1008E0007BF816001B0021004E0227002D0033006C -:1008F0004E023A00400045004C004E024E025300AA -:1009000059005F0065006C00730078007D00902343 -:10091000DB059A61002271E490230122DB059A61D4 -:1009200000226BE490230222DB059A61002265E439 -:1009300090230422DB059A6100225FE490230822C1 -:10094000DB059A61002259E4802290239201DB05A5 -:100950009A61002252E490234022DB059A61002232 -:100960004CE40222874B9A61002247E480229023C4 -:100970001202DB059A61002240E48022902392005B -:10098000DB059A61002239E490231022DB059A618D -:10099000002233E490232022DB059A6100222DE41B -:1009A00090238022DB059A61002227E48022902395 -:1009B0009201DB059A61002220E480229023D2017B -:1009C000DB059A61002219E401226E4B9A61002234 -:1009D00014E404226C4B9A6100220FE4902320223D -:1009E000DB059A61002209E402226270152B00D90E -:1009F000B1E0180003F0DCFF0B151EAF273039AF54 -:100A0000434C545DAFAF677079828C969EA690235D -:100A10008022DB051B69D200134063800022FFF7B0 -:100A2000EDFB90230122DB051B691340638000224C -:100A3000FFF7E4FB90230222DB051B691340638070 -:100A40000022FFF7DBFB90230422DB051B69134028 -:100A500063800022FFF7D2FB90230822DB051B698D -:100A6000134063800022FFF7C9FB90238022DB053F -:100A70001B699201134063800022FFF7BFFB9023A4 -:100A80004022DB051B69134063800022FFF7B6FBA1 -:100A900002223C4B1B69134063800022FFF7AEFB30 -:100AA0009023DB051B690022DB0BDB036380FFF770 -:100AB000A5FB90238022DB051B6992001340638015 -:100AC0000022FFF79BFB90231022DB051B691340DC -:100AD00063800022FFF792FB90232022DB051B6935 -:100AE000134063800022FFF789FB90238022DB05FF -:100AF0001B69134063800022FFF780FB9023802254 -:100B0000DB051B699201134063800022FFF776FB2F -:100B100090238022DB051B69D201134063800022F1 -:100B2000FFF76CFB0122174B1B6913406380002207 -:100B3000FFF764FB0422144B1B69134063800022FF -:100B4000FFF75CFB90232022DB051B6913406380C9 -:100B50000022FFF753FB00238D226370FFF74EFB4B -:100B600080230A4ADB0251690B435361054A084955 -:100B700013680B401360D168064B0B43D36000220F -:100B8000FFF73CFB00040048000C00480010024046 -:100B9000FFFFAAAA00005555ED4AEE4913680B4025 -:100BA0001360D168EC4B0B43D3600022FFF726FBA8 -:100BB000E74AE84913680B4013600022FFF71EFB69 -:100BC000E34AE54B11680B4313600022FFF716FB65 -:100BD000DF491B024A69D2B213434B610022FFF77F -:100BE0000DFBDB4B00221B691B0AA3700123637002 -:100BF000FFF704FB8023D94A1B0351690B43536160 -:100C0000D74AD84B11680B4313600022FFF7F6FA5E -:100C1000D34AD44BD1680B43D3600022FFF7EEFADE -:100C2000CF4AD14913680B4013600022FFF7E6FA60 -:100C3000CB4ACC4B11680B4313600022FFF7DEFA5E -:100C4000C74A53610022FFF7D9FA8023C34A1B0326 -:100C500051690B435361BE4AC44B11680B43136087 -:100C60009022D2051168C24B0B4313600022FFF79C -:100C7000C5FAB74ABD4BD1680B43D3609023DB055F -:100C8000D868BB490143D9601168BA480140116076 -:100C90001A68B9490A401A600022FFF7AFFAF82231 -:100CA0008027AB4D98026969D20110403F025A0279 -:100CB0003A4089051043890D08439021686110204E -:100CC0005D08C90528404A69AC4DDB012A40024352 -:100CD0008020C001034013434B610022FFF78EFACE -:100CE000C0239E4ADB0251690B435361984AA44BCF -:100CF00011680B4313609022A023D20511685B0397 -:100D00000B4313600022FFF779FA914A9C4BD1689C -:100D10000B43D3609023A021DB05D868490301432E -:100D2000D96011689748014011601A6896490A40D5 -:100D30001A600022FFF762FAFF2185489D00426990 -:100D40002940924DDB002A400A4342619022C02094 -:100D5000D205C000516903408D4801400B435361E7 -:100D60000022FFF74BFA8D22FFF748FA8D22FFF79A -:100D700045FA8D22FFF742FA8D22FFF73FFA8D22C6 -:100D8000FFF73CFAB578B288032D00D16CE155D855 -:100D9000012D64D05FD901F0D9F890220121D2054C -:100DA00013680B4313601023916111680B431360A8 -:100DB00004234021936113680B431360082393615C -:100DC0009161802311685B010B43136080236348AA -:100DD000DB0241695F4D0B435D4943610B682B406A -:100DE0000B60CC685C4B1C43CC600C682C400C60E6 -:100DF000CC682343CB60802344691B032343584CB6 -:100E000043612568574B2B43236000236361C02453 -:100E10004569E4022C4344610C685948204308604A -:100E2000A02014684003204310604869574C2040BC -:100E30004861516956480140516152E0052D00D189 -:100E4000B2E000D254E1072D00D1F1E0802D00D1B5 -:100E500080E1962345E001F079F8002341E001F0BC -:100E600075F89023DB051A683A4C2A431A608022F1 -:100E70009D61196852030A431A6080220421D2003E -:100E80009A621A680A431A6002229A6118680E323E -:100E900002431A604022996119680A431A600822C5 -:100EA0009A6180232D49DB024A6913434B61284B29 -:100EB0001A6822401A60D868274A1043D860186818 -:100EC00020401860D8680243DA6080234A691B0317 -:100ED0001343234A4B611168224B0B4313600023D9 -:100EE00053612C4A13706A462B4B12891A8033784F -:100EF000602259B2002901DB00F064FD134016D1D5 -:100F00007278062A0FD17288110A022901D100F0E5 -:100F100013FD032901D100F015FD204A012901D15B -:100F200000F00BFD03936A461B4B92891A80019BCC -:100F30001A881B4B13431B4A1A40C0239B01534082 -:100F4000019A9BB2138001F0FBFF00F05CFDC046EC -:100F500000040048FFFFAAAA0000555500100240F7 -:100F60000008004855555555AAAAAAAA0000505590 -:100F700000010010FFFFAFAAFFFEFFEFEFBF000070 -:100F800050550000AFAAFFFFFFFFEBFF03FF00007B -:100F9000FFF90000FC060020A0040020064A00081B -:100FA0008081FFFF8FBFFFFF00F0D0FF9022012163 -:100FB000D2051368C84D0B4313601023916111686B -:100FC0000B43136004234021936113680B431360A8 -:100FD000082393618023916211685B010B431360C6 -:100FE0008023BE49DB02486903434B61BC4B186850 -:100FF00028401860DC68BB480443DC601C682C4057 -:101000001C60DC682043D860802348691B030343CD -:101010004B61B549B54B086803430B6000234B6136 -:1010200080211068C901014311608021916258E755 -:1010300000F08CFF90220121D205136840200B4361 -:1010400013601023916111680B43136004239361B3 -:101050001168014311600821916111680B4313600D -:10106000022393619061ACE6D2B2022A21D0002320 -:10107000032A00D135E79723012A00D031E78023E6 -:1010800096491B03486903434B6197490B68934397 -:101090000B60CB681343CB604B6813434B608A6192 -:1010A0000B681A4300230A60914A1370914A116039 -:1010B00017E7B023894A5B03516940200B43536112 -:1010C0009023DB051A688C490A401A608022D9688F -:1010D00052011143D96059680143596098611968F8 -:1010E0000A4308211A60824A1170824A1360B4E6EA -:1010F000D2B29823012A00D0F3E690210A207F4B38 -:10110000C90519607E4B05321A70754B7D4A136014 -:101110007D4A10707D4A013013607D4A10707D4A0F -:10112000013013607C4A107080206C4A00035469BF -:10113000204350611C687948204318600868784B48 -:1011400003430B60B02351695B030B43536100F011 -:1011500021FE82E69023012740218025DB05677070 -:1011600099621A686D012A431A60C04662481C6978 -:101170001A680C4002401A60DA680240DA60F02215 -:10118000002C39D11A6802401A60DA681543DD6014 -:101190001A6994461A690492C0461A690592C046B3 -:1011A000C0461A690692C046C046C0461A690792F0 -:1011B000C046C046C046C0461D691A6802401A6053 -:1011C000DA681040D860634622000B4214D1049BB9 -:1011D0003A000B4210D1059B02320B420CD10B009E -:1011E00006990332194207D107990432194203D1F3 -:1011F00005321D4200D1D1324A4B9A702DE6B578A6 -:10120000F178B0880A2D58D016D8052D4BD009D8C2 -:10121000012D42D0002D38D0022D41D0042D45D0D3 -:10122000A02534E0072D4ED033D3082D4ED0092D04 -:10123000F6D101F063FE2EE0802D00D178E009D8D0 -:101240000C2D46D03CD3202D34D0212DE8D1364B67 -:10125000188020E0842D00D19CE009D8812D00D198 -:1012600092E0822DDCD10123637002F00DF88FE053 -:10127000852D00D193E0862DD2D1022363702A4BB5 -:101280001B88A3701B0AE37005E001F00BFE2570BC -:1012900029E601F0E3FD0025F9E701F0CDFFFAE7CB -:1012A00001F05EFDF7E701F083FFF4E7002201F0B3 -:1012B00062FFF0E71D4B1870EDE702F0A7F8EAE7D0 -:1012C00002F064F8E7E701F0A1FDE4E702F03CF882 -:1012D000E1E701F0F5FFDEE7FFFFAAAA00100240F8 -:1012E0000004004800005555000800485555555564 -:1012F0000807002004070020FFEFFFFF1C07002065 -:1013000020070020140700201807002024070020D1 -:10131000280700200C07002010070020000050556F -:1013200000010010FC060020340400208804002086 -:10133000012290236270DB051968C24D29401960B3 -:10134000D9682940D96080210225C90099629A6133 -:101350009D61BD4D6861C046C04600B299610028DC -:1013600000DA9A62C046C046C046C046C046C04683 -:1013700090228021B54BD205C9001B6991620121E1 -:101380001B0A9161A37086E70123637001F01EFDC3 -:10139000A07080E70123637001F032FFF8E70123BA -:1013A0006370AB4B1B78EDE7B078F178B388AA2275 -:1013B000042801D9FEF722FF03F0FAFA03261A1EC9 -:1013C0002200FF21A1489D0042692940A14DDB0078 -:1013D0002A400A4342619022C020D205C0005169D0 -:1013E00003409D4801400B4353610022FEF706FF76 -:1013F000180001F02BFCF8E7180001F08FFCF4E76F -:10140000180001F069FCF0E701221800627001F099 -:1014100043FCA070E9E7B278002A1DD00023012A1E -:1014200000D0AF2323705EE5B278002A14D00023E9 -:10143000012AF7D0B023F5E7B278002A0CD00023B8 -:10144000012AEFD0B123EDE7B278002A04D00023BF -:10145000012AE7D0B223E5E701236370A933A37023 -:101460000023DFE7B578F278B188112D00D19BE039 -:1014700007D8012D6BD0002D0FD0022D7DD08225F5 -:1014800005E7212D00D185E0222D00D188E0122D25 -:10149000F5D102231020637089E0012529006F4AED -:1014A0006F4F12783B68914099625A6810208A43C6 -:1014B0005A6001F055FE2900684B3A681B780427F2 -:1014C00099400B009161516804950B435360FA20D9 -:1014D000400001F045FE614A04991278FA209140DB -:1014E0005F4D40002B68013F99625A68BFB28A4342 -:1014F0005A6001F035FE594B04991B782A689940CF -:101500000B00916151680B435360002FDFD104251C -:10151000FA2001F025FE0121504A514F12783B6814 -:10152000914099625A68FA208A435A6001F018FE85 -:1015300001214A4B3A681B78013D99400B009161AB -:101540005168ADB20B435360002DE1D19FE62900F5 -:10155000424A434F12783B68914099625A68102082 -:101560008A435A6001F0FCFD3C4A3B681278954082 -:101570009D615A6815435D608DE60123374A6370AB -:10158000127838499340364A9BB21268002002F024 -:1015900027F9FDE601230020637001F031FDF7E635 -:1015A000012310206370F8E702230020637001F02C -:1015B00081FD60806FE6B378B288042B1AD006D81C -:1015C000022B1CD021D8012B0FD087232AE7072B11 -:1015D00024D003D8052BF8D1234B14E0082B22D0BC -:1015E000802BF2D100F0D6FB3AE7204A1278A270A5 -:1015F000637035E71E4B1B78A3700123F8E71B4B84 -:101600001A7083221A4B1A702AE7184B184D1A7059 -:1016100083232B7000F02EFC2B78EDE7154B1A700E -:10162000120A5A701CE7134B1A78A2705A78E270AB -:101630009A782271DA7862711A79A2715B79E37112 -:101640000623D5E7FFEFFFFF00080048000400482D -:101650008804002003FF0000FFF9000008070020B5 -:101660000407002004000200E5040020C404002058 -:10167000E6040020C5040020B378B288022B16D0FF -:10168000032B17D0012B1CD1024885460248001CB1 -:101690000047C04678120020C5CAFF1F060005009B -:1016A0000800070019C9FF1FEFBEADDED8E6B34B37 -:1016B0001A60D5E6B14B18680004104302F08AF8AE -:1016C000CEE68A23AEE68823ACE6B2781300303B40 -:1016D0002F2B19D8F078032800D9CEE003F068F951 -:1016E00014021012A64B512A00D177E024D8312AD7 -:1016F00053D00BD8002A33D0302A49D0B42345E048 -:10170000A04BF0E7A04BEEE7A04BECE7332A4ED01E -:1017100048D3502AF2D100222270063262701A7A1F -:10172000A270DA78E2705A7A22719A7A62719A78A3 -:10173000A2715B7CE37145E07F2A00D983E0702AC7 -:101740005CD2602A36D0612A40D0522AD6D10022FB -:101750001B882270A37002321B0A6270E37031E0B2 -:10176000FF238B4953540132102AFBD1844A874905 -:10177000D3709370844ACB70D370937001228B70B6 -:101780008049CB708B70834B1A700023237019E053 -:10179000B288110AD9721A73F7E7B288110A59731D -:1017A0009A73F2E7B288110AD9731A74EDE7B28816 -:1017B0005A74EAE70023237001336370B388744AD4 -:1017C000D35CA370744B1C60FFF78DFB0023237068 -:1017D00001336370714B1B68DB78F2E700222270E3 -:1017E00006326270DA7AA2701A7BE2705A7B22713A -:1017F0009A7B6271DA7BA2711B7C9BE7634B674922 -:101800005C6833787F2B00D95BE16846644B007AD3 -:1018100018700868C378002B0ED000200290982B17 -:1018200005D156E100200290D02B00D151E1594B57 -:1018300010301870FF2304E05A4B18609023C370D7 -:101840006F33029345E107201040032815D803F0B9 -:10185000AFF8160218124A4B802AB3D3872A12D93E -:101860007032D2B2072AADD800222270F2789A7272 -:10187000B2881A80A6E7444BEEE7B52386E7434BD0 -:10188000EAE7404BE8E7B188F0780A0AC9B24518A0 -:101890009446BE22102D2DDC043200282AD0DD789B -:1018A000033AFF2D26D19D780132FF2D22D100224F -:1018B000D5B2A84220D862464501013D1D724D01B6 -:1018C0002F009A700022384DDA70ED195A729A7210 -:1018D0001A80DA721A735A739A73DA731A745A7412 -:1018E0005D602B4B591863468B540132D3B283424F -:1018F000F9D30022227065E701328D18244F013D93 -:101900007D5DFF2DD4D0C122F4E7B278002A04D047 -:10191000402A07D0D222227055E72270B1881D4A92 -:10192000117050E70022227001326270194A127859 -:10193000A27048E7802375E51C4A174B1A601223F2 -:10194000FFF7F0FAD2B2012A11D0002A09D0022AF8 -:1019500001D0FFF7E7FA104B154A1A60154BFFF755 -:10196000E1FA0D4B144A1A600423FFF7DBFA0A4B25 -:10197000124A1A60124BFFF7D5FAC0463004002015 -:101980004C0400206004002074040020380400206F -:10199000E7040020A40400202C0700208C04002071 -:1019A0009404002090040020F8040020F44900086A -:1019B000704A00081E030000184A00081C4A00086C -:1019C0002A030000134208D17378052B05D17388D0 -:1019D0004B4A13704B4ADBB21380019B4A4A1B8867 -:1019E00001991340494A13439BB20B800021484B95 -:1019F0001980019B1B881A43464B1A40464B5A409C -:101A0000019B92B21A80454BDA8F520507D580218F -:101A1000434A11800022DA87424B019A138009B0B1 -:101A2000F0BD1278402AEED13F4A1278002AEAD15E -:101A30003E4A10883E4AC0B211684D7A4E68DAB20A -:101A40005419E4B2904218D84A7A82184A72394A34 -:101A500013781B1ADBB21370002B01D19833CB70B3 -:101A6000019B1A88294B1343334A1A40C0239B0118 -:101A70005340019A9BB21380C5E7304A9A181278F6 -:101A800001333255DBE7019B1B881B06BBD5019B4D -:101A90002B4A1B881340802212021343019A1380A1 -:101AA000284B1B78802B01D1FFF74DFA144A13788D -:101AB000002BA8D080210B4319490B800023137001 -:101AC000A1E70868C378D82B00D0ABE68023446830 -:101AD000C3700B6800215972DB78902B00D071E63F -:101AE000712A00D06EE6124BB2881B6859680A70E2 -:101AF000B2885968120A4A705A7A02325A7261E6FA -:101B00009C040020506000408F8EFFFF8080FFFF0C -:101B100002600040BFBFFFFF30300000065C0040A5 -:101B20004C5C004020320000F906002006600040B6 -:101B300090040020940400208FBFFFFF4860004005 -:101B40000F8FFFFFF8060020F0B5404B8BB00891D7 -:101B500019783F4B09921B78019002933D4B019DF0 -:101B60001C683D4B3D481A7801231E0096403C4AB4 -:101B7000A662102D5ED11278006893408362012026 -:101B80000200364B05901F68354B1B789A40039234 -:101B90000200344B1B680693334B1B789A4093B278 -:101BA00002000793314B1B689C46314B1B789A40CF -:101BB000002304921A000198202806D1029D05985E -:101BC0001D4105423ED00398B861089820280FD1E6 -:101BD000002B01D11E4883540698056907980542D9 -:101BE00006D01B48855C05989840054318488554E5 -:101BF00009980139C9B2002802D0002900D1A66194 -:101C00006046049D0133DBB285618562082B05D1F6 -:101C100001320F4BD2B29B5C029300230029CAD140 -:101C20000E4B1A680E4B197801238B409362A66203 -:101C30000BB0F0BD019D112DA1D112780068934029 -:101C400083619CE70398B862BFE7C046E5040020C3 -:101C5000C5040020240700202807002014070020C6 -:101C6000180700201C070020200700200C07002078 -:101C700010070020F7B51F4B1F491A781F4B10287B -:101C80002ED101241E780D68B440AC6201263500C7 -:101C90000C6831001B7801969D40194B1B6800931E -:101CA000184B1B78994000238C46190020280DD131 -:101CB000154E019F765C1E413E4219D0A56101334D -:101CC000DBB2082B02D100230131C9B26646009F66 -:101CD000013AD2B2BE61BE62002AE7D1A562F7BD69 -:101CE0001128D3D101241E780D68B440AC61CDE732 -:101CF000A562E4E7E504002024070020280700206F -:101D00000C07002010070020C5040020F7B50D00C7 -:101D10001600FF27000203B24C7A01932A7AE3B23D -:101D2000A24202D26B720020FEBD20006A683840D9 -:101D3000D15C019B0134184380B2B047A4B2EDE7F7 -:101D4000022907D10F4B104A984218D0904209D16E -:101D5000180007E0032906D10A4B0B490B4A9842A9 -:101D60000BD1080070470429FCD1064B064A984263 -:101D700005D006499042F4D0054A8842E6D11000C9 -:101D8000F0E7C046380400204C0400206004002026 -:101D900074040020F0B52C4B85B019682B4B2C48EF -:101DA0001B7800780193012302901E0018001F0089 -:101DB000019A029C9640A040264D274A2D78126831 -:101DC000AF408E628446906224489D4000688762DE -:101DD000046803941C00AC402500039C2543056067 -:101DE0004568019CBD4345609C401D00A5400868B6 -:101DF0001C00284308604868B04348601068029996 -:101E000099408C4021000143604611605168814334 -:101E1000134851600078134A984083401268124872 -:101E2000116899431160D1680B43D36080220F4B36 -:101E30001A70002319000E4A13701A18013311701A -:101E4000202BFAD105B0F0BD240700202807002080 -:101E50001807002010070020140700200C0700209E -:101E6000200700201C070020C5040020E6040020F5 -:101E7000E504002010B5334B1B78082B5DD016D835 -:101E8000314C032B44D007D8012B2DD0022B31D05D -:101E9000EE222D4B1A7023E0062B44D049D8042B98 -:101EA000F6D18123012223702021112027E00F2B5E -:101EB00034D008D8244C0D2B25D00E2BE8D181230B -:101EC0000022237027E0802B08D01F4CFF2B08D066 -:101ED000102BDDD181230022237027E0FFF75AFF6A -:101EE00010BDF0232370FBE7812320202370FFF730 -:101EF000C1FE06E081230122002123702020FFF78C -:101F000023FE8223EEE78123002223701100F5E7F0 -:101F100081230122237020211020F0E781230A4C25 -:101F200000222370C0E781230122237020210800B2 -:101F3000E5E7812310202370D9E78123024C11208B -:101F40002370D4E7C4040020E6040020BC234749E2 -:101F5000DB038A6AF0B513438B628B6A444A01241F -:101F600013408B6290238022DB051868D201024364 -:101F70001A6080229A61B0224869520302434A6182 -:101F80001A683C483C4F02401A608022D8685203CD -:101F900002430420DA601A68A2431A60DA68224316 -:101FA000DA601A6882431A60DA680243DA60102243 -:101FB0001D6895431D60DD682A43DA6040221D6874 -:101FC00095431D60DD682A43DA601A682B4D2A406C -:101FD0001A608022DD68D2042A43DA601A68284D2C -:101FE0002A401A608022DD68D2052A43DA601A6826 -:101FF000244D2A4080251A60DA68ED022A43DA600F -:10200000214A1668A6431660D6683443D4601E6819 -:102010003E401E60DC683C40DC6080234C691B0352 -:1020200023434B61194B1A4C1E681A4F26431E60FE -:102030001E683E401E60DE683443DC604B691D4311 -:102040004D611368144D2B401360D468134B1C432F -:10205000D460116829401160D1680B43D3601368C4 -:1020600083431360D3681843D060F0BD0010024072 -:10207000FFFFA1FFFFFFEFFFFFEFFFFFFFFFFFFBF2 -:10208000FFFFFFBFFFFFFBFF000400480008004800 -:1020900055555555AAAAAAAAFFFFAAAA0000555548 -:1020A0009022B64B12031968F0B50A431A608022D9 -:1020B00087B0920219681142FCD0012259680A4384 -:1020C0005A608022596852020A435A608022596835 -:1020D00052030A435A608022196852040A431A6064 -:1020E0008022920419681142FCD011210220A44AD6 -:1020F00011605A680E398A4302435A601A6B7D3167 -:102100000A431A638022DC6912042243DA6162B650 -:102110009C4B4025DA8F9C4C8243DA87DA8F01385A -:102120008243DA8700229948C2872280984C258012 -:10213000984C083525808025974C6D012580974C5B -:102140002180C2879649974A11808021964A0906C4 -:1021500011608022D98FD2000A43DA87934A944BC8 -:102160001A80FFF7F3FEF022924B1A70924E202352 -:10217000327811009943D2292ED190499048C978DC -:10218000C3780224FF2904D1FF3B1C00631E9C413D -:10219000E4B28C4BDB78FF2B00D003248A4BDB7836 -:1021A000FF2B00D00424894B894F1C703860D22A41 -:1021B00012D10023012505E02100FFF7C1FD012315 -:1021C0000135EDB2A542F7D3002B00D03860802254 -:1021D0003B68DA70D02333703378F22B05D10022BC -:1021E000023B33707A4B1B68DA703578D02D01D002 -:1021F00000F0DAFC764E3068C378802B01D000F016 -:10220000D3FC724B1978FFF79BFD002330600188E7 -:10221000C57004004372C07ACDB21038142801D9B9 -:1022200000F0C0FC02F0D8FB5100D80031013501AC -:102230003400BE04BE04BE04BE04BE04BE04BE041C -:10224000BE04BE04BE04BE04150024003E004300CC -:102250004900E07BC4230F2801D900F0A4FC000151 -:102260000143237AA278C9B2606801F049FA0EE00E -:10227000E17B3C230A009A438833002A01D000F016 -:1022800092FC237AA2782943606801F06FFA6072A9 -:102290004F4B1B6819889A7A52181A80D822DA7024 -:1022A00000F082FC237AA278E17B2943DCE7E17B22 -:1022B0003F230A009A438533DFE7E17B237AA27844 -:1022C0002943606801F0E2F9E1E7E27B012A0DD1E0 -:1022D00080208909CEB20002102100F04CFF0F21AE -:1022E000E02031400022000200F045FFE37B032B99 -:1022F0000ED120883D3380099D43364BC1B2C0B218 -:10230000C01880B200F02CFD237AA2788021CCE79F -:102310001E2B07D1C0202188223389099D43C9B2D1 -:102320000002EFE71C2B11D1A0208121C0012688DB -:1023300000F016FD8020F609F6B23100000200F030 -:102340000FFDA0200021C00100F00AFD8021E27BEA -:1023500049421F2A05D00D43EDB2237AA278290005 -:1023600082E77022A02095430D432188C00109090E -:10237000C9B2EDB200F0F4FCEFE7C0460010024035 -:1023800000200240025C0040505C0040065C0040BF -:102390000060004004600040066000404C5C00406B -:1023A00020320000005C004000E100E00080FFFF00 -:1023B000585C0040E6040020A40400204C040020E7 -:1023C000380400206004002074040020300700203E -:1023D0008C04002069FDFFFFE37BFE2B3DD1490902 -:1023E000C9B2C14800F028FF1F231D40237AA178FD -:1023F0000193BE4B28025A696768D2B202435A6100 -:1024000080209022C000D20590610120FF269062BA -:10241000033090625A69360232400A435A61C0461C -:10242000B34800228446C046604600690131000A74 -:10243000B8545869C9B23040084358610132019814 -:10244000D2B29042EFD290230421DB059961802122 -:10245000C9009962012199616272E27B012A00D070 -:1024600016E7802010210002268800F084FE1F213C -:10247000A0203609F6B231400022000200F07BFEB7 -:102480000F21237AA2782940FEE6237AA2786021E0 -:102490000BE7E37B002B1ED18033C9091D43CBB270 -:1024A0000293FF20029B92499B004A690340914896 -:1024B000024013434B61C0209021029BC905C0001C -:1024C000DB004A6903408C48024013434B61237A86 -:1024D000A2782900F5E6012BE3D18904890E3F3368 -:1024E0000B43DDE7F37B002B06D128008038C0B218 -:1024F000824A3100FFF70AFCF27B012A1CD18020BE -:1025000037881021BF053B0F0002019300F033FE16 -:10251000E02000220199000200F02DFE777ABBB284 -:10252000039380232B431B021BB20593337A039A38 -:10253000934200D3F0E07772F37B032B0BD13F2063 -:1025400028408025054330886D4B8009C0B2320099 -:10255000290001F03DF8F37B042B06D128008038D8 -:10256000C0B2684A3100FFF7D1FBF37BFD2B0BD1E2 -:102570003F202840802505433088634B8009C0B246 -:102580003200290001F024F8F37B1E2B11D13F20EB -:1025900028408025338805439B09DBB20493747A75 -:1025A0002B021BB2A7B20593337ABB4200D30DE1D5 -:1025B0007472F37B0C2B19D11F2028408025054312 -:1025C000C0203488A5216409E4B2C00100F0C8FB32 -:1025D00021004E4800F0C4FB2B021BB2747A039317 -:1025E000337AE7B2A34200D33FE17772F37B1C2B2F -:1025F0003BD1A02033888121DB09DBB2C0010393EA -:1026000000F0AEFB80200399000200F0A9FBA0209F -:102610005421C00100F0A4FB777AAA21BBB23C4848 -:10262000019300F09DFB55213A4800F099FB2021D1 -:10263000374800F095FB80232B431B021BB2059308 -:10264000337A019A934200D332E180209021000234 -:10265000777200F085FB80200021000200F080FBF3 -:102660008020F021000200F07BFBF37B1F2B33D195 -:10267000A0203188C0010909C9B200F071FB747A49 -:10268000AA21A3B22248019300F06AFB55212148F8 -:1026900000F066FB1E48202100F062FB70238020C2 -:1026A00004279D434042284340B203020493337AF7 -:1026B000019A934200D343E180209021000274727A -:1026C00000F04EFB80200021000200F049FB80203A -:1026D000F021000200F044FBF4233288F370B37A57 -:1026E0009B18338080E2C046FF3F0000000800488E -:1026F0000004004803FF0000FFF90000FD2E000861 -:10270000A52E00080D2E00085D2E0008FFFF00001A -:10271000AA8A0000558500008020002210210002B6 -:1027200000F029FDAA21E04800F01AFB5521DF48FE -:1027300000F016FBA021DC4800F012FB059C73683A -:102740003C43A4B2D95D200000F00AFB80200122A6 -:102750001021000200F00FFDE0200022019900028C -:1027600000F009FDC046200000F030FB049020007E -:1027700000F02CFB049B8342F4D17368049ADB5D68 -:10278000CB4C93420FD17B1CDFB2039B22680133F9 -:102790009BB2039304239A432260E2681343E360ED -:1027A0000223A362C2E6802001221021000200F071 -:1027B000E2FCE02000220199000200F0DCFC04238E -:1027C0002268134323600223A361AFE6C0200121E6 -:1027D000000200F0C5FAAA21B64800F0C1FAC020F4 -:1027E0000021000200F0BCFA5521B04800F0B8FA10 -:1027F000C0200121000200F0B3FAA021AD4800F092 -:10280000AFFAC0200499000200F0AAFA059B234306 -:102810009BB2019373680198195D00F0A1FAC0465C -:10282000019800F0D3FA0390019800F0CFFA039BCF -:102830008342F4D1736803991A5D9D4B8A420DD18E -:1028400004221968013491431960D96801370A4399 -:10285000DA600222E4B2BFB29A62A5E604221968E5 -:102860000A431A6002229A619EE6AA218E4800F06D -:1028700077FA55218D4800F073FAA0218A4800F0BC -:102880006FFA039AE3B213439BB201937368019802 -:10289000D95D00F065FAC046019800F097FA07008C -:1028A000019800F093FA8742F5D10134A4B297E67B -:1028B000A0205421C00100F053FA059CA0213C4304 -:1028C000A4B2200000F04CFA73682000D95D00F03B -:1028D00047FAC046200000F079FA0490200000F08A -:1028E00075FA049B8342F4D17368049ADB5D704CE3 -:1028F00093420FD17B1CDFB2019B226801339BB254 -:10290000019304239A432260E2681343E3600223A5 -:10291000A36295E6A0208121C00100F021FA802069 -:102920000399000200F01CFAA0205421C00100F01D -:1029300017FA04232268134323600223A3617FE66E -:10294000049DA0212543ADB2280000F009FA736868 -:102950002800195D00F004FAC046280000F036FA9D -:102960000390280000F032FA039B8342F4D173688D -:1029700003991A5D4E4B8A420ED1019A01340132FD -:1029800092B201921A68E4B2BA431A60DA683A4322 -:10299000DA6002229A628AE61A683A431A600222D0 -:1029A0009A6184E6F37B002B04D1434A310028006E -:1029B000FFF7ACF9F37B022B04D1404A3100280029 -:1029C000FFF7A4F9F37B042B04D13D4A3100280022 -:1029D000FFF79CF9F37B0B2B04D13A4A3100280016 -:1029E000FFF794F9F37BFE2B00D075E6318836486B -:1029F0004909C9B200F020FC747AAA21A3B2334875 -:102A0000019300F0D5FB5521314800F0D1FB2F4850 -:102A1000202100F0CDFB1F2004272840030204934F -:102A2000337A019A93420DD274729021002000F003 -:102A3000BFFB0021080000F0BBFBF021002000F0EC -:102A4000B7FB49E6049DA0212543280000F0B0FB18 -:102A500073682800195D00F0ABFBC046280000F049 -:102A6000CFFB0390280000F0CBFB039B8342F4D103 -:102A7000736803991A5D0E4B8A420ED1019A013494 -:102A8000013292B201921A68E4B2BA431A60DA686B -:102A90003A43DA6002229A62C2E71A683A431A603D -:102AA00002229A61BCE7C04655D50000AAAA0000E0 -:102AB00000040048559500000D3400088D330008CF -:102AC00049330008C1320008FF3F0000AA0A000095 -:102AD00055050000280060304A4A3100C0B2FFF7B7 -:102AE00015F9F9E5F37B042B06D128008038C0B234 -:102AF000454A3100FFF70AF9F37B052B04D1424A1E -:102B000031002800FFF702F9F37B062B06D12800DD -:102B10008038C0B23D4A3100FFF7F8F8F37B072B4D -:102B200004D13A4A31002800FFF7F0F8F37B002B7C -:102B30001CD1FF2480331D4333883548DB09DBB2C9 -:102B40009A0041692240334CDB0021400A43426134 -:102B50009021C020C905C0004A6903402E480240A8 -:102B600013434B612800310000F072FCF37B012B12 -:102B700000D0B1E53388264A264851699B049B0E54 -:102B800001409B000B4390215361C9054B69224AC8 -:102B900028001A4080239B0013434B61310000F052 -:102BA00057FC99E5C323E3701C4B1C78F02C1BD118 -:102BB0001B4D2E68F378982B16D11A4B30001978DC -:102BC000FFF7BEF800232860C370F07AF470103865 -:102BD0003578042806D801F0F5FE85FCE5FE7DFF7A -:102BE00085FF7FFDC323F3700F4B1B78F02B01D1C2 -:102BF000FFF7BCFA832B01D0FFF7B8FAFFF73AF9D9 -:102C0000FFF7B4FA612D00081D2D0008D92C00082B -:102C10000004004803FF0000FFF90000A4040020A6 -:102C20008C04002030070020E6040020002302006E -:102C30000002002A04D1002B01D0802318437047E2 -:102C4000DB43511EDBB20A40F3E700000E4B0F4A94 -:102C500058610F4B0902186802431A605A6908202C -:102C6000D2B21143902259610121D2059062916242 -:102C7000C046C046C046C046906191611A68054989 -:102C80000A401A607047C0460008004800005555C9 -:102C900000040048FFFFAAAA0D4B012258619023AF -:102CA0000421DB059A629962C046C046C046C04610 -:102CB000C046C046C046C046C046C046C046C046E4 -:102CC000C046044800699961000AC0B29A61704721 -:102CD000000800480004004870B504000D000D48CD -:102CE000AA21FFF7B3FF55210B48FFF7AFFFA02143 -:102CF0000848FFF7ABFF29002000FFF7A7FF2000DF -:102D0000FFF7CAFF0500C0462000FFF7C5FF854258 -:102D1000F5D170BDAA8A00005585000070B5040089 -:102D20000D000D48AA21FFF791FF55210B48FFF731 -:102D30008DFFA0210848FFF789FF29002000FFF739 -:102D400085FF2000FFF7A8FF0500C0462000FFF721 -:102D5000A3FF8542F5D170BD55550000AA2A000099 -:102D60009023DB0530B51C68134D09022C401C6014 -:102D7000DA68124C2A40DA60114A506102229A62E3 -:102D8000104A00B215682C4314605469E4B2214320 -:102D900051618021C9009961002801DA01209862FF -:102DA000C046C0469962012199614918996113682A -:102DB00005490B40136030BDFFEFFFFF0000555584 -:102DC0000008004800040048FFFFAAAA0D4B80221B -:102DD00058619023D200DB0500B29A61002801DA25 -:102DE00001229A62C046C046C046C046064B8022B9 -:102DF00018699023D200DB059A620122000AC0B252 -:102E00009A617047000800480004004870B504004B -:102E10000D001048AA21FFF7A3FF55210E48FFF728 -:102E20009FFFA0210B48FFF79BFF29002000FFF721 -:102E300097FF802000210002FFF792FF2000FFF79C -:102E4000C5FF0500C0462000FFF7C0FF8542F5D151 -:102E500070BDC04655D50000AAAA00000D4B0E4A11 -:102E600058610E4B0902186802431A605A69D2B2BF -:102E70001143902259618021D20510684901014314 -:102E800011604021916291611A6805490A401A60F7 -:102E90007047C0460008004800005555000400482F -:102EA000FFFFAAAA104B114A10B558611068104BC9 -:102EB00009020343136053690E4CDBB2194390239C -:102EC00051618021DB0518684901084318604020E2 -:102ED0009862186820401860D8680143D960136868 -:102EE00005490B40136010BD00080048000400486D -:102EF00000005555FFEFFFFFFFFFAAAA70B50400C1 -:102F00000D000D48AA21FFF7CDFF55210B48FFF713 -:102F1000C9FFA0210848FFF7C5FF29002000FFF7DF -:102F2000C1FF2000FFF752FF0500C0462000FFF759 -:102F30004DFF8542F5D170BD55550000AA2A00000D -:102F4000224B10B51968224B224C1A8852085200A5 -:102F5000505A214A10801A88023292B21A805208BE -:102F60005200505A1D4A10801A88023292B21A80BA -:102F700052085200505A1A4A10801A8819480232D0 -:102F800092B21A8052085200515A174A11801A8878 -:102F90002188023292B21A808A4210D908318A1AE4 -:102FA00092B2028022881A801049114B0A8813437A -:102FB000104A1A40302353409BB20B8010BD0E4C78 -:102FC00021888A42EAD808230380EDE72C070020F5 -:102FD000A2040020A00400204060004042600040A5 -:102FE000446000400260004046600040005C0040D9 -:102FF0008080FFFFBF8FFFFF9E040020FEE70000E0 -:10300000F7B501230225294F01923A780091054333 -:1030100093400421A020264E2D049BB22943326800 -:10302000C00100F0DDFB040001283DD13B78092000 -:103030009C4005437830A3B232682900FF3000F08D -:10304000CFFB040001282FD13B7832689C40290037 -:10305000A3B2002000F0C4FB0400012824D1009B8F -:10306000180AFFF7E3FD3B7832689C402900A3B2C1 -:1030700000F0B6FB0400012816D16B461878FFF764 -:10308000D5FD22003B7829009A4093B2326800F0C7 -:10309000A7FB0198FFF7CAFD3B7832689C402900E6 -:1030A000A3B200F09DFB0400E0B2FEBD08070020C3 -:1030B00004070020F7B501230225274F00903A7836 -:1030C0000191054393400421C020244E2D049BB25E -:1030D00029433268800100F083FB0400012838D1C5 -:1030E00009231D433B78C0209C403268A3B22900CD -:1030F000400000F075FB040001282AD13B783268BB -:103100009C402900A3B2002000F06AFB04000128C3 -:103110001FD1019B180AFFF789FD3B7832689C405C -:103120002900A3B200F05CFB0400012811D16B461A -:103130001879FFF77BFD22003B789A4093B2009A02 -:1031400014430922E1B209041143326800F048FB3C -:103150000400A0B2FEBDC0460807002004070020FE -:103160000023800080B2834200D17047C046C04631 -:1031700001339BB2F7E770B506000D00002A08D0B6 -:1031800080200002FFF722FE802080210002FFF74E -:10319000E7FD05243000013CFFF718FEE4B22900EA -:1031A0003000FFF7DDFD6D08002CF3D170BD00008D -:1031B0000F4B30B59022586180230124D205DB00EB -:1031C00093620C4B94621D680B48090228431860F7 -:1031D0005869C0B201435961C04608219162C04696 -:1031E00091611968054801401960946130BDC0467D -:1031F000000800480004004800005555FFFFAAAA37 -:103200000B4B10B580215861902301220424DB056B -:10321000C90099619A629C62C046C046C046054892 -:1032200000699C61000A9962C0B29A6110BDC046F3 -:1032300000080048000400480E4B984202D8802342 -:103240001B0218430C4B0D4A58610D4B09021868BC -:1032500002431A605A69D2B211435961C0469022A2 -:103260000821D2059162C04691611A6805490A4059 -:103270001A607047FF1F0000000800480000555505 -:1032800000040048FFFFAAAA0A4B984202D88023F4 -:103290001B021843084B042258619023DB059A62F5 -:1032A000C046C046C046C046044908699A61000A43 -:1032B000C0B27047FF1F000000080048000400482B -:1032C000F8B505000E001C4F1C4B3888202120301B -:1032D00080B21C78FFF744FDAA211948FFF7ACFF24 -:1032E00038881021103080B2FFF73AFD552115487B -:1032F000FFF7A2FF38882021203080B2FFF730FD91 -:10330000A0210F48FFF798FF24013888E4B2001984 -:1033100080B22100FFF724FD31002800FFF78CFF69 -:103320002800FFF7B1FF0400C0462800FFF7ACFFFC -:103330008442F5D1F8BDC046340400208804002042 -:1033400055150000AA0A000070B504000D000D48D4 -:10335000AA21FFF771FF55210B48FFF76DFFA02150 -:103360000848FFF769FF29002000FFF765FF2000EC -:10337000FFF78AFF0500C0462000FFF785FF854262 -:10338000F5D170BD55150000AA1A000070B50400F3 -:103390000D001A4E02213088023080B2FFF7E0FCA7 -:1033A000AA211748FFF748FF30880121013080B279 -:1033B000FFF7D6FC55211348FFF73EFF3088022166 -:1033C000023080B2FFF7CCFCA0210D48FFF734FF9C -:1033D0000D4B30881978401880B2FFF7C1FC2900E6 -:1033E0002000FFF729FF2000FFF74EFF0500C04631 -:1033F0002000FFF749FF8542F5D170BD340400205D -:1034000055150000AA0A00008804002070B50400C9 -:103410000D000D48AA21FFF70FFF55210B48FFF7BC -:103420000BFFA0210848FFF707FF29002000FFF746 -:1034300003FF2000FFF728FF0500C0462000FFF72C -:1034400023FF8542F5D170BD55150000AA0A000082 -:10345000F7B504000E004D7AC046C046C046C046CF -:10346000C046C046C046C046C046AA215348FFF7E2 -:10347000EDFB55215248FFF7E9FB240220214F487C -:10348000FFF7E4FB23B20193EBB20093337AAB4234 -:1034900014D26B4680201B78902173720002FFF7D4 -:1034A000D5FB802000210002FFF7D0FB8020F02117 -:1034B0000002FFF7CBFBC0460020FEBD414B424A55 -:1034C000196808200A43FF211A605A690A40A0219E -:1034D00009020A435A6190220121D2059062916249 -:1034E000C046C046C046C046FF24906191611A683C -:1034F00036492C400A401A60019B009A1C437368AD -:10350000A4B2995C2000FFF7A1FBC046C046C046AC -:10351000C046C046C046C046C046C046C046200061 -:10352000FFF7BAFB0700C046C046C046C046C046CB -:10353000C046C046C046C0467368009A9B5C834242 -:1035400016D0C046C046C046C046C046C046C0466B -:10355000C046C0462000FFF79FFBB8420BD1C046D3 -:10356000C046C046C046C046C046C046C046C0462B -:103570000135ADB288E7C046C046C046C046C04629 -:10358000C046C046C046C046C046C046C046C0460B -:10359000C046C046C046C046C046C046C046C046FB -:1035A000C046C046C046C046C046C046C046C046EB -:1035B000C0462000FFF770FB0700CBE7AA8A000097 -:1035C000558500000004004800005555FFFFAAAAD9 -:1035D000F0B5150085B00190547A09021E000BB2B7 -:1035E000A7B203932B7ABB4203D200206C7205B0C2 -:1035F000F0BD00212048FFF7B3FBAA211F48B047C8 -:1036000055211F48B047A0211C48B047019B1D4AC7 -:103610001900981880B2FFF7A3FB039B23439BB2CA -:1036200000936B680098195DB047C0460098FFF79B -:10363000CDFB02900098FFF7C9FB029B8342F4D1B7 -:103640006B6802991A5D104B8A420DD104221968E9 -:10365000013491431960D96801370A43DA600222C4 -:10366000E4B2BFB29A62BDE7042219680A431A6045 -:1036700002229A61B6E7C04669FD00005555000078 -:10368000AA2A000069FDFFFF00040048F0B51A4CAB -:10369000050060690902C0B2014361619021042004 -:1036A000FF26C905886203388862616936023140A5 -:1036B0001143616100202100104FC046C046C04642 -:1036C000C046C046C046C046C046C046C0463C692B -:1036D0000132240A2C544C69D2B2344001301443D4 -:1036E000C0B24C619842E8D990230422DB059A616C -:1036F000033A9A61F0BDC046000800480004004843 -:10370000F0B5184C050060690E02C0B2304360612C -:1037100080269020F600C00549B28661002901DAB2 -:1037200001218162FF2661693602314011436161E6 -:10373000C04600200C4FC04639690132090A29549D -:103740006169D2B2314001301143C0B26161984227 -:10375000F1D990238022DB05D2009A6201229A617E -:10376000F0BDC0460008004800040048F0B5174C02 -:1037700005000E0060691F2925D880213143090208 -:10378000C0B20143616190210420FF26C90588620F -:1037900061693602314011436161C04600200C4F1F -:1037A000C04639690132090A29546169D2B23140EF -:1037B00001301143C0B261619842F1D990230422D3 -:1037C000DB059A61F0BDC0B20902DAE700080048E3 -:1037D000000400488047C0460000000000000000D0 -:1037E000F0B5474680B4061C081C000C102801D513 -:1037F000162700E004270007000F8046FF20014045 -:103800005468251C1D439C43F60313850AD5C04606 -:10381000C046C046C046C046C046C04694801383DA -:10382000958002E0012000F081F801390AD4381CAB -:1038300000F07CF8C046948013839580C046C04653 -:103840007600E2E7381C013800F070F894801383AA -:103850009580042000F06AF8108A184001D0FF20FB -:1038600061E0C046C046C046C046C046C0469480DF -:103870009580108A184055D001200226B04552D0BC -:103880000921168A1E40FCD1012000F04FF89480D7 -:10389000C0469580C04603E0C046C046C046C0460C -:1038A000948095807600108A1840EFF300804000E5 -:1038B000C00F0643381C023800F038F89480958019 -:1038C000022000F033F80139EAD5138594800120F5 -:1038D00000F02CF813839580301C8021022399403E -:1038E0000E401BD1002341085E4149085E41490852 -:1038F0005E4149085E4149085E4149085E41490808 -:103900005E4149085E4149085E41760808D3400897 -:10391000FF21084048400002013004E00E2002E090 -:10392000092000E0002080BCB846F0BD0138FDD180 -:103930007047C04603685A0003D45B005B08C01898 -:103940007047802212061343F9E7C046F0B5574688 -:103950004E46DE464546E0B5814683B09246002994 -:1039600025D04B1E9B46002701935B46FB18DC0FBE -:10397000E4184B466410E5005E193000FFF7DAFFEB -:10398000019B8046A3420BD0280008304844FFF733 -:10399000D1FFD04506D80138504509D2671CE4E76D -:1039A000504505D9A74202D0631E9B46DDE700269D -:1039B000300003B03CBC90469946A246AB46F0BDF1 -:1039C000012809D0022805D0002801D00020704726 -:1039D0000248FCE70248FAE70248F8E7E14000083D -:1039E000F9400008ED40000830B5234B83B00500D6 -:1039F0008C1E002B2AD001A9200000E000BF002867 -:103A000020D001992200FFF7A1FF041E1AD0FFF772 -:103A100091FF6368A864012B10D0201D002B1BDBD5 -:103A2000FFF788FF0023E8642B650368002B17DB92 -:103A3000FFF780FF2861002003B030BD0023052080 -:103A40002B61F9E7002309202B61F5E70B480C49AE -:103A5000091AC9100191D5E70123E8642B65E4E751 -:103A60001801000FFFF7ACFF2861002801D10930D1 -:103A7000E2E70020E0E7C04600000000DC4A000862 -:103A8000AC4B0008036810B50400DA0705D49B07A7 -:103A90000FD5483000F084FC23685A070FD51A0769 -:103AA00014D5DB0604D42000D130FF3000F084FCB4 -:103AB00010BD483000F070FC23685A07EFD4200096 -:103AC000D03000F071FC23681A07EAD4200051308E -:103AD000FF3000F06DFC2368E3E7C0460368002B6D -:103AE00000D01B1818007047092070477047C04667 -:103AF00070B504000D0008E02B6C2A006361210002 -:103B0000012023699847082807D1296C2000FFF776 -:103B10006BFF0028F0D000F09FFE0728FBD10020AB -:103B2000296CFFF7E3FF281D00F020FCF0B5CE461E -:103B3000474680B5C368324C9846A5448369060061 -:103B400014000431402205A8994600F08DFE0023A0 -:103B500004AD296C30000493FFF746FF631E9C41BF -:103B600007000934002F15D0AB6B10216B644B4656 -:103B700021430193C9B20095330032000120C047B0 -:103B8000002833D13800F5239B009D440CBC90469F -:103B90009946F0BDF0222B6C5200736129007CA87D -:103BA00000F062FE7CAA31003369200098478A9BAE -:103BB00007006B6403934B4600950193320033007A -:103BC00021000120C047002810D1F0227CA952001A -:103BD000280000F049FE082F06D1296C3000FFF7BD -:103BE00003FF09240700BDE7072F01D00927C9E714 -:103BF0000020296CFFF77AFF05A800F0B7FBC0464C -:103C00002CFCFFFF406C704770B5CB6BFAB00B64B7 -:103C100004000E004022043103A800F025FE012319 -:103C20005B42029306E002AA21002369984705003F -:103C300008280AD1129B200019000193FFF7D4FE37 -:103C40000028F0D009207AB070BD02A8FFF71AFF53 -:103C5000062DF7D131002000FFF74AFF10B5826131 -:103C6000DA6BC1601A6419000022FFF75FFF10BD14 -:103C7000436970B50B64C36804000D00002B04D0C9 -:103C80000122FFF753FF00F0E7FD0A00236901005E -:103C900002209847072807D0082803D129002000D0 -:103CA000FFF726FF00F0D8FD0020296CFFF71EFF6C -:103CB000281D00F05BFBC046C36810B5002B05D083 -:103CC000CB6B00220B64FFF731FF10BDFFF79CFFA9 -:103CD000FBE7C0467047C046836810B5002B02D092 -:103CE00001000120984710BD10B5012907D0002917 -:103CF00007D003390224012901D9200010BD012475 -:103D0000FBE70224002BF8D10F2AF6D89200821884 -:103D10005268029B00241A60EFE7C04600B585B0E8 -:103D200003AB0A00009300210023FFF7DDFF039897 -:103D300005B000BD10B5012907D0002907D003390F -:103D40000224012901D9200010BD0124FBE702242F -:103D5000002BF8D10F2AF6D8029B92001B6882181C -:103D600053600024EFE7C04600B585B003AB039273 -:103D700000930A0000230021FFF7DCFF05B000BD1F -:103D800070B51A4CD36BA544136406000D0019A836 -:103D9000111D402200F068FD01235B42189314E0DE -:103DA0000C2118A802AAFFF7DFFF290018A8B047C6 -:103DB000002812D1069B18AA02A90830019398473F -:103DC000040005280AD0092807D0289B02A819005A -:103DD0000193FFF709FE0028E2D0092418A8FFF795 -:103DE00051FE200090239B009D4470BDC0FDFFFF4D -:103DF000F0B5DE464E464546574693460322E0B5AB -:103E00001E0013008BB003400193CB6C0D001C1DF2 -:103E10001B6808940793002E66D11B02079306AB1C -:103E20005E731A73019B022B00D16EE02B6DDB07D2 -:103E300047D40023A846B2460293083303400393B5 -:103E40002568002D00D137E15346022B49D0258843 -:103E5000668804340123370099469F4343469B6C90 -:103E60000F219C4658466744FFF758FF00228742BF -:103E700006D82A004B469A43D719B842804142429D -:103E800002230121760033400D402B43012B3ED00D -:103E9000002B5AD0022B1CD1236801995F007F08A8 -:103EA000002965D1002A06D0039A002A00D188E0B3 -:103EB000002F00D1AAE0002B65DB0137BF00E41919 -:103EC000BEE700230293022E47DDFFF70DFE002818 -:103ED00049D009200BB03CBC90469946A246AB465F -:103EE000F0BD66680834B5E7022E9BDC1A0C1B0493 -:103EF0000793022306A90B73FD3313409B00E418BC -:103F0000019B4A73022B00D090E7AC6B8EE7019BBC -:103F1000002B3AD1002A16D02368DD0F63689A1C63 -:103F2000D7D0424658320692013300D1C6E0201D58 -:103F3000FFF7D4FD06AB01002A00404600E000BFB9 -:103F4000002800D0A7E008347AE7019B002B02D0BC -:103F5000002A00D08BE0043472E707A9584600F02D -:103F6000D1FA0028B5D1029B002B5DD10820B1E722 -:103F700043460D2158461D6AFFF7D0FE854263D0A7 -:103F80002368002B99DA043497E743460D215846FD -:103F90001D6AFFF7C3FE8542D5D143469B6A9C420A -:103FA000D1D145462000FFF7C5FC0F21020058463D -:103FB000FFF7DAFE58462A000021FFF7D5FE07205A -:103FC00088E7002F22D058235146434406AABA4618 -:103FD000251D0026049405911F00914603E0043539 -:103FE0002600A24514D028000697FFF777FD4B4620 -:103FF000010000224046741C00E000BF0028EED003 -:104000005746059B049C9A46B742B9D1454601E004 -:104010004546049C0D215846FFF780FE069B28620A -:104020006B62AC62062055E70F215846FFF776FE1B -:104030000E2102005846FFF797FE5846274A0F21E7 -:10404000FFF792FE072045E743469B6A9C4297D1C3 -:10405000434642469F620023D36204331363231D09 -:1040600053632368002B32DB0123029325E72000F2 -:10407000FFF760FC454604340600AC63404600E0B0 -:1040800000BF002800D124E7584632000F21FFF777 -:104090006BFE07201EE707000D2158464546FFF737 -:1040A0003DFE2862022F0FD1069BEB6243462C3364 -:1040B0006B62AC6206200DE7564604E70D215846B8 -:1040C0004546FFF72BFE2862069B6B62F1E738003E -:1040D000013080004546201865E7C046000000001A -:1040E00010B50023FFF784FE10BDC04610B50123B4 -:1040F000FFF77EFE10BDC04610B50223FFF778FE25 -:1041000010BDC046F0B5CE46474680B50600C3B0E8 -:1041100014001D0001294ED0002933D003290AD0F4 -:10412000042902D1002B00D189E0022043B00CBC4D -:1041300090469946F0BD032BF7D11404150C240CBE -:104140002B19102BF1D8082203681A4200D0E7E09F -:1041500020AB1800984600F02DF9B36BED001A0063 -:10416000002C09D0E400EA1A1C1942441968D15005 -:1041700004339C42FAD12200B263404600F018F9A1 -:104180000020D3E70220002BD0D100230127100408 -:10419000B56B000C321D39009940084202D02968E5 -:1041A0000435116001330432102BF4D10020A30434 -:1041B000BCD4B563BAE71404170C240C012B5FD0F0 -:1041C000052BB2D13B19202BAFD80F2F7DD9A1469B -:1041D000002C65D1002223009146B16B002B00DC3E -:1041E00088E020A88046FA00DB00521ACB1842442F -:1041F0000868505004318B42FAD119004B46002B0D -:1042000010D04B4658003A00102F00D21022002345 -:10421000103AD2006A448000CC58D4500433834210 -:10422000FAD1C918012D5ED0B1630F2F74D94B4656 -:10423000002BA5D0684600F0B7F8002076E7102ADA -:1042400000D972E7102203681A4245D120AB18004A -:10425000984600F0B3F800230120B16B02009A40A9 -:10426000144204D045460F689A00AF500431013320 -:10427000042BF3D14046B16300F09EF8002055E7CF -:104280003B19102B00D950E70F2F00D94DE7002321 -:104290009946012233681A4230D14B46002B5AD03E -:1042A000042233681A4242D1012D47D00F2F06D87D -:1042B00020AB180000F076F84B46002B8AD06846F9 -:1042C00000F074F81023DB1B87E7102BDFD91022D6 -:1042D000524291469944DCE793430360D130FF306A -:1042E00000F06CF8B2E7043120A8B16300F054F894 -:1042F00000201BE74B46002B84D193E71900914324 -:104300000A003160052D1ED0032230009343336034 -:10431000483000F043F8C0E720A800F041F886E7F5 -:10432000934303605130FF3000F044F810E7300051 -:1043300093433360D03000F039F8B5E720AB180074 -:1043400000F02CF8BEE7022330001A4332604830F8 -:1043500000F028F8A1E7012D03D00F2F00D939E78D -:10436000A6E720AB180000F019F833E7011C343140 -:1043700038C9043B9C461D60A646011C20313CC93F -:1043800090469946A246AB46011C0831FCC94168DB -:104390000068E54600BDC0467047C0467047C0464D -:1043A0007047C0467047C0467047C0467047C04619 -:1043B0007047C0467047C0467047C0467047C04609 -:1043C00001B401A801B585B0FFB408A841464A462A -:1043D00053465C4665463EC001A83EC80F98009013 -:1043E00000230CB401A9FFF70FFC109B12B0184773 -:1043F00001B401A801B585B0FFB408A841464A46FA -:1044000053465C4665463EC001A83EC80F980090E2 -:1044100000230CB401A9FFF72BFC109B12B0184726 -:1044200001B401A801B585B0FFB408A841464A46C9 -:1044300053465C4665463EC001A83EC80F980090B2 -:1044400000230CB401A9FFF737FC109B12B01847EA -:1044500001B401A801B585B0FFB408A841464A4699 -:1044600053465C4665463EC001A83EC80F98009082 -:1044700000230CB401ABFFF7F1FB109B12B01847FF -:1044800001B401A801B585B0FFB408A841464A4669 -:1044900053465C4665463EC001A83EC80F98009052 -:1044A00000230CB401AAFFF76BFC109B12B0184755 -:1044B000027A0300002A04D1427AB020002A07D1F0 -:1044C0007047013A02720268100E12021A60F7E792 -:1044D000013A5A725A68111D596003211268197203 -:1044E000F2E7C04600B585B003AB00930C22002371 -:1044F0000021FFF7F9FB039805B000BD10B5FFF7E9 -:10450000F1FF10BDF0B557464E464546DE46002346 -:10451000E0B587B003930F339846083B9946802354 -:104520001B0306000F009A463800FFF7C1FF040086 -:10453000B02821D0030632D4FF2583001D4005ABEF -:104540009B4600930D220023002130000435FFF725 -:10455000CBFB63064CD5059B5D1B05955B46009325 -:1045600000230D2200213000FFF7E4FB3800FFF7A5 -:104570009FFF0400B028DDD1039B0024002B2FD126 -:1045800005AD00950E2200213000FFF7ADFB009530 -:1045900000230F2200213000FFF7CCFB20E00300B6 -:1045A00042469343DBB2802B63D0902B25D0A02BC7 -:1045B00032D0B02B45D0C02B00D173E003004A4667 -:1045C0009343DBB2D02B0AD15346024001321A4347 -:1045D000052301213000FFF795FD0028A4D0092410 -:1045E000200007B03CBC90469946A246AB46F0BDC1 -:1045F000059B9C4665440595B0E7833B03400D2B26 -:10460000EDD0424605AD0240009500230021300068 -:10461000FFF76AFB0095A3E7FF234A461B01190039 -:10462000824311410A001A40030702D58023DB01AF -:104630001A43002300213000FFF764FD0028CED18B -:1046400072E7B1284AD0B2285ED0B32800D18BE0FF -:10465000FC230340B42BC2D04A46534602400132E9 -:104660001A43012101233000FFF74CFD0028B6D189 -:104670005AE704023800FFF71BFF802520432D0274 -:10468000A842ACD004010005020C00230021300038 -:10469000FFF738FD0028A2D12C4200D144E70123C6 -:1046A000039341E7C6286AD0C7287CD003004A4656 -:1046B0009343DBB2C02B00D18BE0C82800D18FE040 -:1046C000C92800D08BE73800FFF7F2FEF023020381 -:1046D0001B03134042460240013278E73800FFF7DF -:1046E000E7FE002800D17AE7030042469343DBB29D -:1046F000002B00D073E7020000213000FFF702FD1D -:10470000002800D06BE70FE705AB00939B460D2216 -:10471000002300213000FFF7E7FA3800FFF7C8FE5A -:1047200003066AD57F25B03C059B2840A0409C46E7 -:104730006044059038000734FFF7BAFE0306F3D44F -:10474000812292009446863AFF3A1040A040059B91 -:10475000723A634418185B460590009300210023C9 -:104760003000FFF7E7FADFE63800FFF7A1FEF0239D -:1047700002031B03134042460240013270E7380037 -:10478000FFF796FEF02302031B031340424602404C -:1047900001321A43032303213000FFF7B3FC002842 -:1047A00000D01CE7C0E63800FFF782FE002800D1E9 -:1047B00015E7030042469343DBB2002B00D00EE71F -:1047C000020004213000FFF79DFC002800D006E71E -:1047D000AAE64346A0221C40013412032243D9E733 -:1047E0003800FFF765FE434602009A43D2B210320A -:1047F0001840120301300243EAE60224A0E7C04653 -:10480000030000B5DB6C85B05A6808001202019203 -:104810001A0001A908324A6003220A72DB794B723E -:10482000FFF770FE05B000BD10B5FFF767FE806CA6 -:1048300010BDC04610B5FFF761FEC26CD3799B0076 -:104840000833D01810BDC04610B500F005F8C046BA -:1048500010B5FFF7F9FFC04610B5062000F074F858 -:10486000012000F0A3F8C046F0B505000F2A2FD9AB -:104870000B0003439B0734D116000C000300103ECD -:10488000350901352D01451927681F6067685F608C -:10489000A7689F60E7681034DF6010339D42F3D152 -:1048A0000F239E431036851989191340032B1AD9FB -:1048B0001E1F0023B4080134A400CF58EF50043366 -:1048C000A342FAD10324A643331D2240C918ED1890 -:1048D000002A05D00023CC5CEC5401339342FAD17A -:1048E000F0BD0500F6E71A00F2E7C04670B5050016 -:1048F0000C001F2922D8B7239B00C358002B14D0CB -:104900008A009B181A68002A0FD0012A0BD0511C6C -:1049100005D00021200019609047002070BD1623AB -:1049200003600120FAE70020F8E7280000F02AF8E9 -:1049300022000100280000F011F8EFE716230360C1 -:1049400001204042EAE7C04610B5034B0100186859 -:10495000FFF7CCFF10BDC04600000020002370B55B -:10496000074C050008001100236000F017F8431CF5 -:1049700000D070BD2368002BFBD02B60F9E7C04648 -:104980003407002010B500F001F810BD58220120B6 -:10499000014B40421A607047340700205822012022 -:1049A000014B40421A60704734070020FEE7C046C2 -:1049B00002B4714649084900095C49008E4402BCB2 -:1049C0007047C04603B47146490840004900095E7B -:1049D00049008E4403BC704703B471464908400047 -:1049E0004900095A49008E4403BC7047F8B5C046D7 -:1049F000F8B5C04609021200010100803209040026 -:104A000000000000000012010002FF000008C016B4 -:104A1000DC05010201020001040309042A03490024 -:104A20006E00660069006E006900740065004E004B -:104A3000650073004C0069007600650073002E006D -:104A400063006F006D000000000000000000000027 -:104A50000000000000000000000000000000000056 -:104A60000000000000000000000000000000000046 -:104A70001E0349004E004C002000520065007400E7 -:104A800072006F002D00500072006F006700000080 -:104A90000000000000000000000000000000000016 -:0C4AA0000000000000000000000000000A -:104AAC0074B20181B0AB308000000000800A01813B -:104ABC00B0B0ABF0000000003F020181B0AB308021 -:104ACC000000000080060181B0B0ABF000000000D7 -:104ADC00F8ECFF7FB0B0B08050EEFF7F010000001B -:104AEC00FCEEFF7FB0A9028090EFFF7FB0B0A880F2 -:104AFC00E0EFFF7F01000000ECEFFF7FB0B0AA8079 -:104B0C0020F0FF7F9CFFFF7FF0F0FF7F0100000093 -:104B1C00ECF0FF7FAA3F398038F1FF7FB0B0A8805E -:104B2C0044F1FF7FB0B0AA8084F1FF7FB0B0A880C1 -:104B3C0098F1FF7F0100000094F1FF7FB0B0A880D6 -:104B4C009CF1FF7F010000002CF2FF7FAA0FB280C6 -:104B5C0094F2FF7F58FFFF7F7CF5FF7FB0B0A880F9 -:104B6C0098F5FF7F54FFFF7FF8F7FF7F01000000EF -:104B7C0068F9FF7F0084048078F9FF7FB0B0A880CB -:104B8C0078F9FF7F40FFFF7F6CFCFF7F008404807F -:104B9C008CFCFF7FB0B0A880A4FCFF7F010000005C -:104BAC00080000200000000000000000F4020020BB -:104BBC005C030020C4030020000000000000000083 -:104BCC0000000000000000000000000000000000D9 -:104BDC0000000000000000000000000000000000C9 -:104BEC0000000000000000000000000000000000B9 -:104BFC0000000000000000000000000000000000A9 -:104C0C000000000000000000000000000000000098 -:104C1C000000000000000000000000000000000088 -:104C2C000000000000000000000000000000000078 -:104C3C000000000000000000000000000000000068 -:104C4C000000000000000000000000000000000058 -:104C5C0001000000000000000E33CDAB34126DE6F5 -:104C6C00ECDE05000B00000000000000000000005E -:104C7C000000000000000000000000000000000028 -:104C8C000000000000000000000000000000000018 -:104C9C000000000000000000000000000000000008 -:104CAC0000000000000000000000000000000000F8 -:104CBC0000000000000000000000000000000000E8 -:104CCC0000000000000000000000000000000000D8 -:104CDC0000000000000000000000000000000000C8 -:104CEC0000000000000000000000000000000000B8 -:104CFC0000000000000000000000000000000000A8 -:104D0C000000000000000000000000000000000097 -:104D1C000000000000000000000000000000000087 -:104D2C000000000000000000000000000000000077 -:104D3C000000000000000000000000000000000067 -:104D4C000000000000000000000000000000000057 -:104D5C000000000000000000000000000000000047 -:104D6C000000000000000000000000000000000037 -:104D7C000000000000000000000000000000000027 -:104D8C000000000000000000000000000000000017 -:104D9C000000000000000000000000000000000007 -:104DAC0000000000000000000000000000000000F7 +:1000E000FCDC02F003F900009C4D00080000002039 +:1000F000300400203004002020070020FEE7C04626 +:10010000F0B5B74A89B0138800921BB2002B01DB0F +:1001100001F0E1FC80211288B24B1A40009B0A4397 +:100120001A80009B1B881B0501D401F09FFCAE4F79 +:100130007F223B78AD4819009143AD4AAD4D118007 +:10014000FA88AD49028000220A80AA490C88FF2162 +:100150008C431C432C8060240490234201D101F085 +:100160001BF8A64C21706270BB7901937878013836 +:100170000E2801D901F01BFC04F026FD0F00AD058F +:100180009907FC08BB0A190CE70B81092A0A8F0A98 +:10019000B80A39094B095D096F09B878BA888C2308 +:1001A00019281ED88023DB0004F00EFD1E00260057 +:1001B00042012202EA0289031204CE04EA04F60490 +:1001C000FE0406050F05180526052E0536053E0515 +:1001D0001A001A001A00430558056F05D202DE0204 +:1001E0000023237000F0CEFFB023854A5B035169E2 +:1001F0000B4353610023F4E7152A01D900F05CFD9D +:1002000010008022D20004F0DFFC160023002E0034 +:100210005705390044004F0057055C006900730022 +:100220008000570557058D009A00A500B200BF0059 +:10023000CC00D600E0009023DB051A6871490A4023 +:100240001A608022D96852030A43DA600023C8E7A3 +:1002500090230122DB05196891431960D9680A438C +:10026000DA600023BDE790230422DB05196891437F +:100270001960D9680A43DA600023B2E7902310229C +:10028000DB05196891431960D9680A43DA600023D5 +:10029000A7E790234022DB05196891431960D968CC +:1002A0000A43DA6000239CE79023DB051A6856496D +:1002B0000A401A608022D968D2040A43DA60002317 +:1002C0008FE79023DB051A6850490A401A608022A4 +:1002D000D96852010A43DA60002382E704224C4BBA +:1002E000196891431960D9680A43DA60002378E7F6 +:1002F0009023DB051A6847490A401A608022D968B2 +:10030000D2050A43DA6000236BE79023DB051A6805 +:1003100041490A401A608022D968D2020A43DA6051 +:1003200000235EE79023DB051A683C490A401A6007 +:100330008022D96852000A43DA60002351E79023F3 +:10034000DB051968364801401960D9680A43DA604C +:10035000002346E79023DB051A6832490A401A60F9 +:100360008022D968D2010A43DA60002339E790235A +:10037000DB051A6824490A401A608022D968D20431 +:100380000A43DA6000232CE79023DB051A6826492C +:100390000A401A608022D96852050A43DA600023B5 +:1003A0001FE701221A4B196891431960D9680A4363 +:1003B000DA60002315E710221C4B1968914319607D +:1003C000D9680A43DA6000230BE79023DB0519683C +:1003D000134801401960D9680A43DA60002300E736 +:1003E000005C00408F0F0000506000400060004043 +:1003F000086000400660004004600040EC060020F9 +:1004000000100240FFFFEFFFFFFFFFFBFFEFFFFFCA +:1004100000040048FFFFFFBFFFFFFBFFFFFEFFFFE1 +:10042000FFFBFFFFFFBFFFFFFFFFFFEF000C0048D8 +:10043000152A01D900F043FC100004F0C5FB16009A +:1004400021002C004004370042004D0040045800B9 +:1004500063006D0078004004400483008E00990022 +:10046000A400AF00BA00C400CE009023DB051968D9 +:10047000D14801401960DA680240DA600023B0E632 +:1004800090230121DB051A688A431A60DA688A43DF +:10049000DA600023A5E690230421DB051A688A436D +:1004A0001A60DA688A43DA6000239AE69023102102 +:1004B000DB051A688A431A60DA688A43DA60002327 +:1004C0008FE690234021DB051A688A431A60DA68B8 +:1004D0008A43DA60002384E69023DB051968B74875 +:1004E00001401960DA680240DA60002379E690235F +:1004F000DB051968B24801401960DA680240DA6029 +:1005000000236EE60421AF4B1A688A431A60DA684A +:100510008A43DA60002364E69023DB051968AA4861 +:1005200001401960DA680240DA60002359E690233E +:10053000DB051968A54801401960DA680240DA60F5 +:1005400000234EE69023DB051968A148014019609D +:10055000DA680240DA60002343E69023DB0519687D +:100560009C4801401960DA680240DA60002338E6EE +:100570009023DB051968984801401960DA68024049 +:10058000DA6000232DE69023DB0519688B480140D3 +:100590001960DA680240DA60002322E69023DB0566 +:1005A00019688E4801401960DA680240DA60002359 +:1005B00017E60121834B1A688A431A60DA688A4376 +:1005C000DA6000230DE61021854B1A688A431A6011 +:1005D000DA688A43DA60002303E69023DB051968B2 +:1005E0007C4801401960DA680240DA600023F8E5CF +:1005F000152A00D966E3100004F0E6FA16001F0081 +:10060000270064032F0037003F00640348005100B7 +:1006100058006100640364036A0073007A00830079 +:100620008C0095009C00A30090228023D2051168C5 +:100630005B030B4313600023D3E590220123D20513 +:1006400011680B4313600023CBE590220423D205ED +:1006500011680B4313600023C3E590221023D205D9 +:1006600011680B4313600023BBE590224023D205A1 +:1006700011680B4313600023B3E590228023D20559 +:100680001168DB040B4313600023AAE5902280234A +:10069000D20511685B010B4313600023A1E504231D +:1006A000484A11680B43136000239AE59022802387 +:1006B000D2051168DB050B431360002391E59022FE +:1006C0008023D2051168DB020B431360002388E509 +:1006D00090228023D20511685B000B431360002336 +:1006E0007FE59021C9050A6813430B60002378E574 +:1006F00090228023D2051168DB010B431360002395 +:100700006FE590228023D2051168DB040B43136050 +:10071000002366E590228023D20511685B050B4318 +:10072000136000235DE50123264A11680B43136023 +:10073000002356E510232A4A11680B431360002357 +:100740004FE59021C9050A6813430B60002348E573 +:100750008D23082A00D044E590224023D205516819 +:100760000B43536000233CE58D23082A00D038E575 +:1007700090224021D20553688B435360002330E51B +:10078000152A00D9A1E2100004F01EFA2C00310055 +:1007900037009F023D00430049009F025000560071 +:1007A0005B0062009F029F0269006F0075007B0082 +:1007B000820089008E009300FFFFEFFFFFFFFFFB29 +:1007C000FFEFFFFF00040048FFFFFFBFFFFFFBFF3D +:1007D000FFFEFFFFFFFBFFFFFFBFFFFFFFFFFFEF7E +:1007E000000C00489022D20593620023F9E4902384 +:1007F0000122DB059A620023F3E490230222DB0549 +:100800009A620023EDE490230422DB059A62002320 +:10081000E7E490230822DB059A620023E1E48022CA +:1008200090239201DB059A620023DAE490234022B0 +:10083000DB059A620023D4E40222CC4B9A620023A7 +:10084000CFE4802290231202DB059A620023C8E4E1 +:10085000802290239200DB059A620023C1E490235A +:100860001022DB059A620023BBE490232022DB05E3 +:100870009A620023B5E490238022DB059A6200236C +:10088000AFE4802290239201DB059A620023A8E462 +:1008900080229023D201DB059A620023A1E4012289 +:1008A000B24B9A6200239CE40422B14B9A6200236B +:1008B00097E490232022DB059A62002391E4152A15 +:1008C00000D905E2100004F07FF916001B0021009A +:1008D000030227002D00330003023A0040004500C8 +:1008E0004C0003020302530059005F0065006C00D6 +:1008F000730078007D009022D2059361002370E49C +:1009000090230122DB059A6100236AE490230222EE +:10091000DB059A61002364E490230422DB059A61DD +:1009200000235EE490230822DB059A61002358E44B +:10093000802290239201DB059A61002351E49023E9 +:100940004022DB059A6100234BE40222874B9A6127 +:10095000002346E4802290231202DB059A610023E3 +:100960003FE4802290239200DB059A61002338E463 +:1009700090231022DB059A61002332E49023202289 +:10098000DB059A6100232CE490238022DB059A6129 +:10099000002326E4802290239201DB059A61002344 +:1009A0001FE480229023D201DB059A61002318E422 +:1009B00001226E4B9A61002313E404226C4B9A616E +:1009C00000230EE490232022DB059A61002308E433 +:1009D00002236370152A00D9B1E0100004F0E0F89A +:1009E0000B151EAF273039AF434C545DAFAF677066 +:1009F00079828C969EA690238022DB051B69D2000B +:100A0000134063800023FFF7ECFB90230122DB05FA +:100A10001B69134063800023FFF7E3FB902302224E +:100A2000DB051B69134063800023FFF7DAFB90238B +:100A30000422DB051B69134063800023FFF7D1FB11 +:100A400090230822DB051B69134063800023FFF716 +:100A5000C8FB90238022DB051B6992011340638051 +:100A60000023FFF7BEFB90234022DB051B691340E8 +:100A700063800023FFF7B5FB02223C4B1B69134048 +:100A800063800023FFF7ADFB9023DB051B69DB0BC5 +:100A9000DB0363800023FFF7A4FB90238022DB05A8 +:100AA0001B699200134063800023FFF79AFB902399 +:100AB0001022DB051B69134063800023FFF791FBC5 +:100AC00090232022DB051B69134063800023FFF77E +:100AD00088FB90238022DB051B6913406380002381 +:100AE000FFF77FFB90238022DB051B6992011340F7 +:100AF00063800023FFF775FB90238022DB051B69D1 +:100B0000D201134063800023FFF76BFB0122174BD8 +:100B10001B69134063800023FFF763FB0422144B1F +:100B20001B69134063800023FFF75BFB90232022A7 +:100B3000DB051B69134063800023FFF752FB002392 +:100B400063708D33FFF74DFB80230A4ADB02516946 +:100B50000B435361054B08491A680A401A60D9686B +:100B6000064A0A43DA600023FFF73BFB0004004813 +:100B7000000C004800100240FFFFAAAA00005555D3 +:100B8000EF4BF0491A680A401A60D968EE4A0A43E6 +:100B9000DA600023FFF725FBE94AEA4913680B40B6 +:100BA00013600023FFF71DFBE54AE74B11680B4379 +:100BB00013600023FFF715FBE14912024B69DBB21A +:100BC0001A434A610023FFF70CFBDD4B1B691B0A2C +:100BD000A370012363700023FFF703FB8023DB4A2C +:100BE0001B0351690B435361D94ADA4B11680B431C +:100BF00013600023FFF7F5FAD54AD64BD1680B43B3 +:100C0000D3600023FFF7EDFAD14AD34913680B40B4 +:100C100013600023FFF7E5FACD4ACE4B11680B4372 +:100C200013600023FFF7DDFAC94B5A610023FFF779 +:100C3000D8FAC023C54ADB0251690B435361C04A4D +:100C4000C64B11680B4313609022A023D205116894 +:100C50005B030B4313600023FFF7C3FAB84ABF4B93 +:100C6000D1680B43D3609023A021DB05D8684903EA +:100C70000143D9601168BA48014011601A68B94946 +:100C80000A401A600023FFF7ACFAFF23AC48950036 +:100C900041692B40B44DD20029400B43436190235E +:100CA000C020DB05C00059690240B04801400A433A +:100CB0005A610023FFF795FA8D23FFF792FA8D23EF +:100CC000FFF78FFA8D23FFF78CFA8D23FFF789FA50 +:100CD0008D23FFF786FABD78BA88032D00D10BE18A +:100CE00055D8012D63D05ED901F056FA902201212A +:100CF000D20513680B4313601023916111680B43F5 +:100D0000136004234021936113680B43136008238D +:100D100093619161802311685B010B431360802311 +:100D20008A48DB024169874D0B43854943610B6863 +:100D30002B400B60CC68844B1C43CC600C682C406F +:100D40000C60CC682343CB60802344691B0323439E +:100D50007F4C436125687F4B2B43236000236361F5 +:100D6000C0244569E4022C4344610C687B4820435D +:100D70000860A020146840032043106048697A4C42 +:100D800020404861516979480140516151E0052D89 +:100D900052D000D211E1072D00D191E0802D00D179 +:100DA00030E1962345E001F0F7F9002341E001F03E +:100DB000F3F99023DB051A68624C2A431A608022FB +:100DC0009D61196852030A431A6080220421D200EF +:100DD0009A621A680A431A6002229A6118680E32EF +:100DE00002431A604022996119680A431A60082276 +:100DF0009A6180235549DB024A6913434B61504B8A +:100E00001A6822401A60D8684F4A1043D8601868A0 +:100E100020401860D8680243DA6080234A691B03C7 +:100E200013434B4A4B6111684A4B0B431360002339 +:100E300053614F4CFFF7D5F901F0AEF99022012133 +:100E4000D20513683F4D0B43136010239161116865 +:100E50000B43136004234021936113680B43136019 +:100E6000082393618023916211685B010B43136037 +:100E700080233649DB02486903434B61304B1868D5 +:100E800028401860DC6830480443DC601C682C4053 +:100E90001C60DC682043D860802348691B0303433F +:100EA0004B612B492B4B086803430B6000234B61BC +:100EB00080211068C9010143116080219162B8E767 +:100EC00001F06AF990220121D205136840200B43FA +:100ED00013601023916111680B4313600423936125 +:100EE0001168014311600821916111680B4313607F +:100EF0000223936190610DE7D2B2022A3ED0002313 +:100F0000032A96D09723012A93D180230F491B03EC +:100F1000486903434B610E490B6893430B60CB68F0 +:100F20001343CB604B6813434B608A610B681A43D1 +:100F300000230A600F4A13700F4A116079E7C04618 +:100F400000040048FFFFAAAA000055550010024007 +:100F50000008004855555555AAAAAAAA50550000A0 +:100F6000AFAAFFFFFFFFEBFF03FF0000FFF9000048 +:100F7000EC060020F8060020F4060020B023C24A48 +:100F80005B03516940200B4353619023DB051A68D2 +:100F9000BE490A401A608022D96852011143D960C3 +:100FA000596801435960986119680A4308211A6019 +:100FB000B74A1170B74A1360F7E6D2B29823012AF4 +:100FC00000D036E79022B44BD2051A6006220A21DF +:100FD000B24B1A70B24BB34A1360B34A1170B34AA2 +:100FE00001311360B24A1170B24A13600C22B24B45 +:100FF0001A70B023A44A5B0351690B43536100F09C +:10100000EFFFD2E69023012640218025DB056670A4 +:1010100099621A686D012A431A60C0469B481C6990 +:101020001A680C4002401A60DA680240DA60F02266 +:10103000002C39D11A6802401A60DA681543DD6065 +:101040001A6994461A690392C0461A690592C04605 +:10105000C0461A690692C046C046C0461A69079241 +:10106000C046C046C046C0461D691A6802401A60A4 +:10107000DA681040D860634622000B4214D1039B0B +:1010800032000B4210D1059B02320B420CD10B00F7 +:1010900006990332194207D107990432194203D144 +:1010A00005321D4200D1D132844B9A707DE6BD7865 +:1010B000F978B8880D2D00D1DFE02AD8062D00D1AF +:1010C0009FE012D8022D00D1A2E006D8002D56D004 +:1010D000012D00D199E0A02553E0042D00D1BAE004 +:1010E000052DF8D102F0A6FA8DE0092D00D1BBE064 +:1010F00007D8072D00D1F9E0082DECD101F070FFE1 +:1011000081E00B2D00D1BBE000D8B0E001F0ACFFD6 +:1011100079E0222D00D17EE015D8102D00D1E8E035 +:1011200007D80E2D00D1A5E00F2DD4D102F0DEF8A6 +:1011300069E0202D00D191E000D992E0112DCAD1B3 +:1011400001F0D6FF5FE0822D00D101E10AD8802DA9 +:1011500000D1D1E0812DBED10123637000F066FD86 +:10116000A07050E0852D00D1F7E0862D00D1F9E088 +:10117000842DB0D10123637002F084FAF0E700F00F +:1011800003FF2570049AA3B25381049B240C9C8115 +:101190006B469A884A4B1A803B78602259B20029E4 +:1011A00001DB00F031FC13401BD17A78062A14D100 +:1011B0007A88110A022901D100F0FCFB032901D130 +:1011C00000F0FBFB012907D13E4B3F4A99B2118049 +:1011D0003E4A1B0C1380122302936A46384B128935 +:1011E0001A80009B1A883A4B13433A4A1A40C0238C +:1011F0009B015340009A9BB2138002F0CFF800F09D +:1012000027FC00F033FD0025BBE700F079FEFAE78C +:1012100000F0D6FCF7E7304B902258610223D2054C +:1012200093621F4B2D4D1E68090235431D605D6999 +:1012300000B2EDB229435961002801DA012191621F +:10124000C046C04601219161491891611A6824493C +:101250000A401A60D7E702F0A3FBD4E7214B1870CD +:10126000D1E7214B1880CEE702F0C2F9CBE701F0BD +:10127000D9FEC8E702F06AF8C5E702F005F8C2E750 +:1012800001F070FFBFE7C04600100240FFEFFFFF14 +:10129000F8060020F40600200C07002010070020AC +:1012A000000400480407002008070020140700205D +:1012B00018070020FC06002000070020EC06002094 +:1012C00002600040F64B00080A6000400C600040DD +:1012D0008081FFFF8FBFFFFF0008004800005555C9 +:1012E000FFFFAAAA880400203404002001F0A4FF14 +:1012F00089E701F077FF86E7012290236270DB0522 +:101300001968CA4D29401960D9682940D9608021DF +:101310000225C90099629A619D61C54D6861C04608 +:10132000C04600B29961002800DA9A62C046C04601 +:10133000C046C046C046C04690228021BD4BD20563 +:10134000C9001B69916201211B0A9161A3705AE7D0 +:101350000123637000F0FCFD02E701236370B64BCC +:101360001B78F3E702236370B44B1B88A3701B0A3E +:10137000E37048E7B878F978BB88AA2206281AD81B +:1013800003F00EFC042A1B2226322000FF22A9486B +:101390009D0041692A40AA4DDB0029400A43426171 +:1013A0009022C020D205C00051690340A5480140E9 +:1013B0000B43536100222270E4E60022180001F082 +:1013C0006BFDF7E70122F9E7180001F0E1FDF1E715 +:1013D000180001F0B5FDEDE7012200216270180050 +:1013E00001F08AFDA070E5E701216170F7E7BA78A6 +:1013F000002A07D00023012A01D1FEF7F2FEAF2315 +:10140000FEF7EFFE01236370A933A3701300FEF70C +:10141000E8FEBA78002A07D00023012A01D1FEF79E +:10142000E0FEB023FEF7DDFE01236370A933A37055 +:101430001300FEF7D6FEBA78002A07D00023012A4F +:1014400001D1FEF7CEFEB123FEF7CBFE0123637080 +:10145000A933A3701300FEF7C4FEBA78002A07D0A0 +:101460000023012A01D1FEF7BCFEB223FEF7B9FE2C +:1014700001236370A933A3701300FEF7B2FEBD7899 +:10148000FA78B988112D00D19BE007D8012D6BD0D7 +:10149000002D0FD0022D7DD0822572E6212D00D1A6 +:1014A00085E0222D00D188E0122DF5D102231020F5 +:1014B000637089E001263100634A644D12782B681D +:1014C000914099625A6810208A435A6002F084F869 +:1014D00031005D4B2A681B78042599400B0091610F +:1014E000516803960B435360FA20400002F074F8F1 +:1014F000554A03991278FA209140544E40003368BF +:10150000013D99625A68ADB28A435A6002F064F8AC +:101510004D4B03991B78326899400B0091615168DB +:101520000B435360002DDFD10435FA2002F054F84C +:101530000121454A454E12783368914099625A68B4 +:10154000FA208A435A6002F047F801213E4B326884 +:101550001B78013D99400B0091615168ADB20B437E +:101560005360002DE1D10CE62900374A374E12783E +:101570003368914099625A6810208A435A6002F099 +:101580002BF8314A3368127895409D615A681543AB +:101590005D6038E601232C4A637012782C49934031 +:1015A0002A4A9BB21268002002F012FAD8E5012301 +:1015B0000020637001F060FFD2E50123102063700A +:1015C000F8E702230020637001F0B0FF60801AE6A4 +:1015D000BB78BA88042B1DD007D8022B1FD03FD868 +:1015E000012B12D08723FEF7FCFD072B41D003D837 +:1015F000052BF7D1174B16E0082B3FD0802BF1D1EC +:1016000000F0EEFC0023FEF7ECFD134A1278A27006 +:101610006370F7E7114B1B78A3700123F8E70E4BBB +:101620001A7083220D4B1A70ECE7C046FFEFFFFFE4 +:10163000000800480004004888040020340400200A +:1016400003FF0000FFF90000F8060020F406002068 +:1016500004000200D9040020B8040020DA040020AD +:10166000C14BC24D1A7083232B7000F029FD2B78DB +:10167000D2E7BF4B1A70120A5A70C3E7BC4B1A78F4 +:10168000A2705A78E2709A782271DA7862711A79C7 +:10169000A2715B79E3710623BAE7BB78BA88022BA3 +:1016A00017D0032B18D0012B1DD1024885460248C4 +:1016B000001C004778120020C5CAFF1F0600050065 +:1016C0000800070019C9FF1FEFBEADDE0023FEF7BB +:1016D00088FDA84B1A60F9E7A64B18680004104370 +:1016E00002F070F9F2E78A23FEF77BFD8823FEF70C +:1016F00078FDBA781300303B2F2B1CD8F8780328DC +:1017000016D803F04DFA180211139B4B512A00D141 +:1017100080E028D8312A59D00FD8002A37D0302A73 +:101720004DD0B423FEF75DFD944BEFE7944BEDE70E +:10173000B523FEF756FD934BE8E7332A54D04CD33C +:10174000502AEED100222270063262701A7AA270FC +:10175000DA78E2705A7A22719A7A62719A78A27172 +:101760005B7CE3710EE57F2A00D987E0702A61D2A5 +:10177000602A3ED0612A45D0522AD2D100221B884D +:101780002270A37002321B0A6270E370FAE4FF2336 +:101790007D4953540132102AFBD1774A7949D370DD +:1017A0009370774ACB70D370937001228B7073491A +:1017B000CB708B70754B1A700023FEF712FDBA8840 +:1017C000110AD9721A730023FEF70BFDBA88110AA9 +:1017D00059739A730023FEF704FDBA88110AD9736E +:1017E0001A740023FEF7FDFCBA885A740023FEF732 +:1017F000F8FC0023237001336370BB88624AD35C1A +:10180000A370BFE40023237001336370604B1B6837 +:10181000DB78F5E70022227006326270DA7AA27075 +:101820001A7BE2705A7B22719A7B6271DA7BA27119 +:101830001B7C96E7534B56495C683B787F2B00D95D +:101840006AE16846534B007918700B68D878002815 +:101850000DD000230193982805D165E10023019361 +:10186000D02800D160E11020484B187003E04A48AE +:1018700003609020D870FF23019355E107201040AA +:10188000032817D803F08CF919021B143A4B802A4D +:1018900000D277E4872A14D97032D2B2072A00D94D +:1018A00070E400222270FA789A72BA881A8069E489 +:1018B000334BECE7B523FEF794FC324BE7E72F4BB5 +:1018C000E5E7B988F8780A0AC9B245189446BE22F5 +:1018D000102D00DD6FE50432002800D16BE5DD78C6 +:1018E000033AFF2D00D066E59D780132FF2D00D030 +:1018F00061E50022D6B2B0421ED862464601013EE2 +:101900001E724E0135009A700022244EDA7076194C +:101910005A729A721A80DA721A735A739A73DA7355 +:101920001A745A745E60184B591863468B5401320E +:10193000D3B28342F9D33DE501328E18124D013EF8 +:10194000AE5DFF2ED6D0C12235E5BB78002B04D08A +:10195000402B25D0D223FEF744FC2370BA880B4BD2 +:101960001A70FFF70FFCC046B8040020DA0400200C +:10197000B9040020300400204C0400206004002042 +:101980007404002038040020DB04002098040020A8 +:101990008C0400209404002090040020EC0400201B +:1019A00000232370013363706C4B1B7828E780237E +:1019B000FEF717FC6A4BFFF708FCD2B2012A19D0D8 +:1019C000002A0DD0022A01D0FFF706FC654B664ABB +:1019D00099B21180654A1B0C1380654BFFF7FCFB25 +:1019E000644B614A99B21180604A1B0C1380042336 +:1019F000FFF7F2FB604B5C4A99B211805B4A1B0C0B +:101A000013805E4BFFF7E8FB13420BD17B78052B6D +:101A100008D15B4B1A887B88D2B21B021343584A09 +:101A20009BB21380009B574A1B8800991340564A6B +:101A300013439BB20B800021544B1980009B1B88E1 +:101A40001A43534B1A40534B5A40009B92B21A8090 +:101A5000514BDA8F520507D58021504A1180002260 +:101A6000DA874F4B009A138009B0F0BD444B1A88B7 +:101A700060231A40402AEBD1414B1B880B40E7D131 +:101A8000484A1188484AC9B21268557A5668DCB289 +:101A90006019C0B2A14218D8537A4448CB18537287 +:101AA00003785B1ADBB20370002B01D19833D3703B +:101AB000009B1A88344B13433D4A1A40C0239B01B4 +:101AC0005340009A9BB21380C2E73A4C1C19247809 +:101AD00001333454DBE78021009B1B880B42B7D0D5 +:101AE000009B354A1B881340802212021343009A40 +:101AF0001380324B1B888B4201D1FFF77EFBFF2402 +:101B00001F4A1088A043A3D013881B0A0B43234904 +:101B10000B8013882340D6E70B68D878D82800D0EC +:101B20009CE680205C68D8700B6800215972DB78D5 +:101B3000902B01D0FFF726FB712A01D0FFF722FB83 +:101B4000194BBA881B6859680A70BA885968120A12 +:101B50004A705A7A02325A72FFF714FB9804002036 +:101B6000E44B0008604C00080A6000400C60004034 +:101B70001E030000084C00080C4C00082A0300005B +:101B8000066000408F8EFFFF8080FFFF12600040E4 +:101B9000BFBFFFFF30300000065C00404C5C0040DF +:101BA00020320000166000409004002094040020C1 +:101BB0008FBFFFFF506000400F8FFFFF08600040A5 +:101BC0009023DB0530B51C68134D09022C401C60C6 +:101BD000DA68124C2A40DA60114A506102229A6295 +:101BE000104A00B215682C4314605469E4B22143D2 +:101BF00051618021C9009961002801DA01209862B1 +:101C0000C046C046996201219961491899611368DB +:101C100005490B40136030BDFFEFFFFF0000555535 +:101C20000008004800040048FFFFAAAA0D4B8022CC +:101C300058619023D200DB0500B29A61002801DAD6 +:101C400001229A62C046C046C046C046064B80226A +:101C500018699023D200DB059A620122000AC0B203 +:101C60009A61704700080048000400480D4B0E4A76 +:101C700058610E4B0902186802431A605A69D2B2C1 +:101C80001143902259618021D20510684901014316 +:101C900011604021916291611A6805490A401A60F9 +:101CA0007047C04600080048000055550004004831 +:101CB000FFFFAAAAF0B5404B8BB0089119783F4BB3 +:101CC00009921B78019002933D4B019D1C683D4B8E +:101CD0003D481A7801231E0096403C4AA662102D0A +:101CE0005ED1127800689340836201200200364B77 +:101CF00005901F68354B1B789A4003920200344BC5 +:101D00001B680693334B1B789A4093B202000793EB +:101D1000314B1B689C46314B1B789A400023049240 +:101D20001A000198202806D1029D05981D41054200 +:101D30003ED00398B861089820280FD1002B01D11C +:101D40001E488354069805690798054206D01B482B +:101D5000855C0598984005431848855409980139D1 +:101D6000C9B2002802D0002900D1A6616046049DB6 +:101D70000133DBB285618562082B05D101320F4B3F +:101D8000D2B29B5C029300230029CAD10E4B1A6881 +:101D90000E4B197801238B409362A6620BB0F0BD05 +:101DA000019D112DA1D112780068934083619CE7B9 +:101DB0000398B862BFE7C046D9040020B9040020E8 +:101DC000140700201807002004070020080700203F +:101DD0000C07002010070020FC0600200007002050 +:101DE000F7B51F4B1F491A781F4B10282ED101241D +:101DF0001E780D68B440AC62012635000C683100D5 +:101E00001B7801969D40194B1B680093184B1B785B +:101E1000994000238C46190020280DD1154E019FB2 +:101E2000765C1E413E4219D0A5610133DBB2082B1E +:101E300002D100230131C9B26646009F013AD2B2F5 +:101E4000BE61BE62002AE7D1A562F7BD1128D3D1D9 +:101E500001241E780D68B440AC61CDE7A562E4E7CB +:101E6000D90400201407002018070020FC060020D9 +:101E700000070020B9040020F7B50D001600FF2769 +:101E8000000203B24C7A01932A7AE3B2A24202D250 +:101E90006B720020FEBD20006A683840D15C019B57 +:101EA0000134184380B2B047A4B2EDE7022907D14C +:101EB0000F4B104A984218D0904209D1180007E001 +:101EC000032906D10A4B0B490B4A98420BD1080053 +:101ED00070470429FCD1064B064A984205D00649B2 +:101EE0009042F4D0054A8842E6D11000F0E7C0469F +:101EF000380400204C0400206004002074040020FA +:101F00000E4B984202D880231B0218430C4B0D4AFB +:101F100058610D4B0902186802431A605A69D2B21F +:101F200011435961C04690220821D2059162C046F2 +:101F300091611A6805490A401A607047FF1F000046 +:101F4000000800480000555500040048FFFFAAAAF9 +:101F50000A4B984202D880231B021843084B0422E4 +:101F600058619023DB059A62C046C046C046C04611 +:101F7000044908699A61000AC0B27047FF1F000057 +:101F80000008004800040048104B114A10B5586181 +:101F90001068104B09020343136053690E4CDBB207 +:101FA0001943902351618021DB05186849010843DA +:101FB000186040209862186820401860D868014373 +:101FC000D960136805490B40136010BD0008004834 +:101FD0000004004800005555FFEFFFFFFFFFAAAACD +:101FE000F0B52C4B85B019682B4B2C481B7800782A +:101FF0000193012302901E0018001F00019A029C09 +:102000009640A040264D274A2D781268AF408E6238 +:102010008446906224489D40006887620468039467 +:102020001C00AC402500039C254305604568019CCD +:10203000BD4345609C401D00A54008681C00284326 +:1020400008604868B04348601068029999408C4025 +:10205000210001436046116051688143134851607B +:102060000078134A984083401268124811689943D7 +:102070001160D1680B43D36080220F4B1A7000238C +:1020800019000E4A13701A1801331170202BFAD15F +:1020900005B0F0BD14070020180700200807002035 +:1020A0000007002004070020FC0600201007002085 +:1020B0000C070020B9040020DA040020D904002015 +:1020C00010B5334B1B78082B5DD016D8314C032B41 +:1020D00044D007D8012B2DD0022B31D0EE222D4B2E +:1020E0001A7023E0062B44D049D8042BF6D1812363 +:1020F000012223702021112027E00F2B34D008D893 +:10210000244C0D2B25D00E2BE8D1812300222370E7 +:1021100027E0802B08D01F4CFF2B08D0102BDDD1DF +:1021200081230022237027E0FFF75AFF10BDF02320 +:102130002370FBE7812320202370FFF751FE06E088 +:1021400081230122002123702020FFF7B3FD822389 +:10215000EEE78123002223701100F5E7812301229D +:10216000237020211020F0E781230A4C00222370E5 +:10217000C0E781230122237020210800E5E78123A5 +:1021800010202370D9E78123024C11202370D4E75B +:10219000B8040020DA040020BC234749DB038A6A24 +:1021A000F0B513438B628B6A444A012413408B625F +:1021B00090238022DB051868D20102431A60802236 +:1021C0009A61B0224869520302434A611A683C4846 +:1021D0003C4F02401A608022D86852030243042018 +:1021E000DA601A68A2431A60DA682243DA601A6871 +:1021F00082431A60DA680243DA6010221D68954350 +:102200001D60DD682A43DA6040221D6895431D6029 +:10221000DD682A43DA601A682B4D2A401A60802252 +:10222000DD68D2042A43DA601A68284D2A401A6011 +:102230008022DD68D2052A43DA601A68244D2A40DC +:1022400080251A60DA68ED022A43DA60214A1668AE +:10225000A6431660D6683443D4601E683E401E60B4 +:10226000DC683C40DC6080234C691B0323434B61EA +:10227000194B1A4C1E681A4F26431E601E683E40BA +:102280001E60DE683443DC604B691D434D6113689A +:10229000144D2B401360D468134B1C43D460116859 +:1022A00029401160D1680B43D360136883431360E6 +:1022B000D3681843D060F0BD00100240FFFFA1FFBB +:1022C000FFFFEFFFFFEFFFFFFFFFFFFBFFFFFFBF82 +:1022D000FFFFFBFF00040048000800485555555516 +:1022E000AAAAAAAAFFFFAAAA000055559022D24B7B +:1022F00012031968F0B50A431A60802289B092026D +:1023000019681142FCD0012259680A435A608022A0 +:10231000596852020A435A608022596852030A439C +:102320005A608022196852040A431A60802292047B +:1023300019681142FCD0112102248020BF4A11608B +:102340005A680E398A4322435A601A6B02431A6351 +:102350008022D96912040A43DA6162B6002310258B +:10236000B74A1380B74A1380B74A1380B74A13801D +:10237000B74A1380B74AD18FA143D187D18F013C8F +:10238000A143D187B44CB549CB872580B44C3835AF +:102390002580B44C083525808025B34C6D012580FF +:1023A000B24C2080CB87B249B24B19808021B24B0E +:1023B000090619608023D18FDB000B43D387AF4A16 +:1023C000AF4B1A80FFF7E8FEF022AE4B1A70AE4E0C +:1023D0002023327811009943D2292ED1AB49AC4841 +:1023E000C978C3780224FF2904D1FF3B1C00631E77 +:1023F0009C41E4B2A74BDB78FF2B00D00324A64B13 +:10240000DB78FF2B00D00424A44BA54F1C70386050 +:10241000D22A12D10023012505E02100FFF746FD55 +:1024200001230135EDB2A542F7D3002B00D038606F +:1024300080223B68DA70D02333703378F22B05D1D9 +:102440000022023B3370964B1B68DA703578D02D32 +:1024500001D000F0D1FC924E3068C378802B01D0BF +:1024600000F0CAFC8D4B1978FFF720FD0023306087 +:102470000400C57006884372C07AF5B2103815287A +:1024800001D900F0B7FC02F09FFB52008A00D20095 +:102490001301B504B504B504B504B504B504B50419 +:1024A000B504B504B504B504B5041600250036001E +:1024B0003B0041004B00E17BC4230F2901D900F010 +:1024C0009AFC09013143237AA278C9B2606801F00D +:1024D000FDF90EE0E17B3C230A009A438833002A91 +:1024E00001D000F088FC237AA2782943606801F0CB +:1024F00023FA607292E0237AA278E17B2943E5E730 +:10250000E17B3F230A009A438533E8E7227AE17BA7 +:10251000A378009200222943606801F099F9E8E766 +:10252000E17B227AA378294300920122F4E7E37B3E +:102530001E2B0BD1C020B6092233F1B200029D43FD +:10254000FFF73EFB237AA2788021D7E71C2B0FD11F +:10255000A0208121C001FFF733FB8020F609F1B2F2 +:102560000002FFF72DFBA0200021C001FFF728FB90 +:102570008021E27B49421F2A05D00D43EDB2237A28 +:10258000A2782900A2E77022A02095430D4321885C +:10259000C0010909C9B2EDB2FFF712FBEFE7E37B17 +:1025A000FE2B3BD17609F1B23E48FFF7A9FC1F2173 +:1025B0003D4B0D405A692D02D2B215438021902225 +:1025C000C900D205A0786768267A5D619161012112 +:1025D000FF259162033191625A692D022A4002431C +:1025E0005A61C046314900228C46C046614609699D +:1025F0000130090AB9545969C0B229400132014376 +:10260000D2B259619642F0D290230421DB05996140 +:102610008021C9009962012199616272204B1B6877 +:1026200019889A7A52181A80D822DA70E4E3237A49 +:10263000A278602162E7C0460010024000200240FC +:1026400000600040026000400460004006600040FE +:1026500008600040025C0040505C0040065C0040A6 +:102660001060004014600040166000404C5C004068 +:1026700020320000005C004000E100E00080FFFF2D +:10268000585C0040DA040020980400204C0400202C +:102690003804002060040020740400201907002082 +:1026A0008C040020FF3F00000008004800040048A0 +:1026B000E37B002B20D18033F6091D43F3B2029354 +:1026C000FF20029BC1499B004A690340C048024069 +:1026D00013434B61C0209021029BC905C000DB0061 +:1026E0004A690340BB48024013434B61227AA378F6 +:1026F0002900009200220FE7012BE1D14021B6040E +:10270000B60E31430291DBE7E37B002B0BD13300A4 +:10271000803B657A5BB21B02AFB20393237ABB4264 +:1027200000D3EBE06572E37B012B06D130008038EB +:10273000C0B2A94A2100FFF79FFBE37B032B06D120 +:1027400030008038C0B2A54A2100FFF795FBE37B3B +:10275000042B06D130008038C0B2A14A2100FFF717 +:102760008BFBE37B0A2B06D130008038C0B29D4A38 +:102770002100FFF781FBE37BFD2B15D13F20238850 +:1027800030409B0904936B4680261B7C06430693CE +:10279000677ABBB2039333021BB20793237A039A7F +:1027A000934200D3C9E06772E37B1E2B11D13F2017 +:1027B00030408026238806439B09DBB20593657A67 +:1027C00033021BB2AFB20693237ABB4200D319E1A6 +:1027D0006572E37B0C2B17D11F2030408026064307 +:1027E000C0202588A5216D09EDB2C001FFF7E8F9E9 +:1027F00029007D48FFF7E4F9677A35023D43237AE3 +:10280000BB4200D34DE16772E37B1C2B3BD1A02080 +:1028100023888121DB09DBB2C0010493FFF7D0F9E3 +:10282000802004990002FFF7CBF9A0205421C001B9 +:10283000FFF7C6F9677AAA21BBB26C480393FFF78A +:10284000BFF955216A48FFF7BBF920216748FFF718 +:10285000B7F9802333431B021BB20693237A039AF2 +:10286000934200D33AE18020902100026772FFF783 +:10287000A7F9802000210002FFF7A2F98020F021B3 +:102880000002FFF79DF9E37B1F2B30D1A0202188A8 +:10289000C0010909C9B2FFF793F9AA215348657A23 +:1028A000FFF78EF955215248FFF78AF94F4820214A +:1028B000FFF786F9702380209E434042304340B2A8 +:1028C0000302AFB20493237ABB4200D34EE18020CF +:1028D000902100026572FFF773F980200021000249 +:1028E000FFF76EF98020F0210002FFF769F9F42369 +:1028F0002288E370A37A9B1823809DE20398636883 +:102900002843595D80B200F073FE63685A5D2F4B17 +:10291000824206D004211A680A431A6002229A6190 +:10292000FCE604211A6801358A431A60DA68013727 +:102930000A43DA60EDB2BFB2F0E600212D48FFF79E +:102940003FF9AA212C48FFF791F955212B48FFF7B1 +:102950008DF9A0212848FFF789F96B46187C284B90 +:102960000699C01880B2FFF72BF9079D63683D43B5 +:10297000ADB2D95D2800FFF779F9C0462800FFF70E +:1029800055F905902800FFF751F9059B8342F4D1D2 +:1029900063680599DA5D0D4B8A420FD1039A196875 +:1029A000013292B20392042291431960D96801372F +:1029B0000A43DA600222FFB29A62EFE60422196843 +:1029C0000A431A6002229A61E8E6C0460004004801 +:1029D00003FF0000FFF900004D33000889320008B2 +:1029E00039320008E5310008FFFF0000AA8A000024 +:1029F0005585000069FD000055550000AA2A000019 +:102A000069FDFFFFC02001210002FFF7D9F8AA21CC +:102A1000BA48FFF7D5F8C02000210002FFF7D0F830 +:102A20005521B748FFF7CCF8C02001210002FFF77D +:102A3000C7F8A021B148FFF7C3F8C02005990002EC +:102A4000FFF7BEF8069B2B439BB203936368039882 +:102A5000595DFFF7B5F8C0460398FFF7E7F8049013 +:102A60000398FFF7E3F8049B8342F4D16368049969 +:102A70005A5DA44B8A420DD1042219680135914355 +:102A80001960D96801370A43DA600222EDB2BFB299 +:102A90009A6299E6042219680A431A6002229A612E +:102AA00092E6AA219848FFF78BF855219448FFF742 +:102AB00087F8A0219448FFF783F863682800D95D60 +:102AC000FFF77EF8C0462800FFF7B0F80390280013 +:102AD000FFF7ACF8039B8342F4D190E6A020542189 +:102AE000C001FFF76DF8069DA0213D43ADB228005F +:102AF000FFF766F863682800D95DFFF761F8C04604 +:102B00002800FFF793F805902800FFF78FF8059B42 +:102B10008342F4D16368059ADB5D7A4D93420FD10D +:102B2000039B2A6801339BB2039304239A432A60D0 +:102B3000EA6801371343EB600223FFB2AB628DE614 +:102B4000A0208121C001FFF73BF8802004990002FA +:102B5000FFF736F8A0205421C001FFF731F8042315 +:102B60002A6813432B600223AB6177E6049EA02101 +:102B70002E43B6B23000FFF723F863683000595D8A +:102B8000FFF71EF8C0463000FFF750F80390300002 +:102B9000FFF74CF8039B8342F4D1636803995A5DB5 +:102BA000584B8A420DD104211A6801358A431A60B4 +:102BB000DA6801370A43DA600222EDB2BFB29A62E4 +:102BC00081E604211A680A431A6002229A617AE6B1 +:102BD000E37B002B04D14D4A21003000FFF74CF974 +:102BE000E37B012B04D14A4A21003000FFF744F96E +:102BF000E37B022B04D1474A21003000FFF73CF968 +:102C0000E37B042B04D1444A21003000FFF734F960 +:102C1000E37B0A2B04D1414A21003000FFF72CF955 +:102C2000E37B0B2B04D13E4A21003000FFF724F94F +:102C3000E37BFE2B00D05AE621883A484909C9B205 +:102C4000FFF75EF9AA213848657A00F0F3FC5521B8 +:102C5000364800F0EFFC3448202100F0EBFC1F2048 +:102C600030400302AFB20493237ABB420DD26572A7 +:102C70009021002000F0DEFC0021080000F0DAFCCA +:102C8000F021002000F0D6FC31E6049EA0212E4366 +:102C9000300000F0CFFC63683000595D00F0CAFCE2 +:102CA000C046300000F0EEFC0390300000F0EAFC7B +:102CB000039B8342F4D1636803995A5D114B8A42A6 +:102CC0000DD104211A6801358A431A60DA68013788 +:102CD0000A43DA600222EDB2BFB29A62C4E704216D +:102CE0001A680A431A6002229A61BDE73000603018 +:102CF0000F4A2100C0B2FFF7BFF8F8E55595000074 +:102D0000AAAA00000004004855D50000253000089C +:102D1000ED32000865310008E12F0008F1300008AD +:102D200069300008FF3F0000AA0A000055050000B6 +:102D3000C11B0008E37B042B06D130008038C0B2F1 +:102D4000444A2100FFF798F8E37B052B04D1414A60 +:102D500021003000FFF790F8E37B062B06D130000E +:102D60008038C0B23C4A2100FFF786F8E37B072B8E +:102D700004D1394A21003000FFF77EF8E37B002BB5 +:102D80001CD1FF2580331E4323883448DB09DBB286 +:102D90009A0041692A40324DDB0029400A434261D2 +:102DA0009021C020C905C0004A6903402D48024057 +:102DB00013434B613000210000F080FCE37B012BCA +:102DC00000D094E52388254A254851699B049B0E31 +:102DD00001409B000B4390215361C9054B69214A77 +:102DE00030001A4080239B0013434B61210000F008 +:102DF00065FC7CE5C323E3701B4B1D78F02D1BD1D4 +:102E00001A4E3468E378982B16D1194B20001978A4 +:102E1000FFF74CF800233060C370E07AE57010389B +:102E20002678042806D801F0C5FE6FFCD3FE61FFAA +:102E300085FF62FDC323E3700E4B1B78F02B01D19D +:102E4000FFF7C5FA832B01D0FFF7C1FAFFF738F976 +:102E5000FFF7BDFA912F0008412F00080004004839 +:102E600003FF0000FFF90000980400208C040020FC +:102E700019070020DA040020002302000002002AC3 +:102E800004D1002B01D0802318437047DB43511E2F +:102E9000DBB20A40F3E70000134B10B55861134B47 +:102EA00013481C680902204318605869C0B20143E6 +:102EB000596190210820C9058862002A01D1013298 +:102EC0008A62C046C046C046C046C046C046C046EC +:102ED000C04690220821D2059161073991611A6894 +:102EE00004490A401A6010BD000800480004004868 +:102EF00000005555FFFFAAAA0F4B58619023DB0530 +:102F0000002901D101229A6204229A62C046C04679 +:102F1000C046C046C046C046C046C046C046C04681 +:102F2000C046C046C046054908699A61000A033A8E +:102F3000C0B29A617047C0460008004800040048CB +:102F400070B504000D000022AA210F48FFF7A4FF6E +:102F5000002255210D48FFF79FFF0022A0210A48BB +:102F6000FFF79AFF002229002000FFF795FF0021BC +:102F70002000FFF7C1FF0500C04600212000FFF739 +:102F8000BBFF8542F3D170BDAA8A000055850000C1 +:102F900070B504000D000022AA210F48FFF77CFF46 +:102FA000002255210D48FFF777FF0022A0210A4893 +:102FB000FFF772FF002229002000FFF76DFF0021BC +:102FC0002000FFF799FF0500C04600212000FFF711 +:102FD00093FF8542F3D170BD55550000AA2A000029 +:102FE00070B504000D000D48AA21FEF789FF552198 +:102FF0000B48FEF785FFA0210848FEF781FF290056 +:103000002000FEF77DFF2000FEF7A2FF0500C0466E +:103010002000FEF79DFF8542F5D170BD55150000DB +:10302000AA1A000070B504000D000D48AA21FEF791 +:1030300067FF55210B48FEF763FFA0210848FEF704 +:103040005FFF29002000FEF75BFF2000FEF780FFF6 +:103050000500C0462000FEF77BFF8542F5D170BD1C +:1030600055150000AA0A0000F8B505000E001C4F17 +:103070001C4B38882021203080B21C78FEF7A0FD40 +:10308000AA211948FEF73CFF38881021103080B281 +:10309000FEF796FD55211548FEF732FF38882021AE +:1030A000203080B2FEF78CFDA0210F48FEF728FFEC +:1030B00024013888E4B2001980B22100FEF780FDB7 +:1030C00031002800FEF71CFF2800FEF741FF040036 +:1030D000C0462800FEF73CFF8442F5D1F8BDC0464B +:1030E000340400208804002055150000AA0A0000BE +:1030F00070B50400B0200E0000020A21FEF760FD4A +:10310000C0200A210002FEF75BFDAA211248FEF74B +:10311000F7FE55211148FEF7F3FEA0210E48FEF7F9 +:10312000EFFEB0200E4D00022978FEF749FDC020C9 +:1031300029780002FEF744FD31002000FEF7E0FE92 +:103140002000FEF705FF0500C0462000FEF700FF47 +:103150008542F5D170BDC04655150000AA0A000091 +:103160008804002070B504000D001A4E022130883A +:10317000023080B2FEF724FDAA211748FEF7C0FEF8 +:1031800030880121013080B2FEF71AFD5521134825 +:10319000FEF7B6FE30880221023080B2FEF710FD45 +:1031A000A0210D48FEF7ACFE0D4B30881978401871 +:1031B00080B2FEF705FD29002000FEF7A1FE2000E9 +:1031C000FEF7C6FE0500C0462000FEF7C1FE8542A0 +:1031D000F5D170BD3404002055150000AA0A000086 +:1031E0008804002070B504000D001048AA21FEF7E5 +:1031F000E7FC55210E48FEF7E3FCA0210B48FEF743 +:10320000DFFC29002000FEF7DBFCA020094B0002B8 +:103210001978FEF7D5FC2000FEF708FD0500C04632 +:103220002000FEF703FD8542F5D170BDAAFA00002B +:1032300055F500008804002070B504000D0010480A +:10324000AA21FEF7BDFC55210E48FEF7B9FCA021CE +:103250000B48FEF7B5FC29002000FEF7B1FC8020EA +:1032600000210002FEF7ACFC2000FEF7DFFC0500A9 +:10327000C0462000FEF7DAFC8542F5D170BDC0469D +:1032800055D50000AAAA000070B504000D00134E29 +:1032900000213088FEF794FCAA211148FEF774FE45 +:1032A00055211048FEF770FEA0210D48FEF76CFE78 +:1032B0000D4B30881978401880B2FEF781FC290048 +:1032C0002000FEF761FE2000FEF7B0FC0500C046BE +:1032D0002000FEF7ABFC8542F5D170BD3404002020 +:1032E00055550000AA2A00008804002070B504008B +:1032F000A0200D000002022100F052FBAA2110487C +:10330000FEF7FEFD55210F48FEF7FAFDA0210C48FF +:10331000FEF7F6FDA0200C4B0002197800F040FBF0 +:1033200029002000FEF7ECFD2000FEF711FE05004D +:10333000C0462000FEF70CFE8542F5D170BDC046A8 +:1033400055150000AA0A00008804002070B504008A +:10335000C0200D000002052100F022FBAA210D482B +:10336000FEF72EFC55210C48FEF72AFCA021094847 +:10337000FEF726FC29002000FEF722FC2000FEF7C5 +:1033800055FC0500C0462000FEF750FC8542F5D1F3 +:1033900070BDC04655550000AAAA0000284B10B5C4 +:1033A0001A88284B12041B881A43274B198849088E +:1033B0004900885A254908801988023189B2198044 +:1033C000198849084900885A21490880198802311A +:1033D00089B21980198849084900885A1D4908800E +:1033E00019881D48023189B2198019884908490095 +:1033F000895A1A4A11801A881949023292B21A80DF +:103400001C880288944213D902881C880832121B37 +:1034100092B20A80028892B21A801249124B0A882C +:103420001343124A1A40302353409BB20B8010BD05 +:103430000F4804881A889442E6D308230B80ECE7EF +:103440000C6000400A60004004600040486000409A +:103450004A6000404C600040026000404E60004006 +:1034600012600040005C00408080FFFFBF8FFFFFC4 +:1034700000600040FEE70000F7B501230225294F58 +:1034800001923A780091054393400421A020264EF2 +:103490002D049BB229433268C00100F099FA040060 +:1034A00001283DD13B7809209C4005437830A3B2E8 +:1034B00032682900FF3000F08BFA040001282FD178 +:1034C0003B7832689C402900A3B2002000F080FACB +:1034D0000400012824D1009B180AFFF7CDFC3B789B +:1034E00032689C402900A3B200F072FA040001285F +:1034F00016D16B461878FFF7BFFC22003B782900F5 +:103500009A4093B2326800F063FA0198FFF7B4FC76 +:103510003B7832689C402900A3B200F059FA0400BD +:10352000E0B2FEBDF8060020F4060020F7B5012346 +:103530000225274F00903A780191054393400421DA +:10354000C020244E2D049BB229433268800100F034 +:103550003FFA0400012838D109231D433B78C020DD +:103560009C403268A3B22900400000F031FA040008 +:1035700001282AD13B7832689C402900A3B2002060 +:1035800000F026FA040001281FD1019B180AFFF75A +:1035900073FC3B7832689C402900A3B200F018FA13 +:1035A0000400012811D16B461879FFF765FC220051 +:1035B0003B789A4093B2009A14430922E1B209047D +:1035C0001143326800F004FA0400A0B2FEBDC04608 +:1035D000F8060020F40600200023800080B2834219 +:1035E00000D17047C046C04601339BB2F7E70000E8 +:1035F00070B504000D000D48AA21FEF7C5FC552149 +:103600000B48FEF7C1FCA0210848FEF7BDFC2900CD +:103610002000FEF7B9FC2000FEF708FB05002000A3 +:10362000FEF704FB8542F6D1280070BD5555000019 +:10363000AA2A00000F4B30B5902258618023012444 +:10364000D205DB0093620C4B94621D680B480902A3 +:10365000284318605869C0B201435961C046082127 +:103660009162C046916119680548014019609461F2 +:1036700030BDC04600080048000400480000555511 +:10368000FFFFAAAA0B4B10B580215861902301229D +:103690000424DB05C90099619A629C62C046C04659 +:1036A000C046054800699C61000A9962C0B29A61EF +:1036B00010BDC0460008004800040048F7B50400EB +:1036C0000E004D7AC046C046C046C046C046C04601 +:1036D000C046C046C0460022AA215848FFF7DCFB7E +:1036E000002255215648FFF7D7FB24020022202153 +:1036F0005248FFF7D1FB23B20193EBB20093337A28 +:10370000AB4217D26B4680201B7800227372902147 +:103710000002FFF7C1FB0022802011000002FFF72A +:10372000BBFB80200022F0210002FFF7B5FBC04662 +:103730000020FEBD434B444A196808200A43FF217C +:103740001A605A690A40A02109020A435A6190226C +:103750000121D20590629162C046C046C046C04673 +:10376000FF24906191611A6838492C400A401A6020 +:10377000019B009A1C437368A4B2995C200000224C +:10378000FFF78AFBC046C046C046C046C046C0469A +:10379000C046C046C046C04600212000FFF7ACFB33 +:1037A0000700C046C046C046C046C046C046C046E8 +:1037B000C046C0467368009A9B5C834217D0C046DF +:1037C000C046C046C046C046C046C046C046C046C9 +:1037D00000212000FFF790FBB8420BD1C046C04645 +:1037E000C046C046C046C046C046C046C046013579 +:1037F000ADB282E7C046C046C046C046C046C046DD +:10380000C046C046C046C046C046C046C046C04688 +:10381000C046C046C046C046C046C046C046C04678 +:10382000C046C046C046C046C046C046C046C04668 +:1038300000212000FFF760FB0700C9E7AA8A00000B +:10384000558500000004004800005555FFFFAAAA56 +:10385000F0B51C4D040005A8067868690902C0B2DD +:103860000843686190200421C00581622900002A74 +:1038700001D101328262FF2500204A692D022A40CF +:103880001A43114F4A61C046C046C046C046C046B2 +:10389000C046C046C046C046C0463A690133120A17 +:1038A00022544A69DBB22A4001301A43C0B24A614D +:1038B000B042E8D990230422DB059A61033A9A6169 +:1038C000F0BDC0460008004800040048F0B5184CA0 +:1038D000050060690E02C0B230436061802690200E +:1038E000F600C00549B28661002901DA0121816232 +:1038F000FF2661693602314011436161C0460020F4 +:103900000C4FC04639690132090A29546169D2B2A3 +:10391000314001301143C0B261619842F1D9902326 +:103920008022DB05D2009A6201229A61F0BDC04676 +:103930000008004800040048F0B5174C05000E00D0 +:1039400060691F2925D8802131430902C0B2014393 +:10395000616190210420FF26C905886261693602F1 +:10396000314011436161C04600200C4FC0463969A7 +:103970000132090A29546169D2B231400130114340 +:10398000C0B261619842F1D990230422DB059A61AB +:10399000F0BDC0B20902DAE70008004800040048A0 +:1039A00070B506000D0005243000013CFEF73EF91D +:1039B000E4B229003000FEF703F96D08002CF3D1C2 +:1039C00070BD00008047C0460000000000000000FD +:1039D000F0B5474680B4061C081C000C102801D521 +:1039E000162700E004270007000F8046FF20014053 +:1039F0005468251C1D439C43F60313850AD5C04615 +:103A0000C046C046C046C046C046C04694801383E8 +:103A1000958002E0012000F081F801390AD4381CB9 +:103A200000F07CF8C046948013839580C046C04661 +:103A30007600E2E7381C013800F070F894801383B8 +:103A40009580042000F06AF8108A184001D0FF2009 +:103A500061E0C046C046C046C046C046C0469480ED +:103A60009580108A184055D001200226B04552D0CA +:103A70000921168A1E40FCD1012000F04FF89480E5 +:103A8000C0469580C04603E0C046C046C046C0461A +:103A9000948095807600108A1840EFF300804000F3 +:103AA000C00F0643381C023800F038F89480958027 +:103AB000022000F033F80139EAD513859480012003 +:103AC00000F02CF813839580301C8021022399404C +:103AD0000E401BD1002341085E4149085E41490860 +:103AE0005E4149085E4149085E4149085E41490816 +:103AF0005E4149085E4149085E41760808D34008A6 +:103B0000FF21084048400002013004E00E2002E09E +:103B1000092000E0002080BCB846F0BD0138FDD18E +:103B20007047C04603685A0003D45B005B08C018A6 +:103B30007047802212061343F9E7C046F0B5574696 +:103B40004E46DE464546E0B5814683B092460029A2 +:103B500025D04B1E9B46002701935B46FB18DC0FCC +:103B6000E4184B466410E5005E193000FFF7DAFFF9 +:103B7000019B8046A3420BD0280008304844FFF741 +:103B8000D1FFD04506D80138504509D2671CE4E77B +:103B9000504505D9A74202D0631E9B46DDE70026AB +:103BA000300003B03CBC90469946A246AB46F0BDFF +:103BB000012809D0022805D0002801D00020704734 +:103BC0000248FCE70248FAE70248F8E7D142000859 +:103BD000E9420008DD42000830B5234B83B0050000 +:103BE0008C1E002B2AD001A9200000E000BF002875 +:103BF00020D001992200FFF7A1FF041E1AD0FFF781 +:103C000091FF6368A864012B10D0201D002B1BDBE3 +:103C1000FFF788FF0023E8642B650368002B17DBA0 +:103C2000FFF780FF2861002003B030BD002305208E +:103C30002B61F9E7002309202B61F5E70B480C49BC +:103C4000091AC9100191D5E70123E8642B65E4E75F +:103C50001801000FFFF7ACFF2861002801D10930DF +:103C6000E2E70020E0E7C04600000000CC4C00087E +:103C70009C4D0008036810B50400DA0705D49B07C3 +:103C80000FD5483000F084FC23685A070FD51A0777 +:103C900014D5DB0604D42000D130FF3000F084FCC2 +:103CA00010BD483000F070FC23685A07EFD42000A4 +:103CB000D03000F071FC23681A07EAD4200051309C +:103CC000FF3000F06DFC2368E3E7C0460368002B7B +:103CD00000D01B1818007047092070477047C04675 +:103CE00070B504000D0008E02B6C2A006361210010 +:103CF000012023699847082807D1296C2000FFF785 +:103D00006BFF0028F0D000F09FFE0728FBD10020B9 +:103D1000296CFFF7E3FF281D00F020FCF0B5CE462C +:103D2000474680B5C368324C9846A544836906006F +:103D300014000431402205A8994600F08DFE0023AE +:103D400004AD296C30000493FFF746FF631E9C41CD +:103D500007000934002F15D0AB6B10216B644B4664 +:103D600021430193C9B20095330032000120C047BE +:103D7000002833D13800F5239B009D440CBC9046AD +:103D80009946F0BDF0222B6C5200736129007CA88B +:103D900000F062FE7CAA31003369200098478A9BBC +:103DA00007006B6403934B46009501933200330088 +:103DB00021000120C047002810D1F0227CA9520028 +:103DC000280000F049FE082F06D1296C3000FFF7CB +:103DD00003FF09240700BDE7072F01D00927C9E722 +:103DE0000020296CFFF77AFF05A800F0B7FBC0465A +:103DF0002CFCFFFF406C704770B5CB6BFAB00B64C6 +:103E000004000E004022043103A800F025FE012327 +:103E10005B42029306E002AA21002369984705004D +:103E200008280AD1129B200019000193FFF7D4FE45 +:103E30000028F0D009207AB070BD02A8FFF71AFF61 +:103E4000062DF7D131002000FFF74AFF10B582613F +:103E5000DA6BC1601A6419000022FFF75FFF10BD22 +:103E6000436970B50B64C36804000D00002B04D0D7 +:103E70000122FFF753FF00F0E7FD0A00236901006C +:103E800002209847072807D0082803D129002000DE +:103E9000FFF726FF00F0D8FD0020296CFFF71EFF7A +:103EA000281D00F05BFBC046C36810B5002B05D091 +:103EB000CB6B00220B64FFF731FF10BDFFF79CFFB7 +:103EC000FBE7C0467047C046836810B5002B02D0A0 +:103ED00001000120984710BD10B5012907D0002925 +:103EE00007D003390224012901D9200010BD012483 +:103EF000FBE70224002BF8D10F2AF6D89200821893 +:103F00005268029B00241A60EFE7C04600B585B0F6 +:103F100003AB0A00009300210023FFF7DDFF0398A5 +:103F200005B000BD10B5012907D0002907D003391D +:103F30000224012901D9200010BD0124FBE702243D +:103F4000002BF8D10F2AF6D8029B92001B6882182A +:103F500053600024EFE7C04600B585B003AB039281 +:103F600000930A0000230021FFF7DCFF05B000BD2D +:103F700070B51A4CD36BA544136406000D0019A844 +:103F8000111D402200F068FD01235B42189314E0EC +:103F90000C2118A802AAFFF7DFFF290018A8B047D4 +:103FA000002812D1069B18AA02A90830019398474D +:103FB000040005280AD0092807D0289B02A8190068 +:103FC0000193FFF709FE0028E2D0092418A8FFF7A3 +:103FD00051FE200090239B009D4470BDC0FDFFFF5B +:103FE000F0B5DE464E464546574693460322E0B5B9 +:103FF0001E0013008BB003400193CB6C0D001C1D01 +:104000001B6808940793002E66D11B02079306AB2A +:104010005E731A73019B022B00D16EE02B6DDB07E0 +:1040200047D40023A846B2460293083303400393C3 +:104030002568002D00D137E15346022B49D0258851 +:10404000668804340123370099469F4343469B6C9E +:104050000F219C4658466744FFF758FF00228742CD +:1040600006D82A004B469A43D719B84280414242AB +:1040700002230121760033400D402B43012B3ED01B +:10408000002B5AD0022B1CD1236801995F007F08B6 +:10409000002965D1002A06D0039A002A00D188E0C1 +:1040A000002F00D1AAE0002B65DB0137BF00E41927 +:1040B000BEE700230293022E47DDFFF70DFE002826 +:1040C00049D009200BB03CBC90469946A246AB466D +:1040D000F0BD66680834B5E7022E9BDC1A0C1B04A1 +:1040E0000793022306A90B73FD3313409B00E418CA +:1040F000019B4A73022B00D090E7AC6B8EE7019BCB +:10410000002B3AD1002A16D02368DD0F63689A1C71 +:10411000D7D0424658320692013300D1C6E0201D66 +:10412000FFF7D4FD06AB01002A00404600E000BFC7 +:10413000002800D0A7E008347AE7019B002B02D0CA +:10414000002A00D08BE0043472E707A9584600F03B +:10415000D1FA0028B5D1029B002B5DD10820B1E730 +:1041600043460D2158461D6AFFF7D0FE854263D0B5 +:104170002368002B99DA043497E743460D2158460B +:104180001D6AFFF7C3FE8542D5D143469B6A9C4218 +:10419000D1D145462000FFF7C5FC0F21020058464B +:1041A000FFF7DAFE58462A000021FFF7D5FE072068 +:1041B00088E7002F22D058235146434406AABA4626 +:1041C000251D0026049405911F00914603E0043547 +:1041D0002600A24514D028000697FFF777FD4B462E +:1041E000010000224046741C00E000BF0028EED011 +:1041F0005746059B049C9A46B742B9D1454601E013 +:104200004546049C0D215846FFF780FE069B286218 +:104210006B62AC62062055E70F215846FFF776FE29 +:104220000E2102005846FFF797FE5846274A0F21F5 +:10423000FFF792FE072045E743469B6A9C4297D1D1 +:10424000434642469F620023D36204331363231D17 +:1042500053632368002B32DB0123029325E7200000 +:10426000FFF760FC454604340600AC63404600E0BE +:1042700000BF002800D124E7584632000F21FFF785 +:104280006BFE07201EE707000D2158464546FFF745 +:104290003DFE2862022F0FD1069BEB6243462C3372 +:1042A0006B62AC6206200DE7564604E70D215846C6 +:1042B0004546FFF72BFE2862069B6B62F1E738004C +:1042C000013080004546201865E7C0460000000028 +:1042D00010B50023FFF784FE10BDC04610B50123C2 +:1042E000FFF77EFE10BDC04610B50223FFF778FE33 +:1042F00010BDC046F0B5CE46474680B50600C3B0F7 +:1043000014001D0001294ED0002933D003290AD002 +:10431000042902D1002B00D189E0022043B00CBC5B +:1043200090469946F0BD032BF7D11404150C240CCC +:104330002B19102BF1D8082203681A4200D0E7E0AD +:1043400020AB1800984600F02DF9B36BED001A0071 +:10435000002C09D0E400EA1A1C1942441968D15013 +:1043600004339C42FAD12200B263404600F018F9AF +:104370000020D3E70220002BD0D100230127100416 +:10438000B56B000C321D39009940084202D02968F3 +:104390000435116001330432102BF4D10020A30442 +:1043A000BCD4B563BAE71404170C240C012B5FD0FE +:1043B000052BB2D13B19202BAFD80F2F7DD9A146A9 +:1043C000002C65D1002223009146B16B002B00DC4C +:1043D00088E020A88046FA00DB00521ACB1842443D +:1043E0000868505004318B42FAD119004B46002B1B +:1043F00010D04B4658003A00102F00D21022002354 +:10440000103AD2006A448000CC58D450043383421E +:10441000FAD1C918012D5ED0B1630F2F74D94B4664 +:10442000002BA5D0684600F0B7F8002076E7102AE8 +:1044300000D972E7102203681A4245D120AB180058 +:10444000984600F0B3F800230120B16B02009A40B7 +:10445000144204D045460F689A00AF50043101332E +:10446000042BF3D14046B16300F09EF8002055E7DD +:104470003B19102B00D950E70F2F00D94DE700232F +:104480009946012233681A4230D14B46002B5AD04C +:10449000042233681A4242D1012D47D00F2F06D88B +:1044A00020AB180000F076F84B46002B8AD0684607 +:1044B00000F074F81023DB1B87E7102BDFD91022E4 +:1044C000524291469944DCE793430360D130FF3078 +:1044D00000F06CF8B2E7043120A8B16300F054F8A2 +:1044E00000201BE74B46002B84D193E71900914332 +:1044F0000A003160052D1ED0032230009343336043 +:10450000483000F043F8C0E720A800F041F886E703 +:10451000934303605130FF3000F044F810E730005F +:1045200093433360D03000F039F8B5E720AB180082 +:1045300000F02CF8BEE7022330001A433260483006 +:1045400000F028F8A1E7012D03D00F2F00D939E79B +:10455000A6E720AB180000F019F833E7011C34314E +:1045600038C9043B9C461D60A646011C20313CC94D +:1045700090469946A246AB46011C0831FCC94168E9 +:104580000068E54600BDC0467047C0467047C0465B +:104590007047C0467047C0467047C0467047C04627 +:1045A0007047C0467047C0467047C0467047C04617 +:1045B00001B401A801B585B0FFB408A841464A4638 +:1045C00053465C4665463EC001A83EC80F98009021 +:1045D00000230CB401A9FFF70FFC109B12B0184781 +:1045E00001B401A801B585B0FFB408A841464A4608 +:1045F00053465C4665463EC001A83EC80F980090F1 +:1046000000230CB401A9FFF72BFC109B12B0184734 +:1046100001B401A801B585B0FFB408A841464A46D7 +:1046200053465C4665463EC001A83EC80F980090C0 +:1046300000230CB401A9FFF737FC109B12B01847F8 +:1046400001B401A801B585B0FFB408A841464A46A7 +:1046500053465C4665463EC001A83EC80F98009090 +:1046600000230CB401ABFFF7F1FB109B12B018470D +:1046700001B401A801B585B0FFB408A841464A4677 +:1046800053465C4665463EC001A83EC80F98009060 +:1046900000230CB401AAFFF76BFC109B12B0184763 +:1046A000027A0300002A04D1427AB020002A07D1FE +:1046B0007047013A02720268100E12021A60F7E7A0 +:1046C000013A5A725A68111D596003211268197211 +:1046D000F2E7C04600B585B003AB00930C2200237F +:1046E0000021FFF7F9FB039805B000BD10B5FFF7F7 +:1046F000F1FF10BDF0B557464E464546DE46002355 +:10470000E0B587B003930F339846083B9946802362 +:104710001B0306000F009A463800FFF7C1FF040094 +:10472000B02821D0030632D4FF2583001D4005ABFD +:104730009B4600930D220023002130000435FFF733 +:10474000CBFB63064CD5059B5D1B05955B46009333 +:1047500000230D2200213000FFF7E4FB3800FFF7B3 +:104760009FFF0400B028DDD1039B0024002B2FD134 +:1047700005AD00950E2200213000FFF7ADFB00953E +:1047800000230F2200213000FFF7CCFB20E00300C4 +:1047900042469343DBB2802B63D0902B25D0A02BD5 +:1047A00032D0B02B45D0C02B00D173E003004A4675 +:1047B0009343DBB2D02B0AD15346024001321A4355 +:1047C000052301213000FFF795FD0028A4D009241E +:1047D000200007B03CBC90469946A246AB46F0BDCF +:1047E000059B9C4665440595B0E7833B03400D2B34 +:1047F000EDD0424605AD0240009500230021300077 +:10480000FFF76AFB0095A3E7FF234A461B01190047 +:10481000824311410A001A40030702D58023DB01BD +:104820001A43002300213000FFF764FD0028CED199 +:1048300072E7B1284AD0B2285ED0B32800D18BE00D +:10484000FC230340B42BC2D04A46534602400132F7 +:104850001A43012101233000FFF74CFD0028B6D197 +:104860005AE704023800FFF71BFF802520432D0282 +:10487000A842ACD004010005020C00230021300046 +:10488000FFF738FD0028A2D12C4200D144E70123D4 +:10489000039341E7C6286AD0C7287CD003004A4664 +:1048A0009343DBB2C02B00D18BE0C82800D18FE04E +:1048B000C92800D08BE73800FFF7F2FEF02302038F +:1048C0001B03134042460240013278E73800FFF7ED +:1048D000E7FE002800D17AE7030042469343DBB2AB +:1048E000002B00D073E7020000213000FFF702FD2B +:1048F000002800D06BE70FE705AB00939B460D2225 +:10490000002300213000FFF7E7FA3800FFF7C8FE68 +:1049100003066AD57F25B03C059B2840A0409C46F5 +:104920006044059038000734FFF7BAFE0306F3D45D +:10493000812292009446863AFF3A1040A040059B9F +:10494000723A634418185B460590009300210023D7 +:104950003000FFF7E7FADFE63800FFF7A1FEF023AB +:1049600002031B03134042460240013270E7380045 +:10497000FFF796FEF02302031B031340424602405A +:1049800001321A43032303213000FFF7B3FC002850 +:1049900000D01CE7C0E63800FFF782FE002800D1F7 +:1049A00015E7030042469343DBB2002B00D00EE72D +:1049B000020004213000FFF79DFC002800D006E72C +:1049C000AAE64346A0221C40013412032243D9E741 +:1049D0003800FFF765FE434602009A43D2B2103218 +:1049E0001840120301300243EAE60224A0E7C04661 +:1049F000030000B5DB6C85B05A6808001202019212 +:104A00001A0001A908324A6003220A72DB794B724C +:104A1000FFF770FE05B000BD10B5FFF767FE806CB4 +:104A200010BDC04610B5FFF761FEC26CD3799B0084 +:104A30000833D01810BDC04610B500F005F8C046C8 +:104A400010B5FFF7F9FFC04610B5062000F074F866 +:104A5000012000F0A3F8C046F0B505000F2A2FD9B9 +:104A60000B0003439B0734D116000C000300103EDB +:104A7000350901352D01451927681F6067685F609A +:104A8000A7689F60E7681034DF6010339D42F3D160 +:104A90000F239E431036851989191340032B1AD909 +:104AA0001E1F0023B4080134A400CF58EF50043374 +:104AB000A342FAD10324A643331D2240C918ED189E +:104AC000002A05D00023CC5CEC5401339342FAD188 +:104AD000F0BD0500F6E71A00F2E7C04670B5050024 +:104AE0000C001F2922D8B7239B00C358002B14D0D9 +:104AF0008A009B181A68002A0FD0012A0BD0511C7B +:104B000005D00021200019609047002070BD1623B9 +:104B100003600120FAE70020F8E7280000F02AF8F7 +:104B200022000100280000F011F8EFE716230360CF +:104B300001204042EAE7C04610B5034B0100186867 +:104B4000FFF7CCFF10BDC04600000020002370B569 +:104B5000074C050008001100236000F017F8431C03 +:104B600000D070BD2368002BFBD02B60F9E7C04656 +:104B70001C07002010B500F001F810BD58220120DC +:104B8000014B40421A6070471C0700205822012048 +:104B9000014B40421A6070471C070020FEE7C046E8 +:104BA00002B4714649084900095C49008E4402BCC0 +:104BB0007047C04603B47146490840004900095E89 +:104BC00049008E4403BC704703B471464908400055 +:104BD0004900095A49008E4403BC7047F8B5C046E5 +:104BE000F8B5C04609021200010100803209040034 +:104BF00000000000000012010002FF000008C016C3 +:104C0000DC05020201020001040309042A03490031 +:104C10006E00660069006E006900740065004E0059 +:104C2000650073004C0069007600650073002E007B +:104C300063006F006D000000000000000000000035 +:104C40000000000000000000000000000000000064 +:104C50000000000000000000000000000000000054 +:104C60001E0349004E004C002000520065007400F5 +:104C700072006F002D00500072006F00670000008E +:104C80000000000000000000000000000000000024 +:0C4C900000000000000000000000000018 +:104C9C0074B20181B0AB308000000000800A018149 +:104CAC00B0B0ABF0000000003F020181B0AB30802F +:104CBC000000000080060181B0B0ABF000000000E5 +:104CCC00F8ECFF7FB0B0B08050EEFF7F0100000029 +:104CDC00FCEEFF7FB0A9028090EFFF7FB0B0A88000 +:104CEC00E0EFFF7F01000000ECEFFF7FB0B0AA8087 +:104CFC0020F0FF7F9CFFFF7FF0F0FF7F01000000A2 +:104D0C00ECF0FF7FAA3F398038F1FF7FB0B0A8806C +:104D1C0044F1FF7FB0B0AA8084F1FF7FB0B0A880CF +:104D2C0098F1FF7F0100000094F1FF7FB0B0A880E4 +:104D3C009CF1FF7F010000002CF2FF7FAA0FB280D4 +:104D4C0094F2FF7F58FFFF7F7CF5FF7FB0B0A88007 +:104D5C0098F5FF7F54FFFF7FF8F7FF7F01000000FD +:104D6C0068F9FF7F0084048078F9FF7FB0B0A880D9 +:104D7C0078F9FF7F40FFFF7F6CFCFF7F008404808D +:104D8C008CFCFF7FB0B0A880A4FCFF7F010000006A +:104D9C00080000200000000000000000F4020020C9 +:104DAC005C030020C4030020000000000000000091 :104DBC0000000000000000000000000000000000E7 :104DCC0000000000000000000000000000000000D7 :104DDC0000000000000000000000000000000000C7 @@ -1252,8 +1252,8 @@ :104E1C000000000000000000000000000000000086 :104E2C000000000000000000000000000000000076 :104E3C000000000000000000000000000000000066 -:104E4C000000000000000000000000000000000056 -:104E5C000000000000000000000000000000000046 +:104E4C0001000000000000000E33CDAB34126DE603 +:104E5C00ECDE05000B00000000000000000000006C :104E6C000000000000000000000000000000000036 :104E7C000000000000000000000000000000000026 :104E8C000000000000000000000000000000000016 @@ -1277,5 +1277,36 @@ :104FAC0000000000000000000000000000000000F5 :104FBC0000000000000000000000000000000000E5 :104FCC0000000000000000000000000000000000D5 +:104FDC0000000000000000000000000000000000C5 +:104FEC0000000000000000000000000000000000B5 +:104FFC0000000000000000000000000000000000A5 +:10500C000000000000000000000000000000000094 +:10501C000000000000000000000000000000000084 +:10502C000000000000000000000000000000000074 +:10503C000000000000000000000000000000000064 +:10504C000000000000000000000000000000000054 +:10505C000000000000000000000000000000000044 +:10506C000000000000000000000000000000000034 +:10507C000000000000000000000000000000000024 +:10508C000000000000000000000000000000000014 +:10509C000000000000000000000000000000000004 +:1050AC0000000000000000000000000000000000F4 +:1050BC0000000000000000000000000000000000E4 +:1050CC0000000000000000000000000000000000D4 +:1050DC0000000000000000000000000000000000C4 +:1050EC0000000000000000000000000000000000B4 +:1050FC0000000000000000000000000000000000A4 +:10510C000000000000000000000000000000000093 +:10511C000000000000000000000000000000000083 +:10512C000000000000000000000000000000000073 +:10513C000000000000000000000000000000000063 +:10514C000000000000000000000000000000000053 +:10515C000000000000000000000000000000000043 +:10516C000000000000000000000000000000000033 +:10517C000000000000000000000000000000000023 +:10518C000000000000000000000000000000000013 +:10519C000000000000000000000000000000000003 +:1051AC0000000000000000000000000000000000F3 +:1051BC0000000000000000000000000000000000E3 :04000005080000C12E :00000001FF diff --git a/firmware/build_stm/inlretro_stm.map b/firmware/build_stm/inlretro_stm.map index 0f0feb5..83690ac 100644 --- a/firmware/build_stm/inlretro_stm.map +++ b/firmware/build_stm/inlretro_stm.map @@ -1,7 +1,7 @@ Archive member included to satisfy reference by file (symbol) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) - C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o (__aeabi_unwind_cpp_pr0) + C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o (__aeabi_unwind_cpp_pr0) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(libunwind.o) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) (restore_core_regs) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(pr-support.o) @@ -49,11 +49,11 @@ c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/ c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) (_exit) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o (__gnu_thumb1_case_uqi) + C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o (__gnu_thumb1_case_uqi) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_shi.o) - C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o (__gnu_thumb1_case_shi) + C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o (__gnu_thumb1_case_shi) c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o (__gnu_thumb1_case_uhi) + C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o (__gnu_thumb1_case_uhi) Allocating common symbols Common symbol size file @@ -89,23 +89,23 @@ Discarded input sections .ARM.exidx 0x00000000 0x8 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o .ARM.attributes 0x00000000 0x1b c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o .text 0x00000000 0x0 source/bootload.o (symbol from plugin) - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .rodata.oper_info - 0x00000000 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o + 0x00000000 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o .text 0x00000000 0x0 source/buffer.o (symbol from plugin) .text 0x00000000 0x0 source/ciccom.o (symbol from plugin) .text 0x00000000 0x0 source/dump.o (symbol from plugin) @@ -125,12 +125,12 @@ Discarded input sections .text 0x00000000 0x0 source/usb.o (symbol from plugin) .text 0x00000000 0x0 source_stm_only/stm_init.o (symbol from plugin) .text 0x00000000 0x0 source_stm_only/usbstm.o (symbol from plugin) - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc2herkl.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc2herkl.o + .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc2herkl.o .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) .debug_frame 0x00000000 0x2c4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) @@ -367,12 +367,12 @@ Linker script and memory map LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crti.o LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtbegin.o LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o -LOAD C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o +LOAD C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o LOAD source/bootload.o -LOAD C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o -LOAD C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o -LOAD C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o -LOAD C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o +LOAD C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o +LOAD C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o +LOAD C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o +LOAD C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o LOAD source/buffer.o LOAD source/ciccom.o LOAD source/dump.o @@ -392,8 +392,8 @@ LOAD source/swim.o LOAD source/usb.o LOAD source_stm_only/stm_init.o LOAD source_stm_only/usbstm.o -LOAD C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o -LOAD C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o +LOAD C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o +LOAD C:\Users\paul\AppData\Local\Temp\cc2herkl.o START GROUP LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a @@ -407,12 +407,12 @@ END GROUP LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtend.o LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtn.o -.text 0x08000000 0x4aac +.text 0x08000000 0x4c9c *(.isr_vector) - .isr_vector 0x08000000 0xc0 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o + .isr_vector 0x08000000 0xc0 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o 0x08000000 __isr_vector *(.text*) - .text 0x080000c0 0x40 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o + .text 0x080000c0 0x40 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o 0x080000c0 Reset_Handler 0x080000fc TSC_IRQHandler 0x080000fc ADC1_COMP_IRQHandler @@ -452,201 +452,213 @@ LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none- 0x080000fc USART1_IRQHandler 0x080000fc TIM1_BRK_UP_TRG_COM_IRQHandler .text.USB_IRQHandler - 0x08000100 0x1a48 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x08000100 0x1ac0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x08000100 USB_IRQHandler - .text.pbje_scan - 0x08001b48 0x12c C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .text.pbje_state_change - 0x08001c74 0x98 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .text.write_page - 0x08001d0c 0x34 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .text.get_next_buff - 0x08001d40 0x54 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .text.jtag_init_pbje - 0x08001d94 0xe0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - 0x08001d94 jtag_init_pbje - .text.jtag_run_pbje.part.0 - 0x08001e74 0xd8 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - 0x08001e74 jtag_run_pbje.part.0 - .text.io_reset - 0x08001f4c 0x154 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - 0x08001f4c io_reset - .text.startup.main - 0x080020a0 0xb8c C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - 0x080020a0 main - .text.append_pairity - 0x08002c2c 0x1e C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - *fill* 0x08002c4a 0x2 - .text.snes_rom_wr - 0x08002c4c 0x4c C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002c4c snes_rom_wr - .text.snes_rom_rd - 0x08002c98 0x40 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002c98 snes_rom_rd - .text.snes_3v_flash_wr - 0x08002cd8 0x44 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002cd8 snes_3v_flash_wr - .text.snes_5v_flash_wr - 0x08002d1c 0x44 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002d1c snes_5v_flash_wr .text.nes_cpu_wr - 0x08002d60 0x6c C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002d60 nes_cpu_wr + 0x08001bc0 0x6c C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08001bc0 nes_cpu_wr .text.nes_cpu_rd - 0x08002dcc 0x40 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002dcc nes_cpu_rd - .text.mmc3_prgrom_flash_wr - 0x08002e0c 0x50 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002e0c mmc3_prgrom_flash_wr + 0x08001c2c 0x40 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08001c2c nes_cpu_rd .text.disc_push_exp0_prgrom_wr - 0x08002e5c 0x48 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002e5c disc_push_exp0_prgrom_wr - .text.discrete_exp0_prgrom_wr - 0x08002ea4 0x58 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002ea4 discrete_exp0_prgrom_wr - .text.nrom_prgrom_flash_wr - 0x08002efc 0x44 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002efc nrom_prgrom_flash_wr - .text.control_xfr_in.lto_priv.37 - 0x08002f40 0xbc C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002f40 control_xfr_in.lto_priv.37 - .text.HardFault_Handler - 0x08002ffc 0x2 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08002ffc HardFault_Handler - *fill* 0x08002ffe 0x2 - .text.swim_wotf - 0x08003000 0xb4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08003000 swim_wotf - .text.swim_rotf - 0x080030b4 0xac C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x080030b4 swim_rotf - .text.delay_us - 0x08003160 0x16 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08003160 delay_us - .text.mmc1_wr 0x08003176 0x38 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08003176 mmc1_wr - *fill* 0x080031ae 0x2 - .text.nes_dualport_wr - 0x080031b0 0x50 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x080031b0 nes_dualport_wr - .text.nes_dualport_rd - 0x08003200 0x38 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08003200 nes_dualport_rd + 0x08001c6c 0x48 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08001c6c disc_push_exp0_prgrom_wr + .text.pbje_scan + 0x08001cb4 0x12c C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .text.pbje_state_change + 0x08001de0 0x98 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .text.write_page + 0x08001e78 0x34 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .text.get_next_buff + 0x08001eac 0x54 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o .text.nes_ppu_wr - 0x08003238 0x50 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08003238 nes_ppu_wr + 0x08001f00 0x50 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08001f00 nes_ppu_wr .text.nes_ppu_rd - 0x08003288 0x38 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08003288 nes_ppu_rd - .text.cdream_chrrom_flash_wr - 0x080032c0 0x88 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x080032c0 cdream_chrrom_flash_wr + 0x08001f50 0x38 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08001f50 nes_ppu_rd + .text.discrete_exp0_prgrom_wr + 0x08001f88 0x58 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08001f88 discrete_exp0_prgrom_wr + .text.jtag_init_pbje + 0x08001fe0 0xe0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08001fe0 jtag_init_pbje + .text.jtag_run_pbje.part.0 + 0x080020c0 0xd8 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x080020c0 jtag_run_pbje.part.0 + .text.io_reset + 0x08002198 0x154 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x08002198 io_reset + .text.startup.main + 0x080022ec 0xb8c C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x080022ec main + .text.append_pairity + 0x08002e78 0x1e C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + *fill* 0x08002e96 0x2 + .text.snes_wr 0x08002e98 0x60 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08002e98 snes_wr + .text.snes_rd 0x08002ef8 0x48 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08002ef8 snes_rd + .text.snes_3v_flash_wr + 0x08002f40 0x50 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08002f40 snes_3v_flash_wr + .text.snes_5v_flash_wr + 0x08002f90 0x50 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08002f90 snes_5v_flash_wr .text.mmc3_chrrom_flash_wr - 0x08003348 0x44 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x08003348 mmc3_chrrom_flash_wr - .text.cnrom_chrrom_flash_wr - 0x0800338c 0x80 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x0800338c cnrom_chrrom_flash_wr + 0x08002fe0 0x44 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08002fe0 mmc3_chrrom_flash_wr .text.nrom_chrrom_flash_wr - 0x0800340c 0x44 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x0800340c nrom_chrrom_flash_wr - .text.write_page_snes.constprop.32 - 0x08003450 0x180 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - 0x08003450 write_page_snes.constprop.32 - .text.write_page_bank.constprop.26 - 0x080035d0 0xbc C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - 0x080035d0 write_page_bank.constprop.26 - .text.snes_rom_page_rd_poll.constprop.23 - 0x0800368c 0x74 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - 0x0800368c snes_rom_page_rd_poll.constprop.23 - .text.nes_cpu_page_rd_poll.constprop.22 - 0x08003700 0x6c C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - 0x08003700 nes_cpu_page_rd_poll.constprop.22 + 0x08003024 0x44 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003024 nrom_chrrom_flash_wr + .text.cdream_chrrom_flash_wr + 0x08003068 0x88 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003068 cdream_chrrom_flash_wr + .text.mmc4_chrrom_flash_wr + 0x080030f0 0x74 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x080030f0 mmc4_chrrom_flash_wr + .text.cnrom_chrrom_flash_wr + 0x08003164 0x80 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003164 cnrom_chrrom_flash_wr + .text.mmc4_prgrom_sop_flash_wr + 0x080031e4 0x54 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x080031e4 mmc4_prgrom_sop_flash_wr + .text.mmc3_prgrom_flash_wr + 0x08003238 0x50 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003238 mmc3_prgrom_flash_wr + .text.unrom_prgrom_flash_wr + 0x08003288 0x64 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003288 unrom_prgrom_flash_wr + .text.mmc1_chrrom_flash_wr + 0x080032ec 0x60 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x080032ec mmc1_chrrom_flash_wr + .text.mmc1_prgrom_flash_wr + 0x0800334c 0x50 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x0800334c mmc1_prgrom_flash_wr + .text.control_xfr_in.lto_priv.38 + 0x0800339c 0xd8 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x0800339c control_xfr_in.lto_priv.38 + .text.HardFault_Handler + 0x08003474 0x2 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003474 HardFault_Handler + *fill* 0x08003476 0x2 + .text.swim_wotf + 0x08003478 0xb4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003478 swim_wotf + .text.swim_rotf + 0x0800352c 0xac C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x0800352c swim_rotf + .text.delay_us + 0x080035d8 0x16 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x080035d8 delay_us + *fill* 0x080035ee 0x2 + .text.nrom_prgrom_flash_wr + 0x080035f0 0x44 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x080035f0 nrom_prgrom_flash_wr + .text.nes_dualport_wr + 0x08003634 0x50 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003634 nes_dualport_wr + .text.nes_dualport_rd + 0x08003684 0x38 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x08003684 nes_dualport_rd + .text.write_page_snes.constprop.33 + 0x080036bc 0x194 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + 0x080036bc write_page_snes.constprop.33 + .text.snes_page_rd_poll.constprop.24 + 0x08003850 0x7c C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + 0x08003850 snes_page_rd_poll.constprop.24 + .text.nes_cpu_page_rd_poll.constprop.23 + 0x080038cc 0x6c C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + 0x080038cc nes_cpu_page_rd_poll.constprop.23 .text.nes_ppu_page_rd_poll.constprop.21 - 0x0800376c 0x68 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - 0x0800376c nes_ppu_page_rd_poll.constprop.21 - .text 0x080037d4 0x4 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - 0x080037d4 jump2addr - *fill* 0x080037d8 0x8 - .text 0x080037e0 0x154 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o - 0x080037e0 swim_xfr - .text 0x08003934 0xa38 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) - 0x08003c04 _Unwind_GetCFA - 0x08003c08 __gnu_Unwind_RaiseException - 0x08003c5c __gnu_Unwind_ForcedUnwind - 0x08003c70 __gnu_Unwind_Resume - 0x08003cb8 __gnu_Unwind_Resume_or_Rethrow - 0x08003cd4 _Unwind_Complete - 0x08003cd8 _Unwind_DeleteException - 0x08003ce8 _Unwind_VRS_Get - 0x08003d34 _Unwind_VRS_Set - 0x08003d80 __gnu_Unwind_Backtrace - 0x080040e0 __aeabi_unwind_cpp_pr0 - 0x080040ec __aeabi_unwind_cpp_pr1 - 0x080040f8 __aeabi_unwind_cpp_pr2 - 0x08004104 _Unwind_VRS_Pop - .text 0x0800436c 0x144 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(libunwind.o) - 0x0800436c __restore_core_regs - 0x0800436c restore_core_regs - 0x08004398 __gnu_Unwind_Restore_VFP - 0x0800439c __gnu_Unwind_Save_VFP - 0x080043a0 __gnu_Unwind_Restore_VFP_D - 0x080043a4 __gnu_Unwind_Save_VFP_D - 0x080043a8 __gnu_Unwind_Restore_VFP_D_16_to_31 - 0x080043ac __gnu_Unwind_Save_VFP_D_16_to_31 - 0x080043b0 __gnu_Unwind_Restore_WMMXD - 0x080043b4 __gnu_Unwind_Save_WMMXD - 0x080043b8 __gnu_Unwind_Restore_WMMXC - 0x080043bc __gnu_Unwind_Save_WMMXC - 0x080043c0 ___Unwind_RaiseException - 0x080043c0 _Unwind_RaiseException - 0x080043f0 _Unwind_Resume - 0x080043f0 ___Unwind_Resume - 0x08004420 _Unwind_Resume_or_Rethrow - 0x08004420 ___Unwind_Resume_or_Rethrow - 0x08004450 _Unwind_ForcedUnwind - 0x08004450 ___Unwind_ForcedUnwind - 0x08004480 ___Unwind_Backtrace - 0x08004480 _Unwind_Backtrace - .text 0x080044b0 0x3a8 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x08004504 __gnu_unwind_execute - 0x08004800 __gnu_unwind_frame - 0x08004828 _Unwind_GetRegionStart - 0x08004834 _Unwind_GetLanguageSpecificData - 0x08004848 _Unwind_GetTextRelBase - 0x08004850 _Unwind_GetDataRelBase - .text.abort 0x08004858 0x10 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - 0x08004858 abort - .text.memcpy 0x08004868 0x84 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - 0x08004868 memcpy + 0x08003938 0x68 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + 0x08003938 nes_ppu_page_rd_poll.constprop.21 + .text.mmc1_wr.constprop.12 + 0x080039a0 0x22 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + 0x080039a0 mmc1_wr.constprop.12 + *fill* 0x080039c2 0x2 + .text 0x080039c4 0x4 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + 0x080039c4 jump2addr + *fill* 0x080039c8 0x8 + .text 0x080039d0 0x154 C:\Users\paul\AppData\Local\Temp\cc2herkl.o + 0x080039d0 swim_xfr + .text 0x08003b24 0xa38 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) + 0x08003df4 _Unwind_GetCFA + 0x08003df8 __gnu_Unwind_RaiseException + 0x08003e4c __gnu_Unwind_ForcedUnwind + 0x08003e60 __gnu_Unwind_Resume + 0x08003ea8 __gnu_Unwind_Resume_or_Rethrow + 0x08003ec4 _Unwind_Complete + 0x08003ec8 _Unwind_DeleteException + 0x08003ed8 _Unwind_VRS_Get + 0x08003f24 _Unwind_VRS_Set + 0x08003f70 __gnu_Unwind_Backtrace + 0x080042d0 __aeabi_unwind_cpp_pr0 + 0x080042dc __aeabi_unwind_cpp_pr1 + 0x080042e8 __aeabi_unwind_cpp_pr2 + 0x080042f4 _Unwind_VRS_Pop + .text 0x0800455c 0x144 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(libunwind.o) + 0x0800455c __restore_core_regs + 0x0800455c restore_core_regs + 0x08004588 __gnu_Unwind_Restore_VFP + 0x0800458c __gnu_Unwind_Save_VFP + 0x08004590 __gnu_Unwind_Restore_VFP_D + 0x08004594 __gnu_Unwind_Save_VFP_D + 0x08004598 __gnu_Unwind_Restore_VFP_D_16_to_31 + 0x0800459c __gnu_Unwind_Save_VFP_D_16_to_31 + 0x080045a0 __gnu_Unwind_Restore_WMMXD + 0x080045a4 __gnu_Unwind_Save_WMMXD + 0x080045a8 __gnu_Unwind_Restore_WMMXC + 0x080045ac __gnu_Unwind_Save_WMMXC + 0x080045b0 ___Unwind_RaiseException + 0x080045b0 _Unwind_RaiseException + 0x080045e0 _Unwind_Resume + 0x080045e0 ___Unwind_Resume + 0x08004610 _Unwind_Resume_or_Rethrow + 0x08004610 ___Unwind_Resume_or_Rethrow + 0x08004640 _Unwind_ForcedUnwind + 0x08004640 ___Unwind_ForcedUnwind + 0x08004670 ___Unwind_Backtrace + 0x08004670 _Unwind_Backtrace + .text 0x080046a0 0x3a8 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(pr-support.o) + 0x080046f4 __gnu_unwind_execute + 0x080049f0 __gnu_unwind_frame + 0x08004a18 _Unwind_GetRegionStart + 0x08004a24 _Unwind_GetLanguageSpecificData + 0x08004a38 _Unwind_GetTextRelBase + 0x08004a40 _Unwind_GetDataRelBase + .text.abort 0x08004a48 0x10 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) + 0x08004a48 abort + .text.memcpy 0x08004a58 0x84 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) + 0x08004a58 memcpy .text._raise_r - 0x080048ec 0x5c c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x080048ec _raise_r - .text.raise 0x08004948 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x08004948 raise - .text._kill_r 0x0800495c 0x28 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x0800495c _kill_r + 0x08004adc 0x5c c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) + 0x08004adc _raise_r + .text.raise 0x08004b38 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) + 0x08004b38 raise + .text._kill_r 0x08004b4c 0x28 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) + 0x08004b4c _kill_r .text._getpid_r - 0x08004984 0x8 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x08004984 _getpid_r - .text._getpid 0x0800498c 0x10 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - 0x0800498c _getpid - .text._kill 0x0800499c 0x10 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - 0x0800499c _kill - .text._exit 0x080049ac 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - 0x080049ac _exit - .text 0x080049b0 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - 0x080049b0 __gnu_thumb1_case_uqi - .text 0x080049c4 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_shi.o) - 0x080049c4 __gnu_thumb1_case_shi - .text 0x080049d8 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - 0x080049d8 __gnu_thumb1_case_uhi + 0x08004b74 0x8 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) + 0x08004b74 _getpid_r + .text._getpid 0x08004b7c 0x10 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) + 0x08004b7c _getpid + .text._kill 0x08004b8c 0x10 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) + 0x08004b8c _kill + .text._exit 0x08004b9c 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) + 0x08004b9c _exit + .text 0x08004ba0 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) + 0x08004ba0 __gnu_thumb1_case_uqi + .text 0x08004bb4 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_shi.o) + 0x08004bb4 __gnu_thumb1_case_shi + .text 0x08004bc8 0x14 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) + 0x08004bc8 __gnu_thumb1_case_uhi *(.init) - .init 0x080049ec 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crti.o - 0x080049ec _init + .init 0x08004bdc 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crti.o + 0x08004bdc _init *(.fini) - .fini 0x080049f0 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crti.o - 0x080049f0 _fini + .fini 0x08004be0 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crti.o + 0x08004be0 _fini *crtbegin.o(.ctors) *crtbegin?.o(.ctors) *(EXCLUDE_FILE(*crtend.o *crtend?.o) .ctors) @@ -659,54 +671,54 @@ LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none- *(.dtors) *(.rodata*) .rodata.config_desc - 0x080049f4 0x12 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x08004be4 0x12 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .rodata.device_desc - 0x08004a06 0x12 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x08004bf6 0x12 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .rodata.string0_desc - 0x08004a18 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x08004c08 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .rodata.string1_desc - 0x08004a1c 0x54 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x08004c0c 0x54 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .rodata.string2_desc - 0x08004a70 0x3c C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x08004c60 0x3c C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o *(.eh_frame*) -.glue_7 0x08004aac 0x0 - .glue_7 0x08004aac 0x0 linker stubs +.glue_7 0x08004c9c 0x0 + .glue_7 0x08004c9c 0x0 linker stubs -.glue_7t 0x08004aac 0x0 - .glue_7t 0x08004aac 0x0 linker stubs +.glue_7t 0x08004c9c 0x0 + .glue_7t 0x08004c9c 0x0 linker stubs -.vfp11_veneer 0x08004aac 0x0 - .vfp11_veneer 0x08004aac 0x0 linker stubs +.vfp11_veneer 0x08004c9c 0x0 + .vfp11_veneer 0x08004c9c 0x0 linker stubs -.v4_bx 0x08004aac 0x0 - .v4_bx 0x08004aac 0x0 linker stubs +.v4_bx 0x08004c9c 0x0 + .v4_bx 0x08004c9c 0x0 linker stubs -.iplt 0x08004aac 0x0 - .iplt 0x08004aac 0x0 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtbegin.o +.iplt 0x08004c9c 0x0 + .iplt 0x08004c9c 0x0 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtbegin.o -.ARM.extab 0x08004aac 0x30 +.ARM.extab 0x08004c9c 0x30 *(.ARM.extab* .gnu.linkonce.armextab.*) - .ARM.extab 0x08004aac 0x24 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .ARM.extab 0x08004ad0 0xc c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x08004adc __exidx_start = . + .ARM.extab 0x08004c9c 0x24 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) + .ARM.extab 0x08004cc0 0xc c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(pr-support.o) + 0x08004ccc __exidx_start = . -.ARM.exidx 0x08004adc 0xd0 +.ARM.exidx 0x08004ccc 0xd0 *(.ARM.exidx* .gnu.linkonce.armexidx.*) - .ARM.exidx 0x08004adc 0x8 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - .ARM.exidx 0x08004ae4 0x0 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o + .ARM.exidx 0x08004ccc 0x8 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + .ARM.exidx 0x08004cd4 0x0 C:\Users\paul\AppData\Local\Temp\cc2herkl.o 0x10 (size before relaxing) - .ARM.exidx 0x08004ae4 0x98 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) + .ARM.exidx 0x08004cd4 0x98 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(unwind-arm.o) 0xd8 (size before relaxing) - .ARM.exidx 0x08004b7c 0x30 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(pr-support.o) + .ARM.exidx 0x08004d6c 0x30 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(pr-support.o) 0x48 (size before relaxing) - 0x08004bac __exidx_end = . - 0x08004bac __etext = ALIGN (0x4) + 0x08004d9c __exidx_end = . + 0x08004d9c __etext = ALIGN (0x4) -.rel.dyn 0x08004bac 0x0 - .rel.iplt 0x08004bac 0x0 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtbegin.o +.rel.dyn 0x08004d9c 0x0 + .rel.iplt 0x08004d9c 0x0 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtbegin.o -.data 0x20000000 0x430 load address 0x08004bac +.data 0x20000000 0x430 load address 0x08004d9c 0x20000000 __data_start__ = . *(vtable) *(.data*) @@ -734,123 +746,102 @@ LOAD c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none- 0x20000430 . = ALIGN (0x4) 0x20000430 __data_end__ = . -.igot.plt 0x20000430 0x0 load address 0x08004fdc +.igot.plt 0x20000430 0x0 load address 0x080051cc .igot.plt 0x20000430 0x0 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crtbegin.o -.bss 0x20000430 0x308 load address 0x08004fdc +.bss 0x20000430 0x2f0 load address 0x080051cc 0x20000430 . = ALIGN (0x4) 0x20000430 __bss_start__ = . *(.bss*) - .bss.addrh 0x20000430 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .bss.addrh 0x20000430 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .bss.bank_table - 0x20000434 0x2 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x20000434 0x2 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x20000434 bank_table *fill* 0x20000436 0x2 - .bss.buff0 0x20000438 0x14 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .bss.buff0 0x20000438 0x14 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x20000438 buff0 - .bss.buff1 0x2000044c 0x14 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .bss.buff1 0x2000044c 0x14 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x2000044c buff1 - .bss.buff2 0x20000460 0x14 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .bss.buff2 0x20000460 0x14 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x20000460 buff2 - .bss.buff3 0x20000474 0x14 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .bss.buff3 0x20000474 0x14 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x20000474 buff3 - .bss.cur_bank 0x20000488 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .bss.cur_bank 0x20000488 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x20000488 cur_bank *fill* 0x20000489 0x3 - .bss.cur_buff 0x2000048c 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .bss.cur_buff 0x2000048c 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x2000048c cur_buff .bss.cur_usb_load_buff - 0x20000490 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x20000490 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .bss.incoming_bytes_remain - 0x20000494 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x20000494 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o *fill* 0x20000495 0x3 - .bss.log 0x20000498 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .bss.new_address - 0x2000049c 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - *fill* 0x2000049d 0x1 - .bss.num_bytes_req.lto_priv.40 - 0x2000049e 0x2 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x2000049e num_bytes_req.lto_priv.40 - .bss.num_bytes_sending.lto_priv.39 - 0x200004a0 0x2 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x200004a0 num_bytes_sending.lto_priv.39 - .bss.num_bytes_xfrd.lto_priv.38 - 0x200004a2 0x2 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x200004a2 num_bytes_xfrd.lto_priv.38 .bss.oper_info_struct - 0x200004a4 0x20 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x200004a4 oper_info_struct + 0x20000498 0x20 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x20000498 oper_info_struct .bss.pbje_command - 0x200004c4 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x200004c4 pbje_command + 0x200004b8 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x200004b8 pbje_command .bss.pbje_data - 0x200004c5 0x20 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x200004c5 pbje_data + 0x200004b9 0x20 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x200004b9 pbje_data .bss.pbje_numclk - 0x200004e5 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x200004e5 pbje_numclk + 0x200004d9 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x200004d9 pbje_numclk .bss.pbje_status - 0x200004e6 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x200004e6 pbje_status + 0x200004da 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x200004da pbje_status .bss.raw_bank_status - 0x200004e7 0x10 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - *fill* 0x200004f7 0x1 + 0x200004db 0x10 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + *fill* 0x200004eb 0x1 .bss.raw_buffer16 - 0x200004f8 0x200 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .bss.req_dir 0x200006f8 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .bss.reqdir 0x200006f9 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .bss.reqtype 0x200006fa 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - *fill* 0x200006fb 0x1 - .bss.rv16.4963 - 0x200006fc 0x8 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x200004ec 0x200 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .bss.rv16.4995 + 0x200006ec 0x8 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .bss.swim_base - 0x20000704 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000704 swim_base - .bss.swim_pin 0x20000708 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000708 swim_pin + 0x200006f4 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x200006f4 swim_base + .bss.swim_pin 0x200006f8 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x200006f8 swim_pin + *fill* 0x200006f9 0x3 + .bss.tck_base 0x200006fc 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x200006fc tck_base + .bss.tck_pin 0x20000700 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x20000700 tck_pin + *fill* 0x20000701 0x3 + .bss.tdi_base 0x20000704 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x20000704 tdi_base + .bss.tdi_pin 0x20000708 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x20000708 tdi_pin *fill* 0x20000709 0x3 - .bss.tck_base 0x2000070c 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x2000070c tck_base - .bss.tck_pin 0x20000710 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000710 tck_pin + .bss.tdo_base 0x2000070c 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x2000070c tdo_base + .bss.tdo_pin 0x20000710 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x20000710 tdo_pin *fill* 0x20000711 0x3 - .bss.tdi_base 0x20000714 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000714 tdi_base - .bss.tdi_pin 0x20000718 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000718 tdi_pin - *fill* 0x20000719 0x3 - .bss.tdo_base 0x2000071c 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x2000071c tdo_base - .bss.tdo_pin 0x20000720 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000720 tdo_pin - *fill* 0x20000721 0x3 - .bss.tms_base 0x20000724 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000724 tms_base - .bss.tms_pin 0x20000728 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x20000728 tms_pin - *fill* 0x20000729 0x3 - .bss.usbMsgPtr - 0x2000072c 0x4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x2000072c usbMsgPtr - .bss.num_buff.5043 - 0x20000730 0x1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o + .bss.tms_base 0x20000714 0x4 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x20000714 tms_base + .bss.tms_pin 0x20000718 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x20000718 tms_pin + .bss.num_buff.5075 + 0x20000719 0x1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o *(COMMON) - *fill* 0x20000731 0x3 - COMMON 0x20000734 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - 0x20000734 errno - 0x20000738 . = ALIGN (0x4) - 0x20000738 __bss_end__ = . + *fill* 0x2000071a 0x2 + COMMON 0x2000071c 0x4 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) + 0x2000071c errno + 0x20000720 . = ALIGN (0x4) + 0x20000720 __bss_end__ = . -.heap 0x20000738 0x0 - 0x20000738 __end__ = . - 0x20000738 PROVIDE (end, .) +.heap 0x20000720 0x0 + 0x20000720 __end__ = . + 0x20000720 PROVIDE (end, .) *(.heap*) - .heap 0x20000738 0x0 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o - 0x20000738 __HeapLimit = . + .heap 0x20000720 0x0 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o + 0x20000720 __HeapLimit = . -.stack_dummy 0x20000738 0xc00 +.stack_dummy 0x20000720 0xc00 *(.stack*) - .stack 0x20000738 0xc00 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o + .stack 0x20000720 0xc00 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o 0x20001800 __StackTop = (ORIGIN (RAM) + LENGTH (RAM)) 0x20000c00 __StackLimit = (__StackTop - SIZEOF (.stack_dummy)) 0x20001800 PROVIDE (__stack, __StackTop) @@ -862,19 +853,19 @@ OUTPUT(build_stm/inlretro_stm.elf elf32-littlearm) .ARM.attributes 0x00000000 0x1e c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m/crti.o .ARM.attributes - 0x0000001e 0x1b C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o + 0x0000001e 0x1b C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o .ARM.attributes - 0x00000039 0x2f C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x00000039 0x2f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .ARM.attributes - 0x00000068 0x2f C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o + 0x00000068 0x2f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o .ARM.attributes - 0x00000097 0x2f C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o + 0x00000097 0x2f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o .ARM.attributes - 0x000000c6 0x2f C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o + 0x000000c6 0x2f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o .ARM.attributes - 0x000000f5 0x21 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o + 0x000000f5 0x21 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o .ARM.attributes - 0x00000116 0x21 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o + 0x00000116 0x21 C:\Users\paul\AppData\Local\Temp\cc2herkl.o .ARM.attributes 0x00000137 0x1e c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) .ARM.attributes @@ -883,82 +874,82 @@ OUTPUT(build_stm/inlretro_stm.elf elf32-littlearm) 0x00000173 0x1e c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) .comment 0x00000000 0x6e - .comment 0x00000000 0x6e C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + .comment 0x00000000 0x6e C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o 0x6f (size before relaxing) - .comment 0x0000006e 0x6f C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .comment 0x0000006e 0x6f C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .comment 0x0000006e 0x6f C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o + .comment 0x0000006e 0x6f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .comment 0x0000006e 0x6f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .comment 0x0000006e 0x6f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o -.debug_line 0x00000000 0x1b32 - .debug_line 0x00000000 0x6f C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o - .debug_line 0x0000006f 0xae1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .debug_line 0x00000b50 0x720 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .debug_line 0x00001270 0x4c5 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .debug_line 0x00001735 0x2c1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - .debug_line 0x000019f6 0x49 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - .debug_line 0x00001a3f 0xf3 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o +.debug_line 0x00000000 0x1b68 + .debug_line 0x00000000 0x6f C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o + .debug_line 0x0000006f 0xaf7 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .debug_line 0x00000b66 0x816 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .debug_line 0x0000137c 0x44d C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .debug_line 0x000017c9 0x263 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + .debug_line 0x00001a2c 0x49 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + .debug_line 0x00001a75 0xf3 C:\Users\paul\AppData\Local\Temp\cc2herkl.o -.debug_info 0x00000000 0x4349 - .debug_info 0x00000000 0x8b C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o - .debug_info 0x0000008b 0x185d C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .debug_info 0x000018e8 0x14d6 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .debug_info 0x00002dbe 0xdd0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .debug_info 0x00003b8e 0x6af C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - .debug_info 0x0000423d 0x88 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - .debug_info 0x000042c5 0x84 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o +.debug_info 0x00000000 0x46d7 + .debug_info 0x00000000 0x9b C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o + .debug_info 0x0000009b 0x17a1 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .debug_info 0x0000183c 0x175a C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .debug_info 0x00002f96 0xffb C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .debug_info 0x00003f91 0x61a C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + .debug_info 0x000045ab 0x98 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + .debug_info 0x00004643 0x94 C:\Users\paul\AppData\Local\Temp\cc2herkl.o -.debug_abbrev 0x00000000 0xb23 - .debug_abbrev 0x00000000 0x14 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o - .debug_abbrev 0x00000014 0x3b5 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .debug_abbrev 0x000003c9 0x3bf C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .debug_abbrev 0x00000788 0x1c3 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .debug_abbrev 0x0000094b 0x1b0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o - .debug_abbrev 0x00000afb 0x14 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o - .debug_abbrev 0x00000b0f 0x14 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o +.debug_abbrev 0x00000000 0xb18 + .debug_abbrev 0x00000000 0x14 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o + .debug_abbrev 0x00000014 0x35d C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .debug_abbrev 0x00000371 0x40f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .debug_abbrev 0x00000780 0x1ce C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .debug_abbrev 0x0000094e 0x1a2 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o + .debug_abbrev 0x00000af0 0x14 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o + .debug_abbrev 0x00000b04 0x14 C:\Users\paul\AppData\Local\Temp\cc2herkl.o -.debug_aranges 0x00000000 0x1f8 +.debug_aranges 0x00000000 0x218 .debug_aranges - 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccA8zS7I.o + 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\cc6pRmhD.o .debug_aranges - 0x00000020 0x20 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o + 0x00000020 0x20 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o .debug_aranges - 0x00000040 0x58 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o + 0x00000040 0x88 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o .debug_aranges - 0x00000098 0xe0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o + 0x000000c8 0xd0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o .debug_aranges - 0x00000178 0x40 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o + 0x00000198 0x40 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o .debug_aranges - 0x000001b8 0x20 C:\Users\paul\AppData\Local\Temp\ccdBPmvz.o + 0x000001d8 0x20 C:\Users\paul\AppData\Local\Temp\ccSIjLzW.o .debug_aranges - 0x000001d8 0x20 C:\Users\paul\AppData\Local\Temp\ccgj2WWv.o + 0x000001f8 0x20 C:\Users\paul\AppData\Local\Temp\cc2herkl.o -.debug_loc 0x00000000 0x42c1 - .debug_loc 0x00000000 0x2767 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .debug_loc 0x00002767 0xda4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .debug_loc 0x0000350b 0x91b C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .debug_loc 0x00003e26 0x49b C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o +.debug_loc 0x00000000 0x45b6 + .debug_loc 0x00000000 0x27eb C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .debug_loc 0x000027eb 0x1095 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .debug_loc 0x00003880 0x922 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .debug_loc 0x000041a2 0x414 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o -.debug_ranges 0x00000000 0x16b8 - .debug_ranges 0x00000000 0x1378 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .debug_ranges 0x00001378 0x220 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .debug_ranges 0x00001598 0xd0 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .debug_ranges 0x00001668 0x50 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o +.debug_ranges 0x00000000 0x1748 + .debug_ranges 0x00000000 0x13c8 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .debug_ranges 0x000013c8 0x270 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .debug_ranges 0x00001638 0xc0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .debug_ranges 0x000016f8 0x50 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o -.debug_str 0x00000000 0xdd6 - .debug_str 0x00000000 0x90a C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - 0x96f (size before relaxing) - .debug_str 0x0000090a 0x1f1 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - 0x494 (size before relaxing) - .debug_str 0x00000afb 0x1c5 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - 0x3c7 (size before relaxing) - .debug_str 0x00000cc0 0x116 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o +.debug_str 0x00000000 0xdcb + .debug_str 0x00000000 0x872 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + 0x8d7 (size before relaxing) + .debug_str 0x00000872 0x268 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + 0x52b (size before relaxing) + .debug_str 0x00000ada 0x1d2 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + 0x3e8 (size before relaxing) + .debug_str 0x00000cac 0x11f C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o 0x39d (size before relaxing) -.debug_frame 0x00000000 0x44c - .debug_frame 0x00000000 0x30 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans0.ltrans.o - .debug_frame 0x00000030 0x100 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans1.ltrans.o - .debug_frame 0x00000130 0x268 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans2.ltrans.o - .debug_frame 0x00000398 0xb4 C:\Users\paul\AppData\Local\Temp\cc6XiCXY.ltrans3.ltrans.o +.debug_frame 0x00000000 0x4c0 + .debug_frame 0x00000000 0x30 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans0.ltrans.o + .debug_frame 0x00000030 0x174 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans1.ltrans.o + .debug_frame 0x000001a4 0x26c C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans2.ltrans.o + .debug_frame 0x00000410 0xb0 C:\Users\paul\AppData\Local\Temp\ccKkt1EM.ltrans3.ltrans.o .stabstr 0x00000000 0x76 .stabstr 0x00000000 0x76 c:/arm/gcc-arm-none-eabi-6_2-2016q4-20161216-win32/bin/../lib/gcc/arm-none-eabi/6.2.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) diff --git a/firmware/source/usb.c b/firmware/source/usb.c index 8545b37..2d8428a 100644 --- a/firmware/source/usb.c +++ b/firmware/source/usb.c @@ -66,6 +66,10 @@ uint16_t usbFunctionSetup(uint8_t data[8]) { #ifdef STM_CORE static uint16_t rv16[RETURN_BUFF_SIZE/2]; uint8_t *rv = (uint8_t*)rv16; + + //create a usbMsgPtr variable from the stack which we can use convienently + //but then at end of the function we'll need to copy the value over to usb_buff usbMsgPtr_H/L + usbMsgPtr_t usbMsgPtr; #else static uint8_t rv[RETURN_BUFF_SIZE]; #endif @@ -186,6 +190,14 @@ uint16_t usbFunctionSetup(uint8_t data[8]) { rv[RETURN_ERR_IDX] = ERR_UNKN_DICTIONARY; } +#ifdef STM_CORE + //now we need to copy usbMsgPtr over to usb_buff so the usb drivers actually get the pointer value + usbMsgPtr_L = (uint32_t)usbMsgPtr; + usbMsgPtr_H = ((uint32_t)usbMsgPtr)>>16; + //this is a hack for stm32 devices only. It allows usb firmware to be mostly separated + //from application code. Usb code doesn't use any .data nor .bss, only the stack and usb_buff +#endif + return rlen; //need to return USB_NO_MSG for OUT transfers to make usbFunctionWrite called diff --git a/firmware/source/usb.h b/firmware/source/usb.h index 5f719f1..91ca61b 100644 --- a/firmware/source/usb.h +++ b/firmware/source/usb.h @@ -25,7 +25,6 @@ #include "bootload.h" #include "ciccom.h" #include "types.h" -#include "shared_usb.h" #include "shared_errors.h" #include "shared_dictionaries.h" diff --git a/firmware/source_stm_only/usbstm.c b/firmware/source_stm_only/usbstm.c index 114dc2c..340ea7a 100644 --- a/firmware/source_stm_only/usbstm.c +++ b/firmware/source_stm_only/usbstm.c @@ -208,8 +208,8 @@ uint16_t volatile (* const usb_buff) = (void*)USB_PMAADDR; #define num_bytes_req usb_buff[NUM_BYTES_REQ] //place this variable in USB RAM //static uint16_t num_bytes_sending; #define num_bytes_sending usb_buff[NUM_BYTES_SENDING] //place this variable in USB RAM -//static uint16_t num_bytes_expecting; //this was never used, so tried to cut it but couldn't.. -#define num_bytes_expecting usb_buff[NUM_BYTES_EXPECTING] //place this variable in USB RAM +//static uint16_t num_bytes_expecting; //this was never used, so it was cut +//#define num_bytes_expecting usb_buff[NUM_BYTES_EXPECTING] //place this variable in USB RAM //static uint16_t num_bytes_xfrd; #define num_bytes_xfrd usb_buff[NUM_BYTES_XFRD] //place this variable in USB RAM @@ -232,7 +232,10 @@ uint16_t volatile (* const usb_buff) = (void*)USB_PMAADDR; //static uint8_t req_dir; #define req_dir usb_buff[VAR_REQ_DIR] //place this variable in USB RAM -usbMsgPtr_t usbMsgPtr; +//move this into USB buffer ram, definition kept in usbstm.h so application code can import it +//usbMsgPtr_t usbMsgPtr; +//#define usbMsgPtr_L usb_buff[USBMSGPTR_L] //place this variable in USB RAM +//#define usbMsgPtr_H usb_buff[USBMSGPTR_H] //place this variable in USB RAM //#define TSSOP20 //defined when using TSSOP-20 part to get PA11/12 alternate mapping to the pins @@ -244,10 +247,11 @@ void init_usb() //Don't think most of these actually need to be cleared.. newaddr_reqtype might be only one.. num_bytes_req = 0; num_bytes_sending = 0; - num_bytes_expecting = 0; + //num_bytes_expecting = 0; num_bytes_xfrd = 0; newaddr_reqtype = 0; //two single byte variables stored in single 16bit half word req_dir = 0; + //usbMsgPtr_H/L shouldn't need pre-initialized //initialize i/o // TSSOP-20: On STM32F070x6 devices, pin pair PA11/12 can be remapped instead of pin pair PA9/10 using SYSCFG_CFGR1 register. @@ -477,17 +481,24 @@ static void control_xfr_in(){ // // return; // } + + //need a usbMsgPtr but want it to be a variable from the stack + usbMsgPtr_t usbMsgPtr_temp; + //copy the actual pointer from usb_buffer ram + //the usb_buffer ram can only be accessed in halfwords (16bits) + //so this assigment respects this and then casts it to the necessary pointer type + usbMsgPtr_temp = (uint16_t *) ((usbMsgPtr_H<<16) | usbMsgPtr_L); //copy over 8bytes from transmit data to EP0 buffer //copy data into EP0 buffer table ram //usb buffer ram is only accessible in halfwords/bytes (16/8bits) - usb_buff[EP0_TX_BASE] = usbMsgPtr[num_bytes_xfrd/2]; + usb_buff[EP0_TX_BASE] = usbMsgPtr_temp[num_bytes_xfrd/2]; num_bytes_xfrd += 2; - usb_buff[EP0_TX_BASE+1] = usbMsgPtr[num_bytes_xfrd/2]; + usb_buff[EP0_TX_BASE+1] = usbMsgPtr_temp[num_bytes_xfrd/2]; num_bytes_xfrd += 2; - usb_buff[EP0_TX_BASE+2] = usbMsgPtr[num_bytes_xfrd/2]; + usb_buff[EP0_TX_BASE+2] = usbMsgPtr_temp[num_bytes_xfrd/2]; num_bytes_xfrd += 2; - usb_buff[EP0_TX_BASE+3] = usbMsgPtr[num_bytes_xfrd/2]; + usb_buff[EP0_TX_BASE+3] = usbMsgPtr_temp[num_bytes_xfrd/2]; num_bytes_xfrd += 2; //if there aren't 8bytes of data to send, junk will be copied into end of EP0 TX buffer @@ -645,19 +656,42 @@ static uint16_t standard_req_in( usbRequest_t *spacket ){ case STD_REQ_GET_DESCRIPTOR: switch ( (spacket->wValue & DESC_TYPE_MASK)>>8) { //must mask out upper byte and shift to get desc type case DESC_TYPE_DEVICE: - usbMsgPtr = (uint16_t *)device_desc; + //usbMsgPtr = (uint16_t *)device_desc; + //set the usb_buff[] message ptr instead.. + //this works, but requires assingment above + //usbMsgPtr_L = (uint32_t)usbMsgPtr; + //usbMsgPtr_H = ((uint32_t)usbMsgPtr)>>16; + + //do the same but without the use of an actual usbMsgPtr + //first the const array (which is actually a pointer), is cast to a + //16bit pointer. Then that pointer is cast to an int and assinged + //to the usb_buff ram/index. + //the upper 16bits needs to get shifted prior to assignment + usbMsgPtr_L = (uint32_t)(uint16_t *)device_desc; + usbMsgPtr_H = ((uint32_t)(uint16_t *)device_desc)>>16; + return device_desc[bLength]; + case DESC_TYPE_CONFIG: //Must return all config, interface, and endpoint descriptors in one shot - usbMsgPtr = (uint16_t *)config_desc; + //usbMsgPtr = (uint16_t *)config_desc; + usbMsgPtr_L = (uint32_t)(uint16_t *)config_desc; + usbMsgPtr_H = ((uint32_t)(uint16_t *)config_desc)>>16; return config_desc[wTotalLength]; + case DESC_TYPE_STRING: //determine which string index switch ( spacket->wValue & DESC_IDX_MASK ) { //Must mask out index from lower byte - case 0: usbMsgPtr = (uint16_t *)string0_desc; + case 0: //usbMsgPtr = (uint16_t *)string0_desc; + usbMsgPtr_L = (uint32_t)(uint16_t *)string0_desc; + usbMsgPtr_H = ((uint32_t)(uint16_t *)string0_desc)>>16; return string0_desc[bLength]; - case 1: usbMsgPtr = (uint16_t *)string1_desc; + case 1: //usbMsgPtr = (uint16_t *)string1_desc; + usbMsgPtr_L = (uint32_t)(uint16_t *)string1_desc; + usbMsgPtr_H = ((uint32_t)(uint16_t *)string1_desc)>>16; return string1_desc[bLength]; - case 2: usbMsgPtr = (uint16_t *)string2_desc; + case 2: //usbMsgPtr = (uint16_t *)string2_desc; + usbMsgPtr_L = (uint32_t)(uint16_t *)string2_desc; + usbMsgPtr_H = ((uint32_t)(uint16_t *)string2_desc)>>16; return string2_desc[bLength]; default: //error send stall return 0; @@ -795,7 +829,10 @@ static void control_xfr_init( usbRequest_t *spacket ) { //the compiler was cutting it anyway, no need to put in usb_buff[].. //BUT! When I cut it, USB device descriptor fails.. //IDK why, so just let's just keep it anyway.. - num_bytes_expecting = standard_req_out( spacket ); + //num_bytes_expecting = standard_req_out( spacket ); + //The reason was because that function actually does something required even + //if the return value is ignored you bozo! + standard_req_out( spacket ); break; // case REQ_TYPE_CLASS: // //num_bytes_sending = 0;//class_req_in( spacket ); diff --git a/firmware/source_stm_only/usbstm.h b/firmware/source_stm_only/usbstm.h index 6383791..98463be 100644 --- a/firmware/source_stm_only/usbstm.h +++ b/firmware/source_stm_only/usbstm.h @@ -76,12 +76,18 @@ //So let's place those 14Bytes worth of variables in the begining of USB RAM #define NUM_BYTES_REQ 0 //variable placed in first 16bit index #define NUM_BYTES_SENDING 1 //variable placed in second index... -#define NUM_BYTES_EXPECTING 2 -#define NUM_BYTES_XFRD 3 -#define NEWADDR_REQTYPE 4 //two single byte variables stored in this index -#define VAR_REQ_DIR 5 //might be able to combine with above..? -//6 variables above use up 12Bytes of USB buffer RAM -//there's 4Bytes of available space, could be used for usbMsgPtr, but need to ensure half word access is used.. +//#define NUM_BYTES_EXPECTING 2 //variable cut +#define NUM_BYTES_XFRD 2 +#define NEWADDR_REQTYPE 3 //two single byte variables stored in this index +#define VAR_REQ_DIR 4 //might be able to combine with above..? +//there's 6Bytes of available space, could be used for usbMsgPtr, but need to ensure half word access is used.. +#define USBMSGPTR_L 5 //lower 16bit of pointer +#define USBMSGPTR_H 6 //upper 16bit of pointer +//now there's 7 indexes = 14Bytes used for usb_buff ram variables and the usb code shouldn't be using any .data nor .bss +//usbstm only uses the stack and usb_buff ram table +//There are 2 bytes unused, perhaps these can be utilized for initialization flags or other communication between +//usb driver and application code + //buffer table itself is located in 1KB buffer above, but it's location is programmable //the table must be aligned to an 8Byte boundary @@ -258,7 +264,14 @@ typedef struct usbRequest_t{ #define usbPoll() NOP() #define usbMsgPtr_t uint16_t * -extern usbMsgPtr_t usbMsgPtr; +//extern usbMsgPtr_t usbMsgPtr; //this variable is defined in usbstm.c + //putting extern here allows any file that imports usbstm.h access to usbMsgPtr + +//application code can access the entire usb_buff as well as the usbMsgPtr_H/L +//extern used here to declare usb_buff so other files can use it, definition is in usbstm.c +extern uint16_t volatile (* const usb_buff); +#define usbMsgPtr_L usb_buff[USBMSGPTR_L] //place this variable in USB RAM +#define usbMsgPtr_H usb_buff[USBMSGPTR_H] //place this variable in USB RAM extern uint16_t usbFunctionSetup(uint8_t data[8]); extern uint8_t usbFunctionWrite(uint8_t *data, uint8_t len); diff --git a/shared/shared_dict_usb.h b/shared/shared_dict_usb.h index 6f1f34d..d97590c 100644 --- a/shared/shared_dict_usb.h +++ b/shared/shared_dict_usb.h @@ -15,7 +15,7 @@ //============================================================================================= // USB DICTIONARY // -// opcodes contained in this dictionary must be implemented in firmware/source/io.c +// opcodes contained in this dictionary must be implemented in firmware/source/usb.c // //============================================================================================= //============================================================================================= diff --git a/shared/shared_usb.h b/shared/shared_usb.h deleted file mode 100644 index 6f1f34d..0000000 --- a/shared/shared_usb.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef _shared_dict_usb_h -#define _shared_dict_usb_h - -//define dictionary's reference number in the shared_dictionaries.h file -//then include this dictionary file in shared_dictionaries.h -//The dictionary number is literally used as usb transfer request field -//the opcodes and operands in this dictionary are fed directly into usb setup packet's wValue wIndex fields - -#define RETURN_BUFF_SIZE 8 //number of bytes in generic return buffer -#define RETURN_ERR_IDX 0 //index of IN DATA stage that contains SUCCESS/ERROR# -#define RETURN_LEN_IDX 1 //index of IN DATA stage that contains length of return value(s) in bytes (0-125) -#define RETURN_DATA 2 //index of IN DATA stage that contains start of return data - -//============================================================================================= -//============================================================================================= -// USB DICTIONARY -// -// opcodes contained in this dictionary must be implemented in firmware/source/io.c -// -//============================================================================================= -//============================================================================================= - -#endif