MZ@ !L!This program cannot be run in DOS mode. $&b賫b賫b賫b貫8賫xk賫~a賫}e賫oS{賫ohc賫omc賫Richb賫PELcW  2v}@p͉@ 0d@X"Px\x.text h.rdataT@H.data@INIT 0  .rsrcX@@B.relocP@BUSVjtBPLBu3EBFE$+t8HuEPhBrt uuSSSSSjEPjHB8^AtSf^@@B^[]UQQ BV3h BuuP MEPVVE`yPB^]USVu3W  B9^t#M D DAN>r$B_^[]V33@5BVPhBB5BhBhVhBXBV5B5B5B BV BBB BVP^UQQee}trS] ti3Ҹ4uVW=BhjCVjBVjB׋5Bja PjaiEEPjjUPBja$Pja_^[]USVuBW}  B9BsABjjj4BBhB<B BBA;#BTB$B_^2[]UEVWx(Lpj@t hZAkYFtu Wj@t hfAjYW!eu W_d_^]UESVWp(oj@t h AjYL} jj@hAEWPHB؅y)/j@t hAkjY2҉_BVco~Xu?W؅x-EtWVЋ؅xi@t hHAjYVuf2҉_BVcjWPLB_^[]UESVWx(i@t h|AiYu jjhAVPHB؅y)Mi@t hAiY2҉^BWc,f2҉^BWbjVQLB_^[]UESVWx(h@t hAiYu jjhAVPHB؅y)h@t hAhY2҉^BWcb,f2҉^BWEbjVQLB_^[]UQQLhy hLAhYESVWxH +H+8E MXp+ڋ@ +Ɖ] uEuii iFiu E Ei@ Eƙ}ȋEi@  EƋu}~NF _gy6hڑAgYYHgyvhAgYY0gyvhAigYYgyv hAQgYY_^[] UuMuu APA PHI]UQQESVWE <f3ɋuB;~+F|ÚMB;~+A|tt Ǚ+S]Vu F +FiNFu+i}^;[_]UM 3@SI Vk Wj Yu}toB ZEBEB EBOEBOB+$B+B,rMrR2uEu P2mOB ZEBEB EBOEBOB+$B+B,rMrR+2uE􍆔Ou P2}|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 AGAG]cyPhAcYYDcyGPḣA{cYY*cyGPhAacYYcyGPhAGcYYbyGPhA-cYYbyGPhAcYY_^]UES] Vp(EuW}t,VSPspslxjYu/u8CyV3ɋVAf KdMEB<w>BEPCxPC`Pu2 B}tbt hAJbY}tƆDVClHVCpLVƆ~_^Cy[]U ESVu Wx(E(PVH @EEF,EMU@$M}EEƃ}E‰Emmee$uU EtqumPBiM3ۉ `BAA9uU(B B^xƆ;}ȉEt tE;EE+;E;E+;] `BAA9uPB+3QRSP`;|;sz8]8] E8wtC^x8~u8]tuU(F B FB~w^x~8ua8]n8] e8]u-8]u(8]u#EƇ^wƆƇ~Fx~`ƆƆu(a8]uM8] X8~tE8]t#U(F8B FPhA&WYYF |O"ˀɀ"ˊGGGG(PXPPjPP djY#dh#h4#э8#Љ4ˋ8$OG_WU@thdhA,V jYX@󥋽xxTGGGG (PXP$PjPP dj^#dh#hJYI@t hA#JY[^_] IB-@-@-@-@.@.@`/@,@(0@0@}2@2@3@UE}SVH(u W^EE(P @EUVU8(VŃ}Em M+t@u<PBiMfLFH `BAFTFPA9FTtm M+U;};E+;UU;+; `BAF\FXA9F\uPBVX+VPN\NTQRjPH;VL ;FH} }+fE EgVHt hAHYjE Pu2PBiMfLFH `BAFTFPA9FTu;ut3PBiMfLFH `BAFTFPA9FTu_^[]$UEVWx(3@Xw9E}uc;tjY;ttugE `E MQWPLxEMQWPLx3RRPu}9Eutt E _^]}u9Eu;tt݋MQWPLx+MQWPLxRRPu t jY;)E UB3ʼnEE eS]EEVEEW]tEgFt h0AFYs(uBFt hVA~FY2 pM{ x@(EE@t h֌A?YEPE؋PEƄQ3ƃPc>y hA>YƃPE؉PE܉Pp>yPh,A>YYU>yPhVA>YY:>yuuhAp> uu=j XtE;s*QNPNPNPEuP(pM<uEEVuP$x}3@8xfE}3fEfPE|PEd=yEPhA=YY5B3!E!EjfEXfE֋=B<w=׍EPEPEPuU2 B}t<t hA2=Yj XfEEƀ<w=׍EPEPEPuU2 B}t<t hA<Yu<yuhA<YY}EPEPWut.[<@t hA<YEP|PPEPEP4}EVP(}uEtEPELP@pMt;hRA<Y;y hnA<Y;yGPh&A;YY3j Yt @uw $`<`uwAu;yGPhJA;YY;sVEPNPPEPut&HtEPE0jYPut2EP pMENNPCPEuP ut#EPLE`NxjYP$ut}t8|t.u3fPPNEQP3C2ۋEuP_:t hpA:YËM_^3[b:]U3ɰ9M ~ UA;M |]UM EVQp(t9EW8Eu 8uuu8utq q1VPX_^]UQQSVW}3FjO kYjO EYu +ωM؋~ vM;~E+jdx_<;}U+jd_+;~E+jd[p ƙ4;}M+ƋjdAY+M;~y3;~y3E Mx _p^[] UhB3ʼnEEM USX(VWMujY}U󥋃3x(D}0EM+S+SuEMu}k:bZVMUE}E}QE􋃼P$x3MfE̍}ΫEf}VEE7yPhA8YY3!E!EjfEXfEB<w?BEPEPEPuU2 B}t7t hA7Yj XfEƃB<w?BEPEPEPuU2 B}t17t hAj7YƇ~E8epTE6@tEPhA/7YY6@tHhA7YY6@tPh̄A6YYE 3MT@| ȉMu6@tuhA6YYEPVPu\wtj`wuYu}QP(EMEMNEMuM_^3[6](UUSVu3CN(;u RXwXwyuRu Vj]w]u >N= BtO;u,}u&5@t hTA5Y B [5@t hA5Y;u;u}u \wWj_;u9]Qu0;u9Eu9]9]>u ;u~} uuo9]uj \w\uL;u$}tG9]uH8^wu:Ɓ^w~/u+9]u&38~Hlj~ 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+_^+] UB3ʼnES]VWjYu t3pF2y|h΅A|2YY+2yuhAd2YY2yuhAL2YY1yuhA42YY1yuh&A2YY1yuhBA2YY1yuh`A1YY1yuh|A1YY89s/;&i1yshA1YY3;ssC1yvWhA{1 )1y6WhAb1 1yvWhAH1 0yvWh,A.1 0yhTA1YY0yh\A0YYFu9t Nu9Nu p&xt#EEFEEPtMPwt Eet Eet EeFt Ee/yuhdA0YY/yuhxA/YY/yuhA/YY/yuhA/YY;E|;E;E|;E~G;{p;s2M_^3[_/]ˆU0e3S]VW}䫍s}𥥥s(}Х/y hNA=/YC t u S$,E+EEE+Eh~U@u EEPEPEPS_^[]U0S]3VW}ess(}Х}䫫w.y hA.YE+EEE+Eh~U@u EEPEPEPS_^[]U0S]3VW}ess(}Х}-y h~A;.YE+EM+Mh~U@u EEPEMPEPSM _^[]U-y h`A-YSVuWF>^EEF }]EEt-y WhzA-YY^-y ShA-YYH-yuhA-YY0-yuhAi-YYEH@t'y}VPtU'8} EPuW]G +GWK +K+EC+UMEt|txU+i™}+iMM}FCO+iMM}FCO+iMM}F .,y6hʒAh,YY,yvhAP,YY+yvhA8,YY+yv hA ,YY_^[]UEHwh$R@u PwVu PDKu Pc@u PT5u P*u PLu Pu P* u P]IQ@Q@Q@Q@Q@Q@Q@Q@R@U03S]VW}ss(}Х}䫫*y hƓA5+YM+MMEE+Eh~U@u EEPEPEPS_^[]U0S]3VW}ess(}Х}䫫{*y hޓA*YE+EEE+Eh~U@u EEPEPEPS_^[]U0S]3VW}ess(}Х}*y hA=*YE+EM+MEh~U@u EEPEMPEPS_^[]U03S]VW}ss(}Х})y hA)YM+MU+UEh~U@u EEPEMPEUPS_^[]U03S]VW}ss(}Х}䫫)y hAC)YM+MMEE+Eh~U@u EEPEPEPS_^[]U0S]VW}Ѝss(}𥥥s}॥(y h6A(Yh0V@u EPEPEPS_^[]U0S]3VW}ess(}Х}䫫)(y hfAe(YE+EEE+Eh~U@u EEPEPEPS6_^[]UVu # F# FF# FF # F 'y6hڑA'YYx'yvhA'YY`'yvhA'YYH'yv hA'YY^]U %'y h2Aa'YSVuW} VN F++F^+^ UV$+VEMUi iM}iGiN E}GiGiN EGiG iN EG ;&y7hڑAu&YY$&ywhA]&YY &ywhAE&YY%yw hA-&YY_^[]U%t hA &YEVWx(QP$t"S] :uFt uSvЋv u[QP(e%_^t hA%Y] UME PQAt fHf!P]U0e3MVW}A q}𥥥q(}Х_^t u Q,E+EEE+Eh:^@u EEPEPEPQ]U0M3VW}eqhb^@u q(}Х}䫫E+EEE+EEEPEPEPQm_^]U0U3VW}erhx^@u r(M}+M䥥}E+EEEPEMPEPRM_^]UEH@t)y}uPtU8S] VuWFPN QuSh}C +CEO +OG+MEtDt@ +iK+ N }F GK+iNM}FfN_^[]UEHwh$Z@u PVE xf!HEu P:u P/E x u PE x u P" u P;]I^Z@iZ@zZ@Z@Z@Z@Z@Z@Z@UEHwh$j[@u P;Vu PKu P@u P5u P*u PLu Pu P u P[]I[@ [@[@#[@.[@9[@D[@O[@Z[@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}rh&_@u Mr(+M}Х}䫫EE+EEEPEMPEPR_^]UEM0VWp}ХhF_@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}@fGWfOUfa]yPhAYY]舞P5yPhŽAmYYj ˉ]ZMAE AE E ‰E EAEAEEŠEEE EEE3 t @uA ``uAAqtyu hҎAYYzyuhގAYYOt%jSEPEPVEEPEPOP]jSEPEPV MEO Gqq;wx;~ qqHtSW0PO +G;~ʅy3;~…y3O GEOt)t%jSEPEPVtEPEPOP茱ˍE]WjSPOWjSEPBEtjuEPEPVWjSEPWjSEP MEA EAHtEtu썆0QPMA WEAjEESPWjSEP贳M+E;~ʅy3;~…y3UJ B_^[]UM SVuW}+IUM @N8$M(fAE;~jxXfAE+;} fAE Ɔ~E{,u(jYCSPBiMԐc$C `BACCA9CtME}UEU}u}EUCyu@M܋u;~bU+;}\M;~R+;}LU(K8J CTt;hҗA.Dt+hA4thޗA$t hA`YE;t2tHHtHt Hu<@ @ @tBWSV@t)tHtt@$֋@ϋ@ȋ@@ 뺻2ҋω_BVX_^[]UVu3@bt6hƘAYY^]UVu3W@3LAt 6WiYYt 6WVYY_^]UE SV5hB3W}SS3@_TGGG GGPLJ>v@SSG$PSSG4PSSGDP֍PhB_^[]UQSV3W]t hΚAYmutu VhA EPSSjShVB:EhjX(SE E Pu|BǃTBut hAYchBSHVuPyt6hHA)VhBjjuyDvt hXAYtPB}t uBBtVhAIEVjhBH E`Bv6u t hhA3Y_^[]UVu 3f BfFf BPjtBȉ Bu>t BPhAYYt h\AY BWPjQ Vh BpBjY3!BhzAG2u_t VhAiYY8x@F4}@FtFpFHFDF@F8F@z@t hAYh3^]UΒ= Bt0t hAY5 BxB3! B BvtuhAYY]̸ BUQ}tCEPhjuBx+E PujhAuh@lBuB] U(B3ʼnEVu3W}AMVE؋VE3fE䫫f9tTy hAYtYhAwYLy$!yjhA[YYjVk9W~yjhA2YYjVBM_3^]US]VWPP3V؆uOQQP躆uV脉hj@d~P蛆uVePY_^[]UVuPQ$PQ$d~PQ$^]UVuVPt h:A?YVVVbV^VPQ lPQ PQ VP8VPxwtPxBxwt P`BxBX^t h~AY]UVulPQPQ VuPQ uƆ3^]UVu Vu PQPQlPQ^]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 }EPPV.u EPPVu EPPVu B1U9Pu99Au4MQHa2A BWDEM;u_^]jY)U EVEEEWPBu9 t3S89Pu+9Gu&:]W}x9uE9 u[,jY)9Au9Ju}BU9Q9:uى M9uՍ'9Au9Ju}BU9Q9:u M9uuB1U9Pu9AuMQHa2A BV*EM;u_^]UE jjXPdB]UE jjHPdB] ̰UEt@(3QQQQ0PDB]UEt@(j0PpB3]UtuhAYYVutAYtAVw(VFT'Gj EPWVJVMVNVQ\V^2M3_;]UEtP(tM VAV]UB3ʼnES]VWjstBPLB EX4}Et6HtHuWBVFVCG3PPPPPjEPjHB{At_t hAYt6g=t hAyY2G BV t hAGYC@VP8j@BM_^3[]UB3ʼnESVW}jtBPLBw EH]Et6HtHuSBV;VC<3PPPPPjEPjHBAtMt hAY3ۈ_@t2҉YA BVVP8t hA>YS@BM_^3[]UE2ҋM Vp(ABV^]UEVWx(@t hƠAYTu3}t hؠAY3d@t hAYWM 2҉qBW_^]UESVWX(!@t hA]Y t hAFY} w`vS@GvSyLvSLvSP`WSP4g2ҋBSS*_^3[]UESVWx(@t hAYTt%st hAYu fu 3ۋF`9XuA@t h&A}Y^#r8tb8uZEPBHF8QFXP9 tjY)AF`HuBPQ,^%2҉^BWy_^[]UESVWx(@t hHAYTt%ot hAYu fu 3ۋF`9Xu=@t hZAyY^#r8<tb8=uZEPBHF8QFXP9 tjY)AF`HuBPQ,^%2҉^BWu_^[]UESVWx(3Ct h~AYu F`@W$Ώ@EhAw.phA`YhޢAIBhu(@UuBrAMrƇUƇUE_^[]USVW3E CjEEtBPLB]{dEut hA&YtqhAYaVBCPBh@jCWuvEu)hLA붃[Ht-tU@thAY|VB|@u#tuxu W>uSƇ|MMEig|jEQ3ɍEQPQQQjEPjHB{AT]ƇW#>W>UVTwg<V=Uq@t htAYuHvOt hAYjC@@B_^[]U"t hΤA[YE SVuW`~03PPPPSDBj@h{_>t#t h֤AYjj6dB OuWSpB_^[]UQQU EEE9S]VW}29VuS9puNPF9Xu'EN!F3FG>F98u!0wEMF9u 0u9u+jY)u9pu9AuMqJH9uډBEM;u_^[]USVu3WPPPP0WDBjƨz[t jjPdB KuSWpB_^[]USVWt hAYuE āitāhAYY30PPPPWDBj@~[>t#-t h$AfYjj6dB KuSWpB_^[]UVu39uT9tJ 9BuH9QuC¨A3ɍB8RVPPlhPB^]jY)UVu39uT9tJ 9BuH9QuC¨A3ɍB8RVP (PlhPB^]jY)US]VWhȁjS\E E u$SEu(BEuxBEuBE uBlBSPBBSVPSP B0BhqjV xw<Bƃ|wSPT=hB@@j@HjPjjXPjjdP׃l35BSǃh`yp<P֋Sp@(P֋5BP֍P33APQPj0PBSRE3hPf\w^wSfS~SwzPXwG w3҉wwj@wYP@ PIu`{VRPV~jPXwW3ǃAEPlBE8PjEtB؅tuhNAYYWEPuESjPuBux-{ uKj Qu u }jYu }jYu,_t hzAdYSxB^[] U SVh>AEPlBu8VjtB؅t VhAYYcEWj _PVSjECPu{ Bux+9{ uKWQu u }jYu }jYuH_t h@AYSxB^[] U`B3ʼnEVuEjTjPWE EE EEjYhAPEȫAMME lBEPBuBjjMQVh@ЋM3^] U`B3ʼnEjTEjPE EEEEjYhAPEȫAMME lBEPBuBjjMQhةAjЋM38]UB3ʼnESVupWhjP<U M DžxA|BMEAj[EBj _EAEhhAP]]tEA]]}EЧA]]}lBhPBuBjjpQVh@ЋM_^3[X] UB3ʼnEVWhpjP`U MDžxA|BMEAj_EBj ^EAEhhAP}}tEA}}uEЧA}}ulBhPB_^uBjjpQhةAjЋM3|]U`B3ʼnEVuEjTjPE EE EEjYhAPEAMME lBEPBuBjjMQVh@ЋM3^] U`B3ʼnEjTEjPE EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3l]U SVhAEPlBE4PjEtB؅tuhA=YYWEPuESjPuBux-{ uKjQu u }jYu }jYu_t h$AYSxB^[] U SVhAEPlBu4VjtB؅.t VhAfYYcEWj_PVSjECPu{ Bux+9{ uKWQu, u }jYu }jYu_t hAYSxB^[] U`B3ʼnEVuEjTjPE EE EEjYhAPEAMME lBEPBuBjjMQVh@ЋM3^"] U`B3ʼnEjTEjP5E EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3]U`B3ʼnEjTEjPE EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3]U@j8EjP3E E̋EEԍEjYhAPEAMЉME lBEPBuBjjMQhةAjЋ]U`B3ʼnEjTEjPE EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3]U SVhAEPlBEPjEtB؅tuhAYYWEPuESjPuBux09C uKPQu u }j:Yu }j:Yu=_t hبAuYSxB^[] U SVhAEPlBuVjtB؅t VhhAYYcEWPVSjECPu{ Bux+9{ uKWQu u }j:Yu }j:YuU_t hAYSxB^[] U SVhAEPlBEEPjEtB؅tuhA#YYcEWjx_PCE{ uSjPuBux+9{ uKWQu u }jYu }jYug_t hƦAYSxB^[] U SVhAEPlBuƐVjtB؅t Vh@A;YYcEWjx_PVSjECPu{ Bux+9{ uKWQu u }jYu }jYu_t h|AYSxB^[] U|B3ʼnESVuEWjpjPU M EAUBMEAj[EBj _EЍAE؍EhAP]]}EA]]}EA]ԉ]܉}lBEPBuBjjMQVh@ЋM_^3[] U|B3ʼnEVWjpEjPU MEAUBMEAj_EBj ^EЍAE؍EhAP}}uEA}}uEA}ԉ}܉ulBEPB_^uBjjMQhةAjЋM3]U@j8EjPE E̋EEԍEjYhAPEܯAMЉME lBEPBuBjjMQhةAjЋ]U`B3ʼnEVuEjTjPE EE EEjYhAPE"AMME lBEPBuBjjMQVh@ЋM3^] U`B3ʼnEjTEjPE EEEEjYhAPE"AMME lBEPBuBjjMQhةAjЋM3x]U`B3ʼnEVuEjTjPE EE EEjYhAPEAMME lBEPBuBjjMQVh@ЋM3^] U`B3ʼnEjTEjPE EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3h]U`B3ʼnEjTEjP{E EEEEjYhAPEPAMME lBEPBuBjjMQhةAjЋM3]U`B3ʼnEjTEjPE EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3\]U,B3ʼnES]VWhةAjBVjP= DžePPpBhAPBjY3󫍅Dž3Ph?Dž@PB1SPh BPhBxPhBUPh@BxwWxwtxwPhAYYtxwphAYYvtxwphХAYYXtxwp hAYY:txwph(AmYYtxwp$hRAOYYBy`TPhBSPhBRPh BPh!BPhB VPh(B(VPh4B,VPh@!Bp0VPh8B4VPhD!BPPPVPh<BPTVPh !BWPh$!B2wPh(!B4wPh,!BbHwPh0!B LwPh4!B8PwPh,BTwSh8!B3h AYYjYjS BYBB`TjYj:xBYU@BBShةAj BR!BB(B V<BPV4B(V@!B,V8B0VD!B4V !BTV$!BW(!Bw,!B4w0!BHw4!BLw,BPwBh BlhBF hBP hBv h Bh!B*hB hB h@B h(B h4Bh@!B~h8B hD!B Ph<Bv 5 !B 5$!Bh8!B M_^3[蝾]U`B3ʼnEVuEjTjP諾E EE EEjYhAPEAMME lBEPBuBjjMQVh@ЋM3^] U`B3ʼnEjTEjP%E EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3茽]U`B3ʼnEVuEjTjP蛽E EE EEjYhAPEܫAMME lBEPBuBjjMQVh@ЋM3^] U`B3ʼnEjTEjPE EEEEjYhAPEܫAMME lBEPBuBjjMQhةAjЋM3|]UB3ʼnESVuAuh@lB]Uj ujh>AhةAjlB]U}tju jhȫAuh@lBE]UjujhȫAhةAjlB]US]tKV5lBW} jWjhASh@jGPjhASh@jGPjhЧASh@_^E[]USV5lBةAW}jWjhASjjGPjhASjjGPjhЧASj_^[]U}tju jhAuh@lBE]UjujhAhةAjlB]Uju jhAuh@lB]UjujhAhةAjlB]Uju jhAuh@lB]UjEPjhAhةAjlB]Uu ]UVwut6h"A諱YYjVjhAhةAjlB^]Uhu jhAuh@lB]UhujhAhةAjlB]Ujxu jhAuh@lB]UjxujhAhةAjlB]US]tKV5lBW} jWjhASh@jGPjhASh@jGPjhASh@_^[]USV5lBةAW}jWjhASjjGPjhASjjGPjhASj_^[]Uju jh"Auh@lB]Ujujh"AhةAjlB]Uju jhAuh@lB]UjEPjhAhةAjlB]U}tju jhAuh@lBE]UjujhAhةAjlB]U}tju jhܫAuh@lBE]UjujhܫAhةAjlB]USV5lB3W}CjWjhpAhةASjGPjhvAhةASjGPjh|AhةASjG PjhAhةASjGPjhAhةASjGPjhAhةASjGPjhAhةASjGPjhAhةAS_^[]USVu3WPPPP0FTWDBj@ƨw[~t+~t%tjjPdBt h(AY KuSWpB_^[]UQSVWEPB}u5BօtMˉC+|2%CBW:EPBWu_^[]UQSBEVPӋuVuB|W8 xCԬ@t hҞAY@8|vPV|GPB(PBt hA軬Yg2ҋBV2 xCuE@t h*A聬YxAu%@t hNAaYw @t hvAGY|+P9|EPӋ|GuBPB(PB耫t hA輫Yg2ҋBV3EPuBPQ,_^[]U*t hAfYSVu3WPPPP0SDBjƤz_Nt~t>tdBf&f OuWSpBê_^[t h>AY]U褪t hbAYSVu3WPPPP0WDBE ƨzj[;Fut dBE ff& KuSWpB>_^[t hAwY]U tuhDAVYY}t-M Vj ^jZtAtAJuNu^]Uʩtuh\AYY}t5M VWj _j^t+At+ANuOu_^]U}riM 9CuaVu|:QuQAEAʈEfEjfNPdjPdB|yIA3@ t^] UQVuEUfMj?PZf@Ju3f;^]USVu3Wj[3kǃ| u|$uBf;|Af;|2_^[]UMPxR|TVXZ\^]UMSVW@UU U$U(U4U8U,U0U3jЋ[fA`fEGEB(Kuكf|_^[]UNt hA芧YSVu3WPPPP0SDB3`{9Ft89t49Ft/ t6vWhrA?NdB3FFG @rPSpBɦ_^[t hAY]U誦t hAYSVu3WPPPP0SDB3~9Ft89t49Ft/et6vWh~A蛦NdB3FFG @rPSpB%_^[t hA^Y]Ut hABYSVu3WPPPP0SDB3Ơw9Ft89t49Ft/t6vWhANdB3FFG @rPSpB聥_^[t h&A躥Y]USVuW3WWWW0SDBE `{;Fu>>t9~t30t6vWhrAfNdBf&fE G @rjSpB_^[]USVuW3WWWW0SDBE ~;Fu>>t9~t3认t6vWh~ANdBf&fE G @rjSpB_^[]USVuW3WWWW0SDBE Ơw;Fu>>t9~t3,t6vWhAbNdBf&fE G @rjSpB_^[]UQQSVW} G`pEEEE PBu ]EPPVu B5B-U9PuL9AuGMQHa2A SAEM;uɃg2҃gS#_^3[]jY)UEVWp(,@t hAhY~Tt4t hANYM 2҉yBV S] 3QQQC`Qx 0PE DBBlJ@;/ ;;  tUt)Rh.A芢Y5t hAqYSVP: t hAMYSVP  t hA)YSVP ɡt hζAYSV 覡t hBAYSVP $(tU,t)0N%hA膡Y1t hAmYSVP$6 t hAIYSVP  t hlA%YSVPŠt hVAYSVP衠t h·AݠYSVP,; 8LPtUTt)X;mh8AsY]t hAZYSVP<#t hA6YSVP8֟t hAYSVP4貟t hڷAYSVP0莟t hhAʟYSVPD`dtyltQpt)t:hArYt hAYYSV&t hA9YSVc ݞt h|AYSV轞t hTAYSVPH虞hHAўYo;;tstTt,(t hAdYSV 1t hADYSVDhAJѝhvA3躝h^A裝t hAߝYSV t|tTt,St hA菝YSV\3t hAoYSV <t h8AOYSVt hA/YSV Ӝh޹A Y趜t h,AYSV~ ;ty tQ t, St h A菜YSVC \3hAkYt hظARYSV t hDA2YSVPTқt h^AYSVPX讛t h(AYSV # ' tkC tCG tjWhxA衛YwOt h A苛YSV X/t hAkYSV 8t hpAKYSVhTA'Y;a;&;wR S[SVP $k(;, 0SVP(5\;wR8SL#PTXSVP@`dlpxthSV;;w^jtDt0SV 2SV&SVk t0SVSVSVS  ;wGG T uASVn # tS' *C G j0PpBc2҉{BV轑SVE jPpB[_^]UQMU S]VWE3`{;Pu ;uxu G @r\膗t$H k 4k d{WhA諗k h{dBH 3k !Md{h{ *t h(AfY3d{>t tv6WhA?G @r֋E_^[] UQMU S]VWE3~;Pu ;uxu G @rS螖tk ~~WhAȖ k dBk 3!M ~~Kt h@A臖Y3~>t*tv6WhA`G @r֋E_^[] UQMU S]VWE3w;Pu ;uxu G @r\t$ k 4k wWhAk wdB 3k !Mww dt hA蠕Y3w>tCtv6WhAyG @r֋E_^[] UM`TPju Q]UMPju Q]UM`~EEPju Qj]UMxPj u QN]UMSPj u Q2]UQQEEPju E"9u ]UMPju Q]UMTwPju Q]U@tjhATYYMāEEPju Q]UB3ʼnEES] VWj:YU󥍍QTwPhS5M_^3[褓]UMSPjxu Q ]UMRPj u Q ]UMPju Q ]Ut hbAXYVu WF`xHs#@u PQuf2ҋΉ~Bu蘌_^]U貒t hAYVu WF`xHs# @u f2ҋΉ~Bu<9PQu f2҉~Bu:t hȱAvY_^]Ut h~AVYVu WF`xHs#@u PQuf2ҋΉ~Bu薋_^]U谑t hAYVu WF`xHs#@u PQusf2ҋΉ~Bu,_^]UMPVPju Q ]UMTVPju Q ]UM~Pju Q ]UMWPju Q ]UMttv6WhĴAFG @r֋E_^[] UQS]VWE3~ƃ8tG @r k jPEBj0juBEx@M Ek U~~kt5Eu~WhֵA虌E3ɉk ~~-t hAiY3>ttv6WhֵAHG @r֋E_^[] UQQS]VWE3wƃ8tG @rk jEwPEBj0juBExBUM Ew k ht:EuwWhDA薋E3ɉEw k %t hjAaY3>t tv6WhDA@G @r֋E_^[] UMh @`TPju Q]UMh@Pju Q]UMh@xPj u Qy]UMhR@SPj u QW]UMhJ@Pju Q5]UMh@TwPju Q]USVW}h@UVhu WVTw 98tjY)0uwB_^]UVW}3ɋ񍇤z9Hu 9u9HtF |_^] Sk zQPBj0juBEx/M E;z8 k 9t)h~A?Y8 k 3ɉ;z;z 8E[UVuxw@WE诇txwph\A݇YY茇txwphA过YYntxwp hسA衇YYPtxwph A胇YY2_txwp$h>AdYYeEPju V^]UUxwtAHQPu RW3E}쫫EPju R`_]UQeS] VuWC`HM s #xw{ }tPxBxwM tvO;rkWjtBxw>t WhAvYYxwt9WuPlM QVPLxxwu su PP}c2ҋˉ{BV_^[]UMU S]W3z;Hu ;uxuG |_[] Vk zdB8 3k zz^ 3USVu 3W}F`9xs f#Wuv  ~2҉^Bu~_^[]UMS]Vu W3F`9Hs#;Qv u. 9}t'M QSPLxuu Uu PPf2ҋΉ~BSh~_^[]UMSuY(QPEM uBEuBV5BW33GPCXP{`{djPjP3pVW|tPxhBjVVhGATXPB3ɍ3f DTXfx|3E_^[]U(B3ʼnEEeS] VWx(]؉}9t hAuY#5tBjj֋؅EPSjjB#uSSxBuj֋؅fuтtuhAYYEPSPEjBxf薂t hA҂Y5lBEhAPh&AEPh8AEP[t hDA藂YE 't,t h\AeYSxBt hAJYM_^3[]UESVWp(فt hAYE $j[HAHHWhtBL/WSP݁LP!BL@!BL@!BL@ *ALXLǀBLǀH8BLǀB8}EWhtBLWSPBLBL@!BL@8BL@ L>ALXLǀBLǀHBLǀ@BWhtBLu WSP褀LBL@!BL@!BL@ bAL@-ALǀBLǀHBLǀ@BL PVth$hAYYyLtJPxBL;À!Bt À r&Ɔ!B_t Vh AYY_^[]U<t h0AxYEVp(LtPxBL s)ƀ!B~tPh>A*YY^]US]VW3[(]~t hdA~Y3!E!EEE苃QP$5tBPjE։EhjP~ 9}H~thhpA|~YY3j@fEXPjfE։Ej@jPe~ 9}}tj hA/~YYEPjSBhڽAEPBEPEPpB9>umV3EWWj"PhȁBhBWWX(WWSPu]d}t hA}Yt PB&]QP(}t uxB}t hAW}Y}t uxB|t hA1}Y_^[]3ɃHu`fff ftPxBPjtB{|tPhA|YYu PjQ| VPpBhZAPBEPPBEEPPuQUPQM4VST0VXP jVBQ{t hdA{Y>4*UESWx(\{t hоA{YSP$tF/{t h޾Ah{YVp(VPVB^SP(z_[@t h(A{Y]UEVWp(zt h=t'=t(xt[hHANxtKh$A>xt;hA.wt+h޿AwthAwt hAxYF =tL=t<=t.W=t=t6SSWS7WS82҉wBS-qjWPLB_^[]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 ^]USVuWFBPhB} 3Wu^^ ~~LtBFut Wh\AuYYFPSFPXB39^_^[] UMA+A @]UVu2W~tF 3@;Vu_^]USVu3WNBE VPuFN E FF;Fr^U NB_^[]USVu3WNBE VPuN VE  F F ;Fr^ U NB}tVQ,_^[] UQSVu3ۍFȉEBE 9^tbW39]vYVPu8E N VC F FLN tHFL;Nrf VP,G;}rty hA@tYE _MB^[]UQSVu3WFȉEB3E 9]vWVPu6FNM  CFFLFLNV;vNL;rfG;}rssy hAsYE MB_^[] UW}t8SVOB3ۍOЉ___ _LBGPSGPXB^[_]UVuFt PxBf^]USVW}OBwW ;w ON++Ny3ЍOB_^[]jh8Br3EPjPEPTB%3@ËeBuhjEPXBErU=rt hAyrYSVWjjEPhB] jYs`F܋@MC`HM@ A@8B=u3PPPPEPDBC_^[]Uqt hAqYU MB#B`$8B]UjjudB] ̰U} EVWx(t/u>r$lPu ql 2_^] UE@(]UESVWp(SP$pthA1qYYjjuEtBptjhApYYEg gEGE GMtBtMptjhApYYEEGE GgG x5pthXAkpYYSP(_^[]UEVWp(WP$oth~A"pYY9U t R uB S3ۅu9ZuQxBtP9Zu2B RXxBpot9hAoY,tJtHJB A BX RxB[*othA`oYYWP(_^]UE@(Ltjuhu PQ3] 3UE SV5hB3W}SSGGPf_@_ SSG PSSG0PSGPPB_^[]UEPQ]US]39C tP8CAuKWPPPP{PWDBjjCCAPdB3PPPPs DBK CAdBc jWpB_[]UW}@ubSV5BGP3fG@֍G P֍G0P֋W0ESSSSPBy _ f_@SG PSShuBuB^[_]UESVp(ƈq;uv9qun]tQE ƆqqQm@tqPhhAmYY4m@PhAhmYm@jhAߋE ;u19qtl@t hA'mY3@cl@tXhHAKq;ul@thA;uql@t hAlYjXl@t hAlY3^[] UQESVWp(EX(E`Hl}@t7hZAlYY3AtuIXwu9pTu3tTupTu9tTu \wE,AE t M7W7W7Wt'k@t h|AkY3E7W7Wsk@tEPhAkYYYk@tHhAkYY>k@tPh̄ArkYYvƃ  H]E E ȋEj SK0 Cj@tshAkYY_^[]U<B3ʼnEU2MSEZ(VuW3UȉM؋@(E܉ynj@t6het hA;fYEujYVƀW3jY2-<`#MWtet hAeYuVWEƀWj@[t(yet hAeYFPjuuVW:Et ufpTE,etEPhAceYYe}tHhAEeYYdtPh̄A(eYYE jVN* FdtvhAdYY[_^]U(ES]V@(EWj}Y@(}UEEVVE+VU3E+‰EE+V3+‰Edu@tVuhRAOd EVU;}‹UC ƋV;}c Ccc@tss hAc E 3ɉKt3@E W W8WtM WWlc@tEPhAcYYPcu@tHhAcYY2c@tPh̄AfcYY HȋE ȋE ȋEj SK( Cb@tshAcYY_^[] UESVWP(A8[YVuW} LFXF\FXƆxAtWVЋPgWVZt hVAZY_^]UVuW} LFXF\FXƆxA tWVЃgWVg_^]U:Zt hAvZYSVuWƆxPL} FXF\FXFT{ tYt h&A$ZYWVS jSBY@t hFAYYVSV%SV!TVSP Yt hZAYYjWPBgWV$SVtSBtPxBBBXt hA7YY_^[]UVuWu VRju QLB_^]UQXt h"AXYS] VuWjSLEE#^Xt h6AXYlƆxPPEP !XyhTAyt hjAJXYFXF\EFX8tWt hA!XYESVWt hAXYWt hAWYWt hAWYWt hAWY2҉{BV>QjSPLB_^[]UDWt hAWYVuW} LFXF\FXƆxAtWVЃgVt hA9WYWV_^]UVt hAWYVuW} LFXF\FXƆxAtWVЃgjPBWVyuVt hAVYaVt h AVY_^]UESjjPhB}] tVs`WjYF܋_@^C`MӉHM@ A@8B=u3PPPPEPDBC[] US] VWS B}C#C`$SBjSQLBWmO_^[]UUt hDAUYM QuA`@Ht]US]Vu WKdLF`@ ;}LV Bv`jYjF܋u @VF``@(A@PLBVB4Cdu%Tt hAUYjjPdBVS_^[]U B3ʼnEEM VWp(y!E A fEALtA`HQ`BHHu BHuB FdQ BV'N~du?t5t/jMQ(Tt hAdTYPBM3_3^$T] UESVu Wx(jjhAVPHB؅y2҉^BWML^`St hASYCVWt%HtHtHtDe }_^[]UMu QL@@ ti]UMu QL@@tA]UMu QL@tb]URt hA SYMVu LQ@@tRt hARY^]UE hAE3] 3j@BUB3ʼnEE SVuXERt ShRARYY@}s^6EEfE EC]E RtEPEPSh,A:R?uQtEPhbARYYMjQVPhM^3[Q] UB3ʼnEMUVWA}싁j RQfE EEPhM_3^Q] UB3ʼnEMUVWA}싁j RQfE EFPhM_3^;Q] U B3ʼnEMUAEAjERQfE EDPhM3P] UQEUjRPfE EAQh] UQSVu ^] PtFPPhAP ]4uD5u;8u2<u)U @}[fFWj Y6fS_U @}2fFfS6?u!Ot hA7PYSPtU MjQSfE EXUPh^[] UQEEUj?Z6fEfIJu]UEWL5ulVu Ƈ4>Cu[N@sRfffFfOyIA3@ 88u<u6j Y^_] UM AtUHtDHt3Ht"HtHuRuQuDuQu'6uQu(uQuOuQu uQu] UB3ʼnEESV3ۉTp(W} PHLVNy hlANYQP$d@(\Ny hAKNYHPSSSGPDBMy hA!NYhQWPMy hAMYb`hhjPMdDT XdMy hAMYX`PhPWP5My h AVMYtvedjP\Sƅd hP\SLy h(ALYhPV&Ly hFALYhhjPL qLy hdALY9`QLPy hALYQP('L_^[y hA`LYM31L]USVu^Kt hA0LY4u5u]EW@WP(;E}WPdjuu WPWPd_Kt hAKY^[] UB3ʼnEE SVu`W}_dhhjP~KD `\PdPhPVS{3<u6}v0}tu苇hQWPphhjPK \9duM_^3[J] UDB3ʼnESVW}3jU[GPVPJ DžJ֍6Bf@~r鋅ffB'PPpBhAPBjY3󫍅DžPh?PDž@B/MPjtB7IthAjIYYPVGwG UI PWjPBwj Y3HtPWhAH G@r܋PxBxHj^t hBAHYXHthdAHYYyQ9Ht hAuHYBfI~r鋽WfBfPtǶj YM_^3[G]U B3ʼnESVuWW^jPG Dž HtUVQxfWPpBhAPBh6PjjlBM_^3[!G]UQQS]VW3E`yMj@0PBuEGPVVPB|ыN`E _AF EaaA^[] UBt2VW3EWWPhBEPBu EPEPu$uuuuVu<Bt_Ћ8BFu"y h*AHFYWWWWEPDBuy hVA&FYx M EE 82_^] U$B3ʼnEESVuW}E^jjEPhBE EEWuESEnV`EBPABB֋8B3ۍESSSSSjPjHB+tCHHuhEt h(APEYVBSSSSEPDBDt6hNA'EY)Dt hAEYVBSSSSEPDBVBM_^3[D]U]U]UzDt hADYSVuWLWP؅xUP؅y 5Dt hAqDYWP ƆP@( VQ_^[]UCt hA$DYELPQCt h6ACY3]UCt hTACYMVLPVPmC^t hpACY3]U`B3ʼnEjTEjPCE EEEEjYhAPEAMME lBEPBuBjjMQhةAjЋM3B]UBt hACYjjudB] UQQMSVW}3E`yGEBt h2ABYEj@0PBCu!EPVVPB|9Bt?h`A2N`3APF AQQBt hAABY_^[]UVuu>u5t dB t dB Ɔ^]UEVpBt2W3EWWPhBEPBEPEPWWWWWh4<BtrxЋ8B=u' Ay hA\AYWWWWEPDBEEx@y hA.AY@y hAAY2_^]U$B3ʼnESVu3W3ۍ}!]NE9<EPEPhP4B؅jjhuB؅y dB EM܉ E䉆@ AE@\A\ƆPVWu?thA?t hA@YjjjVWu?thA?t hA?YMMj XEEEPVEWua?thAQ?t hA?Y=?t hAy?YM_^3[E?]U$SVu3Wv(L!]EEPhjBPjtBE>thhjA>YY9]u 9hAEEPlBEPjEtB؅_>tuhA>YYc3AKAC EPuESQPuBKE+PPu\>fE f+CfE싎tQxBfEPjtB3fEf=tPh A=YY=thTAhnA=YYg=tuh~A=YYO=tEPhA=YY5=tPhAi=YYEPjd= hTAWB<thA*=YYEPWpB<thA=YYE uE3fEjffEEPEPBx,EEƀuu u!EƀuB}t$L<t hA<YuxBet$<t h@A]<YSxB_^[] UES] VWS(CBPQHSPQSVP3E %VE P 5;t6hA;YY3ɍ3BCChK(Kx=5hB3PPP33@QPP_^3[]UMSVu3ۉ]EjF@EtBPLBBt :hxA:Yz:t hA:YWEPSSSDB~M3ɍEQPjEPEQQhh<u-:tuhdAf:YYE tMEP3PPPWӅu9t h4A;:Y3_9t h$Ph2A@6t>PhBAt6YYF;r}܋]6y hPAT6Yuur5y hxA/6Yv(\wVE܋VEu5hA5YwxunEPjjPBdždwB<wEBEPxwP`wPuU2 B}t85t hAq5YƆ\wEuP(WB}EP3PPPEPDBm4t h:A5Y^4_[y hA5YEj@@@BM34]4y hA4YWBjjjjEPDBtWBUB3ʼnEE3Ƀ`SVpWhDžd 4FhLPDž\~jnXTHtBPLBBt3hxA3t hA3Yhptx3y hA3YjNhdjRQPwd3A;tG`Dž\;3t VhAv3YY%3tw`h@A^3YY9tR`Dž\\P3PPPhPDB2hjA`3PPPPPQpDž\PjHBHt$H6p2)hA2YHH2toPhA|2YYLP3PPPhPDBdnu"o uwX3ƅnƅ| ^Xou3ۉX};~C;u/Qu=TCP|PRQDtƅnoQVP #CP|PhTƅnLP3PPPhPDB1t hAR1Y1_^[t hA;1Yhj@@@BM30]0thA0t hA0YUEM3RQ@RRju h]UE3RHEE E EEE EPRRjEPh ]UEM3RQ@RRju h]UB3ʼnE3ESEVuW}쫋N@ B@\B\Ɔ/t hA/YVPVSu/thAz/t hA/Yj3PPVSuX/thAH/t hA/YMMj XEEEPVESu/thA/t hA ]D$T$UL$)qqq( ]UVWS33333[_^]ËjG33333USVWjjhAQI_^[]Ul$RQt$ ]SQB SQBL$ KCk UQPXY]Y[%0B%<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 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 RectangleAndRealMulti == TRUE 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 ) DriverUnload : g_ustrRegistryPath.Buffer FreePool 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) Leave EDODestruct Enter EDONotifyDeviceRemoval EDONotifyDeviceRemoval : complete m_WaitRemovalIrpLeave EDONotifyDeviceRemoval Write 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 EDOAuthenThreadRoutine-Register Fail ChallengeThread : Got Callenge Thread Stop event Other Status EDO : EEPROM Thread is Close xTouch\DeviceDefault\DeviceDefaultEnhanceLinear 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 CalSourceTouchHoldToResetTimeTouchHoldToResetFlagIdleToResetTimeIdleToResetFlagA0A1A2A3UppperLowFilter 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 DesktopTouchDownTimeEnableDetectTouchSequenceFlgRectangleLimitInActiveAreaReportOlderRectangleFormatEdgeBtnRealMultiReportModeFireWheelEventOnlyReport1stContactEnhanceLinearSaveEnhanceLinearToService(%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 SERIAL 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 : 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 FifoInit : pFifo->m_pBuffer ExAllocatePool size(%d) Write Fifo : fifo full Read Fifo : fifo empty 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 FDO PrepareDelete. 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 Power : Enter OnFDOWaitWake Power : Leave OnFDOWaitWake Serial : Powering Up! Clear Power down Event Serial : Powering Down! Trigger Power down Event 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 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 \InformationQueryEEPROM : FullInfo ExAllocatePool size(%d) EEPROM : Query Addr=%02X, Value=%04X QueryEEPROM : FullInfo FreePool EEPROM : Query Value Returned=%d EEPROM : Query Value Fail! Update Registry again BaudRateBaudReate = %d !!! PnpSerialStartDevice() PnpSerialStartDevice: open edo failed PnpSerialStopDevice() Leave PnpSerialStopDevice() PnpSerialSurpriseRemove() Leave PnpSerialSurpriseRemove() SerialStartDevice !!! Set baud rate fail !!! Set baud rate success !!! Set LCR fail !!! Set LCR success !!! Set timeout fail !!! Set timeout success !!! SerialStartDevice:Fail to StartDevice - RxFifo !!! SerialStartDevice:Fail to StartDevice - TxFifo !!! SerialStartDevice:Fail to StartDevice - CmdFifo !!! SerialStopDevice! SerialStopDevice (m_IsPnpDevice)! Thread isn't stopped yet!!! DeviceSyncIoctl : status = STATUS_PENDING DeviceSyncIoctl : status != STATUS_PENDING SerialSetRTS : status = STATUS_PENDING SerialSetRTS : set RTS success SerialSetRTS : set RTS fail Leave init serial port SerialReleaseIrp Enter read completion routine SerialAllocateRxIrp :enter allocate rx IRP . SerialAllocateRxIrp : allocate rx IRP false. SerialAllocateRxIrp :Leave allocate rx IRP . kIrql > PASSIVE_LEVEL || NULL == pPortBase->pReadIrp SerialStartDevice:RxThreadRoutine --- Running !!! RxThread : EnterSerialStartDevice:RxThreadRoutine --- Stop Event fired !!! SerRxThread : Device Power Status is %X! SerRxThread : System Power Status is %X! SerRxThread : Stop Event was setted SerRxThread : Set m_ulTouchStatus =1 enable touch SerRxThread : Power Status is DeviceDo! RxThread : IoSetCompletionRoutineRxThread : allocate rx IRP false. RxThread : IoCallDriverRxThread : KeWaitForMultipleObjectsRxThread : Stop event is setting RxThread : read event is fired RxThread : ulReadBytes = 0x%x Rx : 0x%02x Rx : 0x%02x RxThread : Enter DispatchOriginalData RxThread : Leave DispatchOriginalData SerRxThread : Power Down Event Trigger SerRxThread : Power Down Event Trigger End RxThread : Leave Rx thread Enter write complete routine Write data to lower success Write data to lower timeout write complete: Cancel Write IRP write complete: Delete Pending Write IRP write complete: Device not connected. write complete: Other status = %x Tx Thread : cancel Irp Tx Thread : Power Down Event Trigger Tx Thread : Power Down Event Trigger End kIrql > PASSIVE_LEVEL || NULL == pPortBase->pWriteIrp SerialStartDevice:TxThreadRoutine --- running!!! TxThread : Enter SerTxThread : Stop Event fired! SerTxThread : Device Power Status is %X! SerTxThread : System Power Status is %X! SerTxThread : Stop Event was setted SerTxThread : Stop event is setting SerTxThread : get power down event SerTxThread : send 0x%x SerTxThread : Leave Tx thread IsDeviceExistingThread : Enter IsDeviceExistingThread : stop event is setting IsDeviceExistingThread : we got MSR %08x IsDeviceExistingThread : ( ulModemStatus & SERIAL_DSR_STATE ) != SERIAL_DSR_STATE IOCTL_INTERNAL_SERENUM_REMOVE_SELF is successIOCTL_INTERNAL_SERENUM_REMOVE_SELF is failSerialIsDeviceExistingThreadRoutine : Leave SerialGetCommName : ustrTempCommPortName.Buffer ExAllocatePool size(%d) NativePortNameSerialGetCommName : pFullInfo ExAllocatePool size(%d) SerialGetCommName : pFdoExt->m_ustrCommPortName ExAllocatePool size(%d) \DosDevices\_DEVICE_ = %ws ustrTempCommPortName get from PDO = %ws return length = %d bytes m_ustrCommPortName.MaximumLength = 0x%x m_ustrCommPortName = %ws SerialGetCommName : ustrTempCommPortName.Buffer FreePool SerialGetCommName : pFullInfo FreePool SerialFlushCmdPacket : Enter EDOMutex SerialFlushCmdPacket : Debug 0 SerialFlushCmdPacket : Debug 1 SerialFlushCmdPacket : Debug 2 SerialFlushCmdPacket : Debug 3 SerialFlushCmdPacket : Debug 4 SerialFlushCmdPacket : Debug 5 SerialFlushCmdPacket : Debug 6 SerialFlushCmdPacket : Debug 7 SerialFlushCmdPacket : Debug 8 SerialFlushCmdPacket : Leave EDOMutex SerialPort : Enter SerialInsertCmdPacket SerialPort : Leave SerialInsertCmdPacket SerialQueryEEPROM : FullInfo ExAllocatePool size(%d) SerialQueryEEPROM : FullInfo FreePool UsbPort : before set configuration NULL UsbPort : after set configuration NULL PnpUsbRemoveDevice : before abort and reset pipe PnpUsbRemoveDevice : after abort and reset pipe 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 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 : return successUsbResetPipe : return failUsbRxComplete : Enter UsbToComRxComplete UsbRxComplete : Leave UsbToComRxComplete UsbRxThread : UsbPortRxThreadRoutine Fail due to no more memory to allocate Irp. UsbRxThread : UsbPortRxThreadRoutine is Running UsbRxThread : Polling Interval=%dms UsbRxThread : Transfer Size=%d UsbRxThread : Pipe Handle = %x UsbRxThread : Rx thread loop start ! UsbRxThread : RxThread Terminated due to m_PnPState not started UsbRxThread : Receive the stop Event UsbRxThread : Usb urb error = %x UsbRxThread : Usb urb error = READ_URB_ERR UsbRxThread : PipeHandle = %x UsbRxThread : Receive %d bytes UsbRxThread : Copy read data to RxFifo 0x%02x 0x%02x UsbTxThread : AllocateUSBControlPipeIrpAndUrb failed for IRP UsbTxThread : AllocateUsbControlPipeIrpAndUrb Failed for URB UsbTxComplete : Enter UsbToComTxComplete UsbTxComplete : Leave UsbToComTxComplete UsbTxThread : pPortBase = 0x%x , pTxFifo = 0x%x UsbTxThread : AllocateUsbPipeIRPandUrb Fail !!! 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 : UsbToComTxThread enter Wait Data Objects UsbTxThread : Stop Event was setted UsbTxThread : USbToTxComThread Terminated due to device not started UsbTxThread : Read No Data UsbTxThread : Enter Pending Wait UsbTxThread : the stop event was setted UsbTxThread : Leave pending Wait ( exit thread ) UsbTxThread : Pending Wait - ok UsbTxThread : Write Done UsbTxThread : Free URB UsbTxThread : Free Write Irp OnFDOSystemIoctl : EnterxTouch : Enter FDOWmiRegistrationxTouch : Leave FDOWmiRegistrationFDOWmiUnRegistration : EnterFDOSetWmiDataItem : EnterFDOSetWmiDataItem : LeaveFDOSetWmiDataBlock : EnterFDOSetWmiDataBlock : LeaveFDOQueryWmiDataBlock : EnterFDOQueryWmiDataBlock : LeaveFDOQueryWmiRegInfo : EnterMofResourceNameFDOQueryWmiRegInfo : Leave A88898|88889d99.9D9333333344(4@4b4t4444444 5505L5d5z5555563566$6x3V6p6|6666667$7@7X7p77777778828F8p83 322222l2V2>2l3>6T3*2251cWG;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_FUNCTIONYi7N;$D4Ezb`[\B0BBRSDS#~s{8M1D:\code\serialtouch\Win8.1Release\sertouch.pdb ~ A A@TAAAAAA@@D@ @j@@|@@ڐ@.@*A@@T@ @8@@R@X@@\@r@@R@@6@&@‡@R@6@^@@@.@‹@ƌ@ʍ@@$@@@@\A AD AT A A0 A@TAAAAAA|@TAAAAAA2@TAAAAAAb@C@XI@@b@d@I@(h@h@u@FC@|D@nG@$,@3@@f@@ @@@@@N@x@@@0@ @@@@@J@@@"@,@nnnn22@ffffffff  `AARMArOAUA2QA\AQA VAYAQA*APhATAAAAAAlATAAAAAACATAAAAAAIATAAAAAABATAAAAAA*ATAAAAAA*ATAAAAAA@@v@@@AA{Af|AAA@r@@l@Ah)AXA|AA,A _AT_A_Av^AR^A9A8A8AgAwAxA$eAqArA`pApA`AdrArAqALdAbAaAsA.qAaAwA``AsAsA.A\1A1AX.A5A-A2AAAA:AAA A A^ A| A ABBBBB B<BTBdBtBBBBBBB<BLB`BpBBBBBBBBB(B<Bffffffff2ffffffff2dBDN@ Bt=N@tУBjY)0b8H0&90X9<09,88898|88889d99.9D9333333344(4@4b4t4444444 5505L5d5z5555563566$6x3V6p6|6666667$7@7X7p77777778828F8p83 322222l2V2>2l3>6T3*2251KeGetCurrentThreadRtlInitUnicodeStringKeInitializeEventKeInitializeSemaphore KeReleaseSemaphoreKeDelayExecutionThread2KeSetPriorityThreadLKeWaitForMultipleObjectsNKeWaitForSingleObject6PsTerminateSystemThread?IoBuildDeviceIoControlRequestNIofCallDriverIoGetDeviceObjectPointerkObReferenceObjectByPointerxObfDereferenceObjectTDbgPrintOIofCompleteRequest*IoAcquireRemoveLockExIoReleaseRemoveLockExKeQueryTimeIncrementF _allmul memcpy memsetEKeTickCount,KeSetEventKeInitializeSpinLockRtlWriteRegistryValueORtlAppendUnicodeStringToStringExAllocatePoolExFreePool;IoAttachDeviceToDeviceStackXIoCreateDevicepIoDeleteDevicesIoDetachDeviceIoOpenDeviceRegistryKeyIoRegisterDeviceInterfaceZwClosebRtlQueryRegistryValuesMmGetSystemRoutineAddressRtlCreateRegistryKey\RtlCheckRegistryKeyPRtlAppendUnicodeToStringKeInitializeDpcKeRemoveQueueDpcKeClearEventKeInitializeMutex KeReleaseMutexKeInitializeTimer}KeCancelTimer9KeSetTimer)IoAcquireCancelSpinLockrIoDeleteSymbolicLinkIoReleaseCancelSpinLockZwOpenKeyZwQueryValueKeyhObReferenceObjectByHandleExEventObjectType RtlIntegerToUnicodeStringcIoCreateSymbolicLinkIoInitializeRemoveLockExIoGetDevicePropertyIoSetDeviceInterfaceStatePsCreateSystemThreadRtlFreeUnicodeStringIoReleaseRemoveLockAndWaitExPoCallDriverPoStartNextPowerIrpRtlUnicodeStringToAnsiString2IoAllocateIrpDIoCancelIrpIoFreeIrpRtlFreeAnsiStringRtlxUnicodeStringToAnsiSizeNlsMbCodePageTagBIoWMIRegistrationControlntoskrnl.exeRtlUnwindjREAD_PORT_UCHARpWRITE_PORT_UCHARExAcquireFastMutexExReleaseFastMutexdKfLowerIrqleKfRaiseIrqlWKeGetCurrentIrqlcKfAcquireSpinLockfKfReleaseSpinLockHAL.dllWmiCompleteRequestWmiSystemControlWMILIB.SYS_USBD_ParseDescriptors@16_USBD_ParseConfigurationDescriptorEx@28_USBD_CreateConfigurationRequestEx@8USBD.SYS0H`@4VS_VERSION_INFOj;j;?VStringFileInfo2040904b0$CompanyName ^FileDescriptionSerial Touch Device Driver: FileVersion5.14.0.15210: InternalNameserTouch.sysTLegalCopyrightCopyright (C) 2000~2016B OriginalFilenameserTouch.sysFProductNameSerial Touchscreen> ProductVersion5.14.0.15210DVarFileInfo$Translation  00070^0n000000 1111$1/151<1B1H1M1T1X1^1c1111222!2.23282?2E2K2W2]2e22223"363I33333344+4I4_4444444456 686P666 :&:@:Z:t::;';@;W;<<<<=>>??? 060\00 171W1{1112-2W2i2222333^44!55`6{6u75888y9999n:{::::K;>5>K>e>>>>> ?$?j?????0020I0_0y0000"1<1q111122I2c2222223&393S3~33333333333333&4<4445,5B5i5567#77-8G8b889B9d9z999::C;y;;;;E<<<<+=q===#>G>>>>?1?@ 0040V0o0000 11111 345555556 676r6666777 8:%;=;U;m;;;;;;&>> ?f?}???P0 08091Q1i111222"2&2*2.22262l2223d3333^4444<5V5556 6@6,7D7\7t7788859Z:::::::::::j;n;r;v;z;~;;;;; F>N>X>q>>>>>)?M?Z?s????p0;0H0a0u000000121?1X1111102i222223/3[3n3s333334464]4j4446K6j666667,7J7n7777778.8N88888899!919A99:.:f:::::;X;h;;;;;;<<#<6">:>H>Q>c>>>>>>?L?u?????0*0F0o0b11112P3i3(4A4s444!55606J6y6666Y7}7777888889(9?9Z9v99999::?:c:p::::;;D;[;;;;$$>;>R>i>>>>>> ?"?2?B?R?p?????????????0:1h13&33474U4s444N5U5{5555556%6667(7F7q7777888899;9M9[997::::::::::&;7;;;+>E>O>f>>>>> ?$?F?\??????X 00K0f0000011@1M1j11111 22)222f2222233!3,3<3[333333344,464?4L4k4444444!5)5<5F5O5\5{55555561696L6V6_6l666666=7J7i7s7777!8.8K8{8888889 99&9/9<9^999999: :>:k::::::::;G;O;b;l;u;;;;;;;<)<3>2><>E>q>>>>>>>>#?+?>?H?Q?^????????0#060@0I0V0w00000,191W1a1t1112!2?2I2`2~2233-373J3f3333494e4v4444444'585H5W5a5l5y5555555 6;6C6V6`6i666666667K7S7f7p7y7777777 8+8W8_8r8|88888889 99:9Q9Y9999 :4:K:b:y::::;4;R;e;;;;;;;;<<#=E=P=Z=h=s=~============>>>>'>1>;>E>O>Y>c>m>w>>>>>>>>>'?/?B?L?U????????070?0R0\0e000000001K1122:2V2r2222223;3334484T4g4w4444444B5e555566A6S6n6667/7R7j7w777777788(8=8R8g88888888888999$9=9K9c9h9p99999999999:%:=:B:J:`:n::::::::;;5;:;B;U;c;w;|;;;;;;;;< <<,<:> >9>G>_>d>l>{>>>>>>>>>>>>> ???$?N?t??????0)0B000000 1@1Z1111112;2Z2{2222223*3K3344666b6s666667727C7_7~777778;8L8l888889?9P9p99999:S:l::;0;T;x;;;<4H>h>>>>=?]?????020R0r000161O1o1112262V2z2Y5o5556;6b6667A7778(8M99I::::;+;K;;;;<<=>=U=l===== >R>s>>>>???0:0[000181Y111 2@2a22222333X3334B4l4444%545b55566=667+777F8899999:,:;:`:q:::::::: ;<;I;W;;;;;<<'<7)>G>`>w>>>%?r???????0090J0_0p000091>1K1\111 292f22223$3A3k3z3333444;4l4z444444=5M5]5m5}555677777J88889a9v999:(:A:S:o::::::;(;?;h;r;;;;;p<<<<<6=====&>A>>>? ?/?8\8y88R99::;::M;;;;;YB>T>k>>>>>>> ?;?R?b?r??????? ^0b0f0j0n0r0v0z0~000000000000000000000000011i22+3}33333%4=4P4\4j4445L5W55555556!6h66667'7Z7d7{77777,8Q8b8o88889=9P9|9999::::;!;g;;;; <?V?p???00K00001A1q1112;3_3u3z33347444445,5?5]5566+6M66666737A7Y7m7{7778&8;8Q8^8l8z88888809}9999:=:E:X:b:k:x::::;;,;`;;;;;;<0>(>|>>>>>> ?9?v?????@0080\0c0w000011+1D1Q1112/2222222;3f3}333334D4i4p4v44444595S5x555556616?6Z6{6666667-7M7r77777808Y8r88888888 9q9x9~9999+:C:::::%;H;9>U>e>>>???P0.0o000000000 2Y22222K3334>4d444+5H5*66666697j7778:8L8`8~888899 :Q:s::::;C;S;[;;T<<<==3=n=====8>>>??`0O0t000011.11 2)2=2Y2j2222222q3333394\4p44455+5I5555*6F6T6r666666717Q7f77Z888909H9`999:":N:y::::;4;|;;;;;;;;L>>>>>??%?9?M?l????????p 00,090H0z000011^1111 2'2<2T2q22223+3J3k3333;4U4i4t44444455+5F5a55555556636K6667W7y778Q8u8888/9C9v999999::>:::::;&;X;~;;; <<<(<2<8>???0000110444L5P5@000 0000(0,0004080<0@0D0H0L0P0T0X0\0`0d0h0l0p0t0x0|000000000000000000000000000000000111 11111 1$1(1,1014181<1@1D1H1L1P1T1X1\1`1d1h1l1p1t1x1|1111111111111111111111@3D3H3L3P3T3X3\3`3d3h3l3p3t3x3|333333333333333333333333333333333444 44444 4$4(4,4044484<4@4D4H4L4P4T4X4\4`4d4h4l4p4t4x4|4444444444444444485<5@5D5H5L5P5T5X5\5`5d5h5l5p5t5x5|55555555555555555555556666666 6$6(6,6064686<6@6D6H6L6P6T6X6\6`6d6h6l6p6t6x6|66670 00"0" *H !0!10  `He0\ +7N0L0 +70 010  `He o_s^& _)T& QU?  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" kbc#2cIB]Z,eҲU0~ +7 1p0n:8eGalax_eMPIA Technology Inc.0.http://www.microsoft.com/whdc/hcl/default.mspx0  *H B(FQ0#% [Y]70%Ϸ66t~Ӕ%\M:미q$+]"S;?s!0՞S979fph$dּ٬w'W.녁vaӝD26~=CrMeaxKNjZeCן465 5O?7qM9Z8D5݌َpe'96<:|[ǯ'GCfO ?/ؑ&)[iCHTf6]-dM0I +71905 *H &0"10  `He0= *H  ,(0$ +Y 010  `He wvc2ET%KAzvWi~r20160714223940.101Z001 0 UUS10U Washington10URedmond10U Microsoft Corporation1 0 U MOPR1'0%U nCipher DSE ESN:B1B7-F67F-FEC21%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{/!YDhttp://www.microsoft.com/pki/certs/MicTimStaPCA_2010-07-01.crt0 U00U% 0 +0  *H  \̆ʬbnw'Xoy=ҪSWtDn!tC$}`!U_ȉU¸xC+f:pi`x=mA1ɵ1oJRI(֪tx7hw_T5ݾOiѼTm9f)`%j~qյԋv/!h@"!@__u, =E2J(Fx -2o5y0a0㡁01 0 UUS10U Washington10URedmond10U Microsoft Corporation1 0 U MOPR1'0%U nCipher DSE ESN:B1B7-F67F-FEC21%0#UMicrosoft Time-Stamp Service% 0 +UT ʻn%7^Ņ6KP)001 0 UUS10U Washington10URedmond10U Microsoft Corporation1 0 U MOPR1'0%U nCipher NTS ESN:4DE9-0C5E-3E091+0)U"Microsoft Time Source Master Clock0  *H 2B0"20160714165635Z20160715165635Z0w0= +Y 1/0-0 2B0  080 3C06 +Y 1(0&0  +Y  0` 0 0  *H [*jK'[҂ucSL XׅxLc3EAmfWb7ӤCPsʯU3hxL^z\_k&L q%2;=0Sn l(/u ?Td.1(MABN5Ϸʼ1000|1 0 UUS10U Washington10URedmond10U Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103\t=0  `He20 *H  1  *H  0/ *H  1" M7A'u XF5D%p6 wV0 *H   1000UT ʻn%7^Ņ6KP)00~0|1 0 UUS10U Washington10URedmond10U Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103\t=0X:n"*4)0  *H  ENE$r6-l/M d-2]`,2i]]R3*@Rʛ)0Be/G321մibsS`-sK/fgX&EJ?XĴIqC+{b dPքŕu\UrPxp~'r?[do'bdrO ƉsY㢭瘆OŽ^Fz=Bh91^uA [GAX^B5