From 69d1490faaf4471b2117f8c5c7d972846cebe0a3 Mon Sep 17 00:00:00 2001 From: Robert Fisk Date: Sun, 19 Jul 2015 21:58:55 +1200 Subject: [PATCH] Upstream debugged and working again, emulating a 128MB storage device. Implemented mock downstream_interface_msc.c for debugging purposes. Multiple bugfixes and tweaks to: - downstream_interface_msc.c - downstream_spi.c - usbd_core.c - usbd_msc.c - usbd_msc_scsi.c - stm32f4xx_hal_pcd.c --- Upstream/.cproject | 4 +- Upstream/Debug/Upstream.elf | Bin 790837 -> 791748 bytes Upstream/Debug/Upstream.hex | 2723 +++++++++++------ Upstream/Debug/Upstream.map | 1541 +++++----- .../Src/stm32f4xx_hal_pcd.c | 19 +- Upstream/Inc/board_config.h | 5 + Upstream/Inc/downstream_interface_msc.h | 3 +- Upstream/Inc/downstream_spi.h | 4 +- .../Class/MSC/Src/usbd_msc.c | 11 +- .../Class/MSC/Src/usbd_msc_scsi.c | 24 +- .../Core/Src/usbd_core.c | 4 +- Upstream/Src/downstream_interface_msc.c | 46 +- Upstream/Src/downstream_interface_msc_mock.c | 251 ++ Upstream/Src/downstream_spi.c | 9 +- Upstream/Src/hal_msp.c | 5 +- Upstream/Src/interrupts.c | 8 + Upstream/Src/main.c | 9 +- 17 files changed, 2920 insertions(+), 1746 deletions(-) create mode 100644 Upstream/Src/downstream_interface_msc_mock.c diff --git a/Upstream/.cproject b/Upstream/.cproject index cb9c94f..34b9536 100755 --- a/Upstream/.cproject +++ b/Upstream/.cproject @@ -109,7 +109,7 @@ - + @@ -228,7 +228,7 @@ - + diff --git a/Upstream/Debug/Upstream.elf b/Upstream/Debug/Upstream.elf index ef7516769e1d9cf531f18ebc0e5e220143cda7dc..98c54d1a8edbb123fc68f9db4c6450b52fd9d2ff 100755 GIT binary patch delta 166374 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 delta 166034 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

2`e)P1)DYx7P ziC2y~2B#;L&wfYT1m)Pz063-WRKi=Lau}UrB`H78f=RM++V{|^x*>6 zq)etFxmnqt())MHpJ|1Bugst~0$P+;=0ex598(8fhtiM;@R~xHcyyzD$~m_ zmM-NZ8ibolHTH8z-Brh(;l@MN@-Gmcs$xplcc^YI1Lvh`+63aQilYmtZLkVMrm>JBHV^py7{t9hMmhBK87sMzxUM5;&`B zTt!>YIn~ro08>>{PJlbFnnw%W1=XL_hr6g6xCpvSDh(aTrK!5-BkonzZZb(%)vMqp zL-pn|beXD=beMTf6}%lLS*nJ`;IdT*Ccq>|b%}X264yM8+Kx9=-}ME#soE=s?v~1N z72t&`P89+bsqT7$6swj8KzLhqh68d(6+n-EiK^-a0Hvy)^vvH?>9>Kqr^*@&zJ4qQ4^^3Op(|6hUI4CKb%v_pN2*R&%8#F_>gZIlLN%3~K2!DT4P~Wj(C@%k zskVO!VYMoF1}tk-XT{*2tNKtP{z5fyI&d#lTYF%t)T)HE`M*-N9|P{S>S`IdI+fl9 zCT~>3Nm#GSTMyEpa(N1PqiPYG=FwZ6j^WBQsaAFa*Q~mh2l7spPUmv(Rk1(AO^d1` z1c+8uYdyTRscxh~*shxLJA@so#j9cYK~+JU%tw{~aD?boC4CE@U8?DeVB(>EycV3N z+LP9p9qN?7A@ox3EurkwTYbI>h@EPWF5rFC?lc{DsW->L##j9Z4b4y8dk+HcR`;W9 z$6vi*AxMCFBK=B2pgJ}jfFN}ki zK@!zN?|>w!FVO;@tez@E^c1y!8vv)(!&ibkqaJeyuFtCH)9V7~)OqxpajN>{a|q9? zJ5ykJL0wPZ2DqsHa~X7()EU%Fx~zWo0`M#9!;_*QO;f9=5pz|YHU}hKz0nUg8R{n5 zcr(@cli>TB`i~*d<*0w7BcfdO0GgzE>RHsL%U7qpWJZs{iE{2~u(#AVrLZYfC!7MX zNd2`9A&S*sMgehKJ!>4u9d&P7vr5!U1R$mAUG!?oUA3Gd-Ba7q7ntv>gMNbWfx3id z$wT!-6MUAbXN>?USG(rp+CNhFq@w(>`Y;`DKT#*n5CHKMjb5-7>VN3@d8RJzgiWP7 zZXbYE>Xc-dRI7W@40@rqQ2Xnp+K!%>T6F<+#b2pSfv|k7{+h9Vf&1f?ixD=e*U_H& zR(&W2fF`wX1h{5(5}g~pQxB%~>AhM+EsYj+!?)mC)!HohY*WYd0ia!Nq5Q8yJ&u;) z59;QhVe(P^IvIgF)zQ>->r%gv!qQE%rWiVR%_vH`Jv0|xGvL%yvyuwS9h$$~AobGd z6%cxB{+bVNr)C5__P(0%1OWXsd32k0YubX~&0m9751t0iBt3+Ink*|UgEYl7J%TmA z(kXR_rmqURP|eV@u-u~=K?!G==00_X_iECIQVGgv3TbBw*L=JVV1y$_4{09s1BudvDWQwjl+sV6#AqyZPH3hs@@K&5TH z=5PQ)H)@nt2;XYrzW}aD^Y$Ke&6+{u0eGi*c>$zF<1`SuR?W;@0NOMcY0GQZ+@Pb( z51N?{0DRQMxYE~(IyL5gV7oN0hJ(0kCsWStp)J{r5T4rj2;jZ6g|yszYX?(rd#85H z6b#fy8}}D1cWL{70M1Xlvk#mFXvd5J7pNWcH*_J|d|Ic&w67V!!?l-JL%3gi)f3!7 zZOu?7dmN74BQwCB)Sh1erwLlSIY1<7S&<;8wLw16ozot@0WMYBM#X!!Hc5?0Iok6F z5h+*e?h0I<78wbyzn0|%VS(13>WAyvsPW)#XkBk2?oI8$A>eLl-_eFts11mNut>WK z{SYi;+LR^meOr5u+PrtPTPS}l(QaYfzrrg&B3fhaYri+((?8IL8Q|ujRy!9aW!j24 z(3NX{ruQ};Y1vFV09qxj`W4zCwDUgGIt~S?)MhcYUva(^IMP~CuN}(_{2I&9JW2|i zwNGhndZ+E&j?eO58?YCoMLU4O$Xd03Iso3LZKMWiyLJ(s)O^%F9}2EhyCEE0mo|hJ zB{$uDDFE)ejsAdp==S{w6Hnb@+7)-`T79AO(iKyCz(+TDJh)xD86!7i*uJ{aw}JQ5 zRZv%Cx2|e4ocimUX?6tYavFdL)P+%w7^E9d-IQS6J%&A=W1F8{4;-UAtOg0!b-xZ0 zp?lZ|@O`@36(IX{-PXhBK^@Z{@IyMU4G>1@!so&=T36@-5~CYs0y(S`XM@D*er5iF zYwh1uN5<(a8-R<~X}vJsle!cpc|5))A!2f1!V)qsL0mnkT)wO;r4zU-x(PJ+G~Jx- z5MI?O{Q*zcrT>j9lA*(&?Zrc_`-~RmYq~7j{IhhMC_Bs6J)qZVa&)Q>;Bs{>%KGbg3(ut`AFVuCpCL&;wjzdLXv2M~hNN?*F3E<|A?h6%2 ziS7>tgr&N+9JslwJ8S~}p00g5boX`nbn5*;H;qo^9_o6pM~E_=nik}8UB9Owk91RM z2dUAmq7CS|?h9)8z0mzj_0>z=*Y7EvtJNh@tNNAh1f89}){Tz=SEn1`4x2YRCwemL zbtUu~M1xLS2se$oJ2QZLt4p5%%O+jk4p=tp0$PS-?9@O#}!n&Bb9%_ zY15Vc3gHKxfto2Fb=qwl73QIC2=$-4bdxv2shfTrvws3!VIDy_lb2q?q!IV$TX4R5 zAEsgg$2Mtpqn@`W?N%?a?b}u@BS#Jqlj->YKR`GWxOfzEQaTXfa5H{`)mB z*{5IqsTkLgUe_ zcTbN$+>Y6(??yGz1AW&JID4p9YFa_d^j}vYV7Y$6ao`{67c*}rag4GlLty$$A5S|& zrC!A7Cv$qajQs{&qkcv*bZ_+|?!jr3{@K@nH|w{b2K=3V4D<73&cHs4rQkaCYw6MI z(x3JL@o?xzFGF}bocoj&IaCb+&dVW)NuP{uC zrjbl!e?l1IU{8-!s6!y-PkS7WQXU`Xu${3@!Lm{;0vG8p`w>QV&_OT?5e_*Bn8i~# z)7Nl(0YB;RHSI?U4nNj_JLRAq4QGiCTn&Ut4sQDZNOmY8T#Caqny9B8ZqcdF8HcI! zK+ZZ`r58ibIo$dW@KlEh7cs!|4pH=ATyR)NspLh6D{mRaR8CLV{*`cZ&0*6TNV6Ok zuYhT`!%#C!a~$4N;hgJGI2$H;4x4Cl&fw0&?aSfxt?O=TXuEZg<1EkaeKc$NM z>Ci-tzWWZx&VYO1@b4zLe&`^jt)SdNPLISRhXPua9y|OhO#%DFVWk@5e(G?R$(f27 zH{?D7zHm^}BL32$j24?$4nH4*Oq_&|6ksT#{4~%|!{krH<}rnNJq=68)6am5G$g+VIcS(d2TO+xHaZ22 zHl&L|Vhnba!X7sKGY%xykV)@h9Wg{xYv-upF|`?v8Eyn3!g0f|lVNhgp!pMC;tXHD zfG)w%HWI>9hT-cWOf+Ork1fft^GCpw4F$b5usLmLqSnb7LsS{KvxY3{5uY=pP=b3k^NkXivQ!;nD9eWqbfFGRX#IPnU)Y{Rp6 zAUTGiA_#L0Yw6H4&+wXdi+saWMmdA?rR$s1hoz)KD4@_%lNzy`WKPxbPobR~gt;3|AZWRX|r` zXr(OYh2i=@2wxiZtbyxVL$^x6Um1?L9)|R_p}!xbZw#G%Agwpp4nWvoaQKM0jfQwi z{N5T2EzmU^=ADD(JHw`p(7iWAjzGW`!&EveXf-6zQ`>IHrPH1c!;u@{J{Yd`2d>L- z-3HFhm`-O^?nXE2H+mR<{+F3K6VKvAO8EVZuj#%1-9{dzsQ$)@T95!^-)iUrjX$=7 z1RGgy5QZ2dsEHYBe7GFk9%C3ag~E(aDj;NxFBl9a+?ZSoF2b0+6l9-q-ebV`8+WN; z8EITF2*W;TY}y5K$k;IBYq*IrDx6>%ZQMj9z+qz~W#qBOjMWexF)AouId0rfufCix z%Kf2>Gj6^Q%Xnj%2XrTmhTRaJGKMqwCTA~KqYo_488rrwRO2%0BcC_sr-NKH9;B@2 zk}<*tz-40uy_9>!82L4Zoo4)PB82J2W(~LuV*(x2Wg2fu0Jvt{9twDtv6S8n&M`(M zLzipJ4~8z!IClyH`mj+4IsCS3^gQ*jU{wiblbR=a@spa z4s~owj9!#Nl^VyNhVGtm!X9w9qhnHE!JkuEH1_Om#t}F{K0{s*DfQFz#yO0(z&Y#yIH@kmp975yF?onY8BA8sE`@ z>MNtU8059_KkCEO8D9lKS8wzr%Lb!gG)SZIE)^hejen1WNt5x)48(nBRMCBXZ~S2p zxE3SlE^itpqVX(k?j1&Z+O9qrP4r6@AB{`$5u(%Biy9ejrZW19ox90zCqAKv=|Kd9 zo+ja3nCvh)&|#~$$%7d(8*6ig7CL{E!3`w9^d+6;1e)41VHsq4y%pg@Oab453pMpF zfNqb8^$aA;)Vu{=_L^kA(1n{y17R6qnoUX5K9lt!xc#OKx-SPzT*{>nnv7JU9y0wh z4Z>uzv|O*@y+`BJQDpA*<4rl(YM95sDTyT>t8+Y5v^VH!tUcATk}%941~4mMbAlGA*aq5tB{+bljO@TEGmLgY)0-d%^O8={w3MFPRn>!1A)` zKU#vWnEa_4N;7SK3@=wrMa=d&SibA%A2x8XOT&C2k~y3&Kv>Yj_D*NjwPldT8~Oi9aLQ3HNE(B?q=cy zfqP&YJQ&U%nw+VsE;H?SrLwKu)NmZ+u}Qcdz$d0+DMCeg-Jkpz%$daJ`h%! z9!v&TZR!^UuEtb#4CJ}#@120ZFgeifT5D>g+4#ydy9YwNHa%?wsWUyK`S-@uK|^aW zxzTZBqe&>H_S#$1e(H6+GliM~d~f=~4mK^O_cV>$Ok1g^&~6H%t-ixl#bnRLZ<~D8 z49?rJhF&Dt>9~!G93RINDu8x5z8nh9&v7X|i@P1Ycfqy4<6qrD0vtDe2A{!>{iqci z;&_~15Ds;m`4@y?jzj3N+v~`(f@2&n4}?jC<5#p%>~|bz0sMgD1A2=s(s7xF271u3 zvIoc^$Hz7(qa9#}hXlSu~bgjwM34E_AG8 zyykPJj|&|O+!IIbF_5Q@KTQX&!m*LgtE(KlHv?DgcrYEp8pm1Gm45EH(g&6=9Bq1# zmyW@VVgX)1yGF02)I0johi-7(G##YTaUbQFZyh&Ig09JNGxIGh7j)2?+~ycZn`FCV ze|q*h9Dk=%l@E@Sy#V;=sN0FKosOptf^<2qPKBkLSw;<25A&g&;5^Nv-UG11{O)IP zUgq@qOvVEIyqJ($MZ3(KhC%6To<)h6zqvnkO9RZ42E$vRIh)GUAoJ_bU=nQJNZC?| zc?KN?gqj4_C3-kf=N=jxU z&0);k@93p4&iC@drBM5nOU?%rJDU* zLtt~>JYWj&7t9q6kX|(Rp>5`p`Sf52FPj^^fVg5t*9eo!+D#Pb2gno6q&1N78jcfXja`ee?vFB#Jrt3yb#-j18v6-%{7$km6->T zNx6CXa+o|Z8>m0|)O^AYT!p!X%8F-ZA1bjc%~vyFS!KQu0b#Ydi7r=-dGCC1&&>-P zVDi#@wg9BoJZKVxugoh;VDj1=dlI-hbN6c?Z_N3w8Bo@n8^lmHm}TREXf&IC2iIgC zL+`mYn|DyU{mvZu4=mrCztw@Xm`CU_v{v&o3oP5reMf?{n}>2C>@e?mjPZUn|4DtL zPP1et;9ce`)ERfPTzLt&yXCvp(0N#lQPkS@wD^9iAuT898TPWY<$?HE7Si^%%QCA3 zCcc)#G?Dx)jr1vYTW)`W5dM~>lqd&S5^2K@w7jA=N08+@9UzBTs_AY$vn^v;7Y)uJgvg!2|dD7Xt2SE}1DSr${b__Ads z)iGBreln0WOUVIPUbWnGJq?;}5t1^)^34PwGA%+^IK5_BL!F6iOCfPNmXcan=32rM zV3}tTE&<867^z+>u#|rf%j=fHUqEhH_^lA$w8)%*E3{mTg0RTq9RRM_(vk@7wxz}e z7wwMaezYr0ODv^PP?lPvsHD7WSwy{zdzRHSyB=CHX!vE8kXDd#%a{caKC;+O0{7Sw z{4)SgEKOfP_|%d;0ZuC{$(7)qS=ye$q{@;+y}N45c=~P58p}U4NuFC)PAwRxlpO{`TYnPqg(QcXMlvacY zSDivW{l13NwI~G2bb3i=<=33N=o)4@#g@Zoj?+=9^m3izg2ClE^_kHV$^s`ARgBl2 z9!&+g;k1g1tU{-mv@;etg;Ty?>=ZQ}h}%v*lc2lf)Jz#&iPQFS#4UCDm-3~%P6^EN zrTF=SJgQd8ot$WMc;xiod2o-N)}KP$3a0|Pz0aJcC4f{qea=CIYNunTKx&*OP%HYm z(?`lXUOL@536okUFWS~$ISr=QTkD)=Gf$Rc+geAjximRVq4yKsIi03-{k@YHy-3mG zR5T32HmCeyfVVrXUj<=@)9V%pKRP-82-4{^mL8ujr>)fNcDM3MVd7!6{sw@jRsITN z@vFDdAHIdTiLskW~0As9M=v&%{ zt-sy}Al4c`2*RUQ`m-OrW7fa*AjhraZvqf!eMNUC-dayP+ez!^^WplG^~*R26Ro+w zL6~H1pcZzDb((7*xH)ajsfW`u)0NzH}x)<4WJxoDkD{lQDt+CoIS zY#mRHq%`Z&zaYG7^{56(w?3iFG1EGLR{Cq!Jx2h~vM%WkF30Ljxniz$)iiK<*77d^ zD6r;wxq@D|+UN_`H>^=~fp1yIhQOxKT1?+qFS4f5e7J25PlfM0)&@GqE3qC=0e9EB z_z;}lvrhOKUhZ2Xo&xvKx+xZbGHbV^;L5GdW1xF%)g6NHiS_qy!9BHJ?GCQe>LO+1 z1;#3?`3$7h*6Y;fuCX592H(%EDysEgSbw66@X{(-1g_TlGqZj9jiB zgs#h4>;avd?F!|_?zVrvf=>_I7a!oo(-uarO?lf^FNJWYje8E9k8Rj8Snjgy6 z=1sukZQq`U@T4tp9RLZo`l$e%vhA4zK%%X?4qTG$=Q?_)CE3>P5D+Q0joy%+ww2OC zc*f>B0{FAG(*g+3+1#jWlWIFpDgJp|Fy*`#Y~L0FchNSLiik_L;uwtZvQ1G5;T2m9 z<@RZ|qHeIfYTH&0VY=-p?IIaA(`s;;wj_K*$(47_c3KEF%eJWp0%qH$Tmvx2c9u5Z zT$|4$;PY&szl6zkTMFIu8#WcSA#U0ZQ48vpZ9_Gj7TUT|>#4|ALAge;?F*WRw{3qW z!Sar6h60u)wxFYMU1}54!hP4a>MaQ8o^2E}bS3(#D(1VD_$`VbsEz!}Hh3KHuWdpl zZ0c<1soZ&EtDzO5-uBbiFln&$?S;5awp9!)n{6F(n7p$cWpd%nbx1di;)87oCGa0@ z=@B5Ew&~Yk(q)?x0Gx+&?__YE&O1JxQ#&V7e(CM}QUl>mXRm26@p1NDjCi}8lW79_ zI**|)hM)6HdfazAZ=lwbzjKWOxB%zzv}gr6|1}F-sB@=l6O?uC#ToKxw!1=Edm_|DPSq1K(^R}7zNQa!S(QAiM&Y83zMmrB&16_=>2c7#KcAiSF zQN=p@e+$ba&eI-%9Cc2l-1V5Vy8xDP&fmF##5?zxY=iQo^E#Rr3C>9yU~|fO=yE6% zovoXoOL7inguif%lVT_VxZwQvAo#xQ+^-+V73UO6E3%zG(him9e2&tAeCH38PZu~3 zrv34{bINd-+;U$01Dq8*_hZ)l!WpO?umZwo&Z$(=R5~AO0jY9c$Rz*5u{q|^{D1B2 zPsK!?a~zccZ=5UXL2Yneg1@tk&14uI!n8QYQiOKr6aT_>hqG4$xDU>*>9`^vo!8I{ zBc0A$X*KV14xa~SZZ1_cV?15vrMwBk{Vorw zLO9^!>kfRR%cB0kA99J1K^WySdLg)ImtItF#JIFsK@PiEyC95pdG!P)M_jxp5k2ZM zm5%04xM)^kgmEsz4^h`K-lc5Y8HfeKWzr$A87{Xe1ITn4D21CWmoj?#vRy9IPLbpC)Bz!KT^@gA&i{t? zx5rwrw_TpC11WWp(x!jcrM4HidoF$Uz|8}f{d9Qs&_%oxT$ziJa^}Y_=U%|_iA!(- z$Wxb8nz0ow$6oy(n!Y=rsq_2Wo12@E1+;31qjiu)AR&arQMGEVqqcQbt?k#XAt1eGZY3S7a#mJOna3b;kUfuMpokiD0pB7)-kIraDc!{Ln2d7j+++~+yxJkL$g zM3tQ~8tvBDQpeb=8LZL)hx5n8id`i~$j zcC#s=Y`4pyS8<-$ovwnLr*`S|_;uJdkA&{I-T6pZzOcJW>0zf`{(cBw+HHFXVV7Ml zRbzVWw28pIwu_)%ys`WGAxwJhW>U1cU8$sz;HF%saD}P6ay|u}JCx69H)p4EAPqrJ z<>R9edMS%2EAUokQF+5hS+EquS1F=LWw&zEudv*!G#-P{UztbYOn{PAK(}AHB?GR5 zlz-C%9;{qU6+2#eGZWkarTH0p5vol1M1=L@pwiq0(?d$RGst1(X9d8ADF;#j6|QtR z2B#59e?RD=l`DS-iBXQY1l>{PG6r0%a_w?(amoqwpvNnh`~g6sGU@@iB<0UkxK37f zeFMuBQuVlXZgxxN0{7D9(WFNQ^_ud zmm=jZ-fa~-aB$LiSe7c~0toLbm(rB@K)K;J;2tV3@@HV;TI`AbS16-rfmA93hCx@Q z44}GnwetEYkQ${Y6=Z6aTd3Str#vteCiTiH+E8v#CPaZWDko8J)uc?=2hysH&jD#u z{y??OcIDtnfIm?VtB3HZGK&_14rNIzbkCIiU4I4pT$w=IzAuy$bm&E=vYuWnda2Ag z0pH!qFDMgzqpYQws#htYovydavBQAduKMf%Ox#qHXt2AhQWk>Sp?aS_^-k3tT3mLi zzNVPPL$#ac4^P#4dLhJ1!51fNthf`{e1+!53BCeDS#uYLF)ksQ#JhqVYq4#O%V~QE#p8U zRV*zTQL1^9p^H{&oFI%*jc$kQqpGK_lx)PRzI1{zPE~sqEyb(aXx}wK)oTrss9H*i zbdu^xG)S`Q8e$EaCTDlege1*RhA51PN^2Q z0&rS&$rt2|s+;2LOx0qCA7PrM(l3E&wyHV=(zB{>DXuxED!+}E&a2u*@O??8ZiC5X z)jm4sa7EQf)qosTb}GnK)x3FdnyYea20TxdwHxq!6}OZhw;JbLSC0f+ph^pb%`H_J zB}av-TRNB)seZnJCT^>iehlFq)mVzp@2c!*MYyM8$XltZj{)2x)#`9?<*GrS!?HqE zxdxlQhm1_TMkZP41O{_Jl2mgT7s)A|g)Tx|)+JkoMRgHZ?8dTFQFl|&7bfMiQ zRXhd#&8mb&;96A5W*}NsS94*~rZQ6Ls9lwM9esMDnnf4kscJXDJ*2(I z=c*un)Sq~orZ0r9N41Gox7Vscl%u~T9kLI2hfb*r>-x7i{OGJ1IC!R4@4%BuRbc7a)?=qhFxG6t&I(a!jq@-Pf?%4@!0ba6uh04c;!QRTPU{ zQeWXOu3-l{_dNq$f%+qwtZ%6uP6Ah`-s=XgNIik#l-ugx6M?&A<~ITed;irM@{GxL0bgGPK^UmX$%+qprOT_-plg+FgI6W`iK?RqvoZ%D3vPN&vQN zYFpsUO_M`=-tL;CUx3@8nMtJ+4^7u_3I#kh>#3;arBUYt;jI};Rb(H{n)49)YC8CJ zYtc~=tzrQh!B@cV({%QQZolR!ZJPyZ?o-qnq!H4p9jsAOYQt-mZh++hO#+>14bk*a zni#6NLlfCS%^(_vhcpYuf;+6axE0(HP3CsM!!*m3Xed$>OZA^9&1%}}jMfB+w?G=B z>CX>bhc7%#{})_>W&=&9i5lT%m?mjHGr(K2rs5TZDViTB1x?iq%ZBAK%@t3OG)+FO z*6Eu0ejq0`NmC&_t*O$2%hEIpz-4QO(B-`oK&J|5t3V(JT zJK)KM>@Grh67X{Y_0i#VQ4w&tpJtX^d&;Orges0;eL4 zRWD3#YjSfy?r0Kt<$7G-c#4YdYl5jX{6G^yq4YzIKb;PLr1@Bk_R2JA;g*2( zYBuU!@d@8*#(xLkcI}%$G~uRQ^8rlVwZYWH4((OS2zP3?#=_|??PUr+J+z-v{NbrB zdxg*BrDetd;H}N|hEpGHDJ59GTHo)%?bbR{$;VGyJr&#@t=${o_G)vdpdo+lkXEDs z+HA6bUg=@Fb#(#wN->YyMsl7AkwuJ7r~v>elq~38CuyUe2P=ri)uK{)ZVJ&qc*Zb7kc=Ey`WuA z8NfyDm|$?1w98%qaak*V3vxv}a3Z|rXeF1RyQ+Ow2w|>vI)zwyTBkJ-=4c}~?Sg#e+yJQX8;ssDP zYF{n{zDb+v2Vt}JdwNt`w9C)KcdPd80hqLDjeO1DI6An06u3^U7j1sN)b6+i%Py@o zKWG!a<5B4h*Kf6Lw6DM2{?G!z-R#Gf!o=NPM$_^R`^q@zJnYYgfq2{Zi-B&p{StbP z_S*Z+hH#&K^b81t?473paKPTw2f~B)#~28Y*e~Wo(U9v%n!uCo3#qDf%s$f|4V|#p zQpAv9f0Hid8GFYH;Ii%08-Y7-zo`<=^6jhWgwHkmY2U%}y1jx4!k3SBbyY4U#%UwD-t@s|g zs8|R+b;g&l^wJg64e-$wQ>5;ztES9zx2}b@!u@obf1%r>+x-)Wzb=ZxvjCm*ZJ6xS zh4TZqVBf5~3)~T%tp%>bbTcS~3fJ|gm^?yv`7yji>JsSWNR%!)9G!^Pjo%J0F}jiV zuso`pOfgWbZV|1#ak_FjOyYGPO2H-QmeHyBMBN`903_))jDRj#r=l!4MOSPEVX7{e zzqSQMnJsiTGj#9KWj&>vLIwZRI`Lbya7H(S65ULlgx38m-Dj21W$T7hS>&wlzCTRP z>0ZzaH0O2Yyu&}3GCrYNY@Y7xPeJl^=MDpKP3J->#C6^50yw*&J1#*(H+BEL`Bk7Z zl;YFg(oLb|sZjU454a-Tua2<1t(%+$?vC!G>CoNPO^-l(#kvU;rj+OwQZ{u@$1-qM zs$k7e?j<67rGU==en9hhtK)=t;m(H zP;`ICp^YkxcO4!j08s33<1DxmhmZKmt!%%!ZFJ86u|wbIz?D0^IfqVEI5=#BNu@&$ z?X^@nyeCJOsvWky4|s#a5<2G4=n(P*T$4l7B#>qYuYG{GIMh@D-s-S`|7sh?@*V0@ zr$b&i052U%sYur4u&)v1l|v%s%H0k#X!EJZVFs0XUORk655^mZ4HO%0cido$*4-RW z^GR^#s;4bUZ^z;1fb((OMThBp9Y4?ku-h?%YRi6(J7}cradbWapL-pBJHZ7yMpA$p z~{>x~c9BBvFCmk;<;4H(jb`gY`jx#=kFw4)e&OBFELQVRGB?RtY+D$MGQTC){-$LBV>lBl9CnN*pUbhVGtYEFFA*wizeM>(M1(+w{n`bb(TLiHjVTVZ-*vuBNzgy!OWjz7bGIvW z>H1Qt6P?uO#KI&)e=G+kr}ZKl%V+cbjNPVA%3(wKEppWCtcHr zjs)O_K9(lboBC)D0xGW|fBWgqKL|2IYGjjj{`SLr9ywneo*gXZiS z{RH~9qFTMw18(Z{AKidSgT5scEj8+oQ_R<-U-1IE7X2iOM_ct*hNJl>`ZUUVpX%q) zq}idzx4L4I*ITUu_grs9q2CMr2@1VB_1!dFU+P;O>EdPtQP zSroUt*5@4o;*DPV7?!>IH+0Y33@2@1;%I&Z_(V`$gMaQ!`SzJ_HtSe(?|ZD^hc>0X1F!X|%%BLM>p1;yyhK0^Wh z7R7$UG^#HL8md*$1sMuMfe$vs(R>hMh@whis3DXeyc0Kc)C*Wf82rj%5@{Hp0zi}@ zatOE>!!^p5VhxvQf{ioe&jyJ%d^`ZUM8oh(cu6vB@&idR{7GfvRKry&&>S;N`2@l= z!;3P&PZ)+@2Y1TgcLBXVZ7}8F8k{l6Mnacm@Z(RR6ElQV%)e+jM7u(l4B?cmUpCay zZOt(p*beThK|rf#uEB%i^gP3*lW>-Am~sf*4a1pVp}T3wvxQ}Wp=%XCbQj*%JoGoD zB?j?RkW#~~KJfj(u>3T*hlcr7=XqoZE(iD6Fk&IRl^f2`iJ3~nSxWq>46Q-%U2Qnm z09=isgbp9q8QkW;q{*<1BCKXZ*?cW-rsFJ$f z$@v-pZccwYLg?>g<0fe{H z%mCQcE9L9ccy^>2$msZepB9 zw4tdur;Rnx#XFV7fJ<Aeu(A3M3Yf-84=V}!E8$tD+ErIUL-oK`vA ziG-VKrx4o8sBvLj76Q=8Lhnx39I{WcuJ z4ktAW^317_9+BrxHK|(A7f!!UgYQnKiB)LnrBmMyAiA9Tkj*QnAK!zUZl@Xi*Isyf zuTy2|t&?IuEZvP;zXWcFF^xvoPUCN1!E%?eA8jXj7)5ok^fU@6IP)^j>I0#VQGXml zU!zAM$Zlf*#e{o|Gd_T`0Hf(PO!gV|OF{M<2Ty=5(3tTDxFF+e8UVq@hl7GadE+>W z&JGyQ5Eo+H>J1WV?8ghd@%m)5H#!q({5%4ki879R4=qI-!xCWXehikEjW!gDTrq}j1$WiBS_NIM@n>3<^Nc)AmDh|{ zC~UZC^x&U(BfJ?_4ZuU=n$0kIWPEZSfHLFK00_&CpV6#XVeHoluG07m1$Q;Z3nB<> zjq9kUSZDluHAubjb6Rd1j6pPiHX7Ccoys!)ejd1HuIyx)7kzBOuU>wr=v*T&b<_J`8W@!g~iu-g!yZ* zyPbccwaCx;aRj7$oE<1|+~=G}$>n}$*P-A7ov+es8$r(Bq=SSw2Q`9(IuD`g|DZD$ z2kwybY5rSZgb{c7zkJz#cAuYxF4p<30=hWok&z(r&I6s$LZWkK6q-$P9>d4`vRa$S z-_ZIg=OgqbGN+xh_)1@#KNnNfeBRlX3PKm0(|-VW$+?=!aF?Ao&=Y;d`5%7BZWI7c z7Q%JDv+qI(uQ`vR+5e{VSbo-S+}-}PJ67VH>jd3B=O=U`sML7|O*!|SuWbbP!1=>I z=u(+;SunVA=MUBbUg7-ZT6C$>S$`YCD(6RD5LP?8{Rm-=^W^OS)H=sa23P02;{$L_ z&Ka-KLbJ1$GVvDYIXeMpb$;whL#EAn4JCB#&KgQlpE$>N!L-A948_&YocmBY>ACa2 zC2;e?IeQuaozBZ^p?m4ve=bOu^GR!Xd*wWbrmAk|scjJUINMUx^V<2vT?pSeN7IVb z>wKJ+nYYdn68PM1dfP*VXE)OdN*UZut^684oSN920ilmc?*r4_ru;9!`I)|u!p$Dj zr+lg(eu6ZFzYZd3_vIV>ScB_FDqO@UQ`;u`bm|9KCYVNUg6||#90gy=riD*HQcPd}_ojqt2W{0IGktm!fHc#mB9P-I{CY8F z0#nyykaSZX?E#%K?dOB{U>aoKhsimUPbY-uP22CGg$t&JK@eUx{Y#nh71Nb`2y;wQ zN_eiC>Ozdp+K;$v3h9Pvu_=r86iZBH4!AJ)Op-?UE;Uuq zsJw5oqUH2~>3=)GJv8;G;q8&>3@w@Err#;|t1#`L3BJ-4MXsw%B@02SO`bFh*O+#l zg-NZc!Ih@yI+KNNbG<3xA4nTaj|)H=P4}px)MOfS1YEPJxdL2^X&v3rR@3q^AZ?~O zThL&;DV^@w6Vp$WF+Vl+WPU)rLcLI%b&g=UM}4fHha6Ae2!-QT&83Lu*b!n z>Sudh>ITEa-(_hcgaI!1^=N3HOXyBm2D*f}zJ)T#C7x!PV3)>WP#$pkk^wNp<)289 zP?uop+CdisRq778?7j!U5f=-s-(fCwv`U4$@E0MBaLJ%`G}0yV9stoUTYA97xb$lU zIqDLW4PmUyXnKP%&gFC38%aV(U4c)2*VB}DJxzVr(_`;?n)a@zCtO0Pqv`KDdh%UI zPrd8t>31DH^RAd_GuA^t)b@bf3j-G$l(F^Z7dXYMcpPjh;uBTVt^)%;QPp`h~ zY3{q8UUPBa^8-+b3!}N~zDxEce2RxI=~Qoi;q62Q?%|5$fnPi?oc}=o;9t8j?X5W11Qq6yE z0PdJs!r$7@4jbL42HYw0ikkqOHs7xUIb(L)2g@vTpIYFu&Cyh{J8Q0_O}%sG`v)OB zZ@w^**9GF>)E^c|^UbkTYPx0)rmvd1ZVv1ZH#f|&RF}VL-q!&{fq9_}+%5BW8=xyR z2hRX^$J{a!9iGNzD)_xV{;^B z!sX_ru5_C!%?UKts>~;^0$**O&OupY-n1IJTJvUmG+1Xg(59Bl@M?uDlfk>e;EOrZu1E$B)&F_sNFYa2m11_UUMxyFxxFDvmtb|^iF|^yQOO! zxE&V94sbgy^%PF*vQ!-5lY(%8|K!2$weSbv+u!1_1SG(c^*)-|XIW5%cK2KI_katu z{6S3wS^CGpgtsVegB-9tFu-?+WgAW0p_V&~K@M7uQ$6XBWf~RL4_o@q1UX_!KL9V` zmLZgML|B&4K24-0)%7-LlqI?zz-UWxHMm&Ia@vE9v&c5WG~SZ&DRc>zsn?-PwB%5Q zHpvp$1Ewb8&+<(;xO~gwK`^;yaiVJTbqj6{#-pW@ZgZhU><3(tWiVB#?pVU9(stKUKv{mV z<~5= z0QcPDLwhYREOs={bXrP}Q?UEWBG?IOw`CPS-~c;NxA!T8?jyER61-!C*KRo7H9|xY zu*ZllN^Lzy{1pxppAmoXOAa8PYN7})cEr*9?zia(VjzTxxHx@#{L%MXmySHLoSWPk~{=#h^{!z5{> zD~*SYkvl(u$+?lg4~FpS$S-z)6pTE&9=Zo3C(vem&B)=m!8ME&(B|Bek#qN>6E8+4 zj{r#>HFXe7vPNk-!Cf5X@;Tu7qfAutx;5(ANE%kfqh@~xeAy^H9l@y>^^CUHsz=$Z zg0OCshdU7UqYnSq#Hi&@;HGiZpZviP47ZE?sSx&4*PX9nd6wBY5%BX&KOXRl%rSeo zzRb+agD{8rw+kef3Hl#MK9ht;tB(+Vm5NVb<@_ln%G1957Jp|Ji|}`L_X5c0G>wJh z@5Ua6!@2p30i8FPR-)Y z&;&55SMa!xxupcz&xBLB5y;%35I%^J{I_@Obi|7y2M=G1ag^~SPtD4Wu~UgaYvCxs+vn{TbbbZ|pV!@U4`# zMP}TlTRpRF3beC+9SQL4;Z)e16Y)9Z-z}d9`?-lUhUb|MK{9^<)d9bsx)J{`2EAh> zFm+>=r@@muGq()--OOlO#r>EiG!^b)MsJ6M5T=Bdvrs0TiX8`;W5)qF#4Mw-$YEx7 zE_@wf0&xYoFs6MxNI3I1E{H1^!Bnk=GLn&d!8D4AS`HG;{7GqX43qXV$Wdn1ZnPB3 z)YzbjIL1gRSv*rhHz0xejkdBAnWNXBOJe5JWSz{k2;nn@8RrLKDwFXOERQjctb4)H@co?JV$ZxQ`#58%p@-nk}J}j>=LOL*$!z^(Hca^#P z3?!Eseheg!d5;c4>E8U&+jL2C0GxfYr=f zM{qUFxnOX$Oz&Rc>X@mNfIMZ2#)5P(t4~1J%~)K~wH{{NR&YB7mxADPmtg;Dz&!-M zM?pLVDesYumtfF$0D22zV_@SWaHfMJzJhx+koF5QDS-|YOxys=!-8+bAV&mus74ef z_~;`5!UYm4g2f3ei(#1{NEU)53IY#-Bnie-2$3xK)E~}L1o>fbogqk12RS8Z-X`Ri zhOr-8*?tY%vjTVCJq+KfHSQst-xOS43`l{1rx2)6Ft#5cMS@HNT{poP{#F>4p06ly zeJHp`HL6E~N!`$u2{@`&*9l5!zx9b=&19H775Fj`b_hz05Iz$OJPPi)Aodvg_CoM6 z{a|~iKt<=^Uka9r&|a6|?k<@02*U5c=WD^a>G1MKu&y3luOOSIf$i)~*L>Kxu@C65 zsyiD++2aoO2$f=Xvhzm4n;%=`4{v+ey>#>)|9%M)z}_!~$v)Qc9LRo_rByhPJxt3* zFlz~i3D1r<1AgG0Wym|r(096n?{tUQp7&|CILr=S3Da11Iej^B96Lu2d;;q?4Sh;v zXAFn$Bz7T0h>N<6-8`i?FxO&$8YbYDo&^Ra?*=e_dXkw#3hnr@$nd%-b_+=T8R`v!x)NSmL zZ(-8T&Yt0mmPBjiMG$%mzqStt>m#(y2Jsap{)HxX3rCYvKcR|BbbEy3#=+ZO;VJ%kB)<5g zmG;(xgg1r*a6~Af*f31Eoa%1j!V^@3j1Yc7`?pcTIsAkue6^=P^&(Cvmy7a zIFGN2LR`L_YS?wcbV^L?g%4>^HwYD!TQv$NZUbo&{zD5!v+y<*pIe3BQ<<<$I4T3q z+J)^D{5}z;Qoi?8xR%c4bqFPQVfjpGF~R3^;XZnlUkL3eed-j>dkgNR@cCT;e7L0_ zJb-jR_wyyNf!vj8zz1;I zN!*GrAx!3e=E0?K?^E)d%31#ga*R7Y7GBc0&;JDcIQKbk6N3`wi)!8>h8?BNjxQ&b9>^1k}GFZOhynl!AEoUtP@e<9YCD>b}`vKfOQJNbp_lqK3Y32_U z6wBHeZxJm)UT~WUu(Wzq5 zbiRKqJ8aZ6nt5wPzqf$Yiu`+Ved|PHCcva#H0&Ah4WhAB?`sr|It({Wq8;wwnnm{f znpnJqeDWJ`?V=WbcPu;blXxw-7owd{0PhrqtO4Mq=))`ExpF#iH}*g_pQB0YGnY1`To_@yGmUarhQdA;qbC#cTLQ z;Qm)m-!Bv-9!6!8V6or@;JjGz66An*NFGS2xMUCj2gTkLKpzqhrRVjqIB+evBjQbz zmxhV=Mu3EiS6qje2(gMrN2K^3UmS<)qoiCWUi^<9x&-l8^nfRdXFda$B$iN3Az8e% z7hH;X{!nnK;>{;va$5Ws?-Y-3q%^1@ydqv%3X&s!Nsq);@n(9YbH(BO(s&dUC$0p% zK>P{4*LF)hu0Jdb#T)*But=Os58rL^7+Rh0ick506pLeMl`9c{L__&kq7I7-I&?>&r7w|T*?kIHa z;+wRq^hEpx9qf84{&6uZJH)eSRedJT;kPHS!@j*eAAnb42U;|`#j_g0^@yLBfb6oW zpu_K;R#F*o-d3kR0`avvJQu{z%EF_)y;inA02g2tJq~2Q)oT7p0^9F@7ygDxgjGu* zgppQzseGDb6-dcMvQ^=K-{xu+P61J>)x_2Ca?ENg1%hc-wsZ#mxYh5JQl7A?_z|5* zxALW%deZ6_Cy)#)GruGew`%ZEa0OQ1tpd4aHNF|}BCC(j;e*|_n&=Do9V@97xVu)H zsq$B1RW<}Bl~ymj;IqnVaRIm%E3+EywOUQ0B&f~GfwIn*R_P1jv&%{{9psf&+d+8g zwz@-wsUE9A7hw6?%Fgaruy3qFsVLKHRWb|QTPv5xFx@Wsi}qCAB-g*?9gjB9@KbV9_!s%ebA<6MMaCTT?M+yEB$+8p(!z7ERf(w`Ip9dq;meYW z0B~0%BN~9qku30q@T$a}rt4fu&?&(4Bpw`0@+JHwm|TDO2l|JfyPPO9@9|XO|@VAh=f&;WM<*E!j;OPmkmWnqyu|29Ja8jpUQV z(Dh0t(!hBu*}E0O?b2CqLENMUS0hZ_rOlh6+#%Jxg43PS!$K%`Nk>0MpFE_)h6C>@ z_4pXQ_maj^TJA0Vlad-AY3?5Y_)2B15bl=lUkc(U-9V#pkMx^GfbW$ar3Ketx{s2R z0O?RlvGz$9&`8}c4SB7A??7qJLa;&7+5Cl6{I=*|+95tDowWkwkkplbnu-f+|2=>a z(&>5d7AdWs3P6-pMgd8*R7%1asSkDLsML=iaSZ3%TW7;0RT}v($T8{X^kk(;E7brT zmtLcV?}YS36ol#0p*awqlzvCad4@D=3v{QX|I)WEo|bkhAUq?zNv&r}2hi%9C2gPx zJX<=PlCZPV14jTjCp|)|_IatU5W)-6+V3dpy(oR60l6gI*9M!*(m@|Uc}2Rz7VYLp z$I*SgDt%H6E?4R@5?r42v^6aArIl3ExF+32f$??es!!114e5G*LK=ol5nY%TVO24N)o?_`ndXc0=I;J1Ed(z%yn3PJ-ybtcaG#ix}?tzr0 zt<{IpW)F1Yk+d-xx-#hk8C*Y>_NA1$TsnF*NQKn28GuUZkm2#5Rnq@G2C!N>gEEd9 z>C!joXstAPE4Vt`f|qFstgUH_s70FnFNCeqG%6UhN&DA=v`bsx0`NroJ0)08rAcB4 zJEXhliae8kx*o#k(wzff@Z3uVDIx1kY zOZMzJh==UnS`bg!uy(+`WSeNY@s@q~4Vw3nU87s?E88#xWVh@R?fCe~#>ar{ky%j` zxL1}|PBj>RStiw^0%S9gLv#CN2dGc`WizHi7$`f^3}KLLz_${{-FuwkZd{mJS<~q8|a8^}!haQ)Hue!fUGR%1w}CvQL~r(qyxiKzCfW#T#Bv z$j(j#K3yj8gYcxxnu?Ygvh`;{PRXVu!sN89fg+SMvN#F~Gi86!s+A>cr7};p%+~?J zv$C3p5T29u_CJZ{&&wiHAiW?vG8@2)viJD)=~%R*DId<0Eja;QzO0WMbk}5aD6hRP zv!PJ@hHRDvCO2hjN=yr6rIfJUl0{#GNulh;|G*W={-Lbuw#;S+0C!|Tz2NT3+-VD= zST?>NEK6iR>;(LtOi=_~sVtbXxcjocKczwWK<3&6=|fqj52TM|N7li#Ox8OSy2rAk z2cavMwNNHeAxrBAU8SsR4Rlqq|55N=EsOsOCN(nmQjl8N)n@dmPNpvbS1;SeZ##+4 zxr8>H+GL+m@7rZL-oQPPB~cCJscat=WjkamC|rIfE1`1ZbJ=8CkYC6iSV7k*%Xa|x zQuZVto#>J^d@LT@Mp4xx*6Ryyd5DAoP(hoe$1e{^$jCyXBAQdG(Wb(T&(6 zf8&WR?Ukoer0Op}7y~XqK8`NIK6x{J8^nJ3-wR+FC?8L`Sdjd^DtHN&|2Vt^l$ZZh z0_6d@h^D>}`7e*)CRDzUp74Y62)-!;XWj~;p$nG}c?J?8kEMq(Qa<`POrqpx{{)Ga z=WYZpMxHet2ja<0XQj7jD|2n{`UirQ}U7{=)`GxpG7b^Bfqo?!c6&H zsz_wXJLyr%mM^BN*;#r1ESQ{=H&V!XUOwgw$OZYxzA(8cPkjh-Nxn%B+-3QW7?3M+ zfw%;S9Jvi|dm6u=;m#{hvraaLeW5IryMGB%BscNPPP5vdwS+H~pP;Sp`|?vXoj#D? ze+&3SxesOkkK|u^p`&H;;}mE=mfs0O^X2mOhrw0IH&P+LQZA-}S|vaEJxI0uOG+eb zUq zC-PBuVe(Y|<|I1NA&7cn^fWibLZ-b}Rf|K6wt_pNu%%BO zrdSmUFX4&~dP*Y{^LW2Z_6OIoG!>^R7OaNJF~u#aXQU~Lr^4BB#i(@voKOr{4rl3# zF?Fy!so0wc%M3-*X;_|8xX_N~X@$+l;La!nx1q~al43-xZx^F_z(nUp-Gsq=HHocN`S zQrn}LK)cDW6-UhgzEQ~d_s$|ZOQLF`o3$T>wC>htKg0*zVZDwlcUs@0TfWPhT?j88 z*2k#&<7xepfzZdgY!pm!wx!FIW#+fbL(kE*c8om#jxD2Ul!;md4RN z>na!E?preg2p?K!P@S{PdbT%&mDWE~8K%nm2IaHW)@l`e)>y}U1Cv_oHwz)Gv({0n zU2mP0&*GF=gZ1VyP&QhRv_RQpy`&wa*?OlPY+9_hP(sjZt>CYnL%DO#I&fY#lfHq@ z+h(o;#K&gFFM#{nd_qB~pG`JxZSApn9R!`f&C?G-LTs3P_zboAqZHgho2@kR4%uv@ z5c9B2Q679AvDrz*&oG)H~@(@TkL6aJZX~`25%WQ$7wP? zWwV^ldz`lUb`FG@Hl{Q<&9+(2N1ex4W8R=F?xxMh8$b$dR*3<)XA{2)+p!&_ItyHf&3Sr- z>$y#t0VXeO+%;&Z(|*G0D9C$nj1AlY{4OV}K<4NU+^vt9Qu@F#3b z0{EzlI2l#31vZy$mrsTB9NS58z+bg(pmKJu?RwhmyJb7|KKgdgc2Oa?Qrnz9Fu8AA zvH`*ewpXaU_s}*b3-Cv_18Fz4%vMAvJRaN1B0Qtjy~^T|=@a+zav>?4n9putzjyr6B1BBp*a9GZ%m$Bg^V6t-QZkTurd}s>y5d>vG=PPLP1h-p|O&#?Uj7=bu%ezz)GT z^iusZL8lW;p9`v}`uIZd1=T+~1!9VPcCmjg0MLU~m!OB9?1q1!^I|_thtQYprkAVs zu%6e!?PbT)F26sU>VyUZ*pXj@+s9VY1GJx=6a`!$`>d0jjXTLMrxSk(Y%k>miR{rq zKqRp(k3f>ykO%-%*h7mzQrT}cAjjCBDW*$f18KcJ&Mr5DJHf_Mn2^p!@RF-YTF%gH zkjXYtV35W7e+ykUYu^XLvuqnJ@aNdKkAXYSwhxBx0{innaCVc;tc6Jtd%F%?F;F8$Q}UaExa}w#7CII zqSwB{88kR{3m zm~|3duy7?U%)HQTBuown+j4*l5q=p0E>x(ZYVbj!t{1&HBwWNN=dvR{m`np8S$K+` z$Q0poDg&ot`?fn5UxV592D;NiH#*0EMtFcS+DzeGetaGtu#!Yr<_f>3LxA~0pJniQ zP1sIP-3{TnKyWvOt3L%-BK-C*bmE?HLK(PH;kO@xyD$9tN8la^T^@sbC_KIv+#{j2 z8V!{RZ8Fi&V`1xb0Lq0I$3Ryh+(U!7QaFH$omE1acs_tNLT|n@56hSC3rHJ;krX&J z3Vn8gYZBi27`F zk1#0}@Yh0jAL!l)oi+i`D~#C)-CJSKYIxa>@BKu3ZruM|W6*DR?u8pncW}iqu-VC7 zUI~N;H;rnEp4@N>s=PSEOmN=ZX&yQsF5Cc1Uv3GdySurCRp9(MD~h7_aIW72uoqvL z1D!wD7ZWuX!0G!#7|IQ$9RDC^nh7s)+*TXmd@c22UR+LI!TD1mwv(&A3gJt90}QQXJ4Gg{O6(GGS`ZHrOY4lM==XEzjF%|h3MSs7*}U6z zjJ#=&;KolB91Hv&QO5`nf6*%1{s<7wqMFD)Q8PVn`$aFQVi73PlSz;$ay*2=qFsXk z=SA@+(ZT^y0Hp{aA{E8hp`y>a0XQxi+5_DQ(XGoMS)#E&0&r6_dnil_L^oZ}!=_2} z5swCUh_mcL{KXq783_=7RD+h{#G6`Sk|>`3H4y3IX&2$ z7TcVG@0a3|0T8|xFY*EWjX1Ofmb=ynDv#V~1t9TUV`ez65*M z%8I@jy~^tRD!8e)8q^M9kJWT~ieFpBJV2y@h>6q8z7F+eW^)CYD@;ET{MHJW1cR#+ zeo8O@)e9Tx2w8(Lm*&Yv;Sm1i4UCK_bRsL7vkrx23>QdaA&DDKYeX{l71bM3xUgb0 znaVjI0XfEb--RxX>wW;haju^c!V}zq8L&*}CXGM~C%K|u=*c_9eVqi$Gn`=u zEHk-lZ^3182dH3}&3U?(!SpOQpW?1_+w zM1zlm+ap@P5`cZ8KPbQ5FRI!K-9gbZ+T1xL;>LnIEb1K%azrHgihiv+Omyxw*l^KG znx`W~%icq~k)n+>hNDDBXt|FTJ^vBS9~Jfg5+<>ths6NIiTGQvj2C@Db=m~ciU#Ns zMZZ3TFiG@N5QNF1EFvkQ7K-gsMe%>aym$#gS#ma{Q*)S+3F5*Tk`c}kUNroRQtUvao{u2 z7gw(o2+Jg8m(W6`iOWIjSYOOX0ds^6OIQ8YS-^hpBpj}j7X*Vs&e$qLa5bl+x{|zocI*Ya*0;QAen}Fb@ zxg#JAkw(u!69=UX4dcU7buqdYCjEhSz9Xdb_-#e_-Ble0k7?4ztsv>rVSHQ>JDiE* zZxpeEU8_HX@Xuq9;Bw7xRC@c%>k1sM-6p`_bv3k-tnciDzZ-)4L%Z<|MNxl8e*ybV z3`w?>(G=m$tfxYP57S6P-j{KvH}7{d>-U25W76lrd@u8361V_nryOJ-bA33-#QjWM z2D}F`mqOt8_q z`Ny|0OiG#|3}bK6X^3d{UpjRY!?w_DnZPcb4U)*_E`l(L9mLz=9OcTVG!S@4lvgy0fi2`>1I9T3dU%vsakd@P! z$zpcWX5dO#F%@_3u^oM&d&DO5$L?SO6mEsEg3Y4jqLzKH1+ME@i5s|PcI{QbTiE$U zFll8Mgh1HAZuk{kG1p0n-Az%j28#l%3!#FSZSZ?gkWSk@hXk3+LE;262czi(!F}2P znQ8t>gqKWaMG%a$m=C}C3~V;jLKUpDOeH1G=NSJmD07)*Dzucxh<<>Je5RMSFt0J! zj>6S z%oK!D$tX+EHW$Kd!LUg9$`NF$pt~x#NAG3i3PkjzHB|jzHZJG@qa)p#JR&Xgl z|Nr5!>j@l9tlA97q`{>?OrA<5lBuh<#BSTKVz9I*}x?; zZB&OzWvXXGn8x(K0O1LyD+5t1jZsZUKgfR%>4X3OP#nbntGCdu^`FK8==YjN3Z(yP zVDNXX(_%okr2bajGse+lre0CbbWM=hA zxK3f#)AO0itf83u67xNc{ygUJd~gNK`!tyEGXIppSI=BjEk##!U)G?(};9F6y z`mK~5IOdNg2xA4(1bp`YE`^A`kMjsKkLH9hrfVBWER*vJ?&BCStr_u*T^t-HFpv2Q z@L;9i3Ef%7g|9Bfm)u3t6Ze35%`5I><93z_+!MxwvYbQ#OY3Bk;5DUq$$~x&;8Fys zbT3i``VAn*1V7q=qzNh}pxNVs9V2PH2;y0IDHiM|@|ne3llR$vQx0DQz>^K5NX?7={Rk|tvj?}sw_5u6l2SbzKER}1crSSw;_$y3Ka%cHf4{(3g zlfik2lISxW6!98dtV1H}#juPL)m;C-vDPlwU<3U#!A>c?)wJp1l;+)Rg;`9*Y>7N30zn)T8=_x=Y0rE4 z#t8iX=L$-S*K|;X@Yh3H+ScBQsKr)Jgq60`$ zQBlAW1SKjeC@8Ra1kr<21Qk3{^iaW^?hX{ifcpQw?yjDmX5l!!U-*AMzforT``)YS z3h%vo^{RK~K31B9^2^xnBS6bpkAH&q5X-s?#I>vyJyyLgh80wx-u0~T1$;b;Kdf8w zH^qM~r=aqC_8R4D&M_bT_2q2Y+Y9$wAb0p0wcRT(-HVS0YMu%o>GaV2f^OCy0^VQ=4qk5`$0IVyUM z^?n*3@335okltk#z08WflkcJ-`BiTI92mdJU$qCCsl4?Cs-LB7{|JR$CRvMk?e$H-r9sE=5Q(CJ|vu#j1{Ed*Gf|GCA50s)m z!&oYD90}sv@}gYS@|k>Q7V7+m{PlA1zLW3U zg*s;|i^GBLRkU}(TdsWQp$CUnDTRH|n$t=TaxmX16EDNZkIHL{K|H7AQ4;Z2W$RXa z%u<&&MS(f$nc1jqzWUeKfbLSyc7Ws(HHLEgT>U#8kuFy!evMjIsvqAE^oaU1}`SK32(htwHe(a%Kc7dt8403w%5wH_Gh@=9BVQ^qlas^7!@m*ebuU2Fz{pCzR9L zEf3&tf1u=K{xk#V6?yRxh#ZtNUxCOWdGoU<{;K@ljXdcDo^Ibr@#IPQB(FLFr&@Cz zm|w_4nxo)X@=tX9_qF^F>geC)zdVm>aDx5=c&Fs|qw#TC?vRGgd?PO|0{T{dFb^W% z$v5+dPAF+zDjI_Lv%F^rYWYQe{98!=D(CKi$n8o!+KbFl(&^c%dCG%}@iAY?$NHcT z{Dg0)R}%+~K#@t8^IuOWDS-i{khzmFa));@))N8?*?9VM!h6|vTF~!j>{B#!2^-xT zbw9wKp~i65m^AD`_Re_JwVVyS8|Wc+@=<)OVC~k@sI&2-A^8X!dn<~sW^)dq_!{ON z3$&IU{t0LuyCQG`@KJX4l_>Z)`}if)wvn}n$9*4^*VQ*y=?*owLaJj8od9;)P5a)?XoUuS@QdBpc%bbWCG-m5=-7`4}I3!p%^0t!I7kLKkcVqY~YfO5Upj|RKX ztZJ~YT1-y)>ekQUz3)HY0lj}w45}N@i>?Q5+Jx&tx3`Am;F!;GJtT{EwL_nH3zZJ* zU4!>)63*h5!-w>O%!m$@H5!>i_IB+Xl!m~j>4b+2pY17qy*I0%iK z{3Iyj+tE5RVbD(yn)u9DxWV=Dv>m!>)ht}!dbAxR=dfLwJn17P+v|M;VimVjcwc$? z2=DX}(n?MG0bRC$@(q{ICil?wmdj9a^_5TKz2>hwLFxVkDb*EiDM;(_DdiMRtx_b`Z`zrL{alaSoXr%vDXHj;*iUp7v$j0M(P~}tL z4mld=hU$hc{}w{SRviQTnnk3D!%xv>ctm%KnMUrv8%X+_w8s@Qq3sG!7+x#j%X3LGq%I3;@ zenh!>@}Mb@oG*8}74nDODr?i= zFy1RBxWKL4@eZ!5ZleTvhomY++%C`Zjh`qb!=6b3qxIDNRCv*5ytnP& z3h(7h`a!5-_W`Qt!!zhnRa4r+wL40`YSm#yEGQlOt_7v@r<9VrY&XThT^^f&_seqw zsI%+U^gw>~TfFtB7{2(+A=K+m`n&c%3DnK2uI`E|u71B6=zU#dP@vyKTM`BX3JDiuG+lYV%gurChplkV>c(aBT1xWSYo9Fo`PPfv%GlRYYe zQDqy`JPqk$CyPnV*yHJ*kNlT;-t&NB+as^@mR2UJ&7 z2BcMG7mN4YjD4f3>}CnB!oN%*;vSahd5nmjS9R8QR?pRV^H)T07t;GEI1yFJk9HM5 zg+G*1{7IfCKv6zr$*!XA$*QE3;*6mHim#NVczWUqD%CTITH$GX3}W-c1F4?D9}@MK zPpG0Vna9)jGjKjxKh4VGh9VaBKN9#Dv^p&m2X(2=VATo z0Xft2Gp-c;;kBpHKZyC1ob4*wwT`4aAskhe7iFL4dR!^nKi%SRdn)GYJ8aI$uq=6(za;8W*3C-{2mw!?_2mY7S*%(EO84WT$u}z@KW;g zTzRi=!$m>9EA6M5=ygVcE9%Qh7@6oo&)XUa#}v8bpAlCmYO$+rWMB_fU->4egq z8++cwwd(nv-j&KG9{TxL)pLN}mBOa3utSF+8d0oznv*8RH1O2mQ&r-dx#U!&PE{qb zxn~xUJX~iKweajE$ygz|mbFw>r9mJ<^-TDQvp zQIIWa?aEv}8A7;h<9U;`2;G9+L~nT?w&EM!8P}!D@5Xhf<#bXwq>xf2w@s+PJ02&b zeZf;~E(KwG+3mPdw|XA!yMM>SE)<2%XLs_Luax}2pf2z^O&;lq_on^3 z;=S3QK_Lr1h-tGdxWMhof29>VR-_8e2^X3ZAv8x5niDBBCrW6J7n(zgqqw3?(>63H zU{|3SQ-vDHo|dFSN=a;}F2#oGQk>AGc%e%gbSW0Plpu5|(bA=QA-WW+>yoMlgf1nS zx`fi5lS6eWB~+JEg)Vu8F2xF6O0#q+Jye%6OkEO^Ygs0gqBzS_Y5K)%;TK)PFZz^l z#q^6&IX3@ibAP#>oB8Rlu~`Xqcm;Jiy!wU0;S~voS1cSJOxJLD4NQmk$=eux;qV$d z{9TFgca4O<3z!bCR5(1p)8Um_4zICrcug#a*VO6onhA&3oE#onBK%zo%ipyW{;n1L zU4V3DMC*$=yawxcACW-ecuY%`#|aF@Q^Dv^=GfTDx}d4&N*3j>M~ z1{5m{D9$pV_z(jk`w6HX!v`mvXF!Re29y|TK=p(HB?$wHh5;qQfRcp)rC0`(8e%|+ zrU8-tU`bN^X{G_8bm#O?1Ih?BpiE&val(KSg#l$*29zCYKt9uegydS5Lk5(q#}xqt z7OF6y2w^~ZHUrA9+kgtJ_@OWuKNLCQhvGWTNfYK&-}6Mk2q4_To?QQyJz4QXiLfWr zoEiypDs`HZ-!i8%GN%9q5REN+YT~pfe3haRKs0mMQ*+CnS_pe;DdLA#7d59yyE#Gs z+T!6nm_(Q`s>0Tu!9+6GyMGyCh9_QywI`C(d(?Nm@E*$oS09{)I9 zCk~_QdVTxgJvlIugiI5(LpVYltp+O6B^#e)~%g!mUhMm zwKKt?or%!SzZ1EJlfC(JPk4Xt6BD(6Wd=%w{BGGtW@zitQ?Anz>$@g7~D zu4C2>G8Us5O>8z29xlc-LX4><##E(HV-WV{{zx(9Q6drw6Kjw+IOV}LNbJMR6iZCq zst}7U#_FHW+hQaHCqFp%Wr=kyI`tfjPSS-uS<1y0oxs<)kMe+QTXp`(qJt&INSEY_ zdCjY1Uae`3a0guB_g+KE377C!`67%j5dNxA_^Tq}uZo4gsxSOi12c@TBZ1OTBv491 zol^-pC#aanpfnQRsZ@BUB6z0~cqhN`PGy#NY8(=@mpGhL6Vo}NaOb9>&Z$|ba|$#U z-l>7`P9?%SwXnQX%TVvs$_(0taCC zEBRIe0>P${x(XKqA0Y-_69XS920qH#KY7pFKZ)%Va)NpaE0}+X5mON`l36jK3q`D$ zia0S9$N_m{FctA)DiW-zNDP^Z7{^r9Gp7QDJ12!sMKY#Bcd=$ND@9C2l$eSbF%_xS zRHTJYMY=f^LUJw3pmicsIE^gfG~B{zWCxu_l+P0gCSYv|h#YI7$PF$Od5(o5zb;=< zzd-o3LgCYjgik9L+o$@$bOgCrGXdMc;ZPb1hw{7kPnWPx3`dByUH;GQpF-0SN`VVG zh^1aNIq(J!)vV|!1E~p0ASywn|BqzdE}V43IR7_f-7cJT!&cJF;Qm);-JD4`k5GDF zzD?`@FY88Y?pyMIFzc2HJvZ{>ZZqjt=%NgqiWhCdXII;`pNxVs>-lvmeZV-Sxb$4} zg|+^7DSZI0{@=)hr^zaPy4F z$UG|rSaAy}jN$2Sc>2!0?Ya(opfhvD=M_pHEy9}^5#Gd#@Fq@#H}N98NwC73#0!Qu z^+LiM-P0$D_{Iotl0w6qWD(w^i0}sb?oC2?lPbcSG%LJG4+(FQ9N|rd8Q!39=S)4k z33~dh&`>j5gf|Hyyh#$_jn4{iazewKTr<28l51HWg*W*kyeSajjdko?7_fQzqPjOf z#a4JzKN#LLaD+Dv>kMy7M0nFkgg4l&8pq4}mW@dPrOY3UZ-U`XnIpVuEW(>6j?7O} zv0rNDO#C#r5+s(Ev9ZSfe%)Zp_EjYVqeTUje77)p51Bk3B~lOpny2yM!sa7{&1;s; zM_$n8qlC>fair=EHFeAHBMNI>N5FahsoDBOg`{AYv8c? zhQj7coHpOcviVYB^M1?b%bdyH#=_*AI845&W%A8j0W(L^T-ZDgiO$P?SvishErrdy zLu}qN-DjNxUBn{xjkGL+=@v12H=g`cd`Jr$G2p+S7XG7I;lLkE3;)rqu&)1wzdtQ} z;jD0uFb(VMBiFVX=9#7upvSFjyZwC2HVT5vVWGn`it02CZ0U`st#Ddu9F{f^rh&AV zVHzb))4;Lj{P0E&+b9*wq2FN|Wx_NXJ58gBWg1O|X*9D;0~y}Xr>$BD(`XrR*hVYM zHt?u{kv?oAOrz~ZO~XoA!N2KG4cQ|?JY!&Ni6UqgVYn!51(=$!sDBk;QiK@u2O>-qFHu5Q8zpqLNfN6~vOU05 zu-K$vu?gr;gQZ%lOCPFUt4(I;Y7;3|8!Nz6M1UFc{6S0m(_rEO z1R)yo00N#r$P*@o=MT6qPEDvgV^(O{P*Ko^iXApozfK!!AZ)0iupul0Mo8I6*idQE zhHM!#zr%*ggbg)z*iaK;LwF=7^ohl0mJKx*Hq^qhA)JYX+E6Rl5WE*MX007I)W)(Q zSd3vq<-&$4E^0#;4Jq*qo?$~8*$}o+%O{if#FK-%4HY1yG#=H#L0(Z8bPFP zI}L8K*-o2_oV$o;ME%y2t=7@Mxvj3+$s&VJHF)k46?*pXtve2hrboNdp+%vOcE#1D z8D;V2tcN_On&6o9L^0|09Fv|TCLIsJhE95l=V5W~@`p~4v#d$Sv#rLYTZjF|2{NLH zIu4NC_iBOSiFihfQbUQeZBx_VdMrZ|#t@>ztZ|x~3-4F*WtX)Fe5kh7R}jv;F_FsrlE3`*lx^Ys|60P3Fu@z1KD~ z{UU{%iV`z}Cp-){Sa zPoR4^ec?`a$p-g7YH!J6R?mBuCN(&#X<}B>ty#qb{-FzCrkK?%$E;>sv+5D9&@I-# zi@8EfNkEck;IF@|!=ajgYfk?7lz44hf&WGy_`i2fTtnLh=nt!g{fc+pX4XDto1fb* zGCvntqpYm_r9=;@|83!e^_1%WN1kvI3p{!oCg?tP9eq{P{j58o#q4eRSiTvj|~o6D)cb1plJ)YGL*=6~BfPlG zurF6<{TI8t>Oa*z@sS1Y+KfE4PqHT+f0Zgr>v>E=HJy8#sgLsPp6cto$2DpWA3Rqr z=99*#;rym+)E#{9aMh=dA2wzJ@9~IQ#j^*iEJE)}@__NzEr5VdBD=YO&vdWs_ z`#Tt0?xL=g^Ridfq}oMo)wYZe?WlUUKd*)}KCrX8ySC&qHCY~lvoQILQG-v$WAaon zzIY`}*()*JR}M2s_)3c~xU_aY=pK%I08aBzV?-|C-nQb*6+`8e^>3H zu46x#EYzY4mTt}5952TR<-B8GwL{gC2wWefN~m4#uKIgfuD`s0J6)gLZ9!4o z6}i<_XmbB{wX6E8ofsd%)eK&BtD0R~I8c2-HYZBsCkLxPVR3WGFViiKNvu+DVOw{% z(WRxM@Ew7=&Z?1ME~8$QmJy$ZmSy=%%DR_}@vR||CdTl)+q!GAa!Uu63O$@j%tMTo znw8gN`TXSrh5iTRy~NLEd8K|*(!6S2$4xtv)d!*_|9F&IP*6j>HH=kUAs9o6f|_$H2ME%%TK{O3d3rA*)@Lr}%gHIt=%CLY zy0(s}=Tw%^x^b!1t$jq?&X8+QT4G!{F8}l zF>A@AC#lKF(_$h1rpn3&H>oHalPeT-1FxKOL*v1I-Nh0!t{CO3$f>?ezw=(*BOD=}ORCM9tnPIOR*>Kci6vwzTBE9* z#^pH`%GgGtHr=nxVa#7Spt4dB@n_><%1Xu(a!Z@!iP6B{kB8xl30Q8K5Yx-u#v${H${u?NGqlxz+Mh4}|nj)h`fC*+q9y;foIIfAl+DEmOEt`MZnM0x`xs|mY^ z@`1v9H8puc>P@1ZR)YOGMuc-Zp~}#=<3yPcEfHl-5aE86<=~5tO`ZIKNDrx~TBr1n zAiwWi-AuzD!96s4+#-^(M)oBWkoYD4!iy1tj6 zo26z1Iws-z5d}tA?)T@E4sRlBrjZfjxjGp8i1DBsp1R%e>x8tF4B~9u&_A`b+Fv2` z(of`rkR3hG?-R~^1Q9ps#C{!e7x&Al7KVM8IN!psbLLg|gFi4=>*N%W-=R65*DtrC zJhw*3Pa?*C{&b)p(H8t~u zXYP^)`Wk-g?P^wi%i}anr>YF$vhwnA{d4?slrc^Z66<@u@ph~~EBVW}t1a2xwQP>6 z#jw@2QA^Zyo)#P7*ZsoVp7TL|hn*6Z1Ij)-C4nff^Uohr_o|ndm3OP%v_gHlLGv5) zb8gJJaaXxAiPjZ%AH9t%RpJ`?OGj6U`gJ?{j4@$+bNKx)tB-g_v_+No%iMQRO{?v7 zK#gK-QSGo-)M&;|@W}_&`m)-NuRN$WX5;wbgK7!e$A3MjHj4MRN4Ys37C%bNX-8gp zNNvP6@(G7jKa1gy5E@dqF{c2-=sxVvq<4h7&0a_$uF^kt$v1}`$Od-ux9#-jK+ zBJYr~;F@7ts!og6C)CN(t93Xy*|C#59!itNVj%+7*YbI$Q^TSiLtSD*Hl#w^wFuljPk;ASZ$zPwMCG+2+B4ha0 z$=d4L5mU6uEaIk#Q^s~2Hh%n=8+g`aEvxq1>oqNZ`!a2-!n1d3YNvJh>WjUq6t)iP z)6SbP$2C`-hjF}zwe$MrPTmCk!M#K>_pHNQjGKDDO9eDP7!kgpS(iL!dKHtQV+gmr4}Df zmlPBy^H*1Dsr7E~X1DiB`}Y6krI!!9@)~NVhA!d1tkep-MIy$gh_j>frl3=>Sr=VG zSlPpn4>lh1J^18@wfGXMk|IxgQGA7fMD))=Z;5Ma0pV=E1w}IGl7dbe-H@RIy*EDz z5xt=la;~dGgu>4ibL9?_Bl>0oul({dCPwl&14Kkd9R{k$}3)JWn} zT-e3nTa!q13I?0jL8myd%Ai~0L-G{=`GfKW)(t2CY#3xnqG1&OjpirO)(k37;hwF$ zCAO89t0F~oF9ap6LpqeBV}EBKKow0OO<6cIwfB+(Fx2T5TB zreKh+#Q;z!Xm&uKAt6WMAUa@`qiE2MDHbFw>Om-&iYPAF5y7B<(5t(?z$AQ$6h(TZ zL!!SVMs$kzw$?$X*l%1NbczG3>Y&fL03A_alJFjSN2$|vV=0+uuGi{i&^3jBP3x$1 z1n;>X?vF$$Tf#HE*ve=YHk@Erd4XS8ZIqPEqunu0)$mv7aE zAWmDk75+|bN8XVf96!8OQ&YwP_eDWra@27Bmi+G!kEH;P6jqQs@|10;Wh2N&xAa;N z$MxK%C9%N3suX5MeRR_L3QAxRWBHUvrU48DkQKm2DlF!3JbtG8=e zv2;nVwzw;GY7#%P9UUTa0zZxV*(4rbtEJ&1zgEjFCI*F><8p&zM2!>m2jzO?E0@r4%#!{=O3gX=W9?1!eOTC;OXWRG-A#cZENiq0GG}OnV zcWAz0R587r6=#EHulQf_o$_MDXY%`YXoZ0dS*Q;$B2%??OcNt;LtG2>5_F2RY5GC8 zmLig;c)O{MF6yO#oBAm*;_ZO$IjIsVn2Z42tdPtchFGnKBccGr^ntn<7IP^YPO=x4 zAN#K>w72+D8sL-{6SRT*{si6i`y{C;`dMYR%g=j)oH7*TeISd{gx@60eOqAWs~*){ zDo7vm^?%X|UAu5Ojvt}R&vBW|f59cbSUi8HmWz+ecWNzMlXBoq_}rb^&+L0XYnOHf z>&=hsg4hiH<1Q`NwKrduc5&ZsE!RDxuPl8rjd$Ix<-q*M?}pG0z7!ws(O=5a6)pLT z;J9mZRH^C<{v}x&rj}wvF7&# zGi`=+X!4KQF!7J`G5ZiR(Pl`95t%kY0#mgK*s=&reA)~NO#C7nCO&P7?0ozlfQ5-q zn>AnblL-0C29mN8)Z4zQgT1(T-?UER!tu{VY zyUT|0!xz$Shdh$qR(&K7WMOJXQyT_9PU>MJkiZiBSfZBJrv!Dc2dg7UqAka5qEt8S z!|;KZF{26CSqV&hIu#I@s&2{q{RLg_VIz}RZyP4D5jITxaW+i+<2Fou+R)(xFQXat zBZ8RtO>G$E1JWcLfdpvhN5w@2$yyK--*3azfQ>dxd^&Q#2VO=4(y`$*US3_($A&Zz z`~D_;*-ID*+A6ph zdr_rsz_gf{@&RdvO@Io_wBheiU>0yyuz`SMCWd{MdeQl-(T3NKX@_gabe3Vq(`;Dp5VpL=%PTc<+%G^kq}{I}z@)YixDS|u0-7V@({5Ps zyMVtQINQdj9kJk(Jne|>Sc(o}EKL#v?ue;H{Q+G$lWhW2LADK34@TQC@h3QNN9?J^ z4e>qfQYYZ9Aczjoo?Gzo+pyAov9@KIJ z4NU?C^VG*I+o0`3o5V|~9VGz_nlbCN!M9`D;M+0n*X@}0={6kDH|REkG#cA-JEm>A z9n(JDj%lNA$FxzmW7??OF>Ta?m~TI%H4f1EOOPf>wAU7x24x-61;)!O;TN{8mlzb< zj2lEIod7@F+?w-`6w5u054)UGM-MpxOnvJi!H`?xt0y!u!*HK`HjZZf~8o-jL9-gsb;$sJ6@d;B# zfXL)uo1p$OGee*^h@!c^HUTO?heae#1-hcZNML)9ciH$PPx%C0+#K>SBo728KAj~A z+!ytw0QUuf8W5l!473SQ0m?pz0>nRO!^Ed^C&3?!3ZsB&8zY7|&&DTtN>vDXs&7{i z2Xy~QM^!=qKSLqC3T&_NV;i3;q{N1hrwW@Qp&>BwDZwEyM}3!@2@lc0bYwIPev)Cz zl<^P+sKN#Oi`TU_Y%R|}tPN)~`5lL`x!%mzA4bmOdA^@MUge)0)=Jrl+QcJ3>~w9j zH?ZZ9&nbM~U$smYUAz9TTB*!3_|c=_m+|k8YL&hk6?=llMjntFGXi)J@Qt`9;c2|j zTUu$^T#$V>u@%5af&XHPJq=uD^Ke4;9pPpKKZJf&vrcwZ2A)^AA3 z8M{D72c|5Iogagoj2(~Wcf6ye1?Xp>#7p=hO5X@kn#F;gLh)YGDgEV@@B?txOO&Tf zj6r15wcw8jZU}-Hs|SO8V_A;r94tVCm*BvZgAo-{gL+&Z#QI>{u&&27q5K*fCVui2 zf{$gHD)3tb!`q(dDFh7uIUA-54)+e_e{I7$|7r){hIM{_lOHhE<8wg(CV^9fLMsRx z9K^(bd1w$*2Ts^9@%Ii7<-cje#6Nzm!H3^8dU(bp5GH{)#{?@NJkv~_(IS6C9dk~3 zFNon~l#jeFh^c{;2h-Umf1H8IZyODuWSCuGfeljyl>D;uH#qPjGw($WysM4|Qqsv@ zexHt!mK6sy~-CXh99c6USwW;-+NlN9!pb_$6ok^15dKmvd2*iwfkd- z{OEC^^{u*a`Fi^9VVt8t4Da_oQWl47heloIw~d&KQx}VKBi?x9k*5Z6QBA4Rvm>e#YbYawV|RD zrPIGrsXTt*1Ek86z*=GCn?Y2iT>jk$2#wF!>heS61q?a`e>u>RP7d4;_+!XZCNCCz zd^bsmJpLXm1m6QZJ=@42<9SVK1+ZvB44Uwmn>L-2G1^q&76`<`wNuPO1@=2Cd<*!f zZ0xv*|26RLTnW#Z81f9;yW$d@@|iduIMO3!=b=ZjQ2A`&WpM2?On!++zrU0XjP$E4 zwS~ZV^T>g2&<(gR290cnDi{phQ!x(3h>!G;bP~Zn9o7-P8`wUAtAJx+#v@EVey&~G zf)3Ex7s($9I1143-`Feo*@5F>Q9Y68>1|d(JDVA{2DStK&SgBGKsSJ_6pr{oOzCyN z_WA?U9fUi8@moB4@|r4G2|N@xz=u8p8*nkmHUj&A?G?TYT#m@2rP;uLIQYMW;(!#6 zZO2p$QLAGq9Y?82!*?SR*}lENM|<@*7@38h56x>8OA{@zq-JdY~f1pE%R zkX=mqdBDN?vAWW}XQpikcLHxJkizaX3mgW<@0{pbPYpo6OX>uzrqm7LFMx~jbV(x< z{|tRN)U$8)5xb7lo?fgiLrs6BAAVps(xkt)0r z__+o_D;WkH>=Bc0cHp~#Q}TliS_yn#o-xG%s&ESkiJgtD2jLfi_oIbgvq49JS9dTD z%!vOH@QJP_7}AB56%M8TRBixCi3kqW#mDyX!rfcwSa=oz~by+@aUVDCX+ z2OjIdw>vNg9)?VdFsmmV{O5pE;MgcCB**q=U>_RLocs^<=nW8#OTx}&=|kX7?Qs-o z_V9aPdjq3z?y?^@EHe3dgmDA%j8tC(U?^^O4`A{et%2?3k@}OE4^~3{hYAb?;dHoh z&P#ZTqX2ygVHA=C15Nn{fHQ1L`4n&$EGJ;YktviK47uSU;1pN|2~hoS0++zd1H#pQ z>?rU9a50pIl2cSb#V_k@!iWe@mJDp~Q5o<`=!_VVHo*94R{eP@D&O59e+}^6*Wr{* zv}h^_Ftu#lPam>bz@u$euoM`-+-?o=Cg5(E0y_Ss8|(#k!F7u%I}Cguwlv-0yNUl1 z@E7o$!ZCTE-L1w445c7}C=ia=8c+ayMN_>G3< z4SoS`g&PV_nivhU246Iw4e;IY8}&{3uE2q*&|30jWEOovxUXTbf>FRFwjM129%q}9 z#lZFkJ_cM4B^C|X1-uj;6b(ECJjqu6{b<hLmsw>FQ@fajn>p)*$iXXAg;iC8S>*8s<&zM*D)*E`DJ6$AUb5561@OuylB2)qd$h%^I+ zjlc)6I0;|B4LHiSoE`?oyjtL3;8Rh?ltBL!DIAk&Z=nx(DU?b$j&fiej96OU6?hCBjnJ8EflmVq`5D0W z`W6CzhY?OU8?Y|O59p4k7KCO<%#APw4hIEv{s{;E!GSgWM&TW{2Im3W8_)vy2y&-F zN3OK^uz&J=*Mcyr@yezikYj;DNm0-d>M@mH4ZIslC>+-| zV0#1h1FwXi@k5^KI|{77X#LN|zfVB8!8XJ{1E0Yh3C|XZ&}IwfPz-T0@O!p7tq*L! zVF%!47}1%in{GG=c!{n4>r8q5(2aU91BCamUJKt%ziDW%a2ar{Z4P$;uf~vzIXw!D zm+tRku=D)DQT`hT{uQ{SG1h-FGipE@{_b=9I4Nu+Fts=zIOr%;sRZ~An3WiT4!|=d zDZ4G?X-aB<(HK)nWoaO=y#wQcx8w$0{cXT0d079anK!%(gfh)|xR@HS2DlmKxXR>j z0$!OHY`}}auiEwjZvc-(z#*2`6Tpu{zM)zETj2e$62TA0P#+2)Aix$6Jz$a#1cnHu zhgqOC@U}w4`A`CCP&IJ4%@tn{+y~3;3R8X|Fka>qsM1p4xluu-+YP)4iy2KBjrc3T z0s9cWOBL*8*?31Sr+@nd7(aq*d9t5@tIV7Q4Y?-;K`3r88uI#-0sn#F3cQfU3Rd@(#91ZH){MkLp$@J`?{9fJG$hk#pQ1cWQz>ZouZFwUGUM|A`k zN5B^T8*o!e%FadusRQ4q!2ZVAdg#HH#oods;B%<3uUHa3=7N=%KNEGU-0x zp|&Ai2aK1cgqwh)5VRf!kvjMy@Cz6Lvq1sr1PH$%pvW-=egu98m};N`iBMPk47sI5 zWx!*w6B=srI{@1o+=uv0Q68I7DnAN1!xpm5CJY_I2l!b37vsua!K1`6U)lJqb?{#Y zo}L+u;XVLv1v9-FvUJ1mfuo9pJ0Umn()RjOf%n7DkmJ+$|9*!+I}*TAV_UPrp}+@h zBXTS7K#Ji|11a5|j`C|9_*nO;H} z_$XYfh;R-9Peubp2i^nT4J8!~{uFqByI_LjN8pv<$4LW>3f)DTXFSTS & USB_OTG_DTXFSTS_INEPTFSAV) > len32b && /* SHOULD THIS BE ">=" ??????? */ + while ( (USBx_INEP(epnum)->DTXFSTS & USB_OTG_DTXFSTS_INEPTFSAV) >= len32b && /* Changed from ">" */ ep->xfer_count < ep->xfer_len && ep->xfer_len != 0) { - /* Write the FIFO */ + /* Write the FIFO */ + USB_WritePacket(USBx, ep->xfer_buff, epnum, len, hpcd->Init.dma_enable); + + ep->xfer_buff += len; + ep->xfer_count += len; + len = ep->xfer_len - ep->xfer_count; - if (len > ep->maxpacket) { len = ep->maxpacket; } len32b = (len + 3) / 4; - - USB_WritePacket(USBx, ep->xfer_buff, epnum, len, hpcd->Init.dma_enable); - - ep->xfer_buff += len; - ep->xfer_count += len; } - if(len <= 0) //SHOULD THIS BE "if (ep->xfer_count >= ep->xfer_len)" ??????? - { //or just move USB_WritePacket up below the while check??????? + if (len <= 0) + { fifoemptymsk = 0x1 << epnum; USBx_DEVICE->DIEPEMPMSK &= ~fifoemptymsk; diff --git a/Upstream/Inc/board_config.h b/Upstream/Inc/board_config.h index 2484c5a..6b904bb 100644 --- a/Upstream/Inc/board_config.h +++ b/Upstream/Inc/board_config.h @@ -26,6 +26,11 @@ #define STAT_LED_ON STAT_LED_PORT->BSRR = (STAT_LED_PIN << BSRR_SHIFT_LOW) //Stat LED is active-low #define STAT_LED_OFF STAT_LED_PORT->BSRR = (STAT_LED_PIN << BSRR_SHIFT_HIGH) +#define SPI_DMA_ACTIVE_PIN GPIO_PIN_5 /////////Temporary indicator of SPI & DMA activity +#define SPI_DMA_ACTIVE_PORT GPIOB +#define SPI_DMA_ACTIVE_ON SPI_DMA_ACTIVE_PORT->BSRR = (SPI_DMA_ACTIVE_PIN << BSRR_SHIFT_LOW) +#define SPI_DMA_ACTIVE_OFF SPI_DMA_ACTIVE_PORT->BSRR = (SPI_DMA_ACTIVE_PIN << BSRR_SHIFT_HIGH) + #define SPI1_NSS_PIN GPIO_PIN_4 #define SPI1_NSS_PORT GPIOA #define SPI1_NSS_ASSERT SPI1_NSS_PORT->BSRR = (SPI1_NSS_PIN << BSRR_SHIFT_LOW) diff --git a/Upstream/Inc/downstream_interface_msc.h b/Upstream/Inc/downstream_interface_msc.h index 1bcafd2..0458abf 100644 --- a/Upstream/Inc/downstream_interface_msc.h +++ b/Upstream/Inc/downstream_interface_msc.h @@ -14,7 +14,8 @@ typedef void (*DownstreamInterfaceMSCCallbackTypeDef)(HAL_StatusTypeDef result); typedef void (*DownstreamInterfaceMSCCallbackPacketTypeDef)(HAL_StatusTypeDef result, - DownstreamPacketTypeDef* downstreamPacket); + DownstreamPacketTypeDef* downstreamPacket, + uint16_t dataLength); typedef void (*DownstreamInterfaceMSCCallbackUintPacketTypeDef)(HAL_StatusTypeDef result, uint32_t result_uint[], DownstreamPacketTypeDef* downstreamPacket); diff --git a/Upstream/Inc/downstream_spi.h b/Upstream/Inc/downstream_spi.h index af664f3..24297b7 100644 --- a/Upstream/Inc/downstream_spi.h +++ b/Upstream/Inc/downstream_spi.h @@ -9,11 +9,11 @@ #define INC_DOWNSTREAM_SPI_H_ -#include "usbd_def.h" +#include "usbd_config.h" #define DOWNSTREAM_PACKET_HEADER_LEN (2) //Min length = CommandClass & Command bytes -#define DOWNSTREAM_PACKET_LEN (DOWNSTREAM_PACKET_HEADER_LEN + USB_HS_MAX_PACKET_SIZE) +#define DOWNSTREAM_PACKET_LEN (DOWNSTREAM_PACKET_HEADER_LEN + MSC_MEDIA_PACKET) #define DOWNSTREAM_PACKET_LEN_MIN (DOWNSTREAM_PACKET_HEADER_LEN) diff --git a/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc.c b/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc.c index 5a1a761..bde7f06 100755 --- a/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc.c +++ b/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc.c @@ -153,7 +153,7 @@ __ALIGN_BEGIN uint8_t USBD_MSC_CfgHSDesc[USB_MSC_CONFIG_DESC_SIZ] __ALIGN_END = 0x01, /* bConfigurationValue: */ 0x04, /* iConfiguration: */ 0xC0, /* bmAttributes: */ - 0x32, /* MaxPower 100 mA */ + 0xFA, /* MaxPower 500 mA */ /******************** Mass Storage interface ********************/ 0x09, /* bLength: Interface Descriptor size */ @@ -538,10 +538,13 @@ uint8_t USBD_MSC_DataOut (USBD_HandleTypeDef *pdev, uint8_t USBD_MSC_BufferFreed(USBD_HandleTypeDef *pdev) { - if (((USBD_MSC_BOT_HandleTypeDef*)pdev->pClassData)->bot_packet != NULL) + if (((USBD_MSC_BOT_HandleTypeDef*)pdev->pClassData) != NULL) { - Downstream_ReleasePacket(((USBD_MSC_BOT_HandleTypeDef*)pdev->pClassData)->bot_packet); - ((USBD_MSC_BOT_HandleTypeDef*)pdev->pClassData)->bot_packet = NULL; + if (((USBD_MSC_BOT_HandleTypeDef*)pdev->pClassData)->bot_packet != NULL) + { + Downstream_ReleasePacket(((USBD_MSC_BOT_HandleTypeDef*)pdev->pClassData)->bot_packet); + ((USBD_MSC_BOT_HandleTypeDef*)pdev->pClassData)->bot_packet = NULL; + } } return 0; } diff --git a/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc_scsi.c b/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc_scsi.c index e46ac08..83e9b9b 100755 --- a/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc_scsi.c +++ b/Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc_scsi.c @@ -112,7 +112,8 @@ void SCSI_ReadFormatCapacityCallback(HAL_StatusTypeDef result, DownstreamPacketTypeDef* packetToUse); void SCSI_Read10BeginCallback(HAL_StatusTypeDef result); void SCSI_Read10ReplyCallback(HAL_StatusTypeDef result, - DownstreamPacketTypeDef* downstreamPacket); + DownstreamPacketTypeDef* downstreamPacket, + uint16_t dataLength); void SCSI_Write10BeginCallback(HAL_StatusTypeDef result); void SCSI_Write10FreePacketCallback(DownstreamPacketTypeDef* freePacket); @@ -599,7 +600,10 @@ static void SCSI_Read10(void) } //hmsc->bot_state is already USBD_BOT_DATA_IN - DownstreamInterface_GetStreamDataPacket(SCSI_Read10ReplyCallback); + if (DownstreamInterface_GetStreamDataPacket(SCSI_Read10ReplyCallback) != HAL_OK) + { + SCSI_Read10ReplyCallback(HAL_ERROR, NULL, 0); + } } @@ -618,17 +622,14 @@ void SCSI_Read10BeginCallback(HAL_StatusTypeDef result) if (DownstreamInterface_GetStreamDataPacket(SCSI_Read10ReplyCallback) != HAL_OK) { - SCSI_SenseCode(SCSI_ProcessCmd_pdev, - SCSI_ProcessCmd_lun, - NOT_READY, - MEDIUM_NOT_PRESENT); - SCSI_ProcessCmd_callback(-1); + SCSI_Read10ReplyCallback(HAL_ERROR, NULL, 0); } } void SCSI_Read10ReplyCallback(HAL_StatusTypeDef result, - DownstreamPacketTypeDef* downstreamPacket) + DownstreamPacketTypeDef* downstreamPacket, + uint16_t dataLength) { if (result != HAL_OK) { @@ -640,15 +641,18 @@ void SCSI_Read10ReplyCallback(HAL_StatusTypeDef result, return; } + if (SCSI_ProcessCmd_hmsc->bot_packet != NULL) + while (1); /////////////////////////////////////////! + SCSI_ProcessCmd_hmsc->bot_packet = downstreamPacket; SCSI_ProcessCmd_hmsc->bot_data = downstreamPacket->Data; USBD_LL_Transmit (SCSI_ProcessCmd_pdev, MSC_EPIN_ADDR, SCSI_ProcessCmd_hmsc->bot_data, - downstreamPacket->Length); + dataLength); /* case 6 : Hi = Di */ - SCSI_ProcessCmd_hmsc->csw.dDataResidue -= downstreamPacket->Length; + SCSI_ProcessCmd_hmsc->csw.dDataResidue -= dataLength; if (SCSI_ProcessCmd_hmsc->csw.dDataResidue == 0) { diff --git a/Upstream/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c b/Upstream/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c index 0a8890f..ff189a3 100755 --- a/Upstream/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c +++ b/Upstream/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c @@ -103,10 +103,8 @@ USBD_StatusTypeDef USBD_Init(USBD_HandleTypeDef *pdev, USBD_DescriptorsTypeDef * } /* Unlink previous class*/ -// if(pdev->pClass != NULL) -// { pdev->pClass = NULL; -// } + pdev->pClassData = NULL; /* Assign USBD Descriptors */ if(pdesc != NULL) diff --git a/Upstream/Src/downstream_interface_msc.c b/Upstream/Src/downstream_interface_msc.c index 7db5484..af06c93 100644 --- a/Upstream/Src/downstream_interface_msc.c +++ b/Upstream/Src/downstream_interface_msc.c @@ -57,12 +57,11 @@ void DownstreamInterface_TestReadyReplyCallback(DownstreamPacketTypeDef* replyPa { Downstream_ReleasePacket(replyPacket); TestReadyCallback(HAL_ERROR); + return; } - else - { - Downstream_ReleasePacket(replyPacket); - TestReadyCallback(HAL_OK); - } + + Downstream_ReleasePacket(replyPacket); + TestReadyCallback(HAL_OK); } @@ -94,15 +93,16 @@ void DownstreamInterface_GetCapacityReplyCallback(DownstreamPacketTypeDef* reply (replyPacket->CommandClass & COMMAND_CLASS_DATA_FLAG))) { GetCapacityCallback(HAL_ERROR, NULL, NULL); + return; } - uint[0] = (uint32_t)(replyPacket->Data[0]); - uint[1] = (uint32_t)(replyPacket->Data[1]); + + uint[0] = *(uint32_t*)&(replyPacket->Data[0]); + uint[1] = *(uint32_t*)&(replyPacket->Data[4]); GetCapacityCallback(HAL_OK, uint, replyPacket); //usb_msc_scsi will use this packet, so don't release now } - HAL_StatusTypeDef DownstreamInterface_BeginRead(DownstreamInterfaceMSCCallbackTypeDef callback, uint64_t readBlockStart, uint32_t readBlockCount, @@ -135,6 +135,7 @@ HAL_StatusTypeDef DownstreamInterface_BeginRead(DownstreamInterfaceMSCCallbackTy } + HAL_StatusTypeDef DownstreamInterface_GetStreamDataPacket(DownstreamInterfaceMSCCallbackPacketTypeDef callback) { GetStreamDataCallback = callback; @@ -149,13 +150,15 @@ HAL_StatusTypeDef DownstreamInterface_GetStreamDataPacket(DownstreamInterfaceMSC { DownstreamInterface_GetStreamDataPacketCallback(ReadStreamPacket); //Send it now! ReadStreamPacket = NULL; - GetStreamDataCallback = NULL; //We have used up our callback, so mark it empty. + return HAL_OK; //Our callback will call us again, so we don't need to get a packet in this case. } return Downstream_GetPacket(DownstreamInterface_GetStreamDataPacketCallback); } void DownstreamInterface_GetStreamDataPacketCallback(DownstreamPacketTypeDef* replyPacket) { + uint16_t dataLength; + ReadStreamBusy = 0; if (GetStreamDataCallback == NULL) { @@ -171,8 +174,9 @@ void DownstreamInterface_GetStreamDataPacketCallback(DownstreamPacketTypeDef* re return; } - ByteCount -= replyPacket->Length; - GetStreamDataCallback(HAL_OK, replyPacket); //usb_msc_scsi will use this packet, so don't release now + dataLength = replyPacket->Length - DOWNSTREAM_PACKET_HEADER_LEN; + ByteCount -= dataLength; + GetStreamDataCallback(HAL_OK, replyPacket, dataLength); //usb_msc_scsi will use this packet, so don't release now if (ByteCount > 0) { DownstreamInterface_GetStreamDataPacket(NULL); //Try to get the next packet now, before USB asks for it @@ -180,14 +184,13 @@ void DownstreamInterface_GetStreamDataPacketCallback(DownstreamPacketTypeDef* re } + HAL_StatusTypeDef DownstreamInterface_BeginWrite(DownstreamInterfaceMSCCallbackTypeDef callback, uint64_t readBlockStart, uint32_t readBlockCount) { DownstreamPacketTypeDef* freePacket; HAL_StatusTypeDef tempResult; - uint64_t* workDammit; - uint32_t* prettyPlease; TestReadyCallback = callback; BlockStart = readBlockStart; @@ -197,10 +200,9 @@ HAL_StatusTypeDef DownstreamInterface_BeginWrite(DownstreamInterfaceMSCCallbackT freePacket->Length = DOWNSTREAM_PACKET_HEADER_LEN + (4 * 3); freePacket->CommandClass = COMMAND_CLASS_MASS_STORAGE; freePacket->Command = COMMAND_MSC_BEGIN_WRITE; - workDammit = (uint64_t*)&(freePacket->Data[0]); - *workDammit = BlockStart; - prettyPlease = (uint32_t*)&(freePacket->Data[8]); - *prettyPlease = BlockCount; + *(uint64_t*)&(freePacket->Data[0]) = BlockStart; + *(uint32_t*)&(freePacket->Data[8]) = BlockCount; + tempResult = Downstream_SendPacket(freePacket); if (tempResult != HAL_OK) { @@ -217,15 +219,15 @@ void DownstreamInterface_BeginWriteReplyCallback(DownstreamPacketTypeDef* replyP { Downstream_ReleasePacket(replyPacket); TestReadyCallback(HAL_ERROR); + return; } - else - { - Downstream_ReleasePacket(replyPacket); - TestReadyCallback(replyPacket->Data[0]); - } + + Downstream_ReleasePacket(replyPacket); + TestReadyCallback(replyPacket->Data[0]); } + HAL_StatusTypeDef DownstreamInterface_PutStreamDataPacket(DownstreamPacketTypeDef* packetToSend, uint32_t dataLength) { diff --git a/Upstream/Src/downstream_interface_msc_mock.c b/Upstream/Src/downstream_interface_msc_mock.c new file mode 100644 index 0000000..9660ce4 --- /dev/null +++ b/Upstream/Src/downstream_interface_msc_mock.c @@ -0,0 +1,251 @@ +/* + * downstream_interface_msc_mock.c + * + * Created on: 17/07/2015 + * Author: Robert Fisk + * + * This file replaces downstream_interface_msc.c to allow operational + * testing of Upstream, without Downstream in place and communicating + * over SPI. It still attempts to write downstream packets out the SPI port. + */ + + +#include "stm32f4xx_hal.h" +#include "downstream_interface_msc.h" +#include "downstream_interface_def.h" +#include "downstream_spi.h" + + +//Stuff we need to save for our callbacks to use: +DownstreamInterfaceMSCCallbackTypeDef TestReadyCallback; +DownstreamInterfaceMSCCallbackUintPacketTypeDef GetCapacityCallback; +DownstreamInterfaceMSCCallbackPacketTypeDef GetStreamDataCallback; +uint64_t BlockStart; +uint32_t BlockCount; +uint32_t ByteCount; +DownstreamPacketTypeDef* ReadStreamPacket; +uint8_t ReadStreamBusy; + + +static void DownstreamInterface_TestReadyReplyCallback(DownstreamPacketTypeDef* replyPacket); +static void DownstreamInterface_GetCapacityReplyCallback(DownstreamPacketTypeDef* replyPacket); +static void DownstreamInterface_GetStreamDataPacketCallback(DownstreamPacketTypeDef* replyPacket); +static void DownstreamInterface_BeginWriteReplyCallback(DownstreamPacketTypeDef* replyPacket); + + + +HAL_StatusTypeDef DownstreamInterface_TestReady(DownstreamInterfaceMSCCallbackTypeDef callback) +{ + DownstreamPacketTypeDef* freePacket; + HAL_StatusTypeDef tempResult; + + TestReadyCallback = callback; + freePacket = Downstream_GetFreePacketImmediately(); + + freePacket->Length = DOWNSTREAM_PACKET_HEADER_LEN; + freePacket->CommandClass = COMMAND_CLASS_MASS_STORAGE; + freePacket->Command = COMMAND_MSC_TEST_UNIT_READY; + tempResult = Downstream_SendPacket(freePacket); + if (tempResult != HAL_OK) + { + return tempResult; + } + //return Downstream_GetPacket(DownstreamInterface_TestReadyReplyCallback); + return Downstream_GetFreePacket(DownstreamInterface_TestReadyReplyCallback); +} + +void DownstreamInterface_TestReadyReplyCallback(DownstreamPacketTypeDef* replyPacket) +{ +// if ((replyPacket->Length != (DOWNSTREAM_PACKET_HEADER_LEN + 1)) || +// (replyPacket->CommandClass & COMMAND_CLASS_DATA_FLAG) || +// (replyPacket->Data[0] != HAL_OK)) +// { +// Downstream_ReleasePacket(replyPacket); +// TestReadyCallback(HAL_ERROR); +// return; +// } + + Downstream_ReleasePacket(replyPacket); + TestReadyCallback(HAL_OK); +} + + + +HAL_StatusTypeDef DownstreamInterface_GetCapacity(DownstreamInterfaceMSCCallbackUintPacketTypeDef callback) +{ + DownstreamPacketTypeDef* freePacket; + HAL_StatusTypeDef tempResult; + + GetCapacityCallback = callback; + freePacket = Downstream_GetFreePacketImmediately(); + + freePacket->Length = DOWNSTREAM_PACKET_HEADER_LEN; + freePacket->CommandClass = COMMAND_CLASS_MASS_STORAGE; + freePacket->Command = COMMAND_MSC_GET_CAPACITY; + tempResult = Downstream_SendPacket(freePacket); + if (tempResult != HAL_OK) + { + return tempResult; + } + //return Downstream_GetPacket(DownstreamInterface_GetCapacityReplyCallback); + return Downstream_GetFreePacket(DownstreamInterface_GetCapacityReplyCallback); +} + +void DownstreamInterface_GetCapacityReplyCallback(DownstreamPacketTypeDef* replyPacket) +{ + uint32_t uint[2]; + +// if ((replyPacket->Length != (DOWNSTREAM_PACKET_HEADER_LEN + 8) || +// (replyPacket->CommandClass & COMMAND_CLASS_DATA_FLAG))) +// { +// GetCapacityCallback(HAL_ERROR, NULL, NULL); +// } + + *(uint32_t*)&(replyPacket->Data[0]) = 262144; //* 512B = 128MB + *(uint32_t*)&(replyPacket->Data[4]) = 512; + + uint[0] = *(uint32_t*)&(replyPacket->Data[0]); /////////check indexing!!! + uint[1] = *(uint32_t*)&(replyPacket->Data[4]); + GetCapacityCallback(HAL_OK, uint, replyPacket); //usb_msc_scsi will use this packet, so don't release now +} + + + +HAL_StatusTypeDef DownstreamInterface_BeginRead(DownstreamInterfaceMSCCallbackTypeDef callback, + uint64_t readBlockStart, + uint32_t readBlockCount, + uint32_t readByteCount) +{ + DownstreamPacketTypeDef* freePacket; + HAL_StatusTypeDef tempResult; + + ReadStreamPacket = NULL; //Prepare for GetStreamDataPacket's use + ReadStreamBusy = 0; + + TestReadyCallback = callback; + BlockStart = readBlockStart; + BlockCount = readBlockCount; + ByteCount = readByteCount; + freePacket = Downstream_GetFreePacketImmediately(); + + freePacket->Length = DOWNSTREAM_PACKET_HEADER_LEN + (4 * 3); + freePacket->CommandClass = COMMAND_CLASS_MASS_STORAGE; + freePacket->Command = COMMAND_MSC_BEGIN_READ; + *(uint64_t*)&(freePacket->Data[0]) = BlockStart; + *(uint32_t*)&(freePacket->Data[8]) = BlockCount; + + tempResult = Downstream_SendPacket(freePacket); + if (tempResult != HAL_OK) + { + TestReadyCallback(tempResult); + } + //return Downstream_GetPacket(DownstreamInterface_TestReadyReplyCallback); //Re-use TestReadyReplyCallback because it does exactly what we want! + return Downstream_GetFreePacket(DownstreamInterface_TestReadyReplyCallback); +} + + + +HAL_StatusTypeDef DownstreamInterface_GetStreamDataPacket(DownstreamInterfaceMSCCallbackPacketTypeDef callback) +{ + GetStreamDataCallback = callback; + + if (ReadStreamBusy != 0) + { + return HAL_OK; + } + ReadStreamBusy = 1; + + if (ReadStreamPacket && GetStreamDataCallback) //Do we have a stored packet and an address to send it? + { + DownstreamInterface_GetStreamDataPacketCallback(ReadStreamPacket); //Send it now! + ReadStreamPacket = NULL; + return HAL_OK; //Our callback will call us again, so we don't need to get a packet in this case. + } + //return Downstream_GetPacket(DownstreamInterface_GetStreamDataPacketCallback); + return Downstream_GetFreePacket(DownstreamInterface_GetStreamDataPacketCallback); +} + +void DownstreamInterface_GetStreamDataPacketCallback(DownstreamPacketTypeDef* replyPacket) +{ + uint16_t dataLength; + + ReadStreamBusy = 0; + if (GetStreamDataCallback == NULL) + { + ReadStreamPacket = replyPacket; //We used up our callback already, so save this one for later. + return; + } + +// if (((replyPacket->CommandClass & COMMAND_CLASS_DATA_FLAG) == 0) || //Any 'command' reply (as opposed to 'data' reply) is an automatic fail here +// (replyPacket->Length <= DOWNSTREAM_PACKET_HEADER_LEN) || //Should be at least one data byte in the reply. +// (replyPacket->Length > ByteCount)) +// { +// GetStreamDataCallback(HAL_ERROR, NULL); +// return; +// } + + replyPacket->Length = MIN((ByteCount + DOWNSTREAM_PACKET_HEADER_LEN), (MSC_MEDIA_PACKET + DOWNSTREAM_PACKET_HEADER_LEN)); + + dataLength = replyPacket->Length - DOWNSTREAM_PACKET_HEADER_LEN; + ByteCount -= dataLength; + GetStreamDataCallback(HAL_OK, replyPacket, dataLength); //usb_msc_scsi will use this packet, so don't release now + if (ByteCount > 0) + { + DownstreamInterface_GetStreamDataPacket(NULL); //Try to get the next packet now, before USB asks for it + } +} + + + +HAL_StatusTypeDef DownstreamInterface_BeginWrite(DownstreamInterfaceMSCCallbackTypeDef callback, + uint64_t readBlockStart, + uint32_t readBlockCount) +{ + DownstreamPacketTypeDef* freePacket; + HAL_StatusTypeDef tempResult; + + TestReadyCallback = callback; + BlockStart = readBlockStart; + BlockCount = readBlockCount; + freePacket = Downstream_GetFreePacketImmediately(); + + freePacket->Length = DOWNSTREAM_PACKET_HEADER_LEN + (4 * 3); + freePacket->CommandClass = COMMAND_CLASS_MASS_STORAGE; + freePacket->Command = COMMAND_MSC_BEGIN_WRITE; + *(uint64_t*)&(freePacket->Data[0]) = BlockStart; + *(uint32_t*)&(freePacket->Data[8]) = BlockCount; + + tempResult = Downstream_SendPacket(freePacket); + if (tempResult != HAL_OK) + { + TestReadyCallback(tempResult); + } + //return Downstream_GetPacket(DownstreamInterface_BeginWriteReplyCallback); + return Downstream_GetFreePacket(DownstreamInterface_BeginWriteReplyCallback); +} + +void DownstreamInterface_BeginWriteReplyCallback(DownstreamPacketTypeDef* replyPacket) +{ +// if ((replyPacket->Length != (DOWNSTREAM_PACKET_HEADER_LEN + 1)) || +// (replyPacket->CommandClass & COMMAND_CLASS_DATA_FLAG) || +// ((replyPacket->Data[0] != HAL_OK) && (replyPacket->Data[0] != HAL_BUSY))) +// { +// Downstream_ReleasePacket(replyPacket); +// TestReadyCallback(HAL_ERROR); +// return; +// } + + Downstream_ReleasePacket(replyPacket); + TestReadyCallback(replyPacket->Data[0]); +} + + + +HAL_StatusTypeDef DownstreamInterface_PutStreamDataPacket(DownstreamPacketTypeDef* packetToSend, + uint32_t dataLength) +{ + packetToSend->Length = dataLength + DOWNSTREAM_PACKET_HEADER_LEN; + packetToSend->CommandClass = COMMAND_CLASS_MASS_STORAGE | COMMAND_CLASS_DATA_FLAG; + packetToSend->Command = COMMAND_MSC_BEGIN_WRITE; + return Downstream_SendPacket(packetToSend); +} diff --git a/Upstream/Src/downstream_spi.c b/Upstream/Src/downstream_spi.c index 9fc81bc..db10039 100644 --- a/Upstream/Src/downstream_spi.c +++ b/Upstream/Src/downstream_spi.c @@ -136,10 +136,13 @@ DownstreamPacketTypeDef* Downstream_GetFreePacketImmediately(void) //Used by USB interface classes, and by our internal RX code. void Downstream_ReleasePacket(DownstreamPacketTypeDef* packetToRelease) { + FreePacketCallbackTypeDef tempCallback; + if (PendingFreePacketCallback != NULL) { - PendingFreePacketCallback(packetToRelease); - PendingFreePacketCallback = NULL; + tempCallback = PendingFreePacketCallback; //In extreme situations, running this callback can trigger another request for a free packet, + PendingFreePacketCallback = NULL; //thereby causing GetFreePacket to freak out. So we need to clear the callback indicator first. + tempCallback(packetToRelease); } else { @@ -234,7 +237,7 @@ void HAL_SPI_TxCpltCallback(SPI_HandleTypeDef *hspi) { if ((PendingFreePacketCallback != NULL) && (NextTxPacket == NULL)) { - SPI_INTERFACE_FREAKOUT_VOID; + //SPI_INTERFACE_FREAKOUT_VOID; ///////////////////////////////////////! } Downstream_ReleasePacket(CurrentWorkingPacket); diff --git a/Upstream/Src/hal_msp.c b/Upstream/Src/hal_msp.c index 1e3faae..ab69075 100755 --- a/Upstream/Src/hal_msp.c +++ b/Upstream/Src/hal_msp.c @@ -120,7 +120,10 @@ void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi) //Configure downstream request pin and interrupt GPIO_InitStruct.Pin = DOWNSTREAM_TX_OK_PIN; GPIO_InitStruct.Mode = GPIO_MODE_INPUT | GPIO_MODE_IT_FALLING; - GPIO_InitStruct.Pull = GPIO_PULLUP; + + //GPIO_InitStruct.Pull = GPIO_PULLUP; + GPIO_InitStruct.Pull = GPIO_PULLDOWN; ////////////////////////////////////////////////! + HAL_GPIO_Init(DOWNSTREAM_TX_OK_PORT, &GPIO_InitStruct); HAL_NVIC_SetPriority(EXTI3_IRQn, INT_PRIORITY_SPI_DMA, 0); HAL_NVIC_EnableIRQ(EXTI3_IRQn); diff --git a/Upstream/Src/interrupts.c b/Upstream/Src/interrupts.c index 74aa428..279e9e9 100755 --- a/Upstream/Src/interrupts.c +++ b/Upstream/Src/interrupts.c @@ -36,6 +36,8 @@ #include "stm32f4xx_hal.h" #include "stm32f4xx.h" #include "board_config.h" +#include "downstream_spi.h" + /* USER CODE BEGIN 0 */ /* USER CODE END 0 */ @@ -70,18 +72,24 @@ void OTG_FS_IRQHandler(void) void DMA2_Stream2_IRQHandler(void) { + SPI_DMA_ACTIVE_ON; HAL_DMA_IRQHandler(&spiRxDmaHandle); + SPI_DMA_ACTIVE_OFF; } void DMA2_Stream3_IRQHandler(void) { + SPI_DMA_ACTIVE_ON; HAL_DMA_IRQHandler(&spiTxDmaHandle); + SPI_DMA_ACTIVE_OFF; } void EXTI3_IRQHandler(void) { + SPI_DMA_ACTIVE_ON; __HAL_GPIO_EXTI_CLEAR_IT(3); Downstream_TxOkInterrupt(); + SPI_DMA_ACTIVE_OFF; } ///////////////////////// ///////////////////////// diff --git a/Upstream/Src/main.c b/Upstream/Src/main.c index ed19f43..f2227e4 100755 --- a/Upstream/Src/main.c +++ b/Upstream/Src/main.c @@ -150,7 +150,14 @@ void GPIO_Init(void) GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(STAT_LED_PORT, &GPIO_InitStruct); - STAT_LED_PORT->BSRR = STAT_LED_OFF; + STAT_LED_OFF; + + //SPI_DMA_ACTIVE indicator + GPIO_InitStruct.Pin = SPI_DMA_ACTIVE_PIN; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + HAL_GPIO_Init(SPI_DMA_ACTIVE_PORT, &GPIO_InitStruct); + SPI_DMA_ACTIVE_OFF; } /* USER CODE BEGIN 4 */