MZ@ !L!This program cannot be run in DOS mode. $BۖX~x{ U n kRichPELbu=W  6@n@ @dP80"`\.textC h.rdata@H.data@ @INIT> @  .rsrc8P@B.reloc`@BUSVjBP\Bu3E.BFE$+t8HuEPh&Brt uuSSSSSjEPjXB8^AtSf^@PB^[]UQQ /BV3h /BuuP MEPVVE`y`B^]USVu3W  B9^t#M D DAN>r$B_^[]V33@5/BVPh /B/B5/BxBhVh.BhBV5&B5&B5&B /BV /B B B /BVP^UQQee}trS] ti3Ҹ4uVW=BhjCVjBVjB׋5Bja PjaiEEPjjU`Bja$Pja_^[]USVu/BW}  B9&BsA&Bjjj4&B&Bh.B<&B &B&BA;#&BdB$B_^2[]UEVWx(Lpq@t hA;rYFtu Wq@t hArYWEfu We_^]UESVWp(q@t hS]Vu F +FiNFu+i}^;[_]UM 3@SI Vk Wj Yu}toB ZEBEB EBOEBOB+$B+B,rMrR2uEu P2mOB ZEBEB EBOEBOB+$B+B,rMrRW2uE􍆔Ou PB2}|Yx+]E+E |EM+U E+‰((y+]E+E #MUE+ E+ƒ_(^[]UE S]VuWj_+;~;U}U_^[]UUVuW} €jY+~ ~M  UF $GF $GF$GF$G`t AGAGjyPhAjYYnjyGPhAjYYTjyGPhAjYY:jyGPhAqjYY jyGPhҏAWjYYjyGPhA=jYY_^]UES] Vp(EuW}t,VSPspslxjYu)0u8CyU3ɋVAf KdMEB<w>BEPCxPC`Pu2 B}t;it hʈAtiY}tƆxƆƇFx~`ƆƆu(a8]uM8] X8tE8]t#U(F8B FAu&`xƇ~H`x 2􊅓>u=uFPWQd*`@thA``YY2<b<4<8>hjP)`fSfVP`_@tPhA_YYPPVW2V`s3<8 dBUAA9u⃿wFPFPSRtHFB0hpjP_fSfprVP^CPpP dB23ۋUCXV\tAA9u⋇Rx%hLJR0 ^@t h"AE^Y3]@t7Ph0A*^YYG |N"ˀɀ"ˊFFFF(PXPPjPP djY#dh#h4#э8#Љ4ˋ8$NF^V]@thdh6A0] jYX<󥋽ppTFFFF (PXP$PjPP ddhhA\@thdhNAq\ 48Љ4ˋ8$N^h FV J[@t hfA[Yd+H؋h+L3+ڙ3‰T+‰|[@t|ShA[ dXjY@9H}Hȋ|L;h}hPfZLfBZ@tPLhA%[ pTpTFt Z@tPhҋAZYYZ@tHhAZYYpZ@tPhAZYY H ȋT ȋ| 3T@@| ȉTY@tThA%ZYYB<wQBtPXP@PX\2 BttYt hʈAYYxy_wQhxjPYfSfxzVPYCPxPxhR_ dBAA9ujjPVSP tjhPShjVX ED9lt_^QP(TX[t h8AXYM3]X] UQQE @MEu1X@t hAPXYX/hƗA8XYW=B<v W hA XYVWu@t6hAWYYHS ʈA$3@}W@t h8AWYujV;<fBE PFPVuU2 B} `'WPhʈA@ W@t hHAIWYu3CSV;<^BE PFPVuU2 B9] V@t h\AVYuj[SV3;:^8V@t hnAVYju[SV:<^SV@t hAVYj;V@t hAwVYju:׾ʈA<wBE@BME PAPQuU2 B} tUtV VYE`jY:}OBE PGPWuU2 B} UV|U@t hAUYju9׾ʈA<wBE@BME PAPQuU2 B} t!UtVaUYE`<9}G9T@t hA+UYjuj9jYʈA:wyPhA?YY3!E!EjfEXfEB<w?BEPEPEPuU2 B}t>t hʈA>Yj XfEƃB<w?BEPEPEPuU2 B}t/>t hʈAh>YƇE8ehTE=@tEPhҋA->YY=@tHhA>YY=@tPhA=YYE 3MT@| ȉMs=@tuhȖA=YYEPUPuN=/BtO;u,}u&<@t hA<Y/B Y<@t h@A<Y;u;u}u u ;u~} uuo9]uj xu:Ɓ>x/u+9]u&38Hlj u_^[]UU$VJ BME;~΅y3;~^y3J B] U$SVu3WjC}N YU+uEE VM8: Q0W$(E,kE EEUMʉu+MЋE U+OE+OEMEu}+}+ȋƙ}ME}EEE΋EMu}+}+ȋƙ}ME}UuUMM _^E[]UUM VWz2+΋BR++֋M+_^+] U&B3ʼnES]VWjYu t3pD9y|hAz9YY)9yuhAb9YY9yuhčAJ9YY8yuh؍A29YY8yuhA9YY8yuh A9YY8yuh*A8YY8yuhFA8YY89s/;&g8yshdA8YY3;ssA8yvWhAy8 '8y6WhA`8 8yvWhҎAF8 7yvWhA,8 7yhA8YY7yh&A7YYFu9t Nu9Nu p&xt#EEFEEPtMPwt Eet Eet EeFt Ee6yuh.A7YY6yuhBA6YY6yuhXA6YY6yuhlA6YY;E|;E;E|;E~G;{p;s2M_^3[]6]ˆU0e3S]VW}䫍s}𥥥s(}Х5y hA;6YC t u S$,E+EEE+EhU@u EEPEPEPS_^[]U0S]3VW}ess(}Х}䫫u5y h@A5YE+EEE+EhU@u EEPEPEPS_^[]U0S]3VW}ess(}Х}4y h(A95YE+EM+MhU@u EEPEMPEPSM _^[]U4y h A4YSVuWF>^EEF }]EEr4y Wh$A4YY\4y Sh8A4YYF4yuhLA4YY.4yuh^Ag4YYEH@t'y}VPtU'8} EPuWV]G +GWK +K+EC+UMEt|txU+i™}+iMM}FCO+iMM}FCO+iMM}F ,3y6htAf3YY3yvhAN3YY2yvhA63YY2yv hĚA3YY_^[]UEHwh$BR@u PwVu PDKu Pc@u PT5u P*u PLu Pu P* u P]IQ@Q@Q@Q@R@R@R@'R@2R@U03S]VW}ss(}Х}䫫1y hpA32YM+MMEE+EhU@u EEPEPEPS_^[]U0S]3VW}ess(}Х}䫫y1y hA1YE+EEE+EhU@u EEPEPEPS_^[]U0S]3VW}ess(}Х}0y hA;1YE+EM+MEhU@u EEPEMPEPS_^[]U03S]VW}ss(}Х}0y hA0YM+MU+UEhU@u EEPEMPEUPS_^[]U03S]VW}ss(}Х}䫫0y hXAA0YM+MMEE+EhU@u EEPEPEPS_^[]U0S]VW}Ѝss(}𥥥s}॥/y hA/Yh\V@u EPEPEPS_^[]U0S]3VW}ess(}Х}䫫'/y hAc/YE+EEE+EhU@u EEPEPEPS6_^[]UVu # F# FF# FF # F .y6hA.YYv.yvhA.YY^.yvhA.YYF.yv hęA.YY^]U #.y hܙA_.YSVuW} VN F++F^+^ UV$+VEMUi iM}iGiN E}GiGiN EGiG iN EG 9-y7hAs-YY"-ywhA[-YY -ywhAC-YY,yw hęA+-YY_^[]USVW,t hA-YuB؀v$, PhڌA,Y}M 9Cukt:Qu`AEAʈE fEfNHtt#ȋyIA3@ lljj\PPB+t h$A0,Y_^[] U+t hLA,YEVWx(QP$t"S] :uFt uSvЋv u[QP(k+_^t hrA+Y] UME PQAt fHf!P]U0e3MVW}A q}𥥥q(}Х_^t u Q,E+EEE+Eh^_@u EEPEPEPQ]U0M3VW}eqh_@u q(}Х}䫫E+EEE+EEEPEPEPQm_^]U0U3VW}erh_@u r(M}+M䥥}E+EEEPEMPEPRM_^]UEH@t)y}uPtU8S] VuWFPN QuSD}C +CEO +OG+MEtDt@ +iK+ N }F GK+iNM}FfN_^[]UEHwh$[@u PVE xf!HEu P:u P/E x u PE x u P" u P;]I[@[@[@[@[@[@[@[@[@UEHwh$\@u P;Vu PKu P@u P5u P*u PLu Pu P u P[]I&\@1\@<\@G\@R\@]\@h\@s\@~\@U0U3VW}rh_@u Mr(+M}Х}䫫EE+EEEPEMPEPR_^]U0M3VW}eqh_@u q(}Х}䫫E+EEE+EEEPEPEPQ3_^]U0U3VW}erh_@u r(M}+M䥥}E+EEEEPEMPEPR_^]U0S]3VW}sh`@u Ms(+M}ХU+U䥥}EEEPEMPEUPS`_^[]U0U3VW}rhJ`@u Mr(+M}Х}䫫EE+EEEPEMPEPR_^]UEM0VWp}Хhj`@u QMQMQPp(}𥥥p}॥_^]U0M3VW}eqh`@u q(}Х}䫫E+EEE+EEEPEPEPQO_^]UEVu @ tVPf!F^]UE x f!H]UM AAf!A]UM A yA f!A]UE x xf!H]UM Ay Af!A]UM A‰AA ‰A f!A]UM A A f!A]UQSW}G+G_O$+O+_ EMt?t;OG +Vu F }F FEOFf!F^_[]UE xf!H]UQQSVu39^}W}]] (U uu}j[IKu}3҉]DŽ (!\ ΋ID B|D ˉ  E  (   (MA (uI (@U E  (   ( (MQyJBU%yH@E ߋ + 3+;F~F;,,~!D ,,,,;F~ L ,,EU +3+;F~F;,<~' ,<,<;F~ ,<E@jE[ȁyIA E EE@EKuL ]t, 8EtEMME9U U (tE   _^[]UEHt1HtHuAU +B JBJ +U +B +JJU JB B+B ]USVu 3W}@fGWfOUfg ]yPh@A YY]舞P; yPhlAs YYj ˉ]ZMAE AE E ‰E EAEAEEŠEEE EEE3 t @uA ``uAArtyu h|AYYyuhAYYOt%jSEPEPVMEPEPOP9jSEPEPV(MEO Gxr|r;wx;~ xr|rHtSW0PO +G;~ʅy3;~…y3O GEOt)t%jSEPEPV|EPEPOPhˍE]WjSP+WjSEPEtjuEPEPV'WjSEPWjSEPMEA EAHtEtu썆0QPMA WEAjEESP蝲WjSEP萲M+E;~ʅy3;~…y3UJ B_^[]UM SVuW}+IUM @N8$M(fAE;~jxXfAE+;} fAE ƆE{,u(jYCSTBiMԐc$C dBACCA9CtME}UEU}u}EUCyu@M܋u;~bU+;}\M;~R+;}LU(K8J CZ t;h|A.J t+hA: thA* t hƟAf YE;t2tHHtHt Hu<@ @ @tBWSV@t)tHtt@$֋@ϋ@ȋ@@ 뺻2ҋω_BVX_^[]UVu3@h t6hpA YY^]UVu3W@9 At 6Wo YY t 6W\ YY_^]UE SV5xB3W}SS3@_TGGG GGPLJbw@SSG$PSSG4PSSGDP֍PhB_^[]UQSV3W]t hxAYsutu VhA EPSSjShVB؅BEhjx(WE E Pu|BLJ$But hȢA"Ych$BWHVuP؅yt6hA)Vh$Bjju؅yD|t hAYtPB}t uBHt^h8AQEVjhBH E`BVu uPt hA1Y_^[]UVu 3f/BfFf/BPjtBȉ /Bu>t/BPhġAYYt hAY/BWPjQ Vh/BpBjY3 1Bh$A蝋0u_t Vh2AgYY\y@F4~@FtFpFHFDF@F8F@{@t hNAYB3^]U訑/BtPxB3!/B/Btuh\AYY]̸/BUVu t@E PhjuBx(PvjhbAu h@lBu B^]U(&B3ʼnEVu3W}AMVE؋UE3fE䫫f9lTy htAY4Sy hAYGB<w<BEPGPWuU2 B}tvt hʈAYlT} Gxi;e }$?yjhHAyYYjV{9W ~yjhZAPYYjVRhlAxy fM;~j XfEy hAYeeEB<BEPEPEPuU2 B}tebtYhʈAYLy$EyjhAYYjV9W~yjh&AVYYjVXM_3^]US]VWPP3VTuOQQP6uVJhj@DPuV+P_^[]UVuPQ$PQ$DPQ$^]UVuVP*t hAcYV$VFTV|VxVPQ dPQ PQ VP8VPXxtPxBXxt PBxB^]UVudPQPQVuPQ uƆ3^]UVuVu PQPQdPQ^]UQQESVu 2Wx(EEE9t9Au59Ju0B;tUuXQ192u u M9u7jY)u9qu u9JuUEBPQ9uΉ HMU;uF%PBtf2ҋF BW_^[]UQQESVu 2Wx(EEE9t9Au59Ju0B;tUuXQ192u u M9u7jY)u9qu u9JuUEBPQ9uΉ HMU;uF%PBtf2ҋF BW_^[]UQQE VW@`pEEEE PBu }EPPVXu EPPVDu EPPV0u B1U9Pu99Au4MQHa2A BWvEM;u_^]jY)U EVEEEWPB}96tGS9Xu?9Au: UYMH9u&E3@t hdAoY96u[,jY)9Au9JuuBU1Q92uى M9uՍ'9Au9JuuBU1Q92u M9uuB1U9Pu9AuMQHa2A BWHEM;u_^]UE jjPPPB]UE jj@PPB] ̰UEt@(3QQQQ(PTB]UEt@(j(PB3]UtuhA YYVut4Vh8AYYR u*4Vt!EtVEt uu ܉3^]UESX(]tv{~pW4}@t WhAlYYV3t%] @tPhAHYYF;r]^@t hA*YjWu PQ_3[] U&B3ʼnE3W}EEfEEt hȥAYtAVw(VFTLj EPWVOV{RVSVQ\V]^2M3__]UEtP(tM UAV]U&B3ʼnES]VWjsBP\BEPL}Et6HtHuWBVKVML3PPPPPjEPjXB{Att h&AYtPgat hAY2G BV PB PBt hHAQYC@VP8jPBM_^3[ ]U&B3ʼnESVW}jBP\BwE@]Et6HtHuSBV@V@3PPPPPjEPjXBAtWt hAY3ۈ_@t82҉YA BVPBPBVP8t h4A.YSPBM_^3[]UE2ҋM Vp(ABVv^]UEVWx(@t hPAYTu3mt hbAY3T@t hAYWM 2҉qBW_^]UESVWX(@t h,AMYt h>A6Y} w`vSLvSPvSRQvSP`WSP4g2ҋBSnS_^3[]UESVWx(}@t hnAYTt%ct h~AYu fu 3ۋF`9Xu1@t hAmY^#r8tb8uZEPBHF8QFXP9 tjY)AF`HuBPQ,^%2҉^BWc_^[]UESVWx(p(2k@t hҩAYTt%Qt h~AYu fu 3ۋF`9Xu@t hA[Y^#r84tb85uZEPBHF8QFXP9 tjY)AF`HuBPQ,^%2҉^BWQ_^[]UESVWx(g3Ct hAYu F`@W$@'hAwph2A`YhhAIBhƪA2+hAhAh&AhFAohjAnt\ tGHHt3tHui@hƫA)hA|tyhAltihA\tYhALt9HHt%tt;hA.t+hJAthAt hAY2ҋΉ^BWP_^[]I^@@@@u@я@@@U]UU MB`@hB lpB83ɇ]UVuWu hSl;v!+ӍRpQPpll[;huglG31} t Pd`PB_^]UU MB`@tB x|B83ɇ]32UEVQMQhjPBx U M E ^]U}t]%B3]UQQS3VW}E.E@E=rVSPV SPVSPVSPV2SPVBSPH3ALJ jXRWLJ$LJS8Vy*MQWPLE{SQQu"QQu XTPPuRPPuRPPuP$PPuN&PPujpPPuUPPut EPh<"Bu)E;<"BuVPu3;V VPPuVPu"= VVVu0Vu_?$VVVu/Vu>(VVVuVu1:,VVVuVu9PPu1HVPPuXxPPuJ XxuAhԬAv"tXxPhAOYYtXxph4A1YYtXxphZAYYtXxp hAYYtXxphAYYtXxp$hܭAYY$WPPuWPPuC%8$xtVˉM3ۋӍ4Uk4ރ>u(8UuBrAMrƇUƇUE_^[]USVW3E CjEEBP\B]{\Eut hAYthAVBCPB(x3ɈtxHwO$.@EigFE=E4E+Eyl"EEL;E􀵢E<6MEQPQQQjEPjXBt%=@h AYy@hְAHt-tz@thrAYtVBt@u#lupu WAuSƇtMMEigtjEQ3ɍEQPQQQjEPjXB{AT]ƇWAW$BUV0xr@VXAU@t h>AYt hAYjC@PB_^[]O@X@@a@j@s@|@@@U0t hXAiYE SVuW@(3PPPPSTBj@H|_>t#t h`AYjj6PB OuWSB_^[]UQQU EEE9S]VW}29VuS9puNPF9Xu'EN!F3FG>F98u!0wEMF9u 0u9u+jY)u9pu9AuMqJH9uډBEM;u_^[]USVu3WPPPP(WTBjƈ{[t jjPPB KuSWB_^[]USVWt hAYuE wthAYY3(PPPPWTBj@Ƥ[>t#;t hAtYjj6PB KuSWB_^[]U`&B3ʼnEjTEjPGE EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3]UVu39uT9tJ 9BuH9QuC¨A3ɍB8RVPPd`PB^]jY)UVu39uT9tJ 9BuH9QuC¨A3ɍB8RVP Pd`PB^]jY)U`&B3ʼnEjTEjPE EEEEjYh~APE.AMME |BEPBuBjjMQhAjЋM3D]US]VWhjS^E }u$SEu( BEux!BEu BE u Bd!BSP B BSVPSP !B0!BhrjV3xSfSSxx{P8x) x3҉tx`xj@|xYP@ PIu@|VRPVjP8xW3ǃ4V$SSWWWJz 3R jYPYNu_wxxE^ xx[] U t hAYEEEEWPB}9t4V29Vu59pu03ɉPFEMF9u0u9u^uBJjY)j@t hAYMU9Qu9HuՃEP2҃aaBWE9Eu_t hFAXY]U SVWh AEP|BEE0PjEtBtuh(AYYEFP3F ^EuVjPuBx;~ e9]t uxBjjtBv NQW 7Bt WhZAzYY)tuhA_YYt #VxBtuhҵA'YYE}+t WhAYYujtBtuhdAYYEFP^E~ uVjPuBHVtv hAYY9]t uxBv jtB} v FPWa tPhA8YYtwh4AYYtwhZAYYtw hAYYtwhAYY{tw$hܭAYY9^ vP3j3ҋYuJt hƶAY3tPhʶAhYYG;~ r} t hжADYVxB}_^[] U&B3ʼnESVupWhjPU M DžxʮA|BMEAEBEAj[EB j _EЍA E؍hh~AP]]tEA]]}EA]]}EA]ԉ]܉}|BhPBuBjjpQVh@ЋM_^3[] U&B3ʼnEVWhpjPU MDžxʮA|BMEAEBEAj_EB j ^EЍA E؍hh~AP}}tEA}}uEA}}uEA}ԉ}܉u|BhPB_^uBjjpQhAjЋM3]U`&B3ʼnEVuEjTjP)E EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^] U`&B3ʼnEjTEjPE EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3 ]U`&B3ʼnEVuEjTjPE EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^] U`&B3ʼnEjTEjPE EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3]U`&B3ʼnEVuEjTjP E EE EEjYh~APElAMME |BEPBuBjjMQVh@ЋM3^p] U`&B3ʼnEjTEjPE EEEEjYh~APElAMME |BEPBuBjjMQhAjЋM3]U SVhȯAEP|BE8PjEtB؅tuhدAYYWEPuESjPuBux-{ uKj Qu u }jYu }jYu_t hAFYSxB^[] U SVhȯAEP|Bu8VjtB؅t VhAYYcEWj _PVSjECPu{ Bux+9{ uKWQu u }jYu }jYu*_t hVAbYSxB^[] U`&B3ʼnEVuEjTjP9E EE EEjYh~APE޳AMME |BEPBuBjjMQVh@ЋM3^] U`&B3ʼnEjTEjPE EEEEjYh~APE޳AMME |BEPBuBjjMQhAjЋM3]U&B3ʼnESVupWhjPU M Džx(A|BMEAj[EBj _EAEhh~AP]]tE>A]]}EZA]]}|BhPBuBjjpQVh@ЋM_^3[:] U&B3ʼnEVWhpjPBU MDžx(A|BMEAj_EBj ^EAEhh~AP}}tE>A}}uEZA}}u|BhPB_^uBjjpQhAjЋM3^]U`&B3ʼnEjTEjPqE EEEEjYh~APEnAMME |BEPBuBjjMQhAjЋM3]U`&B3ʼnEVuEjTjPE EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^N] U`&B3ʼnEjTEjPaE EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3]U SVhpAEP|BE4PjEtB؅ctuhAYYWEPuESjPuBux-{ uKjQul u }jYu }jYu_t hA$YSxB^[] U SVhpAEP|Bu4VjtB؅t VhAYYcEWj_PVSjECPu{ Bux+9{ uKWQu u }jYu }jYu_t hA@YSxB^[] U`&B3ʼnEVuEjTjPE EE EEjYh~APEHAMME |BEPBuBjjMQVh@ЋM3^~] U`&B3ʼnEjTEjPE EEEEjYh~APEHAMME |BEPBuBjjMQhAjЋM3]U`&B3ʼnEjTEjP E EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3r]U@j8EjPE E̋EEԍEjYh~APEȦAMЉME |BEPBuBjjMQhAjЋ]U`&B3ʼnEjTEjPE EEEEjYh~APE&AMME |BEPBuBjjMQhAjЋM3z]U`&B3ʼnEVuEjTjPE EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^] U SVh"AEP|BEPjEtB؅tuh4AYYWEPuESjPuBux09C uKPQu u }j:Yu }j:Yu_t hbAGYSxB^[] U SVh"AEP|BuVjtB؅t Vh~AYYcEWPVSjECPu{ Bux+9{ uKWQu u }j:Yu }j:Yu'_t hA_YSxB^[] U SVh AEP|BEEPjEtB؅tuh"AYYcEWjx_PCE{ uSjPuBux+9{ uKWQu u }jYu }jYu9_t hPAqYSxB^[] U SVh AEP|BuƐVjtB؅t VhVA YYcEWjx_PVSjECPu{ Bux+9{ uKWQu u }jYu }jYuS_t hAYSxB^[] U|&B3ʼnESVuEWjpjPaU M EnAUBMEAj[EBj _EЍAE؍Eh~AP]]}EA]]}E̘A]ԉ]܉}|BEPBuBjjMQVh@ЋM_^3[] U|&B3ʼnEVWjpEjPU MEnAUBMEAj_EBj ^EЍAE؍Eh~AP}}uEA}}uE̘A}ԉ}܉u|BEPB_^uBjjMQhAjЋM3]U`&B3ʼnEjTEjPE EEEEjYh~APEDAMME |BEPBuBjjMQhAjЋM3F]U`&B3ʼnEVuEjTjPUE EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^] U`&B3ʼnEjTEjPE EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM36]U`&B3ʼnEVuEjTjPEE EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^] U`&B3ʼnEjTEjPE EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3&]U`&B3ʼnEjTEjP9E EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3]U`&B3ʼnEjTEjPE EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3]U`&B3ʼnEjTEjP-E EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3]U,&B3ʼnES]VWhA3jBVWPu Dž}PPpBẖAPBjY3󫍅Dž3Ph?Dž@PpB1SPh/BGPh!B~pPh"BEUPh@"B,XxWXxtXxPhAYYtXxph4AYYtXxphZAYYtXxp hAYYrtXxphAYYTtXxp$hܭAYYByXTPh!BRPh"BRPh "BPh80BBPh"B]VPh(#B< VVPh4#B%$VPhh0B(VPh8#B3,VPhl0BPP_HVPhD#B& WWh<#B/2t7hAiYY WWh@#Bnt7hA>YY$WPh@0BWPhD0BPwPhH0BxPhL0BxPhP0B)xPhT0B xPh,#B(xPhX0B8,xPh\0Bk0xSh`0BC3h6AvYYjYjS/BY!B!BXTjYj:p"BYU@"B"BRhAj "BR<0B"B(#BVVD#BHV4#B Vh0B$V8#B(Vl0B,V@0B$WD0BWH0BwL0BxP0BxT0Bx,#B xX0B(xBh/Bh!Bn h!Bx h"B h "B8h80Bh"B h"B h@"BJh(#B h4#BHhh0Bh8#B8 hl0B hd0B P4hD#B 5@0B 5D0BZh`0B* M_^3[;]U`&B3ʼnEVuEjTjPIE EE EEjYh~APEBAMME |BEPBuBjjMQVh@ЋM3^谿] U`&B3ʼnEjTEjPÿE EEEEjYh~APEBAMME |BEPBuBjjMQhAjЋM3*]U`&B3ʼnEVuEjTjP9E EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^蠾] U`&B3ʼnEjTEjP賾E EEEEjYh~APEAMME |BEPBuBjjMQhAjЋM3]U&B3ʼnESVuASh@jGPjhZASh@_^E[]USV5lBAW}jWjh(ASjjGPjh>ASjjGPjhZASj_^[]U}tju jhAuh@lBE]UjujhAhAjlB]Uju jhpAuh@lB]UjujhpAhAjlB]Uju jhHAuh@lB]UjEPjhHAhAjlB]Uu ]UVut6h¸A+YYjVjhAhAjlB^]U}tju jhAuh@lBE]UjujhAhAjlB]Uhu jh"Auh@lB]Uhujh"AhAjlB]Ujxu jh Auh@lB]Ujxujh AhAjlB]US]tKV5lBW} jWjhnASh@jGPjhASh@jGPjhASh@_^[]USV5lBAW}jWjhnASjjGPjhASjjGPjhASj_^[]Uju jhAuh@lB]UjujhAhAjlB]Uju jhAuh@lB]UjEPjhAhAjlB]U}tju jhBAuh@lBE]UjujhBAhAjlB]U}tju jhAuh@lBE]UjujhAhAjlB]USV5lB3W}CjWjhAhASjGPjhAhASjGPjhAhASjG PjhAhASjGPjhĴAhASjGPjhҴAhASjGPjhڴAhASjGPjhAhAS_^[]USVu3WPPPP(FTWTBj@ƈx[~t+~t%tjjPPBt hASY KuSWB_^[]UQSVWEPB}u5BօtgxˉCx+t2%CBWhEPBPB PBWWu_^[]UQSBEVPӋuV-uBtW|8 xC@t h\A*Y|@8tvPVtGPB PB虭t hAխYg2ҋBVF xCu_@t hA蛭Y|xAu?@t hئA{Y`x%@t hAaYt+xP|xx|9tEPӋtGuBPB PB蚬t hA֬Yg2ҋBVGEPuBPQ,_^[]UDt hA耬YSVu3WPPPP(STBjƄ{_Nt~t>ttBf&f OuWSBݫ_^[t hȨAY]U辫t hAYSVu3WPPPP(WTBE ƈ{j[;Fut tBE ff& KuSWBX_^[t h A葫Y]U:tuhApYY}t-M Vj ^jZtAtAJuNu^]UtuhAYY}t5M VWj _j^t+At+ANuOu_^]UQVuEUfMj?HZf@Ju3f;^]USVu3Wj[3kǃ| u|$uBf;|Af;|2_^[]UMHpJtLxN|PRTV]UMSVW8UUUU U,U0U$U(U3jЋ[fAXfEGEB(Kuكf|_^[]Uިt h,AYSVu3WPPPP(STB3@|9Ft89t49Ft/虨t6vWhAϨNtB3FFG @rPSBY_^[t hHA蒨Y]U:t h:AvYSVu3WPPPP(STB3Ɯ9Ft89t49Ft/t6vWhA+NtB3FFG @rPSB赧_^[t hXAY]U薧t hAҧYSVu3WPPPP(STB3ƀx9Ft89t49Ft/Qt6vWhA臧NtB3FFG @rPSB_^[t hƺAJY]USVuW3WWWW(STBE @|;Fu>>t9~t3t6vWhANtBf&fE G @rjSB_^[]USVuW3WWWW(STBE Ɯ;Fu>>t9~t3>t6vWhAtNtBf&fE G @rjSB_^[]USVuW3WWWW(STBE ƀx;Fu>>t9~t3輥t6vWhANtBf&fE G @rjSB_^[]UQQSVW} G`pEEEE PBu ]EPPV臺u B5B-U9PuL9AuGMQHa2A S˘EM;uɃg2҃gS識_^3[]jY)UEVWp(輤@t hVAY~Tt4袤t h~AޤYM 2҉yBVJ S] 3QQQC`Qx (PE TBBlJ@;/ ;;  tUt)hοAYţt hAYSVP: 衣t hAݣYSVP  }t hA蹣YSVP Yt hnA蕣YSV 6t hArYSVP $(tU,t)0ޢ%hJAYt h6AYSVP$6 蝢t h"A٢YSVP  yt h A赢YSVPUt hA葢YSVP1t hbAmYSVP,; 8LPtUTt)XˡmhAY]计t hAYSVP<#芡t hAơYSVP8ft hA袡YSVP4Bt hzA~YSVP0t hAZYSVPD`dtyltQpt)tʠh\AY譠t hHAYSV&荠t h4AɠYSVc mt hA詠YSVMt hA艠YSVPH)hAaYo;;tstTt,踟t ht hAzYSV # ' tkC tCG tWhA1Ywߜt hAYSV X远t hAYSV 8蟜t hAۜYSVhA跜Y;a;&;wR S[SVP $k(;, 0SVP(5\;wR8SL#PTXSVP@`dlpxthSV;;w^jtDt0SV 2SV&SVk t0SVSVSVS  ;wGG T uASVn # tS' *C G j(PBc2҉{BVGSVE jPB[_^]UQMU S]VWE3@|;Pu ;uxu G @r\t$k @|[ k 4WhA;k H|tB[ 3k !M@|H| 躘t hȽAY3D|>t虘tv6WhAϘG @r֋E_^[] UQMU S]VWE3;Pu ;uxu G @rS.tk WhAX k tBk 3!M ۗt hAY3>t躗tv6WhAG @r֋E_^[] UQMU S]VWE3x;Pu ;uxu G @r\Pt$k x k 4Wh*Auk xtB 3k !Mxx t hRA0Y3x>tӖtv6Wh*A G @r֋E_^[] UMXTPju Q]UMPju Q]UM@EEPju Qj]UMpPj u QN]UMRPj u Q2]UQQEEPju E ;u ]UMPju Q]UM0xPju Q]U誕@tjht衎tv6WhdA׎G @r֋E_^[] UQS]VWE3ƃ8tG @r k jPEBj0juBEx@M Ek Ut5EuWhvA)E3ɉk 轍t hAY3>t袍tv6WhvA؍G @r֋E_^[] UQQS]VWE3xƃ8tG @rk jExPEBj0juBExA k M E MExt6Eu4WhA'E3ҋM k x趌t h AY3>t蛌tv6WhAьG @r֋E_^[] UMh@XTPju Q]UMh@Pju Q]UMhn@pPj u Qy]UMh@RPj u QW]UMh@Pju Q5]UMhz@0xPju Q]USVW}h@UVhu WV0x1 4U3ҋރ;u)<u Br( rƇUƇU_^3[]UMh\@SPjxu Qu]UMh@RPj u QS]UMhL@Pju Q1]UM 2҃aaBur~3]UVW}Tt5艊t h~AŊYM 2҃aqBW-~Du F`HEPBǜXF>98tjY)0uwB_^]UVW}3ɋ񍇄{9Hu 9u9HtF |_^] Sk {QPBj0juBEx/EK k M ;{ :蓉t)hAωY3ɍK k ;{;{ 8E[UVuXx@WE?tXxphAmYYtXxphFAOYYtXxp hxA1YYtXxphAYYˆ_tXxp$h޼AYYeEPju V^]UUXxtAHQPu RW3E}쫫EPju R`_]UQeS] VuWC`HM s #Xx{ }tPxBXxM tvO;rkWjtBXx·t WhAYYXxt9WuPM QVPLxXxu u PP}c2ҋˉ{BV-{_^[]UMU S]W3{;Hu ;uxuG |_[] Vk {tBK 3k {{^ 3USVu 3W}F`9xs f#Wuv  ~2҉^Bunz_^[]UMS]Vu W3F`9Hs#;Qv u辆 9}t'M QSPLxuu Uu PPf2ҋΉ~BSy_^[]UMSuY(QPE:M u BEu BV5BW33GPCXP{`{djPjP3pVW|tPxxBjVVhGATXPB3ɍ3f DfPTfXZ\`dhlpf3E_^[]U(&B3ʼnEEeS] @(]܉E荄t h,AɄY#V5tBWjj֋jEPEWjjB؁#uSWxBuj֋fu tuhHAVYYEPWPEjB؅t hAY5|BEhAPhAEPhAEP֋5BjuWփu,蓃t hAσYEjuWփuZt hA薃YELj uWփ u.t hAjYE t h$AKYtt hDA$YWxB͂_^t h~AYM3[Ղ]UESVWp(藂t hAӂYE j[H?HHWhtBL/WSP蝂L0BL@0BL@0BL@ ~5ALXLǀt$BLǀ@$BLǀ$B8}EWhtBLWSPLH%BL@0BL@0BL@ VNALXLǀ<$BLǀ@X$BLǀ#BWhtBLu WSPdL%BL@x0BL@0BL@ 8]AL@v9ALǀ$BLǀ@ $BLǀH#BL PV~thhA貀YYyLtJPxBL;À 1Bt À r&Ɔ 1Bt VhAZYY_^[]Ut hA8YEVp(LtPxBL s)ƀ 1BtPh&AYY^]U SVu3ۋv(uzt hLAY3!E!EEEWQP$=tBPjE׉E hjPy 9] tQhXA?YYQjE׉EhjP& 9]~tj@hA~YYEPjVBhAEPBEPEPpB9W3ۍESSj"PhB h BSSp(SSVPuu؅~t hAZ~Y?t~t hAA~Y7B'uQP(}_t uxB}t hA}Y}t uxB}t hA}Y^[]3ɃH`EfEff ftPxBPjtB}tPhAM}YYu PjQ9}u VupBh`AuBEPuBEUERPuQEEP7QMUQ VVP jVBT:|t hjAv|Y7-UESWx(|t hA@|YSP$tF{t hA|YVp(VPVB^SP({_[@t h.A{Y]UEVWp(b{t hBA{YWP$t&5{t hAn{YPWP(_^]U3PPPPuTB]UjuB]UEVWx(zt hNA{Yu Wwn_^]̡1BU&B3ʼnEVupW3hWPhldz DžxdAhEA|dElj YEdE\h~APtM|B\PBuBWWpQVjЋhl 1ByM_3^y]UESVWX(} jjhJAWPHBy2҉wBSAm$WYS+mjWPLB_^[]UESVWX(} jjhJAWPHBy2҉wBSlw`F =tl= tU=t>=t'=txt[hNANxtKh*A>xt;hA.xt+hAxthAxt hAxYF =tL=t<=t.W=t=t56SSWS7WS82҉wBSkjWPLB_^[]UE SVuX`WQP$QP$39tC<{s /C@B Ɔt RPQPQ(PQ(_^[]UVW}VP$VƇP(_3^]UVW}VP$VƇP(_3^]UU B`x s#DMVWjf  fXfjxXf3ǁz _B ^]UVuW3WF%BPBE hhTagPu~~ FFHBF=vyvhbAvvYYFPWF4PhB39~_^] UMAH+A@]UE3ұ9Pt 9Pt9PH]USVu3WPPPP~WTBVPu,FN E FFHNV9NHvNH;rfjWB_^[]USVu3WPPPP~WTBVPu(N VE  F FHN tHFH;Nrf jWB}tVQ,_^[] UQSVu3WQQQFQPETB]9^Hsty hAuY3g9~tb!}t[VPu=E N VG F FHN tHFH;Nrf VP,E@E;rmty hAtYjuB_^[]USVuW3WWWFWPETB9]vRVPu4NFM  CFFHNV9NHvNH;rfG;}rsy hAtYjuB_^[] UW}tNsy hAsYSV3ۍwSSSSVTBSV___ _HBGPSG4PhB^[_]UXsy hAsYVuFt PxBf^]USVW}3PPPP_STBwO ;w GN++Ny3jSB_^[]jhBrYU MB#B`$HB]U} EVWx(t/u>r$lPu ql 2_^] UE@(]UESVWp(SP$Yqth@AqYYjhuEtBqtjhhAUqYYEg gEGE GMtBtMptjhhAqYYEEGE GgG xpthApYYSP(_^[]UEVWp(WP$FpthA|pYY9U t R uB S3ۅu9ZuQxBtP9Zu2B RXxBot9hApY,tJtHJB A BX RxB[othAoYYWP(_^]UE@(Ltjudu PQ3] UE SV5xB3W}SSGGPf_@_ SSG PSSG0PSGPPB_^[]UEPQ]3US]39C tP8CAuKWPPPP{PWTBjjCCAPPB3PPPPs TBK CAtBc jWB_[]UW}@ubSV5BGP3fG@֍G P֍G0P֋W0ESSSSPBy _ f_@SG PSShuBuB^[_]UESVp(ƀr;uv9run]tQE Ɔrrm@trPhAmYYm@Ph AmYmm@jhhAߋE ;u19rtEm@t hPAmY3@c,m@tXhAKr;um@thA;url@t hA4mYjXl@t hNAmY3^[] UQESVWp(EX(E`l}@t7hAlYY3AtuI8xu9hTu3lTuhTu9lTu Yft hAfYEujYWƀW3jY2-<`#MWtft h(ACfYuVWEƀWj@[t(et hBAfYFPjuuVW:Et ufhTEetEPhҋAeYYle}tHhAeYYNetPhAeYYE jVN# FetvhZAAeYY[_^]U(ES]V@(EWj}Y@(}UEEWWE+WU3E+‰EE+W3+‰Etdu@tVuhAd EWU;}‹UC ƋW;}c Ccd@tss hCu[N@sRfffFfOyIA3@ u uj Y^_] UM AtUHtDHt3Ht"HtHuRuQuDuQu/6uQu(uQuWuQu+ uQu] UE VBu/uuPVuƆƆ-Cu&uuPVuƆ2^] U&B3ʼnEESV3ۉTp(W} PHLjIy h0AIYQP$d@(\#Iy hVA_IYHPSSSG4PTBHy htA5IYhQWPHy hAIYb`hhjPHdDT XxHy hAHYX`PhPWP*.Hy hAjHYtvedjP\Sƅd hP\SGy hAHYhPVGy h AGYhhjPG Gy h(AGY9`eGPy hFAGYQP(;G_^[y hdAtGYM3EG]USVu^Gt hjADGYuu]EW$WP(;E}WPdjuu WPWPd_Ft hAFY^[] U&B3ʼnEE SVu`W}_dhhjPFD `\PdPhPVS(t6}v0}tu苇hQWPphhjP0F \9duM_^3[E] UD&B3ʼnESVW}3jU[GPVPE Dž?֍8&Bf@~r鋅ff&BPPpBhAPBjY3󫍅DžPh?PDž@pBMPjtBGPVwG D PWjPBwj Y3CtPWhAD G@rxB3CthACYY}QCt hACY8&BfI~r鋽Wf&BfPtǚj YByM_^3[,C]U &B3ʼnESVuWW^jP,C Dž4=tUVQxfWPpBhAPBhPjjlBM_^3[kB]U6B@t hFAoBYSVuWtB3ۍlЋBt5S BtA@thdAA@t h~ABYA_^[@t hAAY]USVA@t h\AAY]{dWjhtBaAuhAAYt hAAY+A@t VhAcAYYjjEPxBjWhEAVEjG(Bu'@@t hAAY3PPPPEPTByWxB@@_t h A@Y^[]UQSVW@@t hA@Yu ]vR@t hA@Y>@tZtG t4t!ttIVhAU@Y:t7hA*tvh^Ait!hLAth,A t hzA@Y{dtD?t hA?YjShEAjj(By?t hA?YtBxlxM3ɇ M|32ЋBE_^[tPxB}t (?@t hAa?Yu $B?@t hAA?Y] >@t hA?YUVut+jjvPB>@t hFA>YVxB^]U`&B3ʼnEVuEjTjP>E EE EEjYh~APEAMME |BEPBuBjjMQVh@ЋM3^6>] UQQSVW3}=@t hA/>YuUR@(PQLx`PEPu~du<9ht49lu,9`t$9pt=t h@A=YV#l=t hjA=Y3@_^[]UQQF=@t hBA=YVuW3G9~dt _StBE |E8t,<@t hbA0=YU BjhtBBAwxj@0PBȉMu5<@t hzA<YM3U BWxBA`U @@'"x@A`@CAp@lBUHByG<@t;hA:<Y.;@t hA!<YM3U B[;@t hA;Y_^]UBt2}S3ۍESSPxBEPB9] t\9]tWEPEPSuuuuu uLBt2M HB=uSSSSEPTBEyËM 2[]UM S]VuAWy0E}A`M$EA`W@UAp@P`BH Z3ۉZZ싆X$BHB=usSEPSSSjEPjXBuY7:t hAs:Y BSSSSWTB9t&:t hA@:Y$B_^[]US]VWLWPxPy WP_^[]UMVLPVP3^]UVuưR9t hRA9Y>9y VhrAy9YY(9yu hAa9YYjjF PPB^] US]V5BW39uIW@0P։u P`BH Bzz9uXW@0P։utPxB떋p`FQ F~~_^[]UVuu>u5t tBt tBƆ^]U$&B3ʼnESVu3W3ۍ}!]NE9<EPEPhPDB؅jjhuB؅ytBEM܉E䉆@ AE@\A\ƆPVWu6thA6t hA#7YjjjVWu6thA6t hA6YMMj XEEEPVEWu}6th Am6t h A6YY6t h:A6YM_^3[a6]U(ESVWx(3VVEPxBtBj XPjӉEu j Z3fUfMMQMQVRPVVhLBu fHBu3PPPPEPTBu3MAfEAPjӉt3fEfS53CthAhA5YY65tuhAo5YY5tuh AW5YY5tPh A:5YYEPj65 hAVB4thJA4YYEPVpB4thJA4YYE }E3fEjffEEPEP,BxE}t uxB_^[] UESW} 3WGPQ@WPQ3LJ%3_[]U SVW}jwFEBP\BBi\G_ E]W@`@&KAp@HB3PPPPPjEPjXBHutA@E3yuhAH3YY}t@2y h(A-3YuPE2y hPA3YSBAu9P`BH 3BJJ싆H$k2tJhxA=[2t hA2Y B3PPPPSTB,2t hAh2YtP$B2t hA<2YjG@PB_^[]UQQSVW}jw^dBP\BB3Ʉ9GEC4E9QQQQQjEPjXB3+tOHu6Auj9tbj QSP~PPWV833ɀAt+1t+hlA1thJA 1t hAG1Y39t&0t hA)1Y$B0t hA1YS_@PB_^[]UVuu=tP$ButP$B2^]UQEPEjjju h]UEEE EEEE PjjjEPEh T]UQEPEjjju h,]USVuWt3tVW ؅xjVW ؅yVWZjFhPuVW$VW7jhFdP۸u NQP$ҍPQ@PQ_^[]UVuuRWPQ @PQ FPQ$FdPQ$VW$u.t hA/YVW_^]UE VW}p.t hA.YjjpPPB_^] Uz.t hA.YEVj@0PBuK.t h*A.Y3 u V^]UVu3ANlF|t;~N|SW-t4dBhA,.YY-t4BhA .YY-tF|4BhA-YY-t4BhA-YYx-t4Bh.A-YYV-t4BhJA-YY4-t4BhfAc-YY-_[t4BhA?-YY3^]UVuWL,y hA-YPWPWP,_3^]USVuWLWP؅v,t hdA,YPQ,yt hxA,YWPKt hAn,YƆPx(,tPhAC,YYVQ_^[]UEVL+y hA,YVP3^]USVW}3ۋL+y hA+Yt @(,xPVPV+y hA+Yt6@t/xWVƆPXu VP`WVP\+_^[y hA;+Y3]UxSVu3WjXfEjPXfEE E3u]]fEԉ]]*@t Vh\A*YYSSEPxB}EPEPjSSSSh"LBu!a*@t hA*YF`$u 8*@t hAq*YV$B΍M։HHBu?)@t hA3*YSSSSEPTB)@t hA*Yu)@tuuVhA)_^[] U`VuWjX~jfEXfEE WEMQP8W!L)x yhA y h$Ay)Y_^]U)t h8AX)Y3PPPPuTB]UV3u(y hA%)YSW}k PhtB؅u(y hBA(YrMt_։u9vRDE9p v4HEk Lt4E@BE;W rߋ}MUBMU;r*(_[y hnAd(Y^]UUt@jPRQH]UEV3VVPxBEPEPjVVVVuh"LBЅu'y hA'Y8J`$u R$BE AMHB=uVVVVEPTBE^]UQQEVp(8B8t P4BjPEP,Bx"UMRuu W' EP0B^] Ux&B3ʼnEESM V]3!uWj ZfUjPZfUUUUU3!UfUԍUE苀RQME EP8xJkE2u&y VhA&YYWhtBuMK&y h A&Y2&y hfAn&YtVxBM_^3[/&]WjVV& eM}uEj XfEjPXfEEE3!EfEԋEQu싀P8x%y Vh8A%YY3zU`SVj^VhtB؅up%y hA%Yj XjPfE3XfEEMMčMQu u]EP8u%x;y hFAO%Y$yCPhfA6%YYW}󥥥fu_y hA%YSxB^[] U$&B3ʼnES]Vsu$y hA$YSP,MQSP0d$yhA$YyEPEPhAz$ f9Et$y hAY$YkE3AWf;fff f; f;@f;`f;pf;f;f;ȺH#f;turf;tkwf;taȺf;tKf;tF@f;t@ f;t6f;t,f;t"#y hA@#YQȺy#f;rCf;r f;s"y(h.A"Y"y hLA"YƃE#ǹ"f;r%$f;sv"y hA"Yƃu襍EPPf}SQ4y "~hAnE䉃"y hA<"YMQSPYtE@PhDA"YYtEp hjAYYtEphAYYEEtuhAYYEw hUTagPhBExEĉ|PtBjOdUSRQMPu!t hA]YE3ɋvdA9HXExA;-t Vh4A!YYtEp`h^AYYEu:t VhAYY3PPPPBpPBE3PPPPPjEPjXBuPBE u/t VhAVYY3PPPPBƇpPBVhAYYu9tIt't h.AY@(ǀ4VEPjj`BDpPBXt hbAY@(tKu &@t hA_YE@t hA?YEMEЋ@9EtEt hAYP3uuyhA48j XfjHXfE؉$E,E0Dž(ItuhAYYPVuBF`t@AH@EHBt h6A/YE3Q9tEPQQQQjEPjXB^uGt h|AYV B3PPPPuTBhAY~=Zt hAYV B3PPPPuTB0t hAlYjOdUjRQPu M;r3VMAM3ɉMt h"AYthVAYY=0t=uest hzAYu؋WƇPXut@(,xu WP`u؋WP\3ɉMu=ut hA=YtuhA#YYE#;u\t hAYu؋WƇPXt@(,xu WP`u؋WP\eEPjj`BTt hAYjOdUjRQPt @(ƀ*h2ASYe,t WhTA/YYEltPt hvAY3tI]$ ]D$T$UL$)qqq( ]UVWS33333[_^]ËjG33333USVWjjh߇AQI_^[]Ul$RQt$ ]SQ&B SQ&BL$ KCk UQPXY]Y[%@B%<B%@BOnFDOCreate IoAcquireRemoveLock not success, Fail IRP Increase FDO Ref OnFDOClose DecreaseRef FDO Ref. OnFDORead FDODefaultWrite Mouse Point Lost WHEEL : GESTURE_ZOOM WHEEL : GESTURE_SLIDE_X (GestureValue == 0) WHEEL : GESTURE_SLIDE_X (GestureValue == 0) post up WHEEL : GESTURE_ZOOM X WHEEL : GESTURE_ZOOM Y GESTURE_ROTATE GESTURE_ROTATE : GestureValue = %d WHEEL : WHEEL_BUTTON_DOWN WHEEL : 0x%x (%d) WHEEL : GESTURE_SLIDE_X WHEEL : 0x%x (%d) WHEEL : GESTURE_SLIDE_Y IDP : Enter dispatch origin data routine IDP : Need to parsing length = 0x%x IDP : we got a command packet DispatchOriginalData : Get Button Status CMD(CMD length is not correct %d). DispatchOriginalData : Write to EDO Len %d. Multi-Input %02X Multi-Input 1: %d, %d Multi-Input 2: %d, %d do New rectangle gesture. ulWidth 0x%x,ulHigh 0x%x ReportMouseData.LastX %d,ReportMouseData.LastY %d ucTouchStatus 0x%x m_DeviceType 0x%x m_ucDeviceID 0x%x ReportMouseData.ExtraInformation 0x%x IDP : Leave dispatch origin data routine receive %d bytes points pkt(02) eTouch : ParsingInputData has an exception ! IDP : Enter dispatch command routine2 OnDispatchCmd2 : KeGetCurrentIrql() > DISPATCH_LEVEL!!! CurrentIRQL [%d] IDP : Leave dispatch command routine2 IDP : Enter dispatch command routine IDP : Leave dispatch command routine prcMonitor->left %d prcMonitor->right %d prcMonitor->top %d prcMonitor->bottom %d prcVirtualDesktop->left %d prcVirtualDesktop->right %d prcVirtualDesktop->top %d prcVirtualDesktop->bottom %d pActiveArea->ulNumsOfBoxes = %d pActiveArea->rcBoxArray[%d].left %d pActiveArea->rcBoxArray[%d].right %d pActiveArea->rcBoxArray[%d].top %d pActiveArea->rcBoxArray[%d].bottom %d cx %d cy %d rcBoxArray.left %d rcBoxArray.right %d rcBoxArray.top %d rcBoxArray.bottom %d pBuffer[ 0 ] 0x%x pBuffer[ 1 ] 0x%x pBuffer[ 2 ] 0x%x pBuffer[ 3 ] 0x%x pBuffer[ 4 ] 0x%x pBuffer[ 5 ] 0x%x IDP : Enter post mouse point routine IDP : Leave post mouse point routine.because EEPROM failed EDOPostMousePoint : m_ulTouchStatus = 0, set Touch Disable Enable EdgeBtn EdgeBtn : X %d EdgeBtn : Y %d Disable EdgeBtn 1 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x Zfilter : disable Z filter Zfilter : enable Z filter 2 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x 3 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x 4 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x 5 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x 6 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x TouchSeq enable touch TouchSeq disable touch 8 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x 9 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x do not limit in ActiveArea. 10 pMouseData->LastX %d , pMouseData->LastY %d PostMouseState %x Active Area : DisableTouch Active Area : Post last Point and Touch UP USER ID(Real Multi) %d Active Area : Post last Point and Touch UP(Retangle) last touch state is up Active Area : Post last Point and Touch UP (Real Multi) Active Area : Post last Point and Touch UP(Real Multi) Active Area : EnableTouch pDeviceParam->m_ActiveArea.m_LastX 0x%x pDeviceParam->m_ActiveArea.m_LastY 0x%x 11 npMouseData->LastX %d , pMouseData->LastY %d (EDOPostMousePoint)pFdoExtension->m_bLastButton4Down = %x (8)PostMouseState = %x bBranchSw : pFormatData[5] == 0x%x bBranchSw 2 : pFormatData[5] == 0x%x IDP : Leave post mouse point routine PackMouseInputData pFormatData[ 0 ] 0x%x ShiftBit 0x%x lTempX %d lTempY %d (FilterLostPacket)pFdoExt->m_bLastButton4Down = %x FilterLostPacket :pMouseData->ExtraInformation 0x%x FilterMouseTouchEvent :g_bDragWaitNextDown==TRUE , post left up FilterMouseTouchEvent :g_bDragWaitNextDown==TRUE , g_bDragWaitNextDown==FALSE , post Move DoPostMousePoint: We have lose the data eTouch : We have lose the data KeGetCurrentIrql() > DISPATCH_LEVEL!!! DoPostMousePoint: pPostMouseState 0x%x PostMouseMove PostMouseLeftDown PostMouseLeftUp PostMouseRightDown PostMouseRightUp PostMouseLeftClick PostMouseRightClick PostMouseLeftUpAndRightClick PostMouseDBRightClick PostMouseLeftUpAndDBRightClick PostMouseLeftClickSpecial PostMouseWheel PostMouseMoveAndLeftUp other DBG_TDI : Send reset frimware cmd pRectBox->left = %d pRectBox->right = %d pRectBox->top = %d pRectBox->bottom = %d OnActiveAreaSingleSplit ActiveAreaSplitMap OnActiveAreaMultiMapping RectBox.left = %d RectBox.right = %d RectBox.top = %d RectBox.bottom = %d ActiveAreaBox->left = %d ActiveAreaBox->right = %d ActiveAreaBox->top = %d ActiveAreaBox->bottom = %d OnActiveAreaMultiSplit OnActiveAreaMultiFull OnActiveAreaMultiUpper OnActiveAreaMultiLower OnActiveAreaMultiLeft OnActiveAreaMultiRight OnActiveAreaMultiQuad1 OnActiveAreaMultiQuad2 OnActiveAreaMultiQuad3 OnActiveAreaMultiQuad4 DetectTouchInSequenceState : lTempX = %d DetectTouchInSequenceState : lTempY = %d DetectTouchInSequenceState : lLastPostX = %d DetectTouchInSequenceState : lLastPostY = %d DetectTouchInSequenceState : TimeOut. state return to 0 DetectTouchInSequenceState : state 0 DetectTouchInSequenceState : state 0(out area) DetectTouchInSequenceState : state 1 DetectTouchInSequenceState : state 1(out area) DetectTouchInSequenceState : state 2 DetectTouchInSequenceState : state 2(out area) DetectTouchInSequenceState : state 3 DetectTouchInSequenceState : Switch to disable Touch Function. DetectTouchInSequenceState : Switch to enable Touch Function. DetectTouchInSequenceState : state 3(out area) BASEPrepareDelete : RefEvent OK! BASEPrepareDelete : WorkItemEvent OK! BASEPrepareDelete : DPCEvent OK! BASEPrepareDelete : IOEvent OK! xTouch : DispatchRoutine Called IRP_MJ_CREATE IRP_MJ_CLOSE IRP_MJ_READ IRP_MJ_WRITE IRP_MJ_PNP IRP_MJ_POWER IRP_MJ_DEVICE_CONTROL IRP_MJ_SYSTEM_CONTROL IRP_MJ_INTERNAL_DEVICE_CONTROL IRP MJ Others xTouch : Increaseing Reference yet =%d xTouch : Ref = %d, Decreasing Ref xTouch : ** OutStanding Ref Event triggered xTouch : Increaseing OutStanding IO yet =%d xTouch : OutStanding IO = %d, Decreasing IO xTouch : ** OutStanding IO Event triggered xTouch : OutStanding DPC = %d, Decreasing DPC xTouch : ** OutStanding DPC Event triggered xTouch : OutStanding WorkItem = %d, Decreasing WorkItem xTouch : ** OutStanding WorkItem Event triggered DriverEntry : g_ustrRegistryPath.Buffer ExAllocatePool size(%d) Leave driver entry ( fail ) xTouchEnter driver entry( 0x%x ) Leave driver entry NativeNameEnter add device routine DriverObject( 0x%x ) , PhysicalDeviceObject( 0x%x ) IoAttachDeviceToDeviceStack ruturn fail Identify fail FDO init fail Leave add device routine ( success ) Leave add device routine ( fail ) Unload Driver( 0x%x ) EdgeBtnAction: TouchDown == pDeviceParam->m_LastTouchState EdgeBtnAction: pLastPostMouseData->Buttons = MOUSE_LEFT_BUTTON_UP; EdgeBtnAction Y EdgeBtnAction : WHEEL_UP 0x%x EdgeBtnAction : WHEEL_DOWN 0x%x HWEEL_LEFT 0x%x HWEEL_RIGHT 0x%x EdgeBtnAction X RtlQueryRegistryValuesExEDODestruct : call decreaseing Reference (EDONotifyDeviceRemoval) Enter EDONotifyDeviceRemoval EDONotifyDeviceRemoval : complete m_WaitRemovalIrpLeave EDONotifyDeviceRemoval EDOCleanAll : complete m_WaitRemovalIrpWrite to EDO RxFifo = %d0x%02X EDOFireRemoveEvents EDONotifyToRemove Redirect : GetEEPROM Addr=%02X EDORedirect : Get EEPROM Addr = %02X Value = %02X %02X EDORedirect : Returned CheckSum = %04X EDO TX Thread : Get GETEEPROM CMD ,but first EEPROM CHECK not finish Write Complete EDO TX Thread : Get GETEEPROM CMD EDO TX Thread : Get H2D_LOOPBACK CMD EDO TX Thread : Write Data to FDO. EDO : Got Tx Thread Stop event EDO : Tx Thread is Close EDO:Read Timeout %d EDORxMoveData: CurrentIrp NULL EDORxMoveData: Fifo Empty EDORead : 0x%x EDO: Read %d bytes from Fifo Complete Read Irp - Read %d bytes EDO : Got Rx Thread Stop event EDO : Rx Thread is Close EDODefaultCreate EDODefaultCreate : call Increaseing Reference Increase EDO Ref EDO : Enter EdoCleanAllBeepEvent EDO : Leave EdoCleanAllBeepEvent (Enter EdoCleanBeepEventArray) (Leave EdoCleanBeepEventArray) EDODefaultClose EDODefaultClose : call decreaseing Reference EDODefaultRead xTouch : pEdoExt->m_BaseExt.m_bDeleted, Fail IRP EDODefaultRead: Read.Length == 0 EDODefaultWrite. EDODefaultRead: Write.Length == 0 EDODefaultPnp EDO IRP_MN_START_DEVICE EDO IRP_MN_STOP_DEVICE EDO IRP_MN_SURPRISE_REMOVAL EDO IRP_MN_REMOVE_DEVICE EDO IRP_MN_QUERY_CAPABILITIES EDO IRP_MN_QUERY_PNP_DEVICE_STATE EDO IRP_MN_QUERY_REMOVE_DEVICE EDO IRP_MN_CANCEL_REMOVE_DEVICE EDO IRP_MN_QUERY_STOP_DEVICE EDO IRP_MN_CANCEL_STOP_DEVICE EDO IRP_MN_QUERY_DEVICE_RELATIONS EDO IRP_MN_QUERY_INTERFACE EDO IRP_MN_QUERY_RESOURCE_REQUIREMENTS EDO IRP_MN_READ_CONFIG EDO IRP_MN_WRITE_CONFIG EDO IRP_MN_EJECT EDO IRP_MN_SET_LOCK EDO IRP MN Others EDOBeep : Beep Source: %d EDOBeep : m_ulTouchStatus: %d EDOBtn EDOFireBtnEvent : Set Btn event! EDOHWeel pEdoExt->m_ulHWeelStatus = 0x%x EDOFireHWeelEvent : Set HWeel event! EdoIoctlGetActiveAreaBoxNum : pEdoExt->m_pActiveArea == NULL pActiveAreaInfo->bEnable (%x) pActiveAreaInfo->ulNumsOfBoxes (%x) pActiveAreaInfo->rcBoxArray[1].left (%x) pActiveAreaInfo->rcBoxArray[1].right (%x) pActiveAreaInfo->rcBoxArray[1].top (%x) pActiveAreaInfo->rcBoxArray[1].bottom (%x) MonitorInfoEDOQueryMonitorInfo ExAllocatePool size(%d) EDOQueryMonitorInfo FreePool EdgeInfoEDOQueryEdgeInfo ExAllocatePool size(%d) EDOQueryEdgeInfo FreePool BeepFrequencyBeepDurationBeepModeBeepSourceConstRangeConstDurationConstModeMouseModeTouchSpeedTouchGridOrientBranchCalInfoEDOQueryCalInfo : ExAllocatePool size(%d) EDOQueryCalInfo : FreePool LinzInfoEDOQueryLinzInfo : ExAllocatePool size(%d) EDOQueryLinzInfo : FreePool EDOAuthenThreadRoutine-running EDOAuthenThreadRoutine-running stop since EEPROMOk ChallengeThread : Get Callenge Thread Stop event ChallengeThread : delay to get calibration data. ChallengeThread : Got Callenge Thread Stop event Other Status EDO : EEPROM Thread is Close xTouch\DeviceDefault\DeviceDefaultm_FilterPtsParam.m_lAccLimit (%d) m_FilterPtsParam.m_lSkipPtsLimit (%d) EnhanceLinear in Service(%d) EDOQueryMonitorInfoFromService : ExAllocatePool size(%d) EDOQueryMonitorInfoFromService : FreePool EDOQueryEdgeInfoFromService : ExAllocatePool size(%d) EDOQueryEdgeInfoFromService : FreePool EDOQueryCalInfoFromService : ExAllocatePool size(%d) EDOQueryCalInfoFromService : FreePool EDOQueryLinzInfoFromService : ExAllocatePool size(%d) EDOQueryLinzInfoFromService : FreePool CalSourceIdleTimerIdleFlagTouchHoldToResetTimeTouchHoldToResetFlagIdleToResetTimeIdleToResetFlagA0A1A2A3UppperLowFilter ThresholdFilterActiveAreaInfoEDOQueryActiveAreaInfo ExAllocatePool size(%d) EDOQueryActiveAreaInfo :Query Reg failed. error code = %x EDOQueryActiveAreaInfo :Query Reg failed. len = length%d EDOQueryActiveAreaInfo Buffer size too small. need buffer length is %d EDOQueryActiveAreaInfo Buffer size too small. need Data length is %d EDOQueryActiveAreaInfo(2) ExAllocatePool size(%d) EDOQueryActiveAreaInfo(2) Get data size(%d) %x EDOQueryActiveAreaInfo FreePool DesktopTouchDownTimeAccLimitSkipPtsLimitEnableDetectTouchSequenceFlgRectangleLimitInActiveAreaReportOlderRectangleFormatEdgeBtnRealMultiReportModeFireWheelEventOnlyReport1stContactDelayGetCalTimeResetUSBDevEnhanceLinearSaveEnhanceLinearToService(%d) EnhanceLinearData(%d) EnhanceLinearDataSwTo8Bits(%d) EdoHookBeepEvent(%d)(%x)(%x) EDO Reference pkBeepEvent EDO Reference pkBeepEvent: Buffer too small EDO Reference pkBeepEvent: DeviceIoControl.InputBufferLength (%x) EDO Reference pkBeepEvent: sizeof(HANDLE) (%x) EDO Reference pkBeepEvent: (NULL == hEvent) Leave EDO Reference pkBeepEvent EDO Dereference pkBeepEvent Leave EDO Dereference pkBeepEvent SetRemoveEvent(%d)(%x)(%x) Enter EDOCleanAllRemoveEvent Leave EDOCleanAllRemoveEvent EDOReferenceRemoveEvent(%d)(%x)(%x) (EDOReferenceRemoveEventArray) EDODereferenceRemoveEvent(%d)(%x)(%x) (EDODereferenceRemoveEventArray) EDO Reference pkRemoveEvent EDO Dereference pkRemoveEvent EdoIoctlSetActiveArea : pEdoExt->m_pActiveArea ExAllocatePool size(%d) EdoIoctlGetActiveAreaBoxNum : pEdoExt->m_pActiveArea->ulNumsOfBoxes(%d) pEdoExt->m_pActiveArea->rcBoxArray[1].left (%x) pEdoExt->m_pActiveArea->rcBoxArray[1].right (%x) pEdoExt->m_pActiveArea->rcBoxArray[1].top (%x) pEdoExt->m_pActiveArea->rcBoxArray[1].bottom (%x) SetBtnEvent(%d)(%x)(%x) Enter EDOCleanAllBtnEvent Leave EDOCleanAllBtnEvent EDOReferenceBtnEvent(%d)(%x)(%x) (EDOReferenceBtnEventArray) EDODereferenceBtnEvent(%d)(%x)(%x) (EDODereferenceBtnEventArray) EDO Reference pkBtnEvent EDO Dereference pkBtnEvent SetHWeelEvent(%d)(%x)(%x) Enter EDOCleanAllHWeelEvent Leave EDOCleanAllHWeelEvent EDOReferenceHWeelEvent(%d)(%x)(%x) (EDOReferenceHWeelEventArray) EDODereferenceHWeelEvent(%d)(%x)(%x) (EDODereferenceHWeelEventArray) EDO Reference pkHWeelEvent EDO Dereference pkHWeelEvent reply ulHWeelStatus 0x%x EDODefaultDeviceIoctl IOCTL_SET_BRACNHFORMAT IOCTL_GET_BRACNHFORMAT IOCTL_GET_OIRENTATION IOCTL_SET_OIRENTATION IOCTL_SET_CALINFO IOCTL_GET_CALINFO IOCTL_SET_MOUSEMODE IOCTL_GET_MOUSEMODE IOCTL_SET_LINZINFO IOCTL_GET_LINZINFO IOCTL_SET_MONITORINFO IOCTL_GET_MONITORINFO IOCTL_UPDATE_MONITORINFOnIOCTL_SET_EDGEINFO IOCTL_GET_EDGEINFO IOCTL_SET_CONST_TOUCHINFO IOCTL_GET_CONST_TOUCHINFO IOCTL_GET_BEEPINFO IOCTL_SET_BEEPINFO IOCTL_QUERY_COMM_NAME IOCTL_GET_VERSION IOCTL_WAIT_REMOVAL IOCTL_CLEANUP_WAIT_REMOVAL IOCTL_REFERENCE_EVENT IOCTL_DEREFERENCE_EVENT IOCTL_REFERENCE_REMOVE_EVENT IOCTL_DEREFERENCE_REMOVE_EVENT IOCTL_HOOK_RAW_POINT IOCTL_HOOK_CALED_POINT IOCTL_HOOK_CMD IOCTL_REMOVEALL_HOOK IOCTL_GET_LAST_POINT_TICK_CONT IOCTL_GET_TOUCH_FUNCTION_STATUS IOCTL_SET_TOUCH_FUNCTION_STATUS IOCTL_SET_ACTIVE_AREA IOCTL_GET_ACTIVE_AREA_BOX_NUM IOCTL_GET_ACTIVE_AREA_INFO IOCTL_REFERENCE_BTN_EVENT IOCTL_DEREFERENCE_BTN_EVENT IOCTL_GET_ENABLE_DETECT_TOUCH_IN_SEQUENCE_FLAG IOCTL_SET_ENABLE_DETECT_TOUCH_IN_SEQUENCE_FLAG IOCTL_REFERENCE_HWEEL_EVENT IOCTL_DEREFERENCE_HWEEL_EVENT IOCTL_GET_HWEEL_STATUS IOCTL_GET_ENHANCE_LINEAR IOCTL_SET_ENHANCE_LINEAR IOCTL Others(0x%x) Enter identify device type FDOIdentifyDeviceType : ustrHardwareID.Buffer ExAllocatePool size(%d) We got a new hardware id , and compare it USB\SERENUM\ACPI\It is a USB device It is a SERIAL device It is a PS2 device God!!! It is an unknow device FDOIdentifyDeviceType : ustrHardwareID.Buffer FreePool Leave identify device type FDOOpenPort FDOOpenPort : pFdoExt->m_pPort ExAllocatePool(NonPagedPoolNx) size(%d) FDOOpenPort : Internal DeviceID = %d FDOClosePort FDOClosePort : release DeviceID = %d FDOOpenEDO FDOOpenEDO : ustrDeviceName ExAllocatePool size(%d) FDOOpenEDO : ustrSerialNo ExAllocatePool size(%d) \Device\EDOFDOOpenEDO: init EDO failed. FDOOpenEDO : EDOInit failed. FDOOpenEDO : pEdoExt->m_ustrSymbolicName.Buffer ExAllocatePool size(%d) #EDOFDOOpenEDO: Create EDO failed FDOOpenEDO : ustrSerialNo FreePool FDOOpenEDO : ustrDeviceName FreePool FDOCloseEDO FDOCloseEDO : Decreaseing Reference call by NotifyToRemove and Destruct EDO PrepareDelete. FDOStopEDO OnFDODefaultHandler ForceRedirectedDebugLevelFDO: IOCTL_INTERNAL_MOUSE_CONNECT FDO: IOCTL_INTERNAL_MOUSE_DISCONNECT FDO: IOCTL_INTERNAL_MOUSE_ENABLE FDO: IOCTL_INTERNAL_MOUSE_DISABLE FDO: IOCTL_MOUSE_QUERY_ATTRIBUTES FDO: IOCTL Others Fifo : buffer Address 0x%x Write Fifo : not have enough buffer!!! Write Fifo : fifo full Read Fifo : fifo empty FifoPurge !!! !!! FifoReleaseResources !!! helper:ForwardAndWait Helper:PassThroughIrp FDORegisterCallback begin--- Hooked=%d FDORegisterCallback : pTempList ExAllocatePool size(%d) FDORegisterCallback end--- Hooked=%d FDOUnRegisterCallback begin--- Hooked=%d FDOUnRegisterCallback : FreePool FDOUnRegisterCallback end--- Hooked=%d pMouseData->LastX %d,pMouseData->LastY %d IsNeedTransfer2Rectangle DO_NOT_REPORT_RECTANGLE (don't init ID1)(0x%x) IsNeedTransfer2Rectangle pDeviceParam->m_RealMultiRectangleStatus.m_bDropSecondUp(0x%x) IsNeedTransfer2Rectangle DO_NOT_REPORT_RECTANGLE (init ID1)(0x%x) IsNeedTransfer2Rectangle : is ID1 NEED_REPORT_RECTANGLE(has ID2) IsNeedTransfer2Rectangle : is ID1 DO_NOT_REPORT_RECTANGLE(no ID2) IsNeedTransfer2Rectangle : is ID2 NEED_REPORT_RECTANGLE IsNeedTransfer2Rectangle : is not ID2 NEED_REPORT_RECTANGLE IsNeedTransfer2Rectangle : end DO_NOT_REPORT_RECTANGLE RealMultiReportRectangle: pPostMouseState 0x%x RealMultiReportRectangle: ucUserID 0x%x ucID 0x%x RealMultiReportRectangle:m_bNeedPostUp ==TRUE RealMultiReportRectangle:Do not report this mouse event RealMultiReportRectangle:ucTouchStatus 0x%x RealMultiReportRectangle:m_DeviceType 0x%x RealMultiReportRectangle:m_ucDeviceID 0x%x RealMultiReportRectangle:ReportMouseData.ExtraInformation 0x%x RealMultiReportRectangle:pDeviceParam->m_RealMultiRectangleStatus.m_bDropSecondUp 0x%x RealMultiReportRectangle:Clean status RealMulti: pPostMouseState 0x%x m_bNeedPostUp ==TRUE pFormatData[0] & 0x60 pFormatData[0] & 0x20 pFormatData[5] == 0x5f pFormatData[5] == 0x60 pFormatData[0] & 0x40 pMouseData->ExtraInformation 0x%x ReportMouseData.ExtraInformation 0x%x (gesture) IRP_MN_START_DEVICE IRP_MN_STOP_DEVICE IRP_MN_SURPRISE_REMOVAL IRP_MN_REMOVE_DEVICE IRP_MN_QUERY_CAPABILITIES IRP_MN_QUERY_PNP_DEVICE_STATE IRP_MN_QUERY_REMOVE_DEVICE IRP_MN_CANCEL_REMOVE_DEVICE IRP_MN_QUERY_STOP_DEVICE IRP_MN_CANCEL_STOP_DEVICE IRP_MN_QUERY_DEVICE_RELATIONS IRP_MN_QUERY_INTERFACE IRP_MN_QUERY_RESOURCE_REQUIREMENTS IRP_MN_READ_CONFIG IRP_MN_WRITE_CONFIG IRP_MN_EJECT IRP_MN_SET_LOCK IRP MN Others Enter start device TouchSendSyncIrp is success GetCommName Failure GetCommName Success Do port start device Empty Port's StartDevice Going to Enable Device Interface Enable Device Interfce done Leave start device xTouch : Enter remove device xTouch : Do port remove device xTouch : IoReleaseRemoveLockAndWait is called xTouch : Leave remove device Enter stop device Leave stop device Enter surprise remove device OnPnPSurpriseRemove : return status not success. Leave surprise remove device OnPnPQueryRemoveDevice Leave OnPnPQueryRemoveDevice OnPnPCancelRemoveDevice Power : Enter OnFDOPower IRP_MN_SET_POWER IRP_MN_QUERY_POWER IRP_MN_WAIT_WAKE IRP_MN_POWER_SEQUENCE other 0x%x Power : CancelSelectSuspend UsbPort : Enter PowerUsbWaitWake UsbPort : No Wait Wake Irp! Just Pass through to down stack UsbPort : Issue Wait Wake Irp Success Lower drivers failed the IRP_MN_WAIT_WAKE Irp UsbPort : Leave PowerUsbWaitWake Power : Enter OnFDOWaitWake Power : Waitwake count = %d Power : Leave OnFDOWaitWake Power : FDODefaultPower Power : FDODefaultPower skip irp to lowerDo Power : FDODefaultPower IoCompleteRequest irp Power : FDODefaultPower leave xTouch : FDOSetDevicePowerComplete On Set Power Completed with Failure xTouch : FDOSetDevicePowerComplete leave xTouch : Powering up xTouch : Powering up : set IoSetCompletionRoutine 1 xTouch : Powering up : set IoSetCompletionRoutine 2 xTouch : Powering Down. xTouch : Powering Down! Trigger Power down Event xTouch : Powering Down. wait thread into idle mode xTouch : wait thread into idle mode timeout xTouch : Powering Down. wait thread into idle mode. completed xTouch : Enter FDODefaultSetPower PS2 UsbFlushCmdPacket : Enter EDOMutex UsbFlushCmdPacket : Debug 0 UsbFlushCmdPacket : Debug 1 UsbFlushCmdPacket : Debug 2 UsbFlushCmdPacket : Debug 3 UsbFlushCmdPacket : Debug 4 UsbFlushCmdPacket : Debug 5 UsbFlushCmdPacket : Debug 6 UsbFlushCmdPacket : Debug 7 UsbFlushCmdPacket : Debug 8 UsbFlushCmdPacket : Leave EDOMutex Redirect : RedirectLoopBack 2.0V ResistiveRedirect : SetEEPROM Addr=%02X, Value=%04XRedirect : Update Data in Registry Redirect : Get EEPROM Addr = %02X Value = %02X %02X Redirect : Returned CheckSum = %04X UsbPort : Enter UsbInsertCmdPacket UsbPort : Leave UsbInsertCmdPacket \InformationEEPROM : Query Addr=%02X, Value=%04X EEPROM : Query Value Returned=%d EEPROM : Query Value Fail! Update Registry again CancelSelectSuspend - begins IoCancelIrp returns TRUE IoCancelIrp returns FALSE CancelSelectSuspend - ends PoIrpAsyncCompletionFunc::IdleNotificationRequestCompete - begins Idle irp completes with error::STATUS_SUCCESS STATUS_INVALID_DEVICE_REQUEST STATUS_CANCELLED STATUS_POWER_STATE_INVALID STATUS_DEVICE_BUSY default: %X IdleNotificationRequestComplete::PoRequestPowerIrp failed the completion routine has a valid pointer to idleIrp - free the irp IdleNotificationRequestCompete - ends PoIrpCompletionFunc::IdleNotificationCallback - begins Failed to alloc memory for irpContext IdleNotificationCallback::Device Power STATUS = %X IdleNotificationCallback::waiting for the power irp to complete IdleNotificationCallback - ends SubmitIdleRequestIrp - begins Idle request pending.. cannot build idle request irp IoCallDriver failed Memory allocation for idleCallbackInfo failed SubmitIdleRequestIrp - ends WaitWakeEnabledSelSuspend : begin SetDeviceIdle SelSuspend : Call SubmitIdleRequestIrp() SelSuspend : Not Need SelSuspend!!! Thread isn't stopped yet!!! Set baud rate fail !!! Set baud rate success !!! Set LCR fail !!! Set LCR success !!! Set timeout fail !!! Set timeout success !!! Leave init serial port Enter read completion routine RxCompletion : pThread = 0x%x RxCompletion : pIrp = 0x%x kIrql > PASSIVE_LEVEL || NULL == pPortBase->pReadIrp RxThread : Stop event is setting RxThread : ulReadBytes = 0x%x RxThread : Enter DispatchOriginalData RxThread : Leave DispatchOriginalData RxThread : pThread->bThreadStopPending = TRUE Serial : Leave Rx thread Enter write complete routine Tx Thread : cancel Irp Tx Complete : Free Irp kIrql > PASSIVE_LEVEL || NULL == pPortBase->pWriteIrp TxThread : Stop event is setting TxThread : pThread->bThreadStopPending = TRUE Serial : Leave Tx thread \DosDevices\_DEVICE_ = %ws ustrTempCommPortName get from PDO = %ws return length = 0x%x m_ustrCommPortName.MaximumLength = 0x%x m_ustrCommPortName = %ws FDO open usb edo EDO open fail. EDO open success. EDO SymbolicName: %wZ UsbPort : System Wake State=%s UsbPort : Device Wake State=%s UsbPort : Device in S0=%s UsbPort : Device in S1=%s UsbPort : Device in S2=%s UsbPort : Device in S3=%s UsbPort : Device in S4=%s UsbPort : Device in S5=%s PnpUsbStopDevice PnpUsbRemoveDevice PnpUsbSurpriseRemove PnpUsbSurpriseRemove : before abort pipe PnpUsbSurpriseRemove : after abort pipe UsbPort : Init RX Fifo success UsbPort : Init TX Fifo success UsbPort : Init Cmd Fifo success UsbPort : Get usb information fail !!! UsbPort : Assign task usb infomation fail !!! UsbPort : Enter usb stop device UsbPort : Before stop thread UsbPort : After stop thread UsbPort : Before release fifo UsbPort : After release fifo UsbPort : Leave usb stop device UsbPort : Enter UsbGetUsbInfo UsbPort : UsbGetDeviceDescriptor Fail idVendor = %04X, idProduct = 0x%04X UsbPort : HW ID Failed. UsbPort : This is PCAPA000. UsbPort : This is PCAP7900 serise or later products. UsbPort : This is PCAP7900 serise (22xx). UsbPort : UsbGetConfigurationDescriptor Fail UsbPort : Enter SetConfiguration UsbPort : Leave SetConfiguration UsbPort : UsbSetConfiguration Fail UsbPort : Enter ReleaseInterfaceList UsbPort : Leave ReleaseInterfaceList UsbPort : Enter QueryTotalNumsOfInterfaces UsbPort : Leave QueryTotalNumsOfInterfaces UsbPort : Enter ReleasePipeResources UsbPort : Leave ReleasePipeResources UsbPort : Enter QueryTotalNumsOfPipes UsbPort : Leave QueryTotalNumsOfPipes UsbPort : Enter AllocatePipeResources UsbPort : Leave AllocatePipeResources UsbPort : Leave UsbGetUsbInfo UsbPort : Build DeviceIoControl Irp Fail UsbPort : Descriptor Allocate Fail !!! Get Device Descriptor Success UsbGetDeviceDescriptor : pDescriptor->bNumConfigurations = %d Get Device Descriptor Fail !!! UsbGetConfigurationDescriptor : Configuration descriptor length = %d UsbPort : CfgDescriptor Allocate Fail !!! UsbPort : Get CfgDescriptor ( 0x%x) Success UsbPort : Get CfgDescriptor Fail !!! UsbSetConfiguration : Enter UsbSetConfiguration : before USBD_ParseConfigurationDescriptorEx UsbSetConfiguration : i = %d UsbSetConfiguration : after call USBD_ParseConfigurationDescriptorEx UsbSetConfiguration : pIfDesc == NULL UsbSetConfiguration : we got a new pIfDesc and store it UsbSetConfiguration : after USBD_ParseConfigurationDescriptorEx UsbSetConfiguration : ulNumsOfEndPoints != 1 ( fail ) UsbSetConfiguration : before USBD_CreateConfigurationRequestEx UsbSetConfiguration : after USBD_CreateConfigurationRequestEx UsbSetConfiguration : pSelUrb == NULL ( fail ) UsbSetConfiguration : before USBD_ParseDescriptors UsbSetConfiguration : pEPtDesc == NULL ( fail ) UsbSetConfiguration : after USBD_ParseDescriptors UsbSetConfiguration : before submit select URB UsbSetConfiguration : after submit select URB UsbSetConfiguration : success UsbSetConfiguration : fail and free resources UsbSetConfiguration : free pSelUrb UsbSetConfiguration : Leave UsbPort : Enter UsbQueryTotalNusOfInterfaces UsbPort : Leave UsbQueryTotalNusOfInterfaces UsbPort : Enter UsbQueryTotalNumsOfPipes UsbPort : Leave UsbQueryTotalNumsOfPipes UsbPort : Enter UsbAllocatePipeResources UsbPort : Allocate pipe resources fail !!! UsbPort : Leave UsbAllocatePipeResources UsbPort : Enter UsbReleaseInterfaceList UsbPort : Leave UsbReleaseInterfaceList UsbPort : Enter UsbReleasePipeResources UsbPort : Leave UsbReleasePipeResources UsbPort : Enter UsbReleaseUsbInterfacePipeResources UsbPort : Leave UsbReleaseUsbInterfacePipeResources UsbPort : Enter UsbReleaseAllUsbResources UsbPort : Leave UsbReleaseAllUsbResources UsbAbortPipe : return success UsbAbortPipe : return fail UsbResetPipe : Power Down state! not resetUsbResetPipe : return successUsbResetPipe : return failUsbResetDevice : Power Down state! note resetReset Device Ok %X Reset Device Not Ok %X AllocateUsbPipeIrp :enter allocate IRP . AllocateUsbPipeIrp : allocate IRP false. UsbRxComplete : Enter UsbToComRxComplete UsbRxComplete : Leave UsbToComRxComplete UsbRxThread : UsbPortRxThreadRoutine Fail due to No Pipe Info. UsbRxThread : pPipeInfo->Interval = 0x%x UsbRxThread : UsbPortRxThreadRoutine is Running UsbRxThread : Polling Interval=%dms UsbRxThread : Transfer Size=%d UsbRxThread : Pipe Handle = %x UsbRxThread : Max Packet Size=%d UsbRxThread : Rx thread loop start ! UsbRxThread : RxThread Terminated due to m_PnPState not started UsbRxThread : Device Power Status is %X! UsbRxThread : System Power Status is %X! UsbRxThread : Set m_kRxReadyInPowerDown event UsbRxThread : Stop Event was setted UsbRxThread : Set m_kRxReadyInPowerDown event(Already In un DO polling state.) UsbRxThread : Set m_ulTouchStatus =1 enable touch UsbRxThread : Power Status is DeviceDo! UsbRxThread : Timeout 5Sec. UsbRxThread : Timeout 500ms. UsbRxThread : EDO not ready!!! UsbRxThread : allocate rx IRP start. UsbRxThread : allocate rx IRP false. UsbRxThread : IoCallDriver (1) UsbRxThread : Receive the stop Event UsbRxThread : Power Down Event Trigger UsbRxThread : Power Down Event Trigger End UsbRxThread : Wait Receive timeout UsbRxThread : Write Loopback CMD to Tx Fifo UsbRxThread : IoCallDriver wait single complete!!! UsbRxThread : Usb urb error = %x UsbRxThread :Endpoint halted or Not Responding, Reset it! UsbRxThread : Usb urb error = READ_URB_ERR UsbRxThread : PipeHandle = %x UsbRxThread :Something wrong and Reset now UsbRxThread : Send Loopback CMD UsbRxThread : Receive %d bytes UsbRxThread : Copy read data to RxFifo Rx(point):0x%02x Rx:0x%02x UsbRxThread : Set m_bGetLoopbackPkt = FALSE UsbRxThread : While Loop end UsbRxThread : UsbPortRxThreadRoutineExit: UsbAcquireMutex. UsbReleaseMutex. SendDataOut : TxThread : Length : %d SendDataOut : Allocate Irp Fail! SendDataOut : Get IoStack Fail! SendDataOut : STATUS_PENDING SendDataOut : Complete SendDataOut : IoCallDriver = 0x%X, urbheader = 0x%X, iosb.Status = 0x%X UsbTxThread : MaximumTransferSize = %d UsbTxThread : UsbToComTxThread is running UsbTxThread : m_pBuffer = 0x%x UsbTxThread : m_ulLen = 0x%x UsbTxThread : m_ulRead = 0x%x UsbTxThread : m_ulWrite = 0x%x UsbTxThread : m_pOP = 0x%x UsbTxThread : Device Power Status is %X! UsbTxThread : System Power Status is %X! UsbTxThread : pBaseExt->m_DevicePowerState != PowerDeviceD0 UsbTxThread : Set m_kTxReadyInPowerDown event UsbTxThread : pBaseExt->m_LastTxDevicePowerState != PowerDeviceD0 UsbTxThread : Stop Event was setted UsbTxThread : set m_kPowerUpEventRx UsbTxThread : USB pipe not ready!!! UsbTxThread : EDO not ready!!! UsbTxThread : UsbToComTxThread enter Wait Data Objects UsbTxThread : get power down event UsbTxThread : USbToTxComThread Terminated due to device not started UsbTxThread : need send data length %d UsbTxThread : Send Loopback CMD UsbTxThread : Read No Data UsbTxThread : %x UsbTxThread : FALSE == pUsbPort->m_bForceRedirected UsbTxThread : TRUE == pUsbPort->m_bResetPipeNow UsbTxThread : pPortBase = 0x%x , pTxFifo = 0x%x UsbTxThread : SendDataOut Fail !!! UsbTxThread : Write Done OnFDOSystemIoctl : EnterxTouch : Enter FDOWmiRegistrationxTouch : Leave FDOWmiRegistrationFDOWmiUnRegistration : EnterFDOSetWmiDataItem : EnterFDOSetWmiDataItem : LeaveFDOSetWmiDataBlock : EnterFDOSetWmiDataBlock : LeaveFDOQueryWmiDataBlock : EnterFDOQueryWmiDataBlock : LeaveFDOQueryWmiRegInfo : EnterMofResourceNameFDOQueryWmiRegInfo : Leave:ALIHItI`IH>I0IIII JIICCCCCCDD D8DPDrDDDDDDDEE&E@E\EtEEEEEEEFFC&F4FNFfFCFFFFFFG2GHGdG|GGGGGGHH"H.HBHbHvHHHH*CCBBBBB|BfBNB|CFdC:B"BF Bbu=W[<<;q@Oڗqe]IRP_MJ_CREATEIRP_MJ_CREATE_NAMED_PIPEIRP_MJ_CLOSEIRP_MJ_READIRP_MJ_WRITEIRP_MJ_QUERY_INFORMATIONIRP_MJ_SET_INFORMATIONIRP_MJ_QUERY_EAIRP_MJ_SET_EAIRP_MJ_FLUSH_BUFFERSIRP_MJ_QUERY_VOLUME_INFORMATIONIRP_MJ_SET_VOLUME_INFORMATIONIRP_MJ_DIRECTORY_CONTROLIRP_MJ_FILE_SYSTEM_CONTROLIRP_MJ_DEVICE_CONTROLIRP_MJ_INTERNAL_DEVICE_CONTROLIRP_MJ_SHUTDOWNIRP_MJ_LOCK_CONTROLIRP_MJ_CLEANUPIRP_MJ_CREATE_MAILSLOTIRP_MJ_QUERY_SECURITYIRP_MJ_SET_SECURITYIRP_MJ_POWERIRP_MJ_SYSTEM_CONTROLIRP_MJ_DEVICE_CHANGEIRP_MJ_QUERY_QUOTAIRP_MJ_SET_QUOTAIRP_MJ_PNPIRP_MJ_PNP_POWERIRP_MJ_MAXIMUM_FUNCTIONBBBBB B8BLB`BxBBBBBYi7N;$DPowerSystemUnspecifiedPowerSystemWorkingPowerSystemSleeping1PowerSystemSleeping2PowerSystemSleeping3PowerSystemHibernatePowerSystemShutdownPowerSystemMaximumPowerDeviceUnspecifiedPowerDeviceD0PowerDeviceD1PowerDeviceD2PowerDeviceD3PowerDeviceMaximum4Ezb`[\&BBBRSDS o3OiS#{D:\code\xtouch-160516-ForSawFWUpdateIssue\Win8.1Release\xtouch.pdbP8AA@$AAA^AAA@@J@@\@@n@@@"@v@X@^@^@F@@>@$@X@^@d@@@@@@R@,@Ȉ@X@6@d@@@h@@@@6@@‹@‹@‹@,AAA$AAA@$AAA^AAA@$AAA^AAA@$AAA^AAAc@C@I@@c@d@HI@Li@i@"w@rC@D@G@Z,@3@>@@@@`@>@@@@@d@@@@@@Z@@@j@@@@nnnn22@ffffffff  dAA@A_A~xAlyAvA\wA[AyAyA&xA^A]A\AT{AwAz\A~AZAzAyA:Ar=A >A9AAAL9A>Ah8Ar:Af[AxALPATAbUALAZLA:TAdTATAKASAX@jeA$AAA^AAApA$AAA^AAAPA$AAA^AAARA$AAA^AAA5A$AAA^AAA5A$AAA^AAAr@@AAAvA AAA A A@r@@l@$A1A AAH A AWAXAXAWAbVAJAJAJAJA AAAAAABAA*A\AABBBB B0BLBdBtBBBBBBB,BLB\BpBBBBBBBBB,B8BLBffffffff2BDN@ &Bt=N@tУ&BjY)@HH@I@I<@4J,LIHItI`IH>I0IIII JIICCCCCCDD D8DPDrDDDDDDDEE&E@E\EtEEEEEEEFFC&F4FNFfFCFFFFFFG2GHGdG|GGGGGGHH"H.HBHbHvHHHH*CCBBBBB|BfBNB|CFdC:B"BF BKeGetCurrentThreadRtlInitUnicodeStringKeInitializeEventKeInitializeSemaphore KeReleaseSemaphoreKeDelayExecutionThread2KeSetPriorityThreadLKeWaitForMultipleObjectsNKeWaitForSingleObject6PsTerminateSystemThread?IoBuildDeviceIoControlRequestNIofCallDriverIoGetDeviceObjectPointerkObReferenceObjectByPointerxObfDereferenceObjectTDbgPrintOIofCompleteRequest*IoAcquireRemoveLockExIoReleaseRemoveLockEx,KeSetEventKeQueryTimeIncrementF _allmul memcpy memsetEKeTickCountKeInitializeSpinLockRtlWriteRegistryValueORtlAppendUnicodeStringToStringExAllocatePoolExFreePool;IoAttachDeviceToDeviceStackXIoCreateDevicepIoDeleteDevicesIoDetachDeviceIoOpenDeviceRegistryKeyIoRegisterDeviceInterfaceZwClosebRtlQueryRegistryValuesMmGetSystemRoutineAddressRtlCreateRegistryKey\RtlCheckRegistryKeyPRtlAppendUnicodeToStringKeInitializeDpcKeRemoveQueueDpcKeClearEventKeInitializeMutex KeReleaseMutexKeInitializeTimer}KeCancelTimer9KeSetTimer)IoAcquireCancelSpinLockrIoDeleteSymbolicLinkIoReleaseCancelSpinLockZwOpenKeyZwQueryValueKeyhObReferenceObjectByHandleExEventObjectType RtlIntegerToUnicodeStringfRtlCompareMemorycIoCreateSymbolicLinkIoInitializeRemoveLockExIoGetDevicePropertyIoSetDeviceInterfaceStateExAllocatePoolWithTagPsCreateSystemThreadRtlFreeUnicodeStringIoReleaseRemoveLockAndWaitExPoSetPowerStatePoCallDriverPoStartNextPowerIrp2IoAllocateIrpDIoCancelIrpIoFreeIrpPoRequestPowerIrpRtlUnicodeStringToAnsiStringRtlFreeAnsiStringRtlxUnicodeStringToAnsiSizeNlsMbCodePageTagBIoWMIRegistrationControlntoskrnl.exeRtlUnwindjREAD_PORT_UCHARpWRITE_PORT_UCHARExAcquireFastMutexExReleaseFastMutexdKfLowerIrqleKfRaiseIrqlWKeGetCurrentIrqlcKfAcquireSpinLockfKfReleaseSpinLockHAL.dllWmiCompleteRequestWmiSystemControlWMILIB.SYS_USBD_ParseDescriptors@16_USBD_ParseConfigurationDescriptorEx@28_USBD_CreateConfigurationRequestEx@8USBD.SYS0 H`P4VS_VERSION_INFO ; ;?U6StringFileInfo040904b0$CompanyName VFileDescriptionUSB Touchscreen Driver: FileVersion5.14.0.151166 InternalNamextouch.sysTLegalCopyrightCopyright (C) 2000-2016> OriginalFilenamextouch.sys8 ProductNameTouchscreen> ProductVersion5.14.0.15116DVarFileInfo$Translation  00070^0n000000 1111$1/151<1B1H1M1T1X1^1c1111222!2.23282?2E2K2W2]2e22223"363I33333344+4I4_4444444456 686P666 :&:@:Z:t::;';@;W;<<<<=>>??? 060\00 171W1{1112-2W2i2222333k44H56667Z88999 :':::::;;?<{<<<<<<==9=P=o===== ><>T>k>>>>>?*?@?Z?????0070h00000131X1r1111 272Q2222223&3E3\3o3333333333333333\4r444H5b5x555697Y77l8888R999996:;$;;;; <8<<<<9=j== >%>b>>>?:?U?p?@|K0X0s000011111 26345555 6&626L6c6666778868;Q;i;;;;;;;+>?6????P040L0d0e1}1111B2F2J2N2R2V2Z2^2b22232333 4*44455h556646L6l6X7p777778888)999Y:~;;;;;;;<< <"<<<<<<<<<<>?`8/4X445r89::2;O;k<W?j?r?|?????p0M0q0~0000 1;1_1l11111122)2V2c2|22223T333334*4S4444444545A5Z55555)7o777778<8P8n8888889>9R9r99999:%:5:E:U:e::);R;;;;<#<@<|<<<<<<=*=9=G=Z=w======== >">5>;>E>L>d>p>w>>>>>>>> ?-?B?P?Y?i?????00R0{00000101L1u1h2223B4[4535e5556\66767P77777_8888899999 :.:E:_:l:z:::::;";8;_;x;;;;;<%<;>>p>>>>+?Z?l??????? 0$0S0j0z00000001111"1&1*1.121222W4h4U5|555556666 77"7K77778*888 99.92969:9>9B9F9J9N9b99999::::;8;W;i;w;;;;;;;;g<<<='=:=D=M=Z======> >>%>@>>>?a?D001%1V1s1111112&2Q2l222222#3?3T3_3333334H4c44444!555E5U5d5q5z5556-6=6M6\6i6t66666667-7Y7a7t7~777777788=8i8q8888888899!9M9y999999999:/:::::::;i;v;;;;;;;>%>0>@>_>>>>>>>>??0?:?C?o????????T0020Q000000 171111112 22?2k2s22222222 333,3m3u33333333444$4C4s4{4444444 5+55555556l6y666667Z7g777777@8M8i88888889/9S999999999:%:8:B:K:X:w::::::;-;5;H;R;[;h;;;;;;;<=,><>L>>>>?&?=?T?k????0&0D0W0|00000000 1191J1b1u1111111122(292U2q222222222223 33!3,373B3M3X3c3n3y333333333333334 44!474B4M4W4444444 595A5T5^5g5t55555556I6Q6d6n6w6666r777777868O8\8e888S9p999999:::*:::Y::::3;?;;;;;;;;0>>>C>T>Y>j>o>>>>>>>>>> ???3?A?Y?^?f?y??????????L 00-0B0a0f0t000000000 1!1&1.1A1O1d1i1q111111112 2"202F2K2S2g2u222222223 33*3<3W3e3y3~333333333 444/4=4U4Z4b4q44444444444445555D5j5x555555 6696R66666 707P7j77777 8%8K8j888888 9)9:9[99;;; <(<9*>W>h>>>>> ?6?V?\???030000161Y11112:2^2223)3M3q3334"4B4j444525I5\5555 606I6666 7-7Q777778: ;(;;;;;s<<<??,0M00000.1O11E222223)3E3l3333 4V4q444Q5`5555V6e6666W7f7777#8E8g88888k9999:#:A:l::::^;|;;;;<<<#=~==^>>>>?/??00;0L0u00000000051a111111/2Q2^2k2x222222233,3<3L3b333333333454F4a4q444445@555555 666E6q6666666H7_7~77777B8U8888 9-9]9999999:F:u:::::::;;;\;j;};;;;;;<<<>#>A>U>n>> ?1?l???"030\00000 1171O1q1111112%2N2X2o222<3Y3v3334O444445h55555 6656b6666 7(7J7c7}77778888n999T::;W;u;;<#<=<<<<<<==6>>>?,?I?? "0{000 1o1 2^2}22233304=4I4b4x444455)5@5W5n5555556 606@6^6n6~6667 7$7(7,7074787<7@7D7H7L7P7T7X7\7`7d7h7l7p7t7x7|77777777788'999;:U::::: ;;#;b;x;;;<'D>N>e>>>>>>>>?1?????000+0F00000 11H1_11111112292d2z2222s33334A4N4[4k4444?5c55555676k6}666777y77,8r8:%;l;;;;>Q?u?????@ &000001151j1111 2-2\2v2222222363J3h3}33333334=4v44444444445B5S5j5y5555555-656H6R6[667#7L7x777777 8%8,8V8k8z888888 99B9Q9f99:):F:X:j:u:::=;R;j;;;!<<<<="=4=====>">6>o>u>>>>??D?\?t???????P"0<0000"1;1P11111$242F2S2c2z2222223d3t3333334$4555606D6666666677$7A7F7c7h77778B8]888899999:1:Z:g:}:::::G;R;s;;;;;g<<<<==)=E=W=j===>0>D>]>n>> ??|??????`30Q0r01112s222223$3H3\3z33333344t5556K666667#7H7n77778818K8u888889)979l9999I:f:x:::::::;5;B;Q;_;;;<<<<-=;=x====>x>>>>>>?:?~???p00<0I0X0h0000021J1Q111111 2(2C2^2y22222303R3{333334%4A4\444 5F5\5555+6O6a6}66666777I7v777738X8n8888899+9F9\9999::;:\:v:::::.;9;;;;;;;<,<@<^<>g>>>H?~????|Q0e000001'101?1h11122,2P2222343>3H3R3\3b3}3333334'4=4444444444 5j56>666778*8086800d4h4l4p4t4x4|444444446 6(666 (000 0000(0,0004080<0@0D0H0L0P0T0X0\0`0d0h0l0p0t0x0|000000000000000000000000000000000111 11111 1$1(1,1014181<1@1D1H1L1P1T1X1\1`1d1h1l1p1t1x1|1111111111111111111111H3L3P3T3X3\3`3d3h3l3p3t3x3|333333333333333333333333333333444 44444 4$4(4,4044484<4@4D4H4L4P4T4X4\4`4d4h4l4p4t4x4|444444444444444444444444444444444555 55H5L5P5T5555555555555555555555555555666 66666 6$6(6,606466@ 00"0" *H !0!10  `He0\ +7N0L0 +70 010  `He ǒ" a14}z+Nݢko h00g3-Nz왰_s-0  *H  01 0 UUS10U Washington10URedmond10U Microsoft Corporation1806U/Microsoft Windows Third Party Component CA 20120 160106194140Z 170406194140Z01 0 UUS10U Washington10URedmond10U Microsoft Corporation1 0 U MOPR1;09U2Microsoft Windows Hardware Compatibility Publisher0"0  *H 0 }|4o=͘*~_ ٿJDG͛@_O8?zUYs k Z0-ARJlT%o)̎\iX7{u;tp6gS o|qk]7b';-W9\mlMTxEA.+ܔ {b'/چ1!$dTe!VXur[[#.Ty̸ 1X.3eiE00U%0+ +7 0U9{m~H{y,#ƈ0QUJ0HF0D1 0 U MOPR1301U*32207+4491dc84-8699-4a27-819a-d418fc2fbadd0U#0aqi!vOR(y0tUm0k0igechttp://www.microsoft.com/pkiops/crl/Microsoft%20Windows%20Third%20Party%20Component%20CA%202012.crl0+u0s0q+0ehttp://www.microsoft.com/pkiops/certs/Microsoft%20Windows%20Third%20Party%20Component%20CA%202012.crt0 U00  *H   T03j I:5zMBf5ǵn?ڛ1N Nb\HmC_ޠ+cRTDYħn'xOe9&H^|.yXjC=94#l Y&[9GhwYźzw)NJ>!k:jؚx4!+ӻ F]ġ(k H۴'M[0(ݭ.ߒԐFy,ʛPB ) Ƴ! 400ɠ a 0  *H  01 0 UUS10U Washington10URedmond10U Microsoft Corporation1200U)Microsoft Root Certificate Authority 20100 120418234838Z 270418235838Z01 0 UUS10U Washington10URedmond10U Microsoft Corporation1806U/Microsoft Windows Third Party Component CA 20120"0  *H 0 0 c. G$0 ^W1&1Pg e ZK.祙h/X )q(http://www.microsoft.com/pki/certs/MicRooCerAut_2010-06-23.crt0  *H  Zg &Aw Fxi+w#e/_aP.9rl>jvm̻ip(sf?THF:ymh-?98~^|n83haRGVҺˇ1 AN___9-E˜Aqa_ p%|Yi1$q rһ= CYS!_ַ&B6'wh="REppCq<Ɇ s[}\dH2ѪϧWNawgЊ47>bұ/r;|ofvr`$m[m.(݆´d*J\'Rb~ f = P2Y }Z8R/^ rJq;sGشﴤ0>vʹV~ꊸ8iw /A:+4 cc$ +;IR9;]nPj}R:|3) &^XN=zot?`2O6mq>Fe_tqLAZ10 001 0 UUS10U Washington10URedmond10U Microsoft Corporation1806U/Microsoft Windows Third Party Component CA 20123-Nz왰_s-0  `He0 *H  1  +70 +7 10  +70/ *H  1" [AI秼uEM xe3:վ!ß0~ +7 1p0n:8eGalax_eMPIA Technology Inc.0.http://www.microsoft.com/whdc/hcl/default.mspx0  *H FY.։zG Qb8~i0 B͔fj}P)@.M;t%&5{h"[[ŷ|2&23no9S20160530041537.761Z001 0 UUS10U Washington10URedmond10U Microsoft Corporation1 0 U MOPR1'0%U nCipher DSE ESN:B8EC-30A4-71441%0#UMicrosoft Time-Stamp Service0q0Y a *0  *H  01 0 UUS10U Washington10URedmond10U Microsoft Corporation1200U)Microsoft Root Certificate Authority 20100 100701213655Z 250701214655Z0|1 0 UUS10U Washington10URedmond10U Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20100"0  *H 0  w: iktTե |hK,_av>f+[S'1A |a0Y0D`TC M8Bݓs0W&E GͿ$`2X`FXG2tag_TϓLĦ]an(aF'$gr!KdPb]w=WuBM@Q>gfD~Knʱz* 1N5xhttp://www.microsoft.com/pki/certs/MicRooCerAut_2010-06-23.crt0U 00 +7.00=+1http://www.microsoft.com/PKI/docs/CPS/default.htm0@+042 Legal_Policy_Statement. 0  *H  Q ?q=!o1Wm0fjxǨ%kTW+QDS`v@@A\\^5$VKtBȯ7}Z?yJR8/ye٩kzoK0D$"<Y)p2J'U/3b_W@ΙfjbJ &9Jqc{!mÜ<}jxm8ؔƥ B"8 %d~cY%z.9Wvqa˚Gͧ};q ]t"aڰPo1:eGxHr~akow˧ 9؂r*T9[ Uzs;-3.)/T'!ȬN(ۖBAM*f0ӻt2Kc{/!YD9cߖ95qEq{[d{19J1IӘaJ {͵ħj/5^C nR k~u~n7҅Wz gK2_Zڕ"~< 8vaS7O G)op$~s!Db OϮi_ 00UhxeCu~}0U#0c:\1C{|F3hZmU0VUO0M0KIGEhttp://crl.microsoft.com/pki/crl/products/MicTimStaPCA_2010-07-01.crl0Z+N0L0J+0>http://www.microsoft.com/pki/certs/MicTimStaPCA_2010-07-01.crt0 U00U% 0 +0  *H   >t?-up=[5gdY@l`6*EP52hlr[ L0 /f\'kUad@LƉId6@Ծ͝fU8>'~R#0ôܱVˈP ~k}A,U$@.x߱r:X2ohI TI\89Qb(WaZwQ8sHc!e۹b! { C *K̃+$N9&]g뉞X~KғZ >$y0a0㡁01 0 UUS10U Washington10URedmond10U Microsoft Corporation1 0 U MOPR1'0%U nCipher DSE ESN:B8EC-30A4-71441%0#UMicrosoft Time-Stamp Service% 0 +Ws!"nXS ~001 0 UUS10U Washington10URedmond10U Microsoft Corporation1 0 U MOPR1'0%U nCipher NTS ESN:57F6-C1E0-554C1+0)U"Microsoft Time Source Master Clock0  *H 0"20160530002332Z20160531002332Z0w0= +Y 1/0-0 0  00 X06 +Y 1(0&0  +Y  0` 0 0  *H bTH63^Ss Cw%xkR#X|ѻL˃ N^ɚ_'AX\o>/g!sᓜc8Å8n! .乼Q#'B.z\"Hw;I19W& ƾn3D{K+SŠelm'q ?*U2xMaݸX&ޡv1000|1 0 UUS10U Washington10URedmond10U Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103b:^,V0  `He20 *H  1  *H  0/ *H  1" aHAp9- 1j#Kq-MWрL0 *H   1000Ws!"nXS ~00~0|1 0 UUS10U Washington10URedmond10U Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103b:^,V06%\K0  *H  w[2GD@Z3YOӱU I@񘨃S?O~-ky/Y[Y: nJ'R> #dwrhf!y5#ǔl >,USOamsEuޚiN6wFZH Yp=6Pye(G~oTFז#nh¸N߅g+0jނ 6`?P׍~UoJ&kvw"F8PeD\