MZ@ !L!This program cannot be run in DOS mode. $0o-t~t~t~\~v~gh~v~t~I~q\~w~qa~u~q~u~q^~y~^~q~_~u~[~u~Richt~PELKUH  t J(0@ 1<`4^ 01@0.text* `.rdata:0 @@.data@ (@.rsrc4^ `` 4@@D$V50@tP0@@Pփ$ tRjjL$ QhPjh`0@T$hRD$P0@L$ Qd0@0@T$R@Pփ^h@@u z ̋D$hhM@PX0@uh@@\0@P&3øM@P@u+ƒvjh4@@hM@0@ M@tM@P@+Њ @uj\hP@0@VW|$ h<@@jWL0@P@u W;uhL@@-VWP0@uhp@@PT0@Q@R@uh@@\0@PD_3^ËH R@H Q@84Vxth@@j_3^Ëp@u+ƍTQ@9t&QhP@h@@hhJ@0@_^hhJ@WX0@_^QVjhjjjhP80@u3^YSWL$ QV<0@jjjjjV@0@V5D0@փu_[3^YUjjjjWH0@W֋D$t]_[^Y̠P@V$u Vh@@jVL0@tCPVP0@PT0@Ph@@4 h@@\0@P3^ÍD$PJ@t7Wj hA@V30@ uNQh A@V40@_u\h0A@hP@h@A@T$hR0@D$jPu*hHA@\0@PL$Qj 3^ø^̋D$PhhA@1thtA@P/ t́V$ hA@jVL0@tMPVP0@PT0@PhhA@htA@P ^hA@hP@hA@D$hP0@L$Q,0@thA@P00@uWjJ@UtDS0@j hA@VӃ uV |j hA@WӃ [u WV40@_^QJ@P$@u+J@=J@R@v\I8Ht H=J@R@w-J@Vt FPhJ@hQ@0@ ƆQ@Q@L$QhQ@hhQ@(0@^YSVWhQ@F@F@ȍqd$Au+΋Q@qAuR@+΍rBu+֍L ;whA@j_^[ùQ@+AuA@Au+΋OOGuʃ R@ъAu+HًGGu˃_^3[̸Q@P@u+SСR@VpI@u+ƍDP0@؃uhA@j^[øQ@+I @uB@Њ@uW+OOGuȃR@@u+Od$OGuȃh B@G@SG@tVWt_FtXD$t0Q!t>Nh @jQPT$ R0@t @N+;FwN:^_^3_Vt$FtFQ(jjPFFS0@t0F W3~Ft PF G;|NQӃ_FthjP0@FtPӃVj0@P 0@[^̡tJ@L$tI;t@ uT$RQ00@ÉD$QSVW|$_ɾ\$ >U(jU0@ E #P}G W QR0@GO 4G Et }|$Uڋtjy, tJ@%tI;t I uP.PQ)L$LtJ@tI;t?@ uQV00@t6CujU0@uH|$\$ QPVj0@]_^3[Yj0@]_^3[Y]_^[Y_^[Y]_^[YQV5tJ@Wt=0@FL$PQ׃t1v uD$f8MZux<?PE|$tj 0@_3^YF_^YËWPG450@Ujh RP֋u#OPjh QP֋uj0@]_3^YSj(j0@Ph0@T$3RkC CCC$C C0@jCCGPhPU֋OTjhQU֋WTt$N<ʋʃL$Q363,3"333322222242$606)@)@S*@W*@*@*@H\J@1@+@2R3p016055555555z5d5P5@5.55554444444v4d4X4 64 4@4J4333333333~3p3h3^3H3>363,3"333322222242$606strncpyC_iobfprintfstrrchrstrncmp_snprintffreemallocatoigetenvsetbufqsortbsearchreallocMSVCR71.dll_c_exit_exitK_XcptFilter_cexitexit|__p___initenv_amsg_exitn__getmainargs?_initterm__setusermatherr_adjust_fdiv__p__commode__p__fmode__set_app_type_except_handler3k__dllonexit_onexit_controlfpRLocalFreeFormatMessageAiGetLastErroruGetModuleFileNameA[LockResourceMLoadResourceFindResourceA^MapViewOfFile.CloseHandleNCreateFileMappingA[GetFileSizeMCreateFileAcUnmapViewOfFileGetProcAddressHLoadLibraryAaGetFullPathNameAOutputDebugStringAwGetModuleHandleAFreeLibrarysVirtualAllocyVirtualProtectvVirtualFree HeapFreeGetProcessHeapSetLastError)IsBadReadPtrHeapAllocKERNEL32.dll_stricmp_strdupconsole_exeRetrieving module name\\?\PYTHONSCRIPTCould not locate script resource:Could not load script resource:Could not lock script resource:Bug: Invalid script resource%s\%sPYTHON25.DLLPYTHON25.DLLCould not load python dllPYTHON25.DLLPYTHON25.DLL%s\%sLoadLibrary(pythondll) failedzlib.pydinitzlibZLIB.PYDzlib.pyd%s\%sinitzlibNot enough space for new sys.path\no mem for late sys.path\pathPY2EXE_VERBOSEPY2EXE_VERBOSEfrozenfrozenPYTHONINSPECTpath__main__Py_InitializePyRun_SimpleStringPy_FinalizePy_GetPathPy_SetPythonHomePy_SetProgramNamePyMarshal_ReadObjectFromStringPyObject_CallFunctionPyString_AsStringAndSizePyString_AsStringPyArg_ParseTuplePyErr_FormatPyImport_ImportModulePyInt_FromLongPyInt_AsLongPyLong_FromVoidPtrPy_InitModule4PyTuple_NewPyTuple_SetItemPy_IsInitializedPyObject_SetAttrStringPyCFunction_NewExPyObject_GetAttrStringPy_BuildValuePyObject_CallPySys_WriteStderrPyErr_OccurredPyErr_ClearPyObject_IsInstancePyInt_Type_Py_NoneStructPyExc_ImportError_Py_PackageContextPyGILState_EnsurePyGILState_ReleasePySys_SetObjectPySys_GetObjectPyString_FromStringPy_FdIsInteractivePyRun_InteractiveLoopPySys_SetArgvPyImport_AddModulePyModule_GetDictPySequence_LengthPySequence_GetItemPyEval_EvalCodePyErr_PrintPyBool_FromLongPy_VerboseFlagPy_NoSiteFlagPy_OptimizeFlagPy_IgnoreEnvironmentFlagPyObject_StrPyList_NewPyList_SetItemPyList_AppendxB@B@B@B@B@B@B@B@C@0C@DC@XC@hC@C@C@C@C@C@C@C@C@ D@ D@8D@HD@XD@lD@|D@D@D@D@D@D@D@D@E@E@(E@ exit(-1) undef symbolundefined symbol %s -> exit(-1)  @Importer which can load extension modules from memorys|O:set_find_procs#sss:import_moduleMemoryLoadLibrary failed loading %sCould not find function %simport_moduleimport_module(code, initfunc, dllname[, finder]) -> moduleget_verbose_flagReturn the Py_Verbose flagset_find_proc|I@ '@I@I@(@I@I@&@_memimporterN@(@XpaP   < PYTHON25.DLL PYTHONSCRIPTMZ@ !L!This program cannot be run in DOS mode. $l׏?׏?׏?ć?̏?҃?Տ?҃?֏?҃?Џ?-?Տ?ć?Տ?T?ҏ?׏?Ď?҃?s?҃?֏?;?֏?҃?֏?Rich׏?PELjG!  ` Pix`pP`@H`.text& `.rdataRf p @@.data``@.rsrc`0@@.reloc p@@BU EEt E `E/UU Eh$`h0`EPMQURh<`j2hp/C5 p/]U|$t|P`]̋L$S\$Wu1D$ʁrr_ [Vt$u ^_[Ãs3t FKur3Ҿ^_[ Án^U [IVVVVVVVVV V V V V VVHw3ҹǿ3MF]VVVVVVVVV V V V V VVʃHtt FKu3ҹǾ3^_ [̋D$ 3ҹL$SVWƻ3D$ȍ+ρ vv=v-=v-_ ^[̃8L$HT$PpBP 2HA_H^̋HVpV;vхtNvSWx ʋ˃x Hx QXxHډX+x)Q@H_[uHH^Ul$VMuBL$5-E }u E F=u Uu8E^]Ã*V(SW.T$N(9^/jjjE0NFFV @F~NG~VFBVV~NG~VBV‹VNANNFV@F~G ~u9};|3VNANN FFqP$H,ʃ#ыHɃыHɃу8NЈ~VNG~RLjVNBVI‹V NVANRNFNV@FI ~G ~u9};|3V^NVC^I È ~FG~Pҋt'@VNVANNI F@FȋVB,tFQM0PQ E0F FEN0 ;}$;|}3҃Ӌ3 ȋFlt 3ҿFq+-FltM2M0 jjjR E0~EFH@V N%;ssF;F u7Vz,t;v+PFM0PQ E0F;F t2VR~ :^F^ @CF^ FP;rFP,tF;vV+PE0RP E0NV ;QuF FI~IFH~F;F u7NQ,t;vV+PE0RP E0F;F t$N VR AN NNAۉNuVB,tF;vM0+PFPQU E0u ^ F[~[VB$~F;F u7NQ,t;vV+PE0RP E0;F;F t$N VR$ AN NNAۉNuVB,tF;vM0+PFPQ E0uFg~gueVB,tTFN ;vFV H;w:M0V NVANM1 Fj@jjF& E0FqFt[Eu7F(_[^3]ËE\$u";\$t8_[^U]Ë\$F=Mut8_[E^]ÅuNtu=S @VtuFTKu[;u VRu:jjjVtu&VLFDfDPNL~DL 3#LEF _[^]ÃNU0FVNBVŠU1NANU2NFN@FU3^NC^UÈ~NG~U LjVNBVŠU NANU NFM2VM0HqF~؉FN_[3^]ËE_[F(^3]á8E^]Vt$FWx*t)Et$It[tgtqtt_^Ë@t PF(PV$NADt V(PRV$F@@t N(PQV$VB8t PF(PV$NV(QRV$3q_F^Hø^UVt$l$ FD$vSWhE(jPU ؃ Ft$]K,j+U(QRU C8C,M(jPQU SLjC@E(RPU jCDU(QRU {80CK@KDK,T$r8̓r@K,{@̓rDKL{D̓rK {̓zJs+ΉKPNщ | _ $ 0 [^3]U_[^]^]̋CU;vu3]+ʼnCC@u S0UQRuK0UPQ C0V3W|$͋ʃC _͉C^ʼn ]̋B,JLBjElE\EpVH;vхtNvx ʋ˃x Hx QXxH+x|$ډX)Q@HuHHUB_^]3[YËM\|E833҃RUl+RPUiElE\EMAu3_^][HY3_^][DYSUVt$W3퍛Ft=s'VFt|$=sg#rMFHNXVlnT~4N8L3ND#ʼnFHfA#V@fzF4NlV@#,JFHNDfVlfAF`NpFxNd~`tq;sgFlN,+Ł;wU;tt#uu UF`F`wtuVl+Vpv~`Fx9F`vNtFl|Nx3fFlf+FdHfS Bɉ2ff=s 0 1f J3;‹FxVtù+уVtFx$NlA;׉NlwHFHNXn4N8L3#FTNDFHfA#V@fjF4NlV@#,JFHNDfVlfANxuNlAFhF`NlV\|F83j+QPVfFlF\Ap_^]3[ËFhVlF8DfJCfI;u/N\|F83Vlj+RPV)fFlF\YVlNtBIVlNtINlFtAHFhNlFtFhtLVlF8DfJBfFhN\|F833҃RVl+RPVseFlF\Au3_^][H3_^][DSVW|$3;t{w;tt9_ to9_$tj___G,FFF;É^}؉FFɃSqSNSu' G0V^(^_^3[_^[̋T$3WzS\$Uu l${V4[ I ;tJt jR9t7O|^][_][_ø_̋D$3;U81|$$8 W|$ ;u_]9W Wu G W(9W$uG$L$u D$L$S\$;}3 ~D$  |$vm;e \D$$;PGu G(VhjPW wn˽^0\$$MN4KNPjFLHFT>Fn,VXW(URW F8F,O(jPQW VLjF@G(RPW FDKjO(PQW V V80҉FtPV@tIVDtBt>PHL$T$(WF$^[_]F8WG^[_][_]ø]̋D$L$ T$PD$QjjjjRP Vt$tR~\wuLFu0N@FHQh@jPF =@tF8F@T$D$ RPVZ ^ø^̋F@3L$@ȋD$@L$H#L$$̉D$+٨t‹L$;؉L$s(jBT$;sjBT$+M#͋l$L$D+;l$+;l$HnL$,D$Iu*D$(+ȋD$T;+ʼnD$Td$AAFMus;sS+D$(+l$D$T;sc+ʼnD$TAAFMuL$,D$l$TI;s<+l$TD$@AAFMu+ȋD$T;s+ʼnD$TAAFMuD$+ȋD$Tv7PEAAFQAFT$TAAFMT$Tu݋T$D$Tt^AAF|$TvPIFH+ō$H@FH@FH@FL$TL$TwۅtH@F|$Tv@Fl$;T$0sQ;t$4EL$PD$A0,L$PAP t E D$P@hE ++ً˸L$PH#BFA D$0+ƒAD$4+A}8_^]<][<̋T$3;tMB;tFHJJJB0HH H H(H,H0H8H<0@HlHPHL3ø̋D$tF@t?L$V.P<4 w#WL$p3UUUCjD$4D$4D$5KPQնCl$C Ct@0CL$%3ҹL$рtD$L@|(C$L$;vL$LD$Ah(h3UUUS茪T$L$X҃ CA0 l$1D$L@P(D$s'nO|$FD$t$r<CtL$LA|(tT$LB4(K tCt%D$D$$D$%KjD$(PQQ C33 sOF D$rK tACt7D$D$$ȋD$'jD$(L$)T$*KPQش C33s(TO|$FD$t$rًK tЁQK A Ct%D$D$$jT$(D$)CRPW C3D$3Ktvs-O|$FD$t$rًK ɉC@tACt%D$D$$D$%KjD$(PQճ C3D$3K tAKK@;ωL$vωL$S tHR҉T$8t=S zs@R+49;v+׋ʋT$8t$ʃL$|$t$StD$KPVQ&L$(CD$ S@++щ|$t$S@K@C@Kt3ɍ1AL$K ɉT$,t-Q҉T$8t"S@;Q sL$8|$D$8D$,C@D$8L$,tL$;rKtT$CRVPhCD$ L$+L$,ɉ|$t$K tAC@K31AL$K ɉT$,t-Q$҉T$8t"S@;Q(sL$8|$D$8D$,C@D$8L$,tL$;rKtT$CRVP觱CD$ L$+L$,ɉ|$t$K tA$KtOs' O|$FD$t$rًK;tT$LB (R 3l$C tK H,S B0jjjL$XCA0D$   s'_ O|$F D$t$rًȋЁ3Ҋt$L$LCA03D$3 K  jjjǤT$XCB0D$  |$P Kt̓+D$T s$ O|$Ft$r݋ȃKȃMws$Xz D$ CLHCT CPH'CXD$ D$ T$LB4D$ ̓+ D$s+d$ O|$F D$t$rًЋҁ;tL$LA. 3K@D$3K@ɉL$;vωL$T$ ;vʉL$R t$|$(ʋT$L$t$|$ +t$t$(щT$S@++щ|$ |$t$(t$S@ s# O|$Ft$r݋ȃЉK`ȃK\K`BSdD$ʃChKh;K\s[s#_ O|$Ft$r݋ShU'3ɊD$fLSpKhAKh;K\rKh;s*3 $d$ShU'fLSpShB;ЉShr千0KlCLRCTPQjCpPjD$4D$t L$LA1 T$LB! ChK`Sd9ShKTKLJ#Ћ ;ՉL$@v<A KTOºKLF|$J#Ћ ;Չt$L$@wċT$@fsR;L$s&L$OF;|$t$rfT$B+KhfTKpKhAD$KhHuh͍Q;L$s+L$OFQ;|$t$r+KhɉD$bLKnL$,ȃfՉT$uJJ;s-d$$O|$‹T$FJ;t$r׋ȃDJ;s)O|$‹T$FJ;t$r׋ȃ +D$,{dSh{`;׉D$tT$,{hfT{p{hGI{hu|$S`Kd9Kh;0KlCLRS`CTPQ RCpPj D$4t8L$LD$AT$LBL$L|$AvSlKlSPRCXPQK`CdPTKpRj D$4tD$L@D$)D$rg|$ r]D$LT$ L$(PT$0H L$R0xPK8kK s'O|$F D$t$rًL$0+L$ T$LJSхɉL$0St8CSL$(D$0Pt +QR莤 +QRL$XCA0D$ KT$ ɉT$0u'3Ҋt$L$8ʋʉL$8;Kt L$LA(`3D$3KK s'O|$F D$t$r;CtSL$LA' d_^][8ËL$LT$(Q T$ y_1Q^k+Dž~|$AB;rt$DT$(ЉD$@$T$(u =֋$ D$DL$ +T$8fLG$*ÅD$@D$fD$t]t$ d$t L$ fŋT$t$ I6t$t`\ |$MO|$;L$$l$,8|;tt  +鋈͋l$,fL$IL$u|$t$ J҉t$ u_^][ QSUVWx3ٹu fDD$CNj|$?F;};tn;L$} f| .t;tf| f   f f 3u ;u  D$KD$n_^][Ỹ SUl$VWOL$39t$u E|$l$|$?l$F;|$t$ };x;~ +;~\| Hf PPBPʋPHAH*fL:ft$ f| ff Nt$ f;~ +;~\| Hf PPBPʋPHAH*fL:ft$ f| ff Nt$  +;~[ Hf PPBPʋPHAH*fL:ft$ f ff σ~XHf PPBPʋPHAH*f򉐼ff   +;~[ Hf PPBPʋPHAH*fL:ft$ f ff σ ~XHf PPBPʋPHAH*f󉐼ff  +;~[ Hf PPBPʋPHAH*fL:ft$ f ff σ ~UHf PPBPʋPHAH*fff L$3ɋu ;u  l$|$Ol$|$N_^][ ̋ S\$ Ul$VW~gt$H\$f PPBPʋPH\$AH*ffT$f  ~`sH\$f PPBPʋPH\$AH*ffSf  ~`uH\$f PPBPʋPH\$AH*f􉐼fUf 3 $I +~]~ Hf PPBPʋPHAH*f󉐼ff~ ff G;m\$L$IQKS _^][̋D$L$Vf VT$W>Gɉu f@2Ifs 0 1f 3I;_^̋ S\$UV3ɅWFI,J4AL$|+;~_4H\$f PPBPʋPH\$AH*fL:ffff 2+;ˉ|$|$ T$~fHf PPBPʋPHAH*fL$T T$ffff |$ω<)\$ }+43+;~THf PPBPʋPH\$ AH*fL:f f ωMs 0 1L$$T+;ΉT$~fT$$4Hf PPBPʋPH\$ AH*fL$T ft$$f4ff ʉ4@*+,3+;~XH\$f PPBPʋPH\$AH*fL2f f ΉL$;+;~xH\$ f PPH\$ BPꊐ)HAH*fL:_f^][ fff _^][ 3f9u @ | Ifyf9u5fyu=fyuGfy uQfyu[ |ȋ3Ƀ J,Ë3@ J,Ë3Ƀ J,Ë3Ƀ J,Ë3Ƀ J,Ã3Ƀ J,3V J^̋Su8PHPBPʋP@3f[Ã|4HPfPfBP[̋S~8PHPBPʋP@3f[3;~PVp2@^f[SVWًL$ǀt;HPHPAH<pPFpш pPFщp,@t!IHP\$p\$FGKpu_^[̋T$ | 0 3 ǂ \`$ ǂ, p`ǂ8 `fǂ|̃$h/Vt$D$$3ɸ+֍4Bt4ffLD@~3|8D$0wnT$ PL$Q{ T$hRV蟻tstE;t38󥹴6V8HujCSP3_^[YCH_^[Y u KSQ@h,6R~3_^[Y u CSP 0h6QU_^3[YVt$FHt FPF@tN@9u PPRFDtFD8u HPQVj^Vt$FHt FPF@tN@9u PPRFDtFD8u HPQV ^̋T$SUVWD$PL$Qh7R@{tUj,t D$u 3_^][r/jPB V|$4OT$ D$$L$,L$wW oO0jVD$0dvT$0RXu\GuP\-D$SPjm L$T)oWjVD$$v؋D$$P ttFtA86D$H8JD$8u HPQD$W+T$ RD$Pl  /QA D$_^][̃SUVWD$PD$4L$QT$$RhH7P@D$(tD$} @h 7Q螹3_^][t =@}Sj^r D$t/jRA V|$8GL$$T$(D$0D$wO _GkjVD$4L$4QumGufD$t;}^t;~؍T$SRk D$ӍL(+ՉOWjVD$(蒹D$(P& tD$t-GDGD8u HPQW RPTq GDtuuLG@tG@8u PPRG PQq G@ubD$D$8uhPPR\tCt>8 78D$D$8u HPQD$W+T$$RD$Ppj  /Q? D$_^][̃L$SUVWD$Ph|7Q@D$  t/D$ujj@p _^][Vj-p D$u 3_^][s/jR> W|$0L$GD$(G wO9T$ RoUD$,gr؋D$,P[u[d$GuP6L$SQki T$D2wGL$QUD$ rT$ R t|$UOz3ۃ;t>8h7D$H8JD$9u HPQ\$_HG+D$PL$Qh /R= D$_^][Åt̃tǃ8X7RD$H8JD$8u PPRD$̃ L$SUVWD$Ph|7QD$ @D$ tT$Rj2n D$u 3_^][ x/jP< V|$,D$OT$ L$$WGBwjVյUmtuXGuQL$ RD$Pxg D$L$TGWD$jVvU 럃uUVGHtA8󥹈7D$H8JD$8u HPQD$W+T$RD$Pf  /Q; D$_^][ ̋D$L$PQh`glB VW /jPz; V4D$ 7 3u L$ A@q@ /Qs; _^ÿ73u L$ ADqD /QA; _^PD$PhgA / Q; _^à jjjB`D$ D$ PD$$L$QT$Rh7P u ËL$T$$QRP`PD$( ̃ jjjrkD$ D$ PD$$L$QT$Rh7P谽 u ËL$T$$QRP2kPD$h( Vhjhjhhh8di$jSjjh8j /tPBh8V] jh8Vm^jh8V`^jh8VS^jh8VF^j ht8V9^jh\8V,^HjhP8V^jh@8V^jh,8V^jh 8V]jh8V]jh8V]Hjh7V]h1k tPh7V\ h7h7V] c: /^̸̸ŰD$ 8+ы̋D$D$ P̋D$PYS؃uD$P؃}[9\$UVW}a$L$+‹T$WR'tAD$jVP Hu NVQ|tG|$9\$|D$_^][_^][̃D$PL$QL$$T$RT$$D$Ph`mh9QRD$ D$$0 t$L$T$ PD$QR }3P%̃D$ PL$ QL$$T$ RT$$D$ Phnh9QRD$(D$,谷 uËD$L$$VPD$QR} }3^ËD$@=tChP$ u1L$T$QVh9h9Rtu#HPQT$D$RVPk |^S؃uD$Pޫ؃}[9\$UVW}a$L$+‹T$WRtAD$jPVѭ Hu NVQ|tG|$9\$|D$_^][_^][̃D$PL$QL$$T$RT$$D$Phph:QRD$ D$$  t$L$T$ PD$QR }3Po#̃D$ PL$ QL$$T$ RT$$D$ Phqh$:QRD$(D$,蠵 uËD$L$$VPD$QR} }3^ËD$@=tChP u1L$T$QVh9h9Rtu#HPQT$D$RVPi |^hjhhshrh8:MQD$SUVWL$(l$ $EffD$,s(t$$}D$,}NBH|$īfӁf;ryfūf;wlD$Ӂ+fpf=tSxO1Ԁʀt$$ B}D$,}ND$,ƅt$$"_^]3[Y_^][Y_^][Y̋T$SUVWt$$|$|$(|$󫪋T$+Њ @ujVلPL$QS}Qt V  u3$ _^]Ë$ m_^]QD$SUVWL$(|$ l$,Is$t$$NBt$$MUu-|$$N@u ( Ё+re3Ҿ 10V3Ҿ~1V3Ҿ 10Vt$$,pt$$ u  u Du 0tCD$t-ī%;rū;wt$+fFf=uCPD$t\T%;rJU;w?t$+fFf=t/1Ԁʀx t$$BNt$$P;wF;vfFfu_^][Y3fFf+ 0S~S 0S,D$$Hf>D$$tD$$n_^]3[Y_^][Y_^][Y_^][YQSUl$VWD$(|$ |$,7sfʋf CM~N0V9M}^\$$^\$z|$$o\$0b9YD$$\$ЀЀscɍ QT$$k~Ӎ J$Prr;s3f2f+rf1Ƀ QT$$k~Ӎ Jt$,; (f30$fNt$,+t$,%uu"f u"Duf u ftt8tр:r):tw!с+fTU0ff:uv4@t.D:r#: Ew+ڋf4^f2f:u=4:rx: wo+ʋf Nf f:tU|$ l$$L$,IL$,l$$:_^]3[Y_^][Y_^][Y_^][Y_^][Y̋D$3̋L$9t#|$}ËD$ ~B}3̋D$SUVWVD$,L$$l$0ffsat$>uB0|$(0OFM$8\$(~8G}8W8K8\$(ۉ\$ī\$fہf;fūf;T$+T$fzftx{t$>u8|z8\$(~8G{8w8W8K8\$($|B0|$(60V0O|$(0T$(_^]3[_^][_^][̋D$3̋D$3SUl$VW/D$$|$ ~J~u|$(f~{uL$9}uL$9 t$>u|$(fыfCMS|y|$(||tttJt:rg:tw_+ʋf Kf f:tEL$(IL$(_^]3[_^][_^][_^][_^][hjjhtth=t S[QSUVt$ Wl$(T$ s*|$,E:D$,:MNAt$$Hnсu+l@Ёu ( ȋT$,3@D$8t3с;r ;w+fSfD$=/>t%T>;rt>;w +fKfub_^][YÁ0tq4;r`5;wU+fOftHD$M1MQL$ 1T$$1M+ЋD$,T$$MD$,H3_^][Y_^][Y_^][Y̋D$SUVWD$$l$I|$(U t$ sff ]CN;rw sEzs?=/4>t-R^:r#:Vw+fW0ff:-4p(pMIt(:[: u(Nҋ+4^4iH|p0@.|~0 2.#TX3Tσ tdL$(;ց (fL$ $frt$(U++ωt$(UL$ +f1]t$ +L$(]It$ L$(L$ _^]3[_^][_^][_^][_^][̡/Vu9hp u^h`V&/Hu FVP/^Vt$ F=0t)h0P} u8hPO3^Sr؅u[^átUW8ntA:utP:Vuu3t G$$uŋ8u hQ͖_][3^jWutjVS艞 Hu VVR_][^Uh/V5t$8Wtp$ fD$L$fT$ 3>|$󫪋T$+Њ @ujVuPL$QSAt V  u3$ _^]Ë$ _^]Ul$ VPu^]ËL$ WQVt}t)@hRvu FVP_^]WutH tPUu GWPu NVQ_^3]hjjhth6t Sy[̡/u&Sh/h / [t/3̋D$Vp>tIFtЅuFu3^Ã^ËD$@B@B3̋L$AT$D$ St|V0YJY^9Bt!}[ËB(BBB3[̃SUVW|$4ct$8\$(l$|$󫪋T$+Њ @ujVmPL$QS=:t V  u3$ B_^]Ë$ -_^]D$ V3Wt%I;s;tv;t 7;u; _^ufDfUl$ VP4u^]ËL$ WQV9t}t)@hR薍u FVP_^]W(mtH tPUu GWPu NVQ_^3]ËD$B@HH3̋D$HBH3̋D$SUl$VW8@l$;}AU +fCf=t2y2_^]f [v;t7;?; u fDf=uf _^][̋D$L$PQ f=tf=tyf ̋D$Vt$ W>VPσItIu>t_f ^3f=f_^̋D$L$PQf=tf=ty%f ̋D$L$PQ3Of=tf=tyf ̋D$Vt$ W>VP3σItIu>t_f ^3f=f_^̋D$L$PQ3f=tf=ty%f ̋D$<\r u<~su> <t̋L$=s \t~t=u\=> u~f ̋D$4f?rv<@rz<~v|$󫪋T$+Њ @ujVQPL$QSt V  u3$  _^]Ë$ } _^]D$ V3Wt%I;s;tv;t 7;u; _^ufDfQD$SUVWHl$(L$ t$s.|$,BE1T$$D$,1MJAT$$Hʁu/|$$3fHu ( 3ɁAL$O]RT}SVqYe[\Yw^M&vAk~5u ;_ʁ;s;`+f KfOf|$$}MD$03. ;s;tv;t 7;u; P 3.I ;s;tv;t 7;u; uf f3Ҿ.d$< ;s;tv;t э ;u;, f fl$(D$,Q;EEhEɀHED$뿋l$(t+ʁ;r;w +f KfuarJwBD$,;8Et$$E@PD$ UD$,Nщt$$U+<u @!&^2"%=u t-;r;w+f WfD$_^][Yú;|iu EɀHL$ D$94t$$9M+D$,ʉt$$+‰MD$,D$$_^]3[Y_^][Y_^][Y_^][Y_^][YSUVt$WD$$|$\$( ysff Nˉt$ I*u5=RC:fʋ@f cJRt$u}u;u f&pt1t:r':uw+ًf\]ff9X\::]w{+ ktgt$(;Q (f30$fNt$(L$ +t$(L$ ee::e+ыfSff9t$ L$(t$ IgRt$.u!/tOTW~N,t-,:r#:,w+ًf\]ff9uFx|::}+fkff9t$ L$(t$ Iutu'G~u#z{|{}!u@f<둀"2f^sHL:r~:Mwv+ ktbt$(; (f30\$($fN(L$ (7++ʉ\$(7L$ y::+ы tmt$(;|Xf30\$ fN/L$(/0+ڃ\$ 0+ʉL$(t$ _^]3[_^][_^][_^][_^][̋D$ SUVWaD$0t$(|$4ffsIl$ɉL$tH\$fہf;r-ff;w \$L$+ˋ\$f Kfu2farfw@QSf u?|/~.\$,.KBO˅ɉ\$,_^]3[ _^][ _^][ SUVt$WD$$|$|$(}sfʋf /ENAu2jIh_fɁ@f /QIeeр::eӁ+ʋfLMf f:t$ t$ Iuu f u~farfw @l$|$$xmՍB$^J,!sO]RTSVY[\w^&vk~;u4\]MAKl$$\$,_^]3[YÁ> u~arw @3fp ( Tс;=;.+fSff|$$}iD$0b3. ;s;tv;t 7;u; uf fm_^][YP 3. ;s;tv;t 7;u; uf fuA3Ҿ.I< ;s;tv;t э ;u;, KD$E;0;!+fOfsс |$u ;;+fOfҋʁ!y*|} tCI!t^t$(|$ ȋl$$$?@ˆAD$ډ\$,+_^][Y_^][Y_^][YS\$UVWD$$t$l$(|$ \s ff Hu f=~sf-u f> 'u fr(w#fс@fK\$ MhrvzqVZ@\~v NEs?sÿ^р^r^!^!uU.u!E/t=OuT-tu',~u-z{|}~,t7,:r-:,w%+ڋf<_f:f:t M)xt7|:r-:}w%+ڋf<_f:f:t MHtlL:rb:MwZ+_tF0ʁ (f$fQr::+ʋ l[0ffJ grcs _tɁu}u;u f<ptOt:rE:uw=+ڋf<_f:f:t#t$|$ |$ MX\::]+ Otr|e0с (f$fJL$t$l$ \$ _^]3[_^][_^][_^][hjjhth`ht S[QD$SUVWL$(l$ $EffD$,s(t$$}D$,}NBH|$İfӁf;ryfŰf;wlD$Ӂ+fpf=tSxO1Ԁʀt$$ B}D$,}ND$,ƅt$$"_^]3[Y_^][Y_^][Y̋T$SUVWt$$|$|$(R|Rʀ:r(:}Rw ‹5+fDEff9uLL$t3B:r#:w+‹fCff:u_^][ËL$9T$ 9T$ D$(HD$(_^]3[_^][_^][Uh/V54u$8Wtp$ fD$L$fT$ 3>|$󫪋T$+Њ @ujV1PL$QS]t V  u3$ b _^]Ë$ M _^]ËD$SUVWt$$l$Eff=L$(s(T$ }D$(}JAHf=rkf=weTȋ؋'toÙf ff ʋ Ȉ*Hf=11rf=c1wf MV*Hİf%f;fŰf;ҁ+f{f!r,vJ}!~Jfsv$^‹,!fفf;r'ff;wD$Ɂ+f Pfu_^][YËl$ *T$$H}D$,}JD$,…T$$_^]3[Y_^][Y̡0Vu9hpu^h`VK0Hu FVP0^Vt$ F=0t)h0Pv0 u8hPJ3^Sr؅u[^á`uUW8ntA:utP:Vuu3t G$$uŋ8u hQI_][3^jW(tjVSYQ Hu VVR_][^SUVt$WD$$|$l$(d$ sff ANt$ t/J:r":w+ʋf Kf f:u;=tlI=:r]:=wU+ʋf Kf f:t;t$ t$ M1_^]3[_^][_^][_^][Uh/V5\u$8Wtp$ fD$L$fT$ 3>|$󫪋T$+Њ @ujV&PL$QSmt V  u3$ r _^]Ë$ ] _^]hjjh $u3ËH VWxWQ} u3"WVhT Hu VVRD$D$8u HPQ_^̃T$D$PL$QhRD$\@t$P,> $u3ËL$P VWxQWR u3"WVhT Hu FVPD$D$8u HPQ_^̃T$D$PL$QhRD$?t$P|= $u3ËL$P VWxQWRh u3"WVhT? Hu FVPD$D$8u HPQ_^̃ $PD$L$ QT$ RhPD$D$>t%<$u$L$Q< D$u3 ËT$ $VWxRP QWR u3"WVhTm Hu FVPD$ D$ 8u HPQ_^ QL$ $PhQ<> uYË$R ỸT$D$PL$QhRD$=t$P; $u3ËL$P VWxQWR u3"WVhT Hu FVPD$D$8u HPQ_^̋T$$PL$QhRU=t$L$PQt3QL$ $Ph,Q = uYË$R"Yhjjh(|h<̋ $0VPQbu!1u 0hR_8^^̅t̊D$u ÍD$jP ̋D$@t̋D$@D$u ÍL$jQ ̋D$@ D$u ÍL$jQy ̋D$HL$逦u D$3P]$3̅tBF=ft/hfP uL$8QhR:7 V3̅tkthV t[F=0th0P" tV tL$8QhR6 V t33̅uPv 3Áu 3ËF=p/t/hp/P uL$8QhRK6 Ët8u HPQ73̋~Ҹ|~t9t!P u8hP53Vt$FtF8u HPQVV^̃,VD$(PL$(QT$RD$PL$0QT$0RD$0PD$XL$0QL$XT$$R3hth|PQt$`t$8t$Ht$Lt$Pt$Tt$VG$X%؋uHu VVR[^Hu FVPOVQHu VVR[3^̋Fu%FFt PFPi=?NPQFnFu*3ø̋ x~VF ;| 0QhP. ^;Fu mtV ND$F 3^S\$WOG we$(>tU tI tDW tn tite:X u xQ:X uHu:X uTG_3[ÃxuW$D$ PU_[z_[ÄuD$ L$ Qŀ t؀ tӄt:Xu G_3[:X u_[ËT$ R>l:Xu G_3[:X uxt@G_3[ËL$ Qg$_[ÄuD$ T$ RA}(_[Ãxt(:X u#D$ PG_3[ÊH :u G_3[À tR tMtIPuL$ Q|}G_3[P  0RPhQ,_[|Eۃ__3[À 6 -u G_3[Ë 0hRT,_[ÍI;;f<v<< =,==̋FtF8u HPQjFuF FF$3QVt$ FW3;lj|$tF98u HPQW;ljFS~ ~~$UVR1؃;F(@SF( So t+MGD$D$Plu u KSQjFF3__3^Y#9~  0hPR*][_3^Y u CSP 0h8Q*D$][_^Y u"SSRD$][_^YËFD$FD$][_^Y u KSQ][_3^YVt$VeF tF 8u HPQFtV:u ‹HPQFtV:u ‹HPQFt P Vw^S\$C Vt$W|$t VP׃u&Ct VP׃uCt VP׃u3_^[Vt$F tF u HPQFtFu PPRFtFu HPQ3^̃VW3hP|$ ;~ ~~~~~(|yD$L$QT$RjjhcPt'T$ R;;ljFu)8hhPk!u8NVQ_3^ËT$L$R;ljF uu FVP_3^V_^3ɉHHQUl$ Vu FP] D$u^]YËMSW}ɋL$(~t U^ GtT$$:t U^ GT$D$D$:^ t :^t:^ tQPL$0t=~t%F :uVttUGD$$Ft~tUGtED$T$\G@ۉD$vu!D$ t~uh;T$$ D$$8ttMV G_[^]YÃ_[^]Yh 0P&_[^]Y̅|r=kN;~^@ɉFu!Ft PFP~FW~PWFu W_Ft!3Ul$VjSWUV| au^3]jSWUVFF@F^]VF HWQ t!F tV BP u_3^ËNWPNQF ljF_^̃Ul$Vt$F UD$2u 0hQ.%^]SWU}3ۃ;|$^^\$ |$l$(3ۋT$RU;wD$@HtHt\$$U @D$$D$$E=0h0P u83Ƀhc\$(ƋAEHEUURU؋EH\$Eu EUP3ɃS\$(ƋD$ IumPPRa3jL$(Q]WSV}3.u3!jT$(RWSVFF@FMu EUPt D$L$@;D$ru _[^3]ËNVFQRhP _[^]̋D$SP5؃u 8hQ3[UVWS)tBl$VUHu VVRtIu GWPS(u u SSRu#_^@][ u KSQ_^]3[Vt$VF tF 8u HPQFtV:u ‹HPQFt PmV^S\$C Vt$W|$t VP׃uCt VP׃u3_^[Vt$F tF u HPQFtFu PPR3^̃VW3h|$ k;T$D$PL$QjjhcR~ ~~~~~t>L$ hHQi;ljFtLPit?T$L$R;ljF uuHFVP_3^VN_^Ë 8h QHu VVR_3^̡$0PŨT$$PL$QjjhcRD$9t4D$@=p/t,hp/PI u 8hPQ3ËT$ $VRt*D$ $0VPQ }Hu VVR3^Hu FVP^̋D$ $0PQ}D$ 0T$a̋D$ $0VPQu!Pu 0hR^^QL$ V5x~D$PjjhDQD$t8L$tGA=ft/hfP u8h|R3^YËL$Qzx~Vl^YhO hPN hN Whjhhh腸h7h7W $0PhW~ uz~Vt$~FPQW tUFuhBhW, u'PPh 0tPhW ^_S\$ {}8hP3[W{ Wu 8hQ_3[ËD$ VjPt0~hBjS8 F uFu VVR^_3[ËD$t$PFu!uދFVP^_3[FFF^_[Vt$VFt Vh FtF8u HPQF tV :u ‹HPQFtV:u ‹HPQFtV:u ‹HPQVV^S\$C HVuTt$C=Wuf|$tCWVP؋ Hu NVQtu WWR_^[ËL$Qus QP%)u^[Pcuu FVP_^3[ËD$ujPW au NVQuȋWWR_^3[S\$CVt$W|$t VP׃u8C t VP׃u&Ct VP׃uCt VP׃u3_^[Vt$FuFu^ËFF^Vt$ u8hP^ËF=Ht+hHP* u 8hQ^ËL$ABqtu PPR3^̃UVhjhȖh80hPt$D$ tBS\$ WVJ |+F j.P 1FQ@PU1wu_[^]QV;s|hP^YËK AD$;t$ UW~_$S D$ ~j,PUh tlt3EK S 8uʋPPRC ,;|$S C 9uS HPQD$ S _]3^YËD$ u HPQ_]^Ỹ SWًC;D$ |$|hP_[ ËK UVt?;L$|HS C :uC HPQL$D$S Plj ^]_[ ËD$n;}!C jRP% tPuK ,ES C 9uS HPQS D$,t6;|L$GD$u HPQ^]_[ ËT$D$PL$QjjhRt3$@=t,hP u 8hQ3ËT$$RP2tS\$CHjj[tVt$ F=t)hP u8hP/3^ËFu hQ3^ËV SW|CjPXSV.u_[^ËF 83u u CSP_[3^_[^̋T$D$PL$Qjjh|RtU $A=t.hP u8hPZ3Ë $y} hQ73ËQ D$V2D$H T$L$3uu FVP3^Ë^W|$ G=t)hP u8hP 3_ËGV+‹NxƋqtNy@^_^3_̋T$D$PL$QhRtuËD$UP&u]SVWjD$3ۅ~_^9(W$(Wt77F;~ V A_ ^Vt$$(t'(jdž$(jt476F~ V(t PFtF8u HPQF tF 8u PPRV^̋D$(ɸntn̋D$H ɸntnQL$ VD$PhQ3 hCFFFT$hRF u,D$ pPQHu VVR3^Y&FuFVP^YËN SWQӃt u%u/V RӃu_[^YËN QP_[^YÃtڋhR_[^YSV5W3tPӃuFFu< t t D7G< uOQ؃tWVS ;_^[̡X0uRMHP0 X0PQhQ Vhjjhȼh<舜WWh7V臧W=hhGV=胦8h8BhV8fH0(_uPPhl H0tPAh\V0 jhPVjhDVӦjh8VƦjh,V蹦jhV謦j#hV蟦HjChV菦j3hV肦^SVt$ (NWPQ^jSF;u%Fv(Ru$_^3[+PT7RSN+σ NuƋF P pPQ] _^[̋CUl$ L((rSF}]VW$t SDsFɉsuߋt$|͋ȃC_^C3]SUl$؋D$ VWP@u+‹ōP@uK+‹>T (r S|CDCL$WQ}_^][VU _^][S؋VP$@u+‹CL (rS0}^[ËSL$ D#C@CЊ$t DSBɉSuVW^[S؋VP$@u+‹CL(r S|DSL$ DCC@CЍd$$t DSBɉSuL$}^[VW^[̋F=(|V=}ËND3(FˆTF3̋F=(|V}ËNDS (FˆTF3̋F=(rV}ËT$jL$$t VDVBɉVu዆ (t L$3̋F=(rVM}Ë (tT$jËNDF3̋F=(rV}ËT$j̋F =(rV}3ËT$j}ËL$;QKUl$ E0VWPQKD$  ((PQhL$ 9 U0CVRP tNVQ_^]Y((u VVRD$}0Pw}_^]YËH Q@T$D$ M8Qju`D$_^]YËT$ VRluIE8}4L$PQ|E4L$ PVQ  tu VVR_^]Yu FVPD$_^]Y̋D$ VtWHt3^ÍD$Pt$L$0(+y3Py^É0(L$P4([^Ët$(t@T$PB@P^ËL$Q@Rm^Ët$SUl$EWP} _][^Ë (tMQ8RPWY _][^̃$Pdž$(( $T$V0(4(hPot 1,+̋T$VD$PL$ QhR3t!D$(uH0hPP\^ËL$T$QRsu A ^̃ WD$PD$L$ QT$Rjj3hxP|$$|$ t;Vt$mt#L$T$ D$QRP`, ^_ Ë_ ̃ VWD$PD$ L$QhHT$RhPh3P|$$t$trD$;t?=t8@=Ht6hHPo u$ 8hQ_3^ ËT$ T$D$L$ T$PQRo 1_^ Vt$$(W3tH0hhP_^Ë(u H0hPQ_^~ A_ ^́h/W$hu_$j WhI (uPh%(uPh(uPh Ph PhW uAPhxT0 P0SPQhpT$hR}D$PhP\L$$hQPh<?h4] ؃0C=thP# Uk3~CS P2 uhh rPh G;|F=(]| V|NDS (FˆT~Nρ(| VL|VD3(ɋND~[3_$g ËhR$[_g ̃ S\$VWD$PL$QT$Rh 3S3|$ D$$h83;dž (9|$ (9|$ t 9|$t3(~$((((C F ;ljFuu NVQ_^3[ ËT$h R;lj(u+u FVPL$pQR_^3[ 9=X0uBtu FVP3_^[ QVt$WD$Ph V3 t,L$VQ;t ((_ǀ(^YË_^Y̊u j3<t DAuAUQu]VWDFPat.WVU{ ut<u_^]u OWQMu UUR_^3]Áh/V$#Wh V|$tW_D$Uh Vt U;uA=S33S׃t\4FC|D$VP̣ D$tVht P tVht U u NVQ= 33S׃t\4FC|T$VRZ D$tVhh P9 tVhh U& u FVP=33S׃t\4FC|L$VQ t%D$tVh` P u VVR[]_$^c ̃T$D$PL$Qh RD$uËD$Vt[PD$Pu `0h Qd3^PD tD$tu^ËT$jRu`0h P 3^P ^Uu]SVWP询 Vh!U Hu NVQWRy TVh!UP Hu FVP_4"Vh!U Hu NVQW R Vh!U Hu FVPOQۡ Vh!U Hu VVRGP襡 Vh!U| Hu NVQWRo JVht!UF Hu FVP_*Vhd!U Hu NVQW R VhT!U Hu FVPO$QѠ VhD!U Hu VVRG(P\uVh4!Uq Hu NVQW)Rs\>Vh(!U: Hu FVPO*Q<\Vh!U Hu VVRG+P\Vh!U Hu NVQW,R[Vh U Hu FVPO-Q[tfVh Ub Hu VVRG.Pd[t3Vh U/ Hu NVQW/R1[u(Mu EUPtu NVQ_^[3]Vh U Hu VVR_^[]̃T$ VD$PL$Qjj3h@ Rt$,t$0t$$t$(&D$@=0th0P t(L$A=0h0P T$B=tFhPq u4D$@=t&hPQ u @h!QT$B=t/hP uD$P ;ƉD$tUD$ L$A=tNhP uu NVQ^_át$@FoVG$O NRW \$oN$PQRh%h01F(JF8u HPQtWRHu GWP^_̃Vt$ Ft"F0hT%P(3^ËFu#L$Qt l$=%#%F %AuF %j\$辏D$ t3FT$ RhPc D$ tD$ 8u HPQ3^̅ua3~I3̅ua3~I3̃T$$D$D$PD$L$Qhhh%RPuË$Vt$uF~ FFD$uF~ FFVh N@^̋C t6U-VWs ~t SFC VՋC u_^]S\$SjjSI CtC0hT%P!3[[Vt$^Vt$Ft jj S!\F[tF8u HPQVV^̃%$\$ D$D$PL$QL$(T$RT$(D$Phh%QRD$( uË$Vt$uF~ FFD$uF~ FFD$ NFtt u AQPD$3^ ^Vhjh%h1h%$tWV蠂h4 hh%WIh0 u!h h01 h0hp0 =01p0h01GBh%V=01p0}hp0h%V}j[ 1h0_^́ pV3WtD 3%3Ƌ_u3;_][33;_][ËG;G ;-0v"Fu PՃu~_u3;w u PՃu >_3;_][ËG;G ;vUfFPn> u u8fR2 u'fP2 ufQ < u>_u3;_][33;_][ËG;G G;vUfFP= u; N33;_][Ëa֞5}UVW$$f;ffsËȃG \f9wf;_vqL3ɅAˋD8wu%1_^3]_3^]_^]ËuڢoSUًL$ V1Wy +;} =t<\$;5k$fUF;rL$_^]+[;F;rL$_^]+[;f[s ID$RXf;tF;rL$_^]+[;sL$U|tT$9:rD$+_^][Iä#\SًC VWPD$LO ;T$\$D$s oPT$UH PEEU E Mf8|$u%fPftt$+;PDPE D$ @D$ u QC E x|$} $|t +@C C$;~@;}|(+3|$K$UT(} 끋E;D$sNff;uE@} E`E;D$s-ff;t$@} E?fuH3PMUL$P HJ , $E;D$s0f뤋M;L$sM ǃSr Ht$T5 J;MȉEME f{(ʃ󤋓P?+щPUMC$EHS UEH PLW ;‰Ts' _L$tHL$HPlj@M PH \$EPLO ;s' oL$tHL$PHǃ P@ U P cL$H@LL$HPlj@ m M PTMP L$H@ Pm PULUH ]_^[]_^[Ã]_^[@ħo+q~qqЫK֧ݨݨDZҳ Hqqq&ڬF W S\$$U33f;VwT$ T$l$l$$l$ l$l$%KL$fKfv%ѹ+ʋыL$;΋T$ L$wNL$L$tk K l$$kL$LML$ tK L$ KLKL$,L$3;+@D$ff; (tIt\\$f; (uL$C;uBT$D$$W+эL2D$T$,dD$XT$ L$FA;L$r^]3[\$,3f;u`fk$;sff;tF;r^]3[;sD$wF7uST$ ^][9l$ t]I;vfD$ cD$ uF;r^]3[;AT$,ωw7su(T$ F;t$w7wӋFQu;t$v^][̅~ HA\t 3SU VWwH$O_3;^][;wtRfv6 N;uff=s3pu);t%_^]3[;w tf6fspt_^][ËO _3;^][ËG ;t;vfFf=sp33;sf6fs ֊p3;_^][ËG ;a3;vfFf=s p3;sf6fs ֊p3;_^][ËG;G ;-0v#Fu PՃuf~_u3;w s-u PՃuf>_u3;_^][33;_^][ËG;G ;-0v#Fu PՃuf~_u3;w u PՃu f>_3;_^][ËG;G ;vZ3fFP5" u@3fNQ2 u-3fVR u3fFP< uf~_u3;w sa3fQ! u<3fR u*3fPQ u3fQ uf>_u3;_^][33;_^][ËG;G ;;vZ3fFPS! u@3fNQP u-3fVR u3fFPZ uf~_u3;w sR3fQ 3fR n3fPg X3fQ 733;_^][ǺֺǺF7j߼UVW$$ؿf;fffsËȃG \f9wf;_vqL3ɅAˋD8wu%1_^3]_3^]_^]Ëſ*odTSUًL$ V1Wy +;} =teM;L$fG]E \$HEU ECD$M;RXPX;t7L$E;PXQX;U MȉU ME;D$sAD$RXM ؃tE \$PE Ed$\$WOU eK C$MTɉD$EMPL9Ls'0AD$tH苓PD$H s(ʃ󤋋PDPOEt$H;GOS |$HT= ыM EUy;Qf{(ʃ󤋓P?+щPUMC$EHS UEH PLW ;‰Ts' N_L$tHL$HPlj@M PH \$EPLO ;s' L$tHL$PHǃ P@ U P >L$H@LL$HPlj@ m M PTMP L$H@ Pm PULUH ]_^[]_^[Ã]_^[ÍIIwc][ii[\g}D**n**Q~OH̃W S\$$U33f;VwT$ T$l$l$$l$ l$l$KL$fKfv'+ʋыL$;΋T$ L$wNL$L$tk K l$$kL$LML$ tK L$ KLKL$,|$3;s{ff; (ttb\$f; (uD$C;uH+ʃOL$$+ЍDVD$T$,>D$XT$ ;r^]3[\$,3f;u]fk;sd$f9.t;r^]3[;sŠD$w7uST$ ^][9l$ tT;sIfD$ 4D$ u;r^]3[;OT$,ωw7bu*T$ ;t$w7wӋσ>u;t$v^][̅~fHf\t 3D$D$)K:̋T$D$PL$QhRDuÊD$t&$=sLP,Ph)9è $tP> Qh)9 =sPh)9̃WF$F H3;ljTtPHPL_QSVF=WhPQq FxP?GjVЃL$ QjV؃ }h)8R诊_^3[YVv0t8h0Vp u&;t"?;tI 8h)Qa_^3[YËL$T$9_^D$[Yh)xF ~D$ L$T$9_^D$[YQUl$W3F$F D$PL$Qu_]Y L$}3;~T$} D$;~L$T$L$Nȉ~;VT$FBGN ;^nt_džX@]Y t_džX`]Y _džX ]Y ̋FW3;tu HPQH;tPHPL_SUl$ WTt<;Q$}7D(t/|,t'VqI+ƙ؋+ƙ^PSU _][D$t3P3SU _][_@][̃tt.th*P1Ë h)Q郊Vt$F t V^ Ftu HPQFtu PPRFtu HPQV6^̅u3ËD$VPA u^WVlHu NVQu_3^ËT$RWHu GWPtSV聊Hu NVQ u SSR_^SUl$ jjPp؃ u][ËEuMu MUQ][Wh<*SMu u SSR_]3[VjT u#u GWP u KSQ^_]3[VWn 貉Hu VVRu GWP u KSQ^_][́lWD$ P$L$Q$T$ RhhD*P3Q|$,D$(u_lËT$ D$S\$U$|VRPUt$,;ljD$tW?؃;߉\$u|^][3_lËD$(;D$,L$DL$@$h;ω$ttQD$,$hD$ |$<$p$l|$ u M(Q U(RFE ȃttItZPSR M 3_ pD$jP֍L$(M ƃ;|Ջ\$HL$jQL$(+L$$D$(t$<+D$ +T$PWRЂ tbWSAHu GWP|AD$ ;D$(uL$<L$,3;D$(lthu WWR\$ u CSPD$0tD$08u HPQ$ht P^][3_l3D$0;tD$098u PPR$h;t P^][_ĺl$xUD$P$|L$QhhT*R3Pl$(:u]lË$tS\$VhUQt$(;ʼnD$ tU<;ʼnD$u^[3]lË\$$l$WD$;t 9D$D$DD$@$h;ʼn$ttP$h|$<T$($p$lT$ |$ u$(P*$(Qq;D$(L$ ;u;\$,,T$<щT$(AL$$t$<+P+PD$P\ ;L$VQt?Hu VVR;|{$Q 3;~OT$UxR׍L$(;tQD$VP%?؋Hu NVQ;|,$J ;|D$D$ D$(}tWD$u HPQD$0;tD$09(u PPR$h;t P_^[3]lËD$8|$$P+Ǚ|$@L$PQB ;tT$VR^>Hu FVP;at$ wD$_^[]l̡8h`*Pp3̡8h*PP3S\$Ul$USh VW)3u C_^A][ÿ*3uC_^][D$D$)-(3uC _^][D$D$)-* 3uCt _^A][á(UPv_3^][̃SD$ PL$ QT$$RD$PD$8hL$,QT$,R3h*P\$<\$@\$,\$0h$u[ËL$D@UiWULh0QP e ;;o$~tW(T$ VD$H 4F=fthfPd uVsVT$ȃ;fuC;݉L$|h*RW~3^|~tW‡_]3[ËD$D$GL$ OT$$W D$;tD$GD$;tD$G_ _][Vt$Ftu HPQF tu PPRFu HPQV^̅V|6;Q$}1Wy 4tT(|D,PRW{ _^ËA_^Ë h*QD}3^VF=fhfPTc D$HAWtkVP@tVF=ft.hfPc uF=thPb t VuVVR_^\~_^V^V:ЋD$̋D$SPD$ HPQjK h+h+y[QSUVt$^ÃW&HS\I D$3%΋t$+ȍx L$d$9V|N;F$}IV t/L(|'D,PQR z t5E;L$ߋ h*Qa{D$u PPR_^]3[YËF t$V|T;F$}OV t!L(|D,PQRzy _^]D$[Yá_@^]D$[Yøn뛋 h*Qz3D$D$_^][Ỹ L$T$$Phh +QRD$蘃u SUl$E$HPG ؃ۉ\$ u][ ËE$V;W~[ }0T$T$|M;}IM t|WRPQx D$t1E$F;|\$_^][ áh*PyD$u HPQ_^]3[ ̃L$T$D$Phh +QRD$藂uVW%e|$t$F@SUjh+PV؃ C3 u KSQ][_^Ët$d$K qu Ë$D$L$jRPD$Q* ̃ $PD$L$QL$T$Rhh+PQD$pu Ë$D$L$jRPD$Q VF=fhfPM F=tqhPM u_F@0t=@Lt6VЋt>F=t:hPkM u(u NVQ2h,Rg3^^ËFP?X^Vt$WVfF=t>hPL u,8Pht 2h,Qzf_^duY;_^3[e jh,Qzn |2V\t#SVHu VVR_^[_^[Vt$WVXcDeF=hPI us2PVHQtX jh$-Qm }u VVR_^V[XHu FVPucctZ_^d jh,QYm |V[t̋T$RVHu FVP_^ËL$9_3^̃PQ\$X-$Dzbt3$$̃PQ\$X-$Dz8bt3$$@̋B+L$t 2PPh-QhPP2Rh`-PhVL$QT$RD$ PcL$Q JD$tD$8u PPRD$tD$8u HPQD$tD$8u PPRu^Ë WjFPQk Hu VVR_^D$ ̋D$Q̋D$Q̋D$Qc̋D$QC̋D$P$ËD$=Pw QËD$PËD$=Pw QËD$@|"r|w QÉD$L$s]̋D$@wrw QsÉD$L$^̋D$L$D$$̃D$ P $T$$$őD$P4\QL$ $PQ|*$| T$3Yá2h-P^YQL$ $PQ|+$|= T$3Yá2h-Pr^YVt$ F=0th0PD tVY t2h .P!^^V T$  3^QL$ $PQ|/$=|= T$f3Yá2h4.P]YQL$ $PQ|,$|= T$f3Yá2hl.Pq]YQL$ $PQq}YË$T$3YQD$ W|$_}T$j1YËD$ $3YQL$ $PQ}YË$T$3YQD$ W|$_}T$jYËD$ $3Y̍D$PD$}ËD$ $T$P3̍D$PD$}ËD$ $T$P3QD$ P\$.$Dz"\t 2h.Q[YË$T$3ỸD$PS\$X-$Dz$[t 2h.Q`[ËD$ $L$H3ËD$Vu^WVtXHu FVPu5[t_^ËL$ 9_3^ËL$VqL$3W9 AJ_} # P^̋L$QL$3V1 AJ=^Pw t[L̋D$L$SUhVW33 AK}" 3~ ##؃ |&r|wW_^][VWW_^][̋T$SVt$ Wz33 FO_^[wrw QÉD$L$-X̃D$ jP\$X-$DzsYt3$${̃D$ jP\$X-$Dz#Yt3$$+QL$ $PQ}YËT$Vrtdu1D$=|=~Mj}^YËD$%*u)D$|~jx|΋D$%D$D$ T$NT$T$3^YQL$ $PQq}YËT$VrWt6D$ ;r j}_^YËD$O#ljD$D$T$NT$T$_3^YËD$Vu^ËD$WjjjPVPHu NVQ_^̋D$Vu^ËD$WjjjPVyPHu NVQ_^̃D$P\$X-$Dz$Wt 2h.QVËT$ $jR$̃D$PC\$X-$Dz$Vt 2h.QPVËT$ $jR$!̋D$L$Vp3ҋW|H ׅ_} # R^̋D$@T$3VtH ΅^Qw G̋D$S\$UhVW33DI օɋ}" 3 ##؃ |&r|wW_^][VWR_^][ËD$HS\$VW33DI օɋwrw W_^[VWbS_^[̃D$ jP\$X-$DzTt3$$̃D$ jP\$X-$DzSTt3$$[QL$ $PQ}YËT$Vrtbu1D$=|=~Oj}^YËD$%0u'D$|~j|΋D$%D$L$ AN3^YQL$ $PQ}YËT$$VrWt. ;rj+}_^YËD$O#NjL$AN_3^Y̋D$V&u^ËD$WjjjPVKHu NVQ_^̋D$Vu^ËD$WjjjPVKHu NVQ_^̃D$P\$X-$Dz$5Rt 2h.QQËT$ $jR$̃D$Ps\$X-$Dz$Qt 2h.QQËT$ $jR$Q̋P߃wX$HPøJÍI60?<̊t;t Hu2h.RP3̊:uQt ʍD̃SUl$EVWL$D$"|$D$3ۉD$D$tuQG8@09ˊ00|7IG9-ÍtPиgfff;0}GuRD$H w.T$E D@UuPR_^][ùt$֊t:t(Fu2h.PmO_^][Àptst xtD$D$@D$8nD$uVt DƋэ4™t$;u6|2l$$ 2h.QN_^][Ë2h.RN_^][ËD$uȊ3@RD$(80|@9;D$$00|@9ӊ0 |J}D$$@ۉD$$L$t:tAu2h.PN38uQtD(iŀst&pt!xt'Ox'GnQVQ OuF~ ,8D$$_nF^]3[̋D$jPt@@HH QL$T$ $Phh/QRD$*VuYË$BVt$ FtF8u HPQT$VVI^YVt$Ft V Ft PFtF8u HPQVV^UVF P u^]ËvWtQ} FÀsu NQP$ !puV;|JQ@P QPQ t u_^]Mu UUR_^3]SVt$W|$tvF=0th0P 2 tF;Gu^3_^[Vjg tJL$QT$RhP/VVt G;D$t+u NVQW2Rh /PgR _^3[Ë\$u NVQ_^[̃ $PL$ QL$ T$ RT$ hPQRD$$D$D$ Su W|$u2h/PQ3_ ËL$ɋD$T$ S}ʉL$xX+;|[_ ËH2Qh\/RzQ [3_ ̋JSUVW|$3΃jEL$T$L L$I1]|$L$߀suEF=0th0P"0 NE;~ȅ~zȃepuSF=0th0P/ t`MFI;~~ȋ{ʃ=~ PVSP |8E &_^]3[h0Q 2h/Q I_^][ËvthV?/ t&RlJth/2PH_^][S\$ KW|$ G ;tP2h$0PO _3[ËOVQjg t#VRjS tu FVP^_3[Ë^_[Vt$ NW|$ G ;tP2h|0P(O _3^ËF L$ QT$RP. tdNQ L$}x4W+;|+T$PjVs u+@_^ËG 2PhH0QN _3^̋L$AA̋D$HQVhjjjh1h(,~  2uj 22ujjh1WR 2ty2uPPh0N 2tXPAh8VY (h(Ah,V (<jh0Vjh0Vjh0V<^á(hP`NPG,uËL$H̋D$h1P1QuËD$HQ@̋D$h1PQuVt$FtPF^Vt$FtPVO^̋D$L$PQh  ̋D$HL$`QL$ $Ph1QlP uYVW|uT$RWuuPcK_^YÅu@_^YV_^Y̋D$h 2POuV| (hQLP*u^Ép^̃$PL$QT$RD$PD$4L$ QT$(Rh 2PD$ yO uVWtL$T$ QRT$D$PD$$L$,QL$,RPQxVtuPQJ_^Ë(t$ hRLP)u_^_p^̋T$$PL$Qh<2RNuVWsD$PjL$QT$RtVsuPI_^á(t$ hPbKPI)u3p (t$hQ4KP)tpWPh82 _^VPQXDu D3^WV迹Hu VVR_^PQDu]D3ËHVt3puPQ^̃WWD$Du8h|2P5B3_SUVWDjh+Wt$8?Gjht2Wl$8,G|$hj D$3ɅXL$M+\$L$SQV EHEu UURu GWPD$^][_ËD$L$U 4W u)D$ =u3SntFu_3^x3T$0RT$L$DQL$$RT$,PD$(PD$8QjjRPpSkn[tu NVQuPD_^xËT$8D$4L$0RPQXT$8PRJPh2_^x̋T$$PL$Qh2RHuË$L$PQluPC̋L$$Ph3Q*H uË$T$RPhuP0CËL$Qϲ̋T$$PL$Qh(3RGuVWlL$ D$PQdWluPB_^VV_^̋D$h@3PQGu`Ṕ h/$$$PhL3QG u$輵 Ë$hT$RP\Ƅ$u"PA$z ÍL$Qr $ Z VPYt$L$ T$VQR # Hu FVP^hjjhh4X2tVWPjذt Vh4W" Hu FVPj訰t Vh3Ws" Hu NVQjxt Vh3WC" Hu VVRjHt Vh3W" Hu FVPht Vh3W! Hu NVQjt Vh3W! Hu VVRj赯t Vh3W! Hu FVPj腯t Vh3WP! Hu NVQjUt Vht3W ! Hu VVRj%t Vh`3W  Hu FVP_^Vhjh4jhx4Gt1hdp | hAhp4V P ^̋L$A@T@t@h~Pq PݮjRS\$ C@T@Wt@xh~9VPp Vt 3҅~x 9GB;։9I|^_[j_[̃T$VD$PL$ Qjjh43Rt$tD$L$PQc ^Ë^Vhjh4hh4tu hAh4V hBh4VX hX @h4VX  !h!Ah4V !0^̡T 8PQ63̡T 8PQ63̡T 8PQ63Vt$F tP8V?^̋L$Q 3̋D$H L$3h/$$H QPT$h6RT$PL$Q<$3 ļ́h/$$H QT$h6RTD$ P $蔯 Ĵ̋D$L$;u3@!̋D$h1P@uËD$H Q@ u2S\$ Ul$ SUh u9VW653_^uM Q/2][ShU=o ][̡hP<PtL$H ́t8h5P43ËG Vt P83G t V:3^́u&u8hL6P443ËF=u N =ftEhfP; u3F=t)hP u8h(6R335V13uj;u5L$@H VW|$ G=u _^=ft*hfP u8hx6P-3_3^WP83Ʌu PR9_^̍;s*L$Sd$8t8t d$X@u@;r[̍3;s'$9t;s$9tA;rA@;r̃SUl$Vt$ HW|$ M$5t E=fthfPo jwu_^][ËU_^][3ہurE=thP tjh6U1 E=0th0P EPI@u+@uPuMЊABuMEUP_^][3ہ\$t+E=thP  -U؍<W\$ϋы3ʃ3E C=0h0P uuC=thP tjh6Sa0 uG\$t03~ t8u HPQG;|V_^]3[ÉP$@uL$+TD$G;T$.؋D$L$$@uPT$$u 1YD$3~O݋+؍d$ AuPI@u+l(:u ‹HPQD$G;|VE_^][Áu_^][ËMAPu!Q 8Rh6P5 _^]3[ÍL$QjU uPu1_^]3[ËT$$ t$ȃ_^][Ë11Z41Z4Z4r2SUVHW$6uVh)('Ph)t D3uNucjVS uVƋ Qu _^][ 0W΋Uz؃tg3~0R@=w(jPP PVSF;|WX h6Q.-Hu SSR_^]3[Åu_@^][VSh6 ؅t_^][e5e5M695M6M65QL$ $Ph$7Q7 tW|$_u3YỸT$D$PL$Qh07RD$|7uVt$W3|$u_^q\L$T$D$PQR4W\tVU2_^ËD$PR_^̋T$D$PL$QhD7R6tVt$W3|$\_^u3ËL$T$D$ PQR0t P1ËD$ P̋T$ D$PL$QhT7Rd6tVt$W3|$_^u3 ËD$L$PQ,t PV1  ËT$ D$PL$Qhd7R5u Vt$W3|$hu_^ ZL$D$ PQ(W[tV0_^ á@_^ ́h/$$D$PL$Qht7RD$J5u$ Vt$W3|$u_^$ԣ !ZT$ jjjjD$PD$$L$,QRP$W5ZtV/_^$~ ËL$QT$Ra $ _^W ̋T$D$PL$Qh7Rd4uVt$W3|$u_^Ët$jjD$PL$QjjjjjjjVtP=/_^ËD$ |$@GPD$|$ u .+_^ËT$URuW+]_^SX؍D$PD$(UL$ QjT$$RWPV SXt V.=D$L$u3'L$QVWh75؋Hu VVRWyUs[]_^̋L$$Ph7Q2 uVt$W3|$ nu_^WT$ RWXtV-_^á@_^̃D$PD$L$ QT$Rh7P_2uVt$W3|$u_^TWL$ T$QD$RPWuWtV8-_^á@_^̃$PL$QL$(T$RD$Ph7QD$D$1uVt$ W3|$u_^VL$ D$T$RT$PD$ QRPWVtVz,_^ËL$Qw_^̋L$$Ph7Q 1 uVt$W3|$ ~tUT$RT$jjjD$ PjjL$0QjjjRtP+_^ËL$D$QP^#u_3^ËD$L$VPQh7hHu VVR_^̃T$D$PL$Qh7RD$,0uVt$W3|$u_^ËL$|$S D$PjQWӅtP+[_^ËT$Rj D$ u[_^ËL$pD$PVQWӋt)D$ D$ 8u PPRW*[_^ËƍPI@u+PD$P D$[_^̃T$D$PL$Qh7RD$/uVt$W3|$u_^ËL$ |$SD$ PjjjQWӅtP)[_^ËT$ Ru %[_^ËT$D$ PVL$QjRWӋtVW)[_^ËD$L$ Vu [_3^ËD$PWh7- Hu OWQ[_^̋T$ D$PL$Qh7R-u Vt$W3|$hu_^ RL$D$ jPQW StV(_^ á@_^ ̃$PL$ QL$$T$RD$Ph8Q[-uVt$W3|$t|$t8h8R"_3^ËD$UP] u]_^ËL$ SQ ؋D$ =u:3QT$ CSUjVRW Rt(V'[]_^P u[]_^á[]@_^̃ D$PL$QT$$RT$4D$ PL$Qh`8RE,u Vt$W3|$ t;T$D$PD$ L$QR} u$!u@h,8P _3^ SPL$\$T$ QL$(SRD$,jPQ<WQS[tV&_^ á@_^ VPItL$ T$VQR t!tu FVP^VP9tL$ T$VQR t!tu FVP^hjh`hh<5PVPh@h<VP R xxPh8V/ h;V$h;Vh;Vh;Vh;Vh;Vh;Vhp;Vt@h`;VahL;VQh4;VAh(;V1h;V !h ;Vh;Vh:V@h:V?h:V3h:V3h:Vh:Vhp:VhX:VhD:Vt@h0:Vah:VQh:VAh9V1h9V!h9Vh9Vh9V@hh9VhP9VhD9V3h<9Vh,9Vh 9Vh9Vh8Vq@h8V^h8VNh8V>h8V.h8V ht8V 0^̋D$h1Pa'tW|$_u3̋HQ D$ 8RPQ# 3uh<P3̋L$t-D$t%VPQXt^ËD$03^u h<Q̋D$uuh<PO3Ë@SUW|$l$\$GVpPtYF tRFtKjWЃt 8h`<Q^_][ÍT$RjWV |L$^_M]3[Ë8h<<R^_][uh<P_][̋L$A@Pt8t@tjQЃu3SUW|$l$\$t}GVpPtV>tQFtJjWЃt 8h`<Q^_][ÍT$RjW |L$^_M]3[Ë8h<R^_][uh<P_][SUW|$l$\$GVpPtYFtRFtKjWЃt 8h`<Q^_][ÍT$RjWV |L$^_M]3[Ë8h<R^_][uh<P_][̋D$t@@0tHHuHPt3̋D$HA0SUl$VW33tYTt<(T$R;tB0tZTt 4(;u3tdt8QR] t*D$L$PQփ=:u PPR3D$L$PQ׃=u PPRt(D$L$PQփ=u PPRD$HYTtT$BXTL$QT$R }_^]3[L$A@0tP(tIT$RQЋD$JD$8u HPQD$D$8u PPR_^][ D$8u HPQD$D$8u PPR_^][̋HQ D$HD$RQ 8RPh<Q3PVW =u7u HPQVB OQ 8PD$RPh<QL3̋D$HT$A0RSUj0VW333t ATt\$0;ttBTt D$0<(;u3tqt=QR t/L$,T$(D$$QRP׃ =u HPQ3T$,D$(L$$RPQӋ @u VVRt0D$,L$(T$$PQR׋  u FVPL$,IA0tKATtEl$0(;t>;t:t6\$,T$(L$$SRQЋ uVVRl$0\$,D$$HATt&L$(QBTtSBT|D$(PL$(Q Lu0L$$QB0t(tT$(SRQЃ D$$L$QT$RD$ \$$' D$(L$T$D$RD$PL$u^L$QB0t(tT$RT$RQЃ D$D$8u HPQD$D$8u PPRD$D$8u HPQD$D$8u PPRD$$D$$8u HPQD$(D$(8u PPR| _^][ËL$(D$$u,IQ @H R8QhX=R_^]3[ËSR I@RQ H R8Qh=R3_^][Vt$ W|$ j@VW= =u6u HPQVB OQ P8Rh=h<P3_^Vt$ W|$ jR 3̋T$u uEh<P 3ËJA0t @,tT$I 8QhH>R 3̋T$u uEh<PO 3ËJA0t @$tT$I 8Qhp>R- 3QVWj D$ PW> t3L$D$;t+@h>RHu FVP_3^Y_^YVt$W3u!uh<P_3^ËF=fhfP F=hP NA0ATt~ttVЋtG=ftuhfP9 ucG=tYhP uGOQ 8Rh>P Hu OWQ_3^ËQ 8Rh>P _^_^S\$VSu^[WV~uYtP QP~t< D$uV3҃KQ Rh?P u FVP_^[QVt$ u!uh<P3^YËNfu^YËA0t{@HttVЋtF=fthfP uŋF=thP uNQ 8Rh?PJ  Hu NVQ3^YhfQV F=0h0P2 unF=tOhP u=T$ RD$PV uL$ D$Q^YhL?^YËVF j RP蓂 ^YËNQFa^YËVRb{^YQVWj D$ PW t3L$D$;t+@h?RHu FVP_3^Y_^YQVt$ u!uh<P3^YËNA0@LtyVЋthF=ft^hfP uLF=tBhP u0NQ 8Rh@Pe  Hu NVQ3^YË^YÁhQ` F=0h0P< unF=tOhP u=T$ RD$PV uL$ D$Qd^Yh?^YËVF j RP ^YËNQF+^YV?^YVt$u uh<P>3^ËNA0tb@Pt[VЋtKF=tAhPE u/NQ 8Rh<@P  Hu NVQ3^Ë^ÁthQ u PV:~^F$}^̋T$u uEh<PoËJA4t tT$I 8Qhh@RM  W|$u Buh<P3_ËGVp4t4N t-S\$}tWЃ}[^3_SWV [^_ËH 8Qh@R ^3_S\$u uh<Pn3[ËCVp4WtINtB|$Ul$|}#tSЃ}]_^3[Å}}WUSV ]_^[Ëx8t@Ot9L$T$QR腍 t9VSWHu FVP_^[ËH 8Qh@R _^3[W|$u!uh<P~_ËGVp4t:Nt3S\$}tWЃ}[^_؋L$QSWV [^_ËP 8Rh@P- ^_W|$u!2uh<P_ËGVp4t7Nt0S\$}tWЃ}[^_jSWV [^_ËH 8QhAR ^_S\$u!uh<P^[ËCVp4WtONtH|$Ul$|}$tSЃ}]_^[Å}}L$ QWUSV]_^[Ëx8tEOt>T$D$RPn t>L$QVSW Hu VVR_^[Ë@ 8Ph4AQ _^[W|$u!uh<Pn_ËGVp4tMNtFS\$Ul$|}$tWЃ}][^_Å}}jSUWV][^_ËH 8QhhAR  ^_W|$u uh<P3_Vj请tWV?uu NVQ^3_u PPR^_̋L$t;A=tuhAQCËH8tQt@4tHu3̋T$u SuEh<PËJA8t tT$I 8Qhh@R ̋D$L$jPQO7 ̋T$JA@t8L$ VQL$QRЋ uuhARa^ËA 8PhAQU 3Vt8F=t7hPT u%jf uu FVP3^Ép L$WjVQ: Hu VVR_^Vt$u uh<P3^ËD$ t8tL$QP迩V6^j V!^Vt$u buh<P3^ËD$ t8tL$QPoV^jJ V^̋D$S3ۅW|$VWP,u(WP^_3[VuNQ 8RhAPz 2D$t8tL$QP蝨 j Vu VVR^_[Juh<P_3[̋D$S3ۅW|$VWPLu(WP^_3[V8uNQ 8RhAP 2D$t8tL$QPݧ j V(u VVR^_[juh<P&_3[̋VW3ɋtd$HGuWO t~Vp SJCOu[_^̋L$trD$tjVPQu^WD$uu FVP_3^SjWV؋ Hu OWQu VVR[_^quh<P-3̋D$uCuh<P3VD$ u^ËL$WjVQ9 Hu VVR_^̡2uhB荱 2uVPD$ Pu (Qt33^ËF=t$hP uu VVR3^Ë^S\$VW|$3;tYG=thP: tW3~O $;t&@;|USu]_^[_^[Ë]3~(u D$PQsD$uG;|t$Mu UUR]_^[Pu ~uL$8QR93u HPQQ2W3uhB 2u_YSUl$Vt$F=ru}tumVU/^][_Y=hP F=trhP u`hHBti2PU؃u*^]3[_YVS)HKSQ^][_YËL$ uh(BR^][_YËF3ۅD$i L$UPQ D$C;|^][_YËE;t3VP u%2RU3؃uZ^][_Y^][_Y;]t(C=thP t VS  u CSP^][_Y+&L$PD$ PQ S\$Kr;Vt$u!9Fu3;VS?}^[S#u&8hBP^[u HPQF=t2hP u hBt0VSB^[ËL$ɋFD$ uh(BR<^[UW3~(i IUPS uD$G;|3_]^[$L$PD$ PQ ̋D$HVPQpu!tR&tj^̋L$u uh<PoËQB4t tL$L$̋L$u cuh<PËQB4t tL$L$̃Vt$uu<h<P'NA4t tVV{8Ru(PL$QT$RD$PjhBVt|WVEhHu NVQD$ tD$ 8u PPRD$tD$8u HPQD$tD$8u PPR_^ËD$L$T$PQR\ ^S\$D$ VsN8tIt PSу^[W~4tcPJ0tABTt8t. QPu ju=VS_^[ËO th,C_^[ËV 8RhCP  _^3[u h<Q3[S\$UD$l$VsN8tIt UPSу ^][W~4tfPJ0t@BVt:t0 QPu ~u$UVS _^][ËOth,C_^][ËV 8Rh@P _^][*u h<Q][S\$D$ VsN8tIt jPSу ^[W~4tfPJ0tABTt8t. QPu u"VS=_^[ËOth,C%_^[ËV 8Rh\CP' _^[8u h<Q[W|$t@D$ t8VP踧 u^_VWHu FVP^_u h<Q}_̋JA0VtAATt8t.PRu gu&L$ VQT$^ËQ 8RhCP  3^SUVt$W|$jVW{ =u}OY4Vj4Iu HPQt[tWS@_^][ÅtEtVP$_^][ËVB OQ P8RhCh<Py3_^][SUl$Vt$FH0Wt-@Tt'Idt UVу=u HPQjUV =MY4Vz4Iu PPRt(F@TtG$uGt-VPE_^][ÅtCtUP)_^][ËMQ FH R8QhCh<R}3_^][Vt$t~tuhAV#^9PhHV utF@4tH t^3^Vt$Wt~|$tvF@4t@t WVЃ_^Vmt.W`t!jWV@ =uMu HPQVB 8PhCQ _3^uh<R^3_^S\$u ruh<P.3[ËKA4t@t T$ RSЃ[VWStND$Pp`tVjVSn Hu NVQt_^[u WWRCH 8QhCR _^3[Vt$W|$NA4t(ATtH t WVу_^Ë@t WVЃ_^Vt.Wt!jj\=uMu HPQVB 8PhCQ _3^uh<R3_^Vt$u uh<P3^ËNA4t.ATtH$t T$ RVу^Ë@t L$ QVЃ^SWVtNT$R^tVjjd$؋Hu GWPt_[^ u KSQVB 8PhCQ _[3^̋D$uuh<P3VP蒡 u^ËL$WVQHu VVR_^ËD$u uh<POVP1 u^ËL$T$WQVRR Hu FVP_^̋D$L$PQ!tu PPR3̋D$L$PQtu PPRa3Vt$FHTy@lu7Vt Vgx^ËFH 8QhDDRJ 3^VЋt) F t PFV^S\$CUVW33='th'Pϻ t l$E='t'h'P读 u_^@][ËC;ET$t(tu_n^A][_n^A][3ۅ~D$;X}mD$HSPQD$ PSPRtzthjWV u FVPu OWQ|RT$BT$C;|D$L$@Iw'$u FVPtu OWQ_^]3[3;+3;"3;3;3;3;‹…nun_^A][ËT$u nnu nn RWV u FVPu OWQ_^][ÍI!*3<D$@̋L$|D$;H}PL$D$bhDIPQ3SUl$ W|$}3 E;~\$}3;} E;~؋EP+߸'u_][ËMU Vqx ʃ^_][SUl$ EW3}}3;};~؋EP+߸'8u_][ËMU Vqx ʃ^_][Vt$ F='t1h'Pv uFH 8Qh`IR' 3^ËFUl$ U;t ,]3^ËFM+;~]^OSR'[t̋MIMu Wx ʋT$JIJr Uz}h ʃ_]^UVt$}3l$ Mt;~^]ESPٸ'D$u[^]ËMQUX ~,t$Wu ʋȋD$HD$uދD$_[^]QSVt$3;W|$u\$ D$;\$F='t5h'P u#FH 8QhIR _^[Y;FD$ u?PSV# ;t܋D$L$VPQWiHu VVR_^[YËF;GVK_^[YËO;~L$D$Ul$ ;}3;} O;~t$_ +yZOAW+R͍.QRWG։W@ uPS4O؉Ol~oGWBuPS4؃u]_^[YËG@O+QՍ .RQG ƉGGD$_ L$~+T$$JIL$r Wzȃ]_^3[Y̋D$|0L$;A}'T$ uRPRPQVqRPQV ^áhIP̅V|(;A}#uRPRPQ^ËqRPQV ^áhIPC^WPu_VWDt3KVQ_u8Hu VVRWuu WWR^_Hu FVPu OWQ^_SVF='th'P赳 u 7^[ËS;Vt8hIPL^[ËFKUW+;>,J;,ŅuK PQ4C uSu]_]^[ËVJNSz{v ȃ_kk]^3[Vt$ F='t1h'Pֲ uFH 8QhJR 3^ËƋt$t^QSUl$EVWt$} D$t$EHɋ} t9E~ _^][r]مuW3E t;~ _^][?QWu _^][ ~-Nt$|$ˋ|$ʃL$uދt$E EƉEEE_@E^][YPD$Qt3QSUVW|$G3;ʼnl$~AGUWPL$$jQV؋Hu VVR~D$|GE;|D$P?A_^][Y_^]3[YSUVW|$G3~;GUWPL$ jQV(؋Hu VVR$|GE;|š@h@JPD_^]3[U4@_^][S\$UVW33d$;{}2CWSPL$ jQVHu VVRGt_^][SUVW|$G3ۅ~;GSWPL$ jQVXHu VVR%|GC;|ŋ @h`JQs_^]3[jCPSW|u_^@][QL$ $PhJQD$ t uYVt$ NuhJR3^YËD$}D$xA;}=NWPVQD$jPRPVtu GWP_3^YË_^YË hJQ3^Y̋D$L$u3̋T$$PL$QhJRt$L$PD$Q|t3VjX u^W|$ G PF OQ=F_^̋D$T$HRQt3QL$A@HSV$ĜA IIqPHNuA IIxvqXPXXPHNuUA IIxLqIXP\$ X\$XXXXXXX\$X\$ XPHNu@^[YáhJP^3[YÍI?Vt$WhVu!@N~<V9B~_^FPыN WRFQRPhJ3tNFWRPhJtu OWQ_^U h/M$APASVW~`q H;t$ sOIʋ|$˃|$ ˃t$˃t$ +;t$ r$@? _^[]̋T$ $PL$Qh4KRUt)D$Pd D$u 8hKQ3 Ë$SUVWt$ NVn zȅ3ҋ;uSU-4Ջ؃tuL$FT$FF+RQWP^ L$ ;sRV+ЋDžVuPSՉF FF @hKQ_^]3[ m_^]3[ á_^@][ ̋D$WP5 u 8h@KQ3_Vt$ F~8VN WPBPQN;tpRW^3_á@^_UVt$ FhW|$G=t,hPZ u 8hXKQ_^3]SW}~pFN ŅuPQ4D$u -[_^3]ËNωF 3ۅNF~'T$SR}VN+PRVQ uC;|١[_@^]ËN+υNt;~ [_^]ŅuPD$P4N[_F N^3]SW|$ GP{؃u_[ËGV3~"OVWQtPVS}G F;|^_[ u SSR^_3[QSVt$FXD$L$QT$ RhKPtD$t @hlKQW^3[YÅWD$~zN~ +;~ȸ;pÅuPW4u t_^3[YËT$NʋN~+ˉF t$ ȃ_@^[Y!_^[YVt$FWxN;QN QXy _^_^̋T$$PL$QhKRuVt$F8ut @hKQ3^ËL$W~sFV +;~ c_^uPR4u <_3^Ë|$NϋщNV+׍ ?tA 9Fv+v͋VRPL$hpMQT$ R; 3_^][$) ĄËF33ۅ~&3Ff8 u P>FC;|_^][$) ĄËF_^+][$) ĄËV3J;~#0FPNGI;|䋌$_^][I) ĄÍIQ:"wP$ ø ø øøøøøøø ø3Ëiuo{   ́0h/$,$4SUJVW$0$HupN3tMP _^][$,' 0Ë$HH ؋$Hu>pN3u($LNn_^][$,u' 0ÉP뉋$HXht3{;3g$LPUQ F֋Ht9u($LxN_^][$,& 0Ë$Hh뇸pN=`N6TN/uVSCELF3~C3FL$$PQȃǙ+LF0;|ˋ\$$D$t0{hc VWew SD$L$RT$PQRUV設_^][ËGHQhOR5 _^]3[̃D$ HG+QP$uËOS;UV~TIT$BOD$D)P8 T$VRv t>L$ Ù+tG0;|T$JW QORQP谭^][^]3[̃Ul$V3Ut$ L$ QRP D$ u^]ËMf9 SWL$ubqyNvf| uN3"3XL$d$APD$(P10;|΋D$_[^]ËMID$D$0}|$Wu%T$$WRm1L$DFt$X_C3~LT$3tCL(Ņt-L$$PQ%1tOL$CA0;L$|Ƌl$(t$D$\$U@J;‰D$\$ND$_[^]3_[^]Q{ Ul$ D$uCPUMD$u]YVW{jU tupMS QKRQjP{GXHuWRU*$Ut1MW QORQjPԴtSxRUu_^3]YËMS QKRT$QRPWVצ_^]ỸSUWƍP$@u+D0D$ 0ju/D$PVy }+Ӄ8u$jjVȢ _][ÍL$QVz T$ :uӃ8uW _][ÅVt,%\$ D$ X':_][Q$_][V;‹sI8y@;rj+PQ) u^ËD$WjPV谖  Hu NVQ_^̃S\$Ul$ VWu3(lP 3u D$ ?2 QjN D$PkR +;ډD$T$I;\u(\CGC\$$y dPljf hPfHhXPD$(t$VQ VQ 3~%TRPhLPW;|܋D$u HPQ\$$T$;JD$+؋|$D$,jUSt-3 +GC\$$͋D$u PPR_^]3[) tu GWP_^][QSV3W3V|$u_u+utUu sCrtRu sCD$ 't"th hP:_^3[YCUMEEu+vhPP]_^3[YL+M;th hP]_^3[YÃrB;u;C;u3L+;u T+M;th hP蜢]_^3[YÅ@ID$t+xP3tlP 3t3D$u/j\StT$#VjjUS蹣 ]_^[YÅtAjUS裔 L$jQV)  Hu VVR]_^[YUSK ]_^[YËD$PD$US[ ]_^[ỸD$ SBUVWQD$ S;щL$D$SD*QD$@=0th0Pwx tF=0tVh0P[x uDL$ VQ詩 Hu VVRD$ D$ 8u HPQljD$ T$ VRED D$t7L$SA;ʉL$3_^]ÅtD$ 8u HPQ3_^]̃S\$(CVt$(PVID$ u^[Ul$u ]^3[ËNQUD$ tW{D$sD$_jVyqGt$0HZ{u֋JUQjPR轮l$ +L$0IW QjPGQRPjUIP萮D$ `OG3f9Lt(PF;t@PDDf:LuD$0HQVD$3ۅ~?hWD$0RPtzEu0C;|΋l$D$f?KuEL$D$t$0)@L$;D$ D$\$4D$$NS QKRT$0QPR_]^[_]^3[̃Ul$$Vt$,FPU9D$ u^]S@؃\$u [^3]ËMQSD$ tW~D$bD$wjUk؃bWHRU J~MQjPuSR谬؉\$ G QOPQjSGP莬D$ ؃`WG3f:Ot$HFt@HDDf9OuURVD$3~DXGL$0PQ tyu0E;|ϋ\$D$f?Nul$0CL$D$@L$;D$ D$D$$t$4UN RVQRPD$8PG_[^]_[^3]̃ SUVW|$8G333;‰T$(T$$~EOf9JuyuCqf~OuBEHuۃt*=~OOQhhQhdM: VRHFVP_^]3[ Ët$4NQR`؃ۉ\$,KVRUE3;͉L$ .9ol$l$W3|$\$d$D$8Hff=J{uD$ISRV CfxOu$SVL$L$PV hNu3Kt$40QVz KVRPUt 5L$T$ l$|$DAL$1f=uSV. D$0f=$uSV D$,ED$8HE;l$|$L$ \$,VD$ _^]3[ËMV QNRQPj萗_^][ËUN RVQRPjt_^][ËMV QNRQPjX_^][ËGL$VPQQu^ËGu^S;U~;Gf8Au*L$Vdt]VPNHGC;|ʋG@Gf|;Du6\$PS3tKW QORQPjVu][3^Ë][^QS\$U--&VWP$Kff=@]f=.S{8{T$BPC@+PmC3~<3IKT$QR`ȃƙ+LC0;|ˋCpQ3D$HS CQRPUj艔_^][YÃ{LSt$RV\NS QKRQPjV_^][YËC;|$WR+PD$ GPC+PYl$9s~cSKD$TRP8ȃƙ+‹T$ll$L(C0;||$CPWtqOS QKRT$$QURPW_^][YÃ{tD$SP_^][YÃ{[--& QhQR衅 _^]3[YË|$_^][YËs|$ _^][YËL$QC KRPQUj軒_^][YËKt$3uCytNS QKRQPC_^][YËT$R_^][YËD$P_^][Y~PkWu3CVPjKu^3_ËOQSStF^_S_QCVW{uhuGL$PQ(t$VtVO RWQRjP贙u_3^YËL$QK RSQRPQ_^Yft$U|$ t)E $TRO]_3^YúR<]_3^YËEHNu/N3uD$ N]_3^YË|$ t$WjU tC0f8FuV PVqC^NS QKRQWPUɉ]_^YúQ]_3^YËVR+PoD$ C3~[3Cf8StlKQjV Ǚ+‹T$ tCt$0;|CS @f|FDuO^t$NHQhQhdM) t!VRyHu FVP]_3^YPV3NS QKRT$QPR;]_^YÍI8̃~WD$|(Ffx#u0PD$P1D$t)FL$Q+@R+PD$u3_;~SU}:<Xd$FL$PQtRF0;|׋D$NIN3f| T$RRV RVRQPD$ PA][_][3_QS_ UV$FO WPQRM ^][YËFO WPQRd ^][YËCPVNW QORQPu^][YÃ{uVG ORPQj^][YËCLVO RWQRPDž^][YËCuFO WPQRjjj`^][YÃu6CPVVNW QORQjjP%^][YÃuOSRVCHPVNW QORQjPUш^][YÃubSRVD$ t_CHPVtIKxQVt5VO RWQRPD$UPj^][YQ hRQ~ ^]3[YË+sDQSUW~33ۃt%t tWhRP5~ _]3[YËNT$QRD$ t݃|FL$HPQtuVD$xRP؃tL$QF NRT$PQSURu_][Y̋Fu,FPWktyOV QNRQjP ÃuGVSRW9؃u3[ËFHPWtOV QNRQPSՇ[ËPhRR} 3̋FSuNFPW؃tNHQWqu3[ËWN RVQRjPS螅[ËNYdSsUuiQWm_FHPW؃ENQW*WN RVQRPSU'][Ài@3f| щl$uIysu‹\$WRjD$FN@RWD$ FN@RW1cFN@TRWDNV I ʋWR|xRT$QPUR+L$ KA\$D$[IWRjFPWD$ NT 0RWoNWRT ˋIRT$QRPD$ P蒃L$,ED$(@`;l$D$pNQWS؃tIVHRWt5OV QNRT$QRPS.][áShSP$z ]3[̋FSuLFPW؃NHQWWN RVQRjPS@[ÃucFUPWu]3[ËNHQW-؃tVRWt΋OV QNRQPSUف][ËPh@SRAy 3[̋Fu-D$PWuËOV QNRQPjjoÃSuJVRW؃D$PWpOV QNRQPjS [ÃutVHRWy؃tsFHPjS! t]NUQWLu]3[ËT$ RWtOV QNRQPSU訏][ËPhtSR x 3[̃L$SUVt$,nW}VUUU3D$D$F0PQvD$Ff f\LmtL$S3 |-Lmf<u"L$,TmPQD$KT$0BL$TD$,RPD$t$0Kۋ|$,OQSڼ3;ʼnD$$;݉l$~MD$ V*HxQpHL$ |$,t$0D$@H;ÉD$L$ |D$$WN RVQL$RT$$QPR踀؋D$,uU_^][ËL$TD$,RPD$*_^][f*S_^]3[ËGPjD$tXOV FQL$RT$ PQRr_^][̋BSVpWpO3tCBPhShdM t! VQmHu VVR_^3[ÃPD$Pf_^[QFSUPW3۽9D$tJFfx0)P0u$WJ؃t-VjSȿ tVLmPWu]3[YËOV QNRT$QPSRF~][YSUl$ UVrWؿN3uDMQhNhdM t!VRlHu FVP_^]3[Ã}uHRSu"_^][fzHBHuPxRStUBKPL$w D$VPIKU EQRPWjVy$_^][OrMQSuW[U MSRUQPBVSPPGy_^][̃ SUV3W|$833f?l$,l$(l$$u.uD$4HQUUUU_^][ ËWT$8G;~yWd$f fuFfuCHu;tVD$4HQVƸ;t$;t;T$4BPS裸;ʼnD$ 9ol$t$l$l$ ܋|$8Otm11_$!=D$ L$UT$|L$8T$;Q}IAf|u>L$4D0PQ$D$L$L$0D$, D$,b{u.[C(u[녋T$4SRL$L$Cf8u_@N3L$4yPu VWFT$@BK SPQRjVU 1L$L$n[N3L$4ySt VW)Ft$03[N3D$4xS}t VWEt$4 L$8;i=t$D$4HT$ D$$QL$,RPQV|_^][ URhTPp^IQhS[KT$8BLmȋHQhNhdMs t!VRmhHu FVPD$(tu HPQD$$tu PPR_^]3[ ̃ {UWD$u%C|$PD$u_] ýCL$QVtmDPT$#s L$WQ|$ D t#SpN3uN8^_3] Ët$PVtKDm RVtȋNS QKRT$QRPD$(WP3t^_] ̋D$f8 u@f8 u@ff SVWx\$4T$Rh_^[ËD$P%_^[Ëw\$jS =KW QORQPt_^[ËT$BO WPQR#{ _^[ËD$_^[ËD$P_^[ËL$Q_^[ËT$R_^[Ë|$]_^[ËOQPpCw~$t|$_^[Ë|$_^[ËT$R_^[ËD$VP_^[Ë|$_^[ËL$Qh_^[ËD$V_^[Ë@PQhDTRGm_^3[Ë$1DUhw   U$E S3;VWt:t3]f;RD$(xPuAlTEPM3_^[]ËEf8RuP@T$(EL$(]ut$,-L$<Ht'HuCt$(6tMQPxp_^[]VSP莱3;t$qSJ҉D$D$${|$f?WɳD$$u%D$(WPbL$DAL$XO3L$ ~KT$3ۍtD$ HQT$,RL$D$$AG0;L$|Nj]t$L$D$L$K@I;D$@URVo_^[]Ë{f?u7Vj{XC KVPQpwVWGn_^[]WƲVS= t$u-T$(WRLMQVFn_^[]ËG3~A3ۋGf8t4PL$,Q ȃƙ+‹T$LG0;|Mt$QVBn_^[]3W~f9f;~@;|f_fD$fSVfD$ fD$ W} ؉D$f|${~{!D$P)3fIff;~B|_^[f| _^[Êf 3_^[fT$SffVWfT$| t$D$+Ut$fָ@)3ɍIff;~A|_^[f| _^[Êf}L$ 3_^[Ëf 3_^[̃WD$ PL$ QL$$T$RD$PhUQ3glt'L$t%t t2hxURa3_Vt$|^D$;}SuD$<0W^_ÃuL$`^3[ W|$3~8T$d$u4u4u4};~;|S_^[ à SVWD$ PD$$L$QT$RhUP3jt'L$ t't"t 2hxUQ__^3[ Ul$3~4T$u4u4u4;~;};|SWhU>  ]_^[ ̃%D$P\$D$$L$ QT$RhUPD$ juVt$t%t t 2hxUQ^3^ËD$ D$3Ʌ~4T$Wu<u<u<|$D$;|_u3Pe^ÙD$D$ PC^̃%D$P\$D$$L$ QT$RhUPD$iuVt$t%t t 2hxUQ]3^ËD$ D$3Ʌ~u:2h\ZR}3D$JD$8u HPQ[_^3] ËT$R+؍D$SPD$ tUPh7VD$ JD$8u HPQ[_^] ̋T$ $PL$ QhZR%>t*$=?~ /5 ÍDPjD$u3 SVP\$ 3Ʌۋ~`UWI|$9uF9A;}I88u;}@;|+~FF*шH\$FA;|_]D$ P+L$VQD$ ^[ ̋T$ UWD$PL$QhZR33.=t-D$=?~ 74_] ÍDPjD$u_3] VP D$~uL$ |2kM荛$?1FJuD$ T$HBD$ T$t+?1FT$R+D$VPD$ ^_] ̋T$D$PL$QhZR$<uËD$uhc=?~ 3W<WjtD$u_VPD$HD$y72hcP]0D$JD$ 8u HPQ^3_ËD$@SUL$D$uiL$@ɉD$t2hZ _}8?),?T$URD$P5E_}3U23Fɋ‰D$ t$_^[PIh)L$ c ̃ $PD$L$QT$RhZPD$H8u Ë$L$Љ$~9Vt$ W$I3҉L$ 3ЁhX[3RP\$<33l$H\$P\$L\$DX1$L$T$Qj RP ;t;D$v x ul$ D$3;ND$<~ <=9\$(t<_<.u&;u"L$L   9\$$u< < < t< u ;l$L$|  u33;tL$L t u9\$ tF< uYS;l$t'D$| tOLrD$ 3;tGF'GF GLrD$ 3;tBE;T$V;u)_^]3[ Ë΋3ʃ\$33;߉|$T$D$<~wV<=tRL$(t<_tF<.uL$uL t1 t,t(L$$u< t< t< t< L$;L$ALrD$ .=Ft. F. F3.=T$ЃD[FT.D[T$D.GBT$L$T$\$;.VUgU_^][ ËL$.uu OWQ"!u"n^@[nn_u WWR^[3_u GWPn^@[nn_̃ VWD$ PD$ L$ QT$Rjjh\PD$$D$(33utTD$tk@=tahP uOL$Q4u'T$BH 8Qh`]R' _3^ ËD$P:tt$D$ t?HHt4hHQ  uL$ QB 8Ph4]Q&D$ T$PD$RP4Z tu NVQ_^ ̋D$P!P`7̋L$D$Ph]QY* t9D$|=}T$jRD$ á@h]P3QL$ $Ph]Q) uYË$R Y̋T$ $PL$Qjjh\Rt $T$D$PQR }3 ËD$Pp ̋T$D$PL$Qjjh\RPtD$PL$Q}3ËT$$VRPj D$ JD$8u HPQD$D$8u PPR^̃$UD$PL$QT$(RT$D$u T$R|VL$,T$D$PVQRTD$ @h]P+_^tMu MUQD$]$QL$ $Pjjh\QD$uYË$R^ Y̋T$$PL$Qjjh\RuË$L$PQh ̃VWD$PD$(L$QT$Rjjh\P3t$(t$$ZL$;tQu h|_`L$D$ ;t[PHtLhHR> u2T$ Rm@_u(_P8P_3^ËD$ L$;ufL$;ΉD$ ufȋD$ ;uȉL$h_Pu :fL$ Ph_Q: D$HPu>P(J~8h^P&_3^ËL$T$ QRP諘 _^Á0tRh0Q/ u|$ D$D$8u PPRD$D$8u HPQD$tD$8u PPRu GWPtMu MUQD$tu PPR^[_3]3;} +Ht$@Ë̃ Vt$VD$D$ D$ D$PhbVb L$ QT$ RD$ PhbVCuVa^ ËL$ u @haQ3^ W3~T$D$ ;}T$ D$;} +3HG|^SW螽؃tE3~(D$ Pyt S D$ D$F;D$ |܋[_^ u CSP[_3^ Ë haQF_3^ QUWhxcD$ +q hpcq L$D$PjjhdcQt5uhHcR_3]YÅuh(cP_3]YjWgtWh$cjuSVUHVWHEUH5P֋PӃ "WHPPӃ  D$t"PtgV臾u ^[_]Y3cPWlHPUbHP  tu NVQu uRI^[_3]YÀ?u"@P.W3^[_]YËǍP@u+=v( hcQ_W3^[_]YHPW W^[_]YËD$tjWPg WjU%[^[_]Ỹ $PD$L$QT$Rjjh[PD$u Ë$tL$SQ%؃u88hcRD$ tD$8u HPQ3[ VWj ~#Hu VVRj SN t:D$ u|$ PjV WjV D$,jVP:$D$ uPuCu NVQD$ u8hcR u CSPD$ _^[ ËD$ tu NVQD$ tD$ 8u PPR u CSP_^3[ ̋D$Pb̋D$PUUVD$PE L$ Qh8chcRPD$mu^]Ët$%T$3+HH|Jڍ$I c c c c c c c cuT$|@d$H cuT$}|$L$%T$uc$X%c$TD$ }D$\$t$\$D$$Ay^]̃Ul$ Vt$ WD$PL$QT$RD$ Phdhd3UV|$0|$,# u_^]ËL$SQ؃;t"hcSu u SSR[_^3]jjV u& u CSPuыOWQ[_^3]UVWt Hu VVRu GWPu uKSQ[_^3]Mu UUR[_^]QL$ $Pjjh[QD$uYË$Vu4zHu"uhDdRZ^Y^YhPu8hdP'3^ỸT$$PL$Qjjh[RD$uËD$SPS؃D$uPqD$u/@=p/hp/P D$VWStQT$ VRD$JD$ 8u HPQu VVR|$ t9SUuGt!D$ D$ 8u HPQD$ H_^u SSRD$[á8hXdP u KSQ3[̋T$$PL$Qjjh8\Rt$L$PQ<}3PY̋T$$PL$Qjjh,\RAt$L$PQ,}3P ̃UVt$$Val$uPγ^]SW3\$~3 IP|;}D$G;|ׅ} D$ \$Sqt$,U D$ 3~'\$,p +؋3PG;|3Ut$ I3ۅ~2l$w +.P'D$ C;|ދt$;t$L$Q <8P4u (Q!tVe8Rt8GWhdP{ D$u PPRt$u FVP_[^3]ËD$WPϵ؋Hu OWQL$AۉL$|FUt$a tD$u PPR3t$u GWPD$u HPQt!D$L$;}jQPVտF_[^]ShjhkhhhH%؃u[VSbhhNV }^3[h heV |hheV |hnheV |hnheV |hp/heV |hmheV mh0ph,Vv RhhxeV[ 7hhpeV@ hHhheV% hh\eV  h0hTeV hhLeV hh@eV h8h4eV zhfh0eV _hh(eVh Dhh eVM )h0heV2 hh eV h`heV hheV h`hdV h0hdV hhdV lhhdVu QhhdVZ 6hhdV? hhdV$ 53WP% WhdV}tu OWQ_^3[Åtu WWR_^[ÃUl$VWU@ 3;t$u+}uE@_E^]W _^]V ;ljD$ u _^3];S|$|$E@4@ L$QUЋ|$$u@Vj T$$jWR-؋ Hu GWPSHu KSQt"T$Vt$VR Ft$u FVPD$L$@;D$T$RD$P 3ɅD$[_^]I#u/NVQ#uVVR8heP0D$D$8u HPQ[_^3]̃SVt$$WV|$(؃\$\$u~0u _^[Sj蛪D$ u_^[U3ۉl$l$|$(t$,T$FH4RVQ ؃t`Sj rjVW+ Hu FVP|WHu OWQC=0th0P3 {uSD$T(El$+; D$ +;D$;+ȋD$;~-=?;}T$VRt$D$T$ύ|sȃl$ u KSQD$L$ @;D$;l$}L$UQ财D$]_^[Ë 8heQ u SSRD$D$8u HPQ]_^3[ uًCSP űKSQ u؋SSR]_^3[ uCSP]_^3[̃Vt$ WVAq D$$=|$|$u~u _^UW3Un ;ʼnD$ u ]_3^;Sl$l$t$,T$FH4RVQ ؃|$(thSj肾 D$(jVPH) Hu NVQUWtHu WWR|$C=thP suC L$Q ffjEl$D$+ͺ+;9xL$+;T$;L$ ;~/ ;}?T$WRml |$ D$P D$ 6s H p@0p@H @@@^̃ D$PhtgD$ D$t$ $QL$T$RD$PhhgQju3 Ë$D$L$RPQ Vt$FtF8u HPQVz^QSVt$FWuF ^D$FHyPjPWt8hfR_^[YËFt?u 8hhfP _^[YËVL$QjR׃ N;~ȋ|$v|$tލ;~+؋t$Fu ~ V|$ mFHyPjPW>Ft?VVL$ QjR׃ |]N;~ȋ|$ V|$ uЍ4;~+;ڋ|ʅ~%t$3tt3Ʌ_^[L Y;}_^[Y_3;^[Y̋D$HɺgugHuHP@ QPRhgVpP@VPQRhgv^W|$GucGu8hgP_ËGSVu=W OT$q|FIiCB3BNu3u^G[_ËHqPjPVt8hfRi^[_ËGtFu8hhfPH ^[_ËWL$QjRЃ |w;~T$OփT$uȍ;1+Ƌ(Vt$FWuF vD$ D$ VP螗_^ËFHyPjPWt8hfR_3^ËFt?u8hhfPq _3^ËVL$ QjR׃ |N;~ȋ|$ v|$ u1;T+D$ VP_^Vt$FWuv_^ËFHyPjPWt8hfR_^ËFt?u8hhfP _^ËVL$ QjR׃ |N;~ȋvu1;h+_^̃VW|$GpP>FjWЃt 8hfQ_3^ËD$ST$jR\$'u[_^Ul$ u]@[_^ÍD$PjW؃ } ][_3^Í +QjyD$ tt$P͋ȃt$ˋ<*ȋD$ *][_^w_3^SUl$VW}3t$FuF ^D$FHyPjPWt8hfR_^]3[ËFt?u8hhfP _^]3[ËVL$QjR׃ |BN;~ȋ|$v|$tލ;~+؋Pj:D$u_^]3[ÅPt t$ˋȃMuD$_^][Vt$FWuF vD$ FHyPjPWt8hfR_3^ËFt?u8hhfP _3^ËVL$ QjR׃ |\N;~ȋ|$ v|$ u1;~+D$|;}L$ jQ_^ËhhR(_3^Vt$FWu?F vD$ L$}3ɋD$}3;~;}+PD$P躒_^ËFHyPjPWt8hfR_3^ËFt?u8hhfP _3^ËVL$ QjR׃ |N;~ȋ|$ v|$ u1;0+'QVt$ Ft8hxhP^YËFWuzN vL$S\$];U|$<GpP.>%FjWЃ 8hfQ[_^YËFPzPjPWt8hfPa_^YËFt?u 8hhfQ? _^YËFT$RjP׃ |N;~ȋ|$v|$u1;+T$ RjW |Ut8hThP[_^YËL$ D$[_3^Y[_^YË h,hQ}[_^ỸUl$Et8hxhPQ]VW|$$OqP>FjWЃt8hfR_^]SD$jP\$[L$ QjW |wT$ҋt$}3;~֋L$ ;};~+;t8hhR|_^]ÅtD$t$ <ʃ_^3]t_^]̋D$thhPËD$S\$L$ jQ<[tߋD$Vt$Ft8hxhP^ËD$ t hhQ^ËFWuV D$v_^ËFHyPjPWt8hfRZ_^ËGu8hHhfPE _^Ë|$NWjQЃ |N;~vu1;q+_^Vt$FWuvD$t0_^ËFHyPjPWt8hfR_^ËFt?u8hhfP _^ËVL$ QjR׃ |N;~ȋvu1;[+R̋D$thhPVt$FWuV vD$_^ËFHyPjPWt8hfR_^ËF@Tu 8hfQ_^Ë u8hfhfR _^ËND$PjQ׃ |N;~ȋT$vуu<1;C+D$_^WhqUu_ËD$GtGVwt hh/Fh hAF0hr^_̋L$yqtjhi3ËAtAVt$~qtj#hif^ËFtF8u HPQD$ tF3^Vt$FNFVFBFFtN9u PPRVɨ^̋D$Hu L$AËT$BuÉD$L$[̋L$AuQhdi ËAP@P RQh@i̋D$@tL$ QPT$u3̋L$AtAu HPQ3̋L$Au@hxiP3ËAA̋ 33̡3uZ jP3uX Y 3̡3jPSX ̡3PeX YVt$u him,3jP X V觯 ^t D$iB,Vt$u hj-,js;^t hi,3D$W 3t2Y jP3W X 3Vju h8j+3t PW ^S\$u hXj}+3t"V5W֋83jPW ։8_^S虮[̡3tú3 3A%WyH@;3u3_Ë|$<2|$ 3q3<233_̡3t W ;3u 3t333;33tD $d$ 22@%yH@R3у|3;3u3333̡q̋D$qqV5F+tN 0hjP^ËF q;~"L$QHh|jRF  ^É q3^̋HQ,Ul$VWu4P4u @4P4x8tp|$ D$@PSD$(K Q诹u u SSR]_^[̅t PfttL$PD$ PQ QD$ @UVt$nD$y hmQ覷^3]YÃ>WZStw#t; Az_ I89rjRAI8;ukDŽ8t\ uTQQRHAIzJI \ Hu)SWقt$ ;uSWgt蛸t$[>uOFuHt$ .PT$RXit_^3]YËD$΋t$у|(ʃD$_^]YËD$PL$QchD$_^]Ỹ D$PL$QT$ RٷD$ u A$ L$T$VQPRjƅ uD$ L$T$PQR艴 ^ ËD$L$WVPD$(Q Hu VVR_tD$tD$8u HPQD$tD$8u PPRD$ tD$ 8u HPQ^ à D$PL$QT$RٶD$,L$ T$PD$(QRT$4 uD$L$$PQR裳 3 Ë$t$8u HPQD$tD$8u PPRD$tD$8u HPQ ̡FSVWPFp8F~^Fu Fu3L$FD$jPQ裷 ~_^^[̡FPFu FHAË@̡FVPFu^VcF^̡FPFuË@̋D$L$jPQ? ̃ SUVWD$ ,w+ʋ؋SL$vnKA 5FS iT$FFN SQPF T$jRՋFjSuNV jQRPmMN QPF 0u WWR3jRՃ L$ xF|$t~FtwN SQPF t3bT$WRՋFtNSuNV jQRP4N QPF tu WWR3 WRՃD$OHP@PNj32Nj|$ FtFtxV SRPF\ t3hjUS9F tSSuNV jQRP9N QPF t u WWR3jUSn9 MEUPtXvu.S ҉T$t#[uHPQT$L$GE{8 uT$ VWRŋD$ WPS Hu KSQt$ \$9v ‹Iu PPR9w_^][ ̃Ul$E=HVWthHPQ thuD$\\ A]\$ E}}EEM}D$}EMEM}UD$U}EMEEtuE}BD$E}PM}E0F 0L$M}E }OUf;ȉT$ u{9Buv BOwk$L3;ËG3;Ë<3;Ë13;Ë&3;Ë3;Ë3;3;nunL$ Nj?T$ Ht$u BRPu OWQuD$ouXPڃD$'pt$^F؃t$0t$}nuL$&n\$t$}nu0<D$@D$EIPPRnkt$]S\Ht$u CSP]L$u9]GXPڃD$EHPQpt$D$u}XPڃD$L$h8U8HPQT$VVR]uV؋H\$ FVP]uVh؋H\$u NVQunEn~nEnD$2uVD$hT$(@| Wu" Ph oQxHPudt$t?7%t$uatxR3su8\$hCWPdt$uKWQjdt$uD$(| 0uxw tp\$hCVWPP u 3t$6@D$tAECVWPP u 3t$pt$tJAup\$hKWQct$USWRct$:hyu.T$DRD$?b@ABCDEFGHIJKLMbNOPQbbRbbSTTTbUVWbbbXYZ[\]^_bb```a&1<GttR[̃D$ FD$ L$uhqP裇3ËT$$W|$ RPWQ2D$$u_ËO SUV88GT$ GG uAD$|$0l$HƁ8<uDBɉt u QQRF;|Ջ|$,G,P,OL$OtD$tD$3҉t$D$ T$,D$3҅~O$ I:ut^:Xuu3tnD$B;|t$ju|$,W \$0֍8 ҉t u BRPT$G,HF;t$T$A=D$08P |$,W t$\$0֍8맋\$0O(q~)W,L$ BL$P I(EN(uG t-C tu PPRSC ^^][_jS#D$t$$D$0V BIV u HPQN D$^][_̋D$ L$T$jjjjjjjPQRn(̋D$jPÃSUVt$F=WD$thP8g t_\$$l$(uKV?O tu6jVhO u jVVO jVIO l$(\$$uuFPFu3Xu-FPFu3 Wa/oD$tu(hrP_^][ÁuF=0t[h0P.f uIF=t?hPf u-F=Pt#=0th0Pe u htrC=Ht1hHPe u8hHrRq_^][U݁u8h rPF_^][h_SfuL$QRh_Sf F=Pu9F(H~hq 8Q~_^][USVu =0h0Pd F3=|$$thPd tVd tD$$ D$$jT$$RV lD$$PjtT$ L$$QUShRD$ jUShP-thudOWQXVnVP`: T$RD$tD$PjjUShVW1D$tL$jQ-u VVR_^]3[̋D$xXvthhsD3Ë@̋D$xXvthhs3Ë@ ̋D$xXvthhs3Ë@Vt$NFFVFBFFN9u PPRF F 8u HPQFtV:u ‹HPQFtV:u ‹HPQFtV:u ‹HPQFtV:u ‹HPQVR^S\$ W|$ G SPGt L$9_[ËWUVRAJ 3D$~)l$GUSVPdJ P u D$F;|3^]_[QSUl$VWU7؊<_{_ 3u:At htQ<{_^]3[YËL$A _^B]A [YÿB 3uL$A_^B]A[Yÿ t 3uL$Au_^A][YËt$T$RUV u$F (SPhsQ訁_^]3[YËHQTttVjPу _^][Y̅ɋt t uHPQYQ 4$PQV.N tɉFt u QQR 4$PQVN tɉFt u QQR D4$PQVN tɉFt u QQRY̅VtEG=HthHP_ t)F B~ tu HPQc^øLt^̅t[F=0th0Pg_ t?FP@uN+;ttËGBwtu HPQcøttSVt$ F WhtP[`Ft,@=0th0P^ tNQ4tt9G=0th0P^ tVSW4Pht踈_^[VSht襈 _^[QUVW|$G htP_oE=0th0P%^ t}F=0th0P^ taES^LQjD$ 0D$t9PˋȋD$L$.zuʃ[_^]YËE@_E^]YWu_^]YS\$CVt$W|$t VP׃u\C t VP׃uJCt VP׃u8Ct VP׃u&Ct VP׃uCt VP׃u3_^[Ul$W|$;u_]ËG=SVtZhP\ uHt=}ru4EPD ؃3~ MWVQD Pu5F;|^[_3]Ë_3~ RUou F;|^[_]^[_]S\${rthhsÄ3[W|$unau8_[ËG=Ht)hHP[ uhhsz_3[VhtKuu GWP^_3[F~ ~^t hhFG hhBG8hx^_[̃T$$PL$Qhrh,uRD$tR $u3QL$L$QËA=Ht.hHPZ u8htPt3Ë $QL$Q{QVWG VP?@t A_^YËWL$QVR0 t:FBHTt*t OQWVЋ Hu VVR_^YVt$ W|$ G VP?uWL$ QVR _^ÅVu:G SVP.A؃}!OQ(VRhthuP:r_^][ËL$t1yru(1T$BF1JHPQ_^]3[Ë8hhuRq_^][ËD$|$uOiWju _^][ÅuSWjcA PSWjTA tjVU" Hu FVPtu OWQ_^]3[S\$CVt$W|$t VP׃uC t VP׃u3_^[WPQru'(Rsru_r_ËD$VPj@ uu OWQ^3_SjVWE؋ Hu VVRu GWP[^_Ul$}tt ]áL4uhDvzL4u]SPU\؃u0(Pqu[]qL$D$Q[]ËT$WRj? u u CSP_[3]VjWS_ Hu OWQ u SSRtdF=thPU tV= t)u FVP 8hvQ6o^_[3]jV= jV= O؋E;u=tuD$SRF@ qFHq9B ~h vuD$$tWSSWT$(FH IH u FVP^_[]u NVQT$D$R\^_[]jVPWS=u u HPQT$jVRSWjVPWS=uGu HPQT$jVRWS~=u u HPQT$jVRSWW̋D$Ul$VuW8L4uhDvxL4u_^]SPVY؃u& (Qn-o[_^]Wj = jWSէ Hu WWR u CSPtdF=thP S tVC; t*u NVQ8hvRl[_^]jVI; jVE>; L$(EBu FVP[_^3]u NVQ[_^]Vt$ W|$ jhPhXvVW=u$u HPQjhPhPvWV_^Vt$ W|$ jh`QhlvVWc=u$u HPQjh`Qh`vWV8_^Vt$ W|$ jhQhvVW=u$u HPQjhQhtvWV_^Vt$ W|$ jhQhvVW=u$u HPQjhQhvWV_^Vt$ W|$ jh RhvVWs=u$u HPQjh RhvWVH_^Vt$ W|$ jhShvVW#=u$u HPQjhShvWV_^Vt$ W|$ jhRhvVW=u$u HPQjhRhvWV_^Vt$ W|$ jh`vhvVW=u$u HPQjh`vhvWVX_^Vt$ W|$ jhRhwVW3=u$u HPQjhRhvWV_^Vt$ W|$ jhThwVW=u$u HPQjhThwWV_^Vt$ W|$ jh@Sh(wVW=u$u HPQjh@ShwWVh_^Vt$ W|$ jh ThDwVWC=u$u HPQjh Th4wWV_^Vt$ W|$ jhThdwVW=u$u HPQjhThTwWV_^Vt$ W|$ jh@VhpwVW=uOu HPQjh@VhXvVWx=u$u PPRjh@VhPvWVM_^Vt$ W|$ jhpVhxwVW#=uOu HPQjhpVhvVW=u$u PPRjhpVhtvWV_^Vt$ W|$ jhVhwVW=uOu HPQjhVhlvVWx=u$u PPRjhVh`vWVM_^Vt$ W|$ jhVhwVW#=uOu HPQjhVhvVW=u$u PPRjhVhvWV_^Vt$ W|$ jhVhwVW=uOu HPQjhVhvVWx=u$u PPRjhVhvWVM_^Vt$ W|$ jhWhwVW#=uOu HPQjhWhvVW=u$u PPRjhWhvWV_^Vt$ W|$ jhWhwVW=uOu HPQjhWhvVWx=u$u PPRjhWhvWVM_^Vt$ W|$ jhwhwVW#=uOu HPQjhwhvVW=u$u PPRjhwhvWV_^Vt$ W|$ jh WhwVW=uOu HPQjh WhwVWx=u$u PPRjh WhvWVM_^Vt$ W|$ jh`XhwVW#=uOu HPQjh`XhwVW=u$u PPRjh`XhwWV_^Vt$ W|$ jh@WhwVW=uOu HPQjh@WhDwVWx=u$u PPRjh@Wh4wWVM_^Vt$ W|$ jhpWhwVW#=uOu HPQjhpWhdwVW=u$u PPRjhpWhTwWV_^̡04uh(xl04uWPD$ PoNu& (Qjcu_c_ËT$ VRj1 uu GWP^_SjVW:؋ Hu NVQu WWRt]u u CSP[^_SMHu KSQu&]at!8hxRa[^_Å}[^_3[^_̍D$PL$QaU}VWD$ tut9xL$t{9ytvQPP^D$JD$ 8u PPRD$D$8u HPQ`t_^Å}_^3_^D$L$D$ 9xuLQPD$3D$ 8u PPRD$D$8u HPQ_^ËL$9yuOPQD$:D$ 8u PPRD$D$8u HPQ|_^D$ 8u PPRD$D$8u HPQ_^̋D$L$hPQ,Q VW|$uPt$|$ jhh $QL$T$RD$PjjhrQ<t\T$RY[u8hxPX3 ËD$= $u3D$uu 8hxQzX3 ËT$QPR Vt$FNFVFBFFt V FF8u HPQF tF 8u PPRFt%F8u+HPQ3V 53^á3F 53^Ë 3N 53^Vt$ FW|$ OPQUu.G N ;u_3^Ått_^L$D$T;@_^̃D$ H SUVpWL$Hh t3۽tQ\$l$$X;u(RyXtgX5G=0t$h0P= uu GWP3OL$;tih tV'X؃u$(RXu _^]3[LX1C=0t$h0P< u u CSP3kD$uL$QUh,yf D$TP=tEF=0th0PD< tL$FPQUhyYfD$u VVRtu GWPt u KSQD$_^][VW|$ G uhPAtGPAu_^3u_^S\$CVt$W|$t VP׃u&C t VP׃uCt VP׃u3_^[̅f?tZVh tPkVu^VF=0th0P; tSFPW\ Du NVQ^SمWuDy HyO_[VhBSUu )Vs\$Itu VVR^_[́h/SU$$XhVp W$$W^" |w tUV_|s$SD$ctDl$PD$P$QV`PV8PhPyRqZ_^]3[$3 F$U! GP tċBp ~Pu t Ou$ QWSLV Hu WWR$_^][ Vt$F t^ËFW|$t tPW_}_3^u_^ËD$NWPQ _^̡3t"$H P 3)3uQ4uh("\4t>t4uhtm\t4t4uh tN\4u3YUl$E=0th0P7 S\$C=HthHP7 j4PSHu 4hQS Nt4RSu6Kt- 4QPtt4PRS VW|$uW: uj_^[3]YËG=t-hP6 u8h@zPP_^[3]YW 3Ʌ~W 2~rA;| 4uBh4zZ 4t?h(zZ 4t)hzZD4thrB&u\0OWQ_^[3]YËNQvRtVjSWURW_^[]Yá8hyPO_^[3]YÉ~ 4^ ]T$RPC]Vn 4L$QRVFu D4FD$(PQV`FF$tFtFtF~t hh:Ghh@G8 hy_^[]YË8hyRN[3]Yá8hyPN3]Ỹ D$PD$L$ QL$T$Rh|rhdzPQWu Ë$D$L$RPQW Ul$ E=thP4 SVWU 3~(] xruLL$QPvuDG;|ۋUt$FBUntu PPR_^[c]_^[z]_^[z]øhz]蛇thzPMSUVt$WV \$E<_}_V~ L(_|(_ 3u|$to8_^]3[ÿB 3uL$QSʿ t 3u t$뫿4z 3uRSL$SD$T$C RP)}K(UQhsRS_^][ÿ(z 3uS뚿z 3uS냋 8PQ2L_^][ËK PD$PQ _^][á|4uhL{}V|4uËD$VjPu^á|4WkKtu NVQ_3^Ë|$t)G=thP1 tFW u9|$G=HthHP1 tW(8h({R*KHu FVP3_^ËL$T$SQRW螅؋ Hu GWPuu NVQ[3_^Át'8h{RJHu FVP3 u KSQ[_^̃Vt$FNW~GGBFt V誝 L$QT$ RD$PK\4 u(hX{T\4uVR\4tDS؅t5jjS聄 uSR u HPQ u SSR[D$L$T$ PQRAH Hu[FtFP' FuFF8u HPQF tF 8u PPRV _^Ét hh:Gh hAG8hz_^̋D$SUl$ VWPN؊<_um{_ug 3u3覂th`{PH_^]3[ËE _A^E ][ÿB 3uE_A^E][ËD$u(HuEH(SQht%a>D$jPW4Y | 3Ʌ_^_^VPQ8u^WjjVv Hu VVR_^̡x4uh|Fx4uVPD$ Pu^WjjV~v Hu NVQ_^̡H4uh|-FH4uVPD$ Ptu^WjjVv Hu NVQ_^̡l4uh|El4uVPD$ Pu^WjjVu Hu NVQ_^̡3uh<}mE3uVW|$ PWur(P<<|<4uhX|E4PWbu$ (Q;-<_^jjVt Hu VVRtwG=ft:hfP\ u(u GWP 8h}Q9_^WHu WWR}@h|P9_^3_^̡4uht} D4uVPD$ PTu0 (Q:t#;8hH}RB93^WjjVs Hu FVP_^̡X4uh}}CX4uVPD$ Pu^WjjVns Hu NVQ_^̡44uh}C44uVPD$ Pdu^WjjVs Hu NVQ_^̡(4uh}B(4uVt$PVT%t=(4PVu^WjjVr Hu NVQ_^V*^̡,4uh}=B,4uVPD$ Pu^WjjV.r Hu NVQ_^̡3uh}A3uVPD$ P$u^WjjVq Hu NVQ_^̡4uh}}A4uVPD$ Pu^WjjVnq Hu NVQ_^̡p4uh~Ap4t 4uhA@4u3áp4VW|$ PW<tejjVp Hu FVPt̡}h}P)PuËL$T$HP@ Vt$ u8hP 3^Ë }h}Q(PtۋT$L$p PH^̋D$t x}u@á8hlP+ S u 8h<Q 3̋D$t x}u@ á8hP u 8hQ3̋D$SWP3t@L$VQW !tV.؋Hu VVR^u GWP_[̋D$tx}uHu L$HË8hR3Vt$Ft%N tQNQЃVm(^ËVRЃVY(^QSW؍P@u+‹vhP_3[YWjtȃɉL$tVqv.U-,+ލ3< u- QՋL$FOu]^_[Y3V@Pt'Aۉ~ t"Suu NVQ3^ÉF^̡FVpFut^W|$WW u 8hQ_^ËT$ F WRPw _^VhBPtpWh tVHu NVQtIWHu WWRt) 8FPh؀Q0$ Hu VVR_^Vt$F=tt, QP$ u8h R3^ËF=tuFVP3^Q`Vt$ PV^(tL$QVFtV3^YË(RV3(tD$PVGt+3^YË QV(t.T$RVFGu#D$PjL$ Qh0^YËl3^Y̡` Vt$WPV'L$ QV%DT$RVEmD$+D$ Pjd PL$ T$;ʋF }f?T$A;|RVh8c Hu NVQ_^ Ë(RV&t=D$PVD$EL$QjT$Rh0_^ áPV&L$ QVDT$RVEunD$+D$ Pje tUL$ T$;ʋF }fT$A;|RVh8p HNVQ_^ Ë_3^ ̡`Vt$PV%L$QVVBT$RV DUVAl$u]^ËD$ T$S] C4S3;Ɖ\$s;ff s&fdsfsf's;rWQj+ |$uMu EUP_[]3^ËL$D$w ,KC;f}f&f#fEf= s Ef=ds  3f=s d!f='s 'IǙ0fFgfffKu؋L$f;D$A;N|$PWh8j Hu GWPD$ u HPQ_[]^Ë3^̡` Vt$PV#wL$QVF@hT$RVBRUV?l$u]^ ËD$ L$W} G O3;sIf8r;rSRjA ؃u[_]^ ËT$L$C 4WO;$ff\fr5ʋfu f,m}f(l$f M}ffxʋfU}ff M}fL$O;uQSh8 Hu CSPMu MUQ[_]^ Ë3^ ̋D$PV̋D$P̋D$PF̋D$P̋D$P̡FUhEjEEE tpSVW3j}jQ u hlq}VR؋Hu FVPt hlqdr_^[EtEtE u hL\qjjjjh@臄u! XQt 3]Ã]u PPR3]̡FVWxGu u4t$ u _^VMu 8hQ_^ËWVR2_^̃SUVt$Wu_^]3[áFxG|$u :kD$L$QT$GRP t)D$D$8FHPQ_^][j>؃T$S GP|}u hQe3~BT$BWPtJjSPN t8uHu NVQG;|;uzL$Qh܁RN u CSP_^]3[ËF=thPNt~t8hRHuFVP럋L$T$BVQP Hu KSQ_^][PuËL$Vt u PPR^VPu^ËL$WQVHu VVRu_3^ÅtShkWs jWfu GWP_^VWPfu_^ÅL$ D tWSh"PSh0P u VVR_^̋D$PuËIVp u HPQ^̋D$PuËIVpu HPQ^̋D$S\$ h4[̋D$S\$ hH[̋L$ D$S\$ j[̋L$ D$S\$ j[̋D$SUVWP"h Iu HPQM\$|$AM/tgjWUK tGF=thPt~tI8h\R$Hu FVPu OWQMu UUR_^]3[Ë^ u GWPMu MUQu VVR_^][̋D$SUVWP3 hIu HPQM\$|$AM-tVjWUI t6F=thPt~tJ8hR"u GWPMu MUQtu VVR_^]3[Ë^ u GWPMu MUQu VVR_^][̡FVpFu t3^W|$ u0N WQuWhRp _^_^̋H~ SVW4ۋutB4 ut!$ъ4Ft u_^[3_^[̋AHx7VWt xt x0t hȃiV.Ou_^̋D$SUVWD$ D$,|$0G=thP{D$4o@=thPxOD$8C@=thPL#t$<F=thP l$@E=thPD$H@=0th0PD$D@=0th0Ps\$PgC=0th0PpGD$,P2L$4L$8WZNxaL L$VWȋA=0L$th0PtL$ARt T$RL$NL$}`hPPPxL$T$ HL$$HL$,P T$(PHL$4xH L$8H$L$<H(}L$DG}h,H0L$HH4L$LH8 _^A ]X<@@[j@h3_^][̃UVW~W|$ u_^]S3ۅ~_+͍} L$$49F=0u,h0Pt2FPV0tSL$D$7C;|[_^]ËNQ 8RhP$E HEu MUQ[_^3]MuUUR[_^3]̃D$VNBVVIND@_^Vt$VuhP3^ËFN S\HW~JGFV~u4u_[FF^Ë9Q-G~ F=_[^Vt$VuhP3^ËFNS\@W~JG>FV~u4u_[FF^ËyQ~F_[^̋D$UPu]SVWU1 t{t$d$NFA=Nu>~^ h@N AF FF^V @FCÉ^U| uMu EUPuL_^@[]áhąP@u OWQMu UUR_^[3]̋D$UPu]SVWU! tyt$d$NFANu=~^hXNFF>F^V@FKÉ^U| uMu EUPuL_^@[]áhąP2u OWQMu UUR_^[3]SUl$ VuNu^]3[;;}Ù;~+;}ޅWD$~KIjUVUHu NVQttu WWRD$@;ÉD$|D$}FjUVUHu FVPt"u OWQD$H;ÉD$_^]3[_^][QL$ $PhQD$  t!T$$Ru Y3Y̋D$@SUVt$W~3ۅ~T$;}ۋAt;K@uL$D^[A_]Ít>C!+ӋA tJuL$D^[A_]ËhTR_3]̋Vu jVIu HPQVW̋D$SUVt$^;L$Wu _^][ËN>C;T$Ft-O@u%LC!F +tIuT$ t$A LT u QQR_^]3[áhTP^][̋D$P@Vt$VF t VL FtVuFPNVFF ^̋L$ASUiVWtJ;i uY=;Ë,tItL$QPT$ uL$G;~݋m3u3_^][̡8hpP̋D$jP@P@ VW|$ hWu@Wuu FVP_3^ËOPVQhHu VVR_^S\$SEt}3[[D$隱VSuS^3[Whquu FVPS_^3[UVWHu OWQu VVRSI]_^[SVt$ VctD$Ph<^3[UVSu]^[W|$Wh<U t@IWS<jWVu]Hu NVQUuËT$RyEHEu EUPnuAWh<_3]^[Hu VVRMu EUPL$Q_]^[QUVt$F=WthPt |$G=t'hPu_@^]YËT$FOu!;3;t&n_@^nn]YÃu ;t; VD$ SW؃ۉ\$D$PFu 8S*jWV؃ t'u NVQu WWRt6\$댋D$ PWVP Hu NVQu WWR\$D$u PPRt u CSP[n_@^nn]YuFVPtu OWQAuD$ w$o3҅‹w3i3;[3;‹M3?3Ʌ1(_^3]YËcoqoooooQL$ $PjjhQD$pt$t%T$PR'uYu HPQ3YhvuËL$QP QPHQPIHVt$FtF8u HPQVV^̋L$AP;QtAhĆP3Wyu3_ËQVq DBO>Qyu~ VQ AA^_̋D$HL$0hhȆuËL$Q P QPHQPIH̋L$Vqt%AP;QtAhĆP3^ËQWy DJNQqu~ Q A=A_^VW|$ G|t2=t+jjP, tJD$VPW} |)_^ËT$RjtxVP@u NVQ_3^̋D$H|PjPQRS\$C|Wt=t Pj ju_[VhhS uu GWP^_3[ËKVhhWQj'؋Hu VVRu GWP^_[Vt$F|tF|u HPQV`^SVt$W=hV׋\$C|u hNV׃ jVP hVjVSdh LV׃_^[S\$WStu_[ËC|VuhNU2Pt|8h8 C|PK|QOuu WWR^_3[ÍGPNQhr؋ Hu VVRu GWP^_[S\$C|Vt$W|$t VP׃u VWS _^[Vt$F|tF|u HPQV^SUl$ ]|Vt$W3\$t`F=thPrtD^~+~ Wu8hxP_^][SjV`\$ j@tօtL$QVU}| Hu VVRt u CSP_^][Vhjhjh$h% |shBhVh؉XH$ |; ؉h؉AhV ؉Ęh$ | hȆ$ ^UVW|$WCt$F=0th0P}_}_SV؋ŃPI@u+€|(_u|(_u @[_^]À;_u KC_t;tˍqIAu+΋DPju[_^]WNSQF_\T> +Պ @u[_^]_^]3ΉAAA AAAAA PA$虥3҃‰FVFt P2Ft PFF8u NVQ^̃Ul$Vt$u^]SWU3D$~iWa؃tdE HQPj輺 tpT$SVR觷 |LHu FVP u KSQD$t$G;|_[^]uCVVR_[^3]Hu FVP u KSQD$u PPR_[^3]̃ SUD$u][ VWD$PD$$L$QT$ RPE$L$AL$$ ;tL$(tTS_tsD$PRPjC聹 trWVUp |cu GWPu NVQT$RT$$D$PL$ QR褸i_^][ MuCEUP_^]3[ u OWQMu UURtu FVP_^]3[ QS\$ Ul$VWUKt$tYGD$~/V KAË_ Nut$\$VW=tHu NVQ_^]3[YHu VVRTmʋ ΃D$_^D]dL[YGWWUl$M Vww V/|$|hQP mQPaQPXQPOQP6FQP=QP4QP+QP"QPIQPQPQPu 0^3]Vu.S]VUݤt-Hu NVQ[^3]Ã~u FVP^3]Hu VVR È_[^GGd]Ë VhQ ^3]w{{|{{{{{{{{{{{| FNNUl$U W< t3t&tQhP! _3]W3WWuWUu _3]S]WUgtHu OWQ[_3]Hu WWRÈ^[_F Fd]QUl$ VW<WD$ u _^3]YËϋ3ʃ3~_d$ Ww;~$~qt wtH3Tll$3ɃZL ;|3~            Ix{̋@$tuUW~$3;t I;u;t(SIG ;t PSWH;݋u[;t.u HPQF;tnu PPRF;tnu HPQF ;tn u PPRF;tnu HPQF;tnu PPRF;tnu HPQF;tnu PPRVz_]̋WVwJWGpNx?@ P{OVQG } h6WB$tu^G^́h/$A@,AH,QhT$hR荼D$P3$T Vpj Eu 3^3ɋЉ JJJ JJJJN$F$^Vwj u I3^3ɋЉ JJJ JJJJN$F$WB(^Vwj u 3^3ɋЉ JJJ JJJJN$F$WJ(AWB(^̋QR(BIA(ËN SWu2h@M~ tN3PFFH_N[ËF9FuN<?wtSQFЃu >_[Ë+V 3ʃFH_N[̋PV^u ǂ@P(R DÍB= $øøÍAøËø+øËЋ%yH @+ËЃи+yIA+3ËøáLR@hPh33ÍI ڋ &)17^u   VWGp(a}_3^ËOq( F SXuNWuW(R t _^̃Ul$VF=thP`uFP4F\$D$u!D$ uNhQVj訥VRVj藥 u ^]SWVU謡usU_SKuu@FVP_[^]WVU= }'u NVQu WWR_[^]uGWPPø?øBøAø@ø3#)/MSY_ekqwH w@$ø3øøøøø øøø ýÒɒ̒Ғؒޒ̍A wg$7ø8ø9ËD$@ t  tø:ø;øCøKøLøOøNøMøQ h|Q 3Ð?EKQou{̃ SUl$U3ۃVwj onD$u^]3[ 3ɋЉ JJJ JJJJN$F$MɉL$u3H3D$ L$T$PW6Oq(W B(@ T$4XP 0GuǂGP(R D Oq(&|wWR( B 4@0GuǂGP(R D L$D$ E;L$L$LQW5u ^]3[ ËWJ(D$AW^]B([ SUl$E3;u\$D$}uL$D$ Qj\u][VW}wu3;}T$PRB5t#C؃}uD$PD$jg/u_^]3[_^][SUl$E3;u\$D$}uL$D$ Qj\u][VW}wu3;}T$PR4t#C؃}uD$PD$jfu_^]3[_^][̃S\$VWCP3Wt$D4t;C;ut$ ;D$ ~,;ƉD$tK QRW 4u _^3[Ët$ U;T$Gp(OQ( B @WuǀGP(R D Oq(YWR( B 4@0GuǂGP(R D KPjj#T$jRjox hDt$F;}L$Q DPW2\$E;t$K RW2CPjjvtt~bCtbjVjn tOOQ(D$BOA(t,{tWB(pOq(]_^[]_^3[̋ t?Ht/u&VqWd 3_^u 5ÃËIQ讽ËQR衽̋Hy0|hR3Ë@H0QP0T$T4T$T8̋@H0̋PJ03~4:t @;|3øSVWGQR3u GVhQRhԈvt)D$WPḧv؃ t SQu VVRtu GWPt u KSQ_^3[VA3w $SuAjjcuG[^þ<޾=׋D$Q Ph܈Q 3^Ãu1u[^Ëދ![^"BI"BPVt$ FumFFSUl$tUPD$P F3ۅ~4W3F 8tH T$UQR FC;|_EM 4E][^QSUl$E\$9]ME3;VW|$$]D$~cD$u T$LVj;~t F L$WSPQF_^YËL$PQRYu_^YËCUWQ3HwQ$8SBD$ 9KQT$ (CAu3SHu H u$LD$Hw~$\D$ PUHu OWQ|EVUb]_^Yý‹D$ PhЉQZ Hu WWR]_3^YhP]_3^YËD$HwG$p| }~KAWUS tu WWR]_^Yh듋D$Hw%$tab hdQ}]_3^YËD$Hw%$eZ[hDR3]_3^YÐzXiK\cjooȮ̃SUl$ VuWj 軻3;u |$'3ɋЉ JJJ JJJJN$F$D$uj v;u 躵|$'3ҋȉQQQ QQQQV$F$D$uj 3;u w3%3ɋЉ JJJ JJJJN$F$؋uj \$;u 43%3ҋȉQQQ QQQQV$F$D$|$>D$2*"D$0L$4tVRUt$(5DEH(D$AUjB(Wj]w ePUvut$(L$(D$(3~dT$ BDPUbL$jQjo G8$D$(F;|\$0u3t$4|$,F;t$4}T$8RVSWUt;|VjWD$8PU?MQ(D$t$4BMA(D$(3~Tjjn]uUJ(D$AUB(2D$(G;|t$4D$jPjq  MQ(D$BMA(kEP T$(T$,rd 3ۉt$ uh.@RPMVR3ۿHwQ$EHL$(9UBD$((MBu3EHu H u$L$ QhЉRq Hu FVP_^]3[ËMAVj~UD tuYVVR_^][ûb[D$(PHu NVQ|WSt_^][ÍIݳʳNŨD$H5Ul$D$L$ uhTF5u]Vt$u^3]jjgtShu[^]ËEP WT$d 3uh|$@WP MVR3ۿ]HwQ$ȶEHL$9UBD$(MBu3EHu H u$ܶ2MAVj}UF twuNVVRBaZD$PHu NVQ|5WSt%T$(BL$T$PjQRU|$$|$t$u GWP_[^]õԵAH̃SUVW|$(wj {3;u 轮3ۉ\$)3ɋЉ JJJ JJJJN$F$D$؋wj 2;u vl$'3ҋȉQQQ QQQQV$F$D$wj ;u 3l$'3ɋЉ JJJ JJJJN$F$D$wj 謳;u l$'3ҋȉQQQ QQQQV$F$D$wj i;u 譭3D$ '3ɋЉ JJJ JJJJN$F$D$ ;te9l$t_9l$tY9l$tS;tOT$,t$0ljPjx< t0Sj+tu%G@ Vj|u/_^]3[ËMQWqtDtՋ\$WB(T$3XOVRj]ljY( ttEPWtE;ut$(L$(9t$(~^UDPW^D$jPjoS CC6"D$(F;|\$,u3l$0t$4E;}VUSW*u3;|MVWZVOQ(D$BOA(D$(3~JjjnouWJ(D$AWB(ADD$(F;|D$jPjq0  OQ(D$BOA(WGH0WJ(D$ AW_^]B([̋NIQ"|PjdAu3ËWRṼ(SUl$4EH(AWD$uUktAD$D$4HD$x>L$$4N3ۅ~'3~ D$ tYFC;|D$l$C@Vj}S du NVQ_^]YýaZT$ RXHu FVPWUa_^]YÐHkX&7~w̃S؋D$@U3;VWul$L$9l$l$rT$(B|C t @tjjKAP|yPjdthu VVRC@PZ|BPjdyt1KQ RjktGtP_^]3[Ë/uj.Vl$D$ t+PVZD$CH L$du 3uh@UPKVR3mHwQ$CHL$9SBD$(KBu3CHu H u$CKAVj}SV ul$3eu VVRl$LaZD$PHu NVQ}l$3WUl$D$ tMu UURbl$D$E;l$_^][Ð BĨS\$CUl$VWu3|$D$Wlt$7K uE t @ujQ؃uNVQ_^]3[3~( T$(JL@;|t$MD$(P;Q~Qpx 3u7 u KSQD$u PPRh8P_^][Ët$E@PLPjd7 u KSQUBPPjdu FVPMQ D$(@RjkL$3ɉD$IL$(Qtu x*mMQ Rjl|vt֋EH L$dr 3uh$RPRBEVQ3ۿHwQ$UBD$9MQT$(EAu3UHu H u$6E@Vj}U uNNVQBaZT$RHu FVP|@WS%t0D$L$@;D$};xT\_^][ËD$u HPQ_^]3[ËUr(|MQ( B @UuǀmU(B T_^][ÐñUVt$ FP3Wl$u^]Ëv;ul$L$S^Iu3;}PWqE؋t$$F D$PD$T$t9D$D$OIQ\Wr(D GP(B 4@dh0GuǂGP(R D KQWL$D$t$$AD$D$L$:F tL$  ȉL$ FtPWtRD$FtPWt5D$D$$XT$ Rhtuf[^3]ËD$ PhSuE[^]ËL$ Qh4u&[^]ËT$ Rhu[^][^]ÍI *SVFWH5YuhR5u_^3[ËVRVPW?tFNPjQW(jW`薽tjVHu VVRSW=tDtjh(_^[SUVt$FW|$O3;~щGHL$pVh_^][ËNQWV RWwFWM؃=FPWbHF؋V_^][Vy_^][Ujh'F;ul$L$9l$~zITVDPW'NTRW<sD$E;|_^][VW_^][Ë_^][G9ithM_^][Ëv;tVW'u _^][Ë@hjdW; VdV_^][V_^][ËVRW |FOPAjdWbVG@RjdWK~ tNQWmSF H$貾+WB PFji胾OQ FRj_XGH FQj`=hR_^]3[ËF H$FPWNjQQVRWtiFjP8NjQ0VRW^tHFjPNQWEt/VjRW _^][áhP2_^]3[ËNVQR_^][VWJ_^][VW_^][ÍIQao8O^5P!QSUl$VWw5HHtQhPJ _^]3[YËNjQtW RUtӋOU؃EtUJ FL$dp 3uh_^][YËRPRҥnEVQ3ۿBHwQ$UBD$9MQT$(EAu3UHu H u$CE@Vj}U+ mNVQ_^][YûaZT$R蛻Hu FVPWS褼_^][YËM$VFQNRVPjQRLVU\:G PUG%OU#؃藺VUF _^][YËM$VFQNRVPjQR腫VUG PUOU؃ }VUF d_^][Y#6m/t̋GStPV,u-3[ËF@P|&PjdtGtPVu-3[ËNAP讹|PjdͺtG tPVsSh蛺S\$ Ul$VWG3;Ɖt$t t$tPSOt#T$FT$tWS%u2t&NtNuejjc9jjc)u9t"NtNu.D$1u_^][YËD$tREw6$ (2L$D$_^][YËh,Rv_^]3[YÍIVWHt/RPR\zEVQ3ۿ̮HwQ$UBD$9MQT$(EAu3UHu H u$D$ PhЉQm HXVVR[_^3]ËE@Vj~U脪 *uVNVQJb[T$RHu FVPWS QSX?mE0[_HE0^]&9c2jar<_L+kvTeQSUV53;ŻW\$uhp ;ţ5UVPW萧A$8FPuuOى_^]3[YÉ_v^u3;}+PW!tE܋NQWjtl$T$RWDz_^][YáhPPRd_^]3[YQ h(QEk _^]3[YË̡5,U3uh("wn5t;3D$D$ D$D$D$D$D$ D$$D$(PD$0D$$u3],ËL$@Vt$^FD(SxW3UFDH;}0F@ uBPӋNHVH< t,FDGH;|؋nD~3NHUQ4t!FHnD륋VHL$DFH]G_[^W>]_[^̋L$Q Vt$VD$P5R ;t @Q3;^ËD$T$ ^̋L$Q D$P5RP}ËL$T$S\$WSıu_[Vt$Fu!jFuu7GWP+FH tFH 9u PPRFx Ft=NjPQ*>F ~JF8u PPRFu^_[ËF,tF,8u HPQW~,T$t^_[̡5VW|$ OPQ{=u_^SVE؃}[_^ËG,tG,8u PPRVw,aL$tȋ[_^̍CPu*<Vt$Wˋʃ_^̃$h/SVWډD$,CWPcu# xWQ}8_^[L$ 2 $jVt܋G=ft9hfPau'5hR 9_^[L$ ޲ $ËK(ɋGu/PhD$jPD$gD$P@u+KyuYjjSt ?CP;P u%CHP4[C_@C^3[L$ @ $=D$ } D$ h#ȋD$D$ jL$T$PD$PSS4 3Ʌ_^[IL$ ߱ $̃,h/Ul$4D$,E,WD$8D$ t_3]L$(蟱 ,ËESVPY؃WC4D$}S耭0jD$p x|$MPWQ E(u0ShT$!jRD$(p[D$(P@u+Exu]jjU |EH;H u#S}^[_]L$(覰 ,Ë|$EP@4mED$@Z\$|%ˋD$rL$T$\$ D$qPD$PUU4 |D$@|$u OWQtu VVRD$tu HPQL$8D$@^[_]߯ ,̃ Ul$htUD$D$ M7D$(P37'Wr7h訣u_] VL$QT$RD$PWD$$ 5T$ QR2tED$ L$PQ!u(R6tS6;ŋtOIu HPQT$RD$PL$QWu5D$ ^A_D$] ^3_] Iu PPRu5D$ ^A_D$] ËD$ ^A_D$] 3] ̋ODA2VODGHu  GHt|St1ttGHVP!t5u NVQSB @SPh Q;GD3^ËWHhVR }Hu FVPGD3^Hu NVQ^VW|$ GD2HOD|IT$R0t"GHVP}Hu NVQ_3^Hu VVR_^jhPP43Ƀ IQx$I|€ˆT$jL$̐ ĐRQPP4 }Y3Ỹ$h/N(ɉD$ D$(@u7PhL$ jQD$ID$PI@u+PT$RNЋȈD$T$L$D$uuu $K$M $JPD$PVV4 }L$ $ËL$ 3 $̃h/SUl$ D$F$W\$ U2(D$u1D$jD$PVD$ V4 n_]3[L$s U(؃u 1u Cv( hhQR1D$ _][L$& SjtjjGSPUk*D$}v|u DyK\$s D$!D$D$D$D$PT$RVV4 |kSGPVV4 |[Qrt]W|@jhΐVV4 |.UGPVV4 |jhkVV4 | D$ \$ u OWQL$_][ ́ h/$$@F(t&jL$Q$D$G|ij T$UW$hD$hPD$$F|$$OGGuf kD$fP_I@u+PT$RVV4 }$> Ë$3) QVWvPjD$u_^YÅUh~h֋5АSd$ffs f\tf u;\@u@ 3X@3X@3@@ 1@Ju[+PT$R5D$]_^YUl$V3W~# tjPUk |F;|_^3]_^]̋C$U$VWunUC;tLjVSj Hu FVPjhܐSS4  U:u-_^]Ġ3U:tD F| -~BjhSS4 3~L jQSj |oG;|jhݐSS4!u&T$ jRSi |GjhܐSS4 |53~D u HPQG;|=_^3]ĠNxD u PPRNy_^]Ġ̋C$UVW$U9F=thPVuxF jPSi |NjQSh u VVRjhސSS4 U*9m,_^]Ġá8hP+_^]Ġ3$Q8tAF=thP Vt E| +~`jhSS4 3~7t V jRSg FjPSg G;|jhߐSS47uL$ jPQ-F ~JF8u PPRFu_[ÁF(uyG=0t'h0Pu5hPG)ujhVV4 |cWJ|VPOQVV4 |FjhkVV4 |4-jWVe |jhVV43ۃ Í\3u WWR_[̋D$@t PÃD$D$tL$Qh@P3 uW|$Wzt5hPA(3_jjW |OSUVwnQt$l$؃CS|$(u U*^][_Ëˋ3ʃ3My6WjD$lL$(Q^][3_Ët$IF4F=0h0P F=fhfP uzF=thPq ~v ~ftv NhfQ? F;}[tWT$(3=I.v;}jtfT$(<t3HFM 5hQ&^][3_Ë5hؚRc&5hPK&\$3ۍpT$Bw ~";uPGP4u _^ÉGw C HPC HA_H3^á5hxPQSUl$D$PUU@؃|} 5hxQ][YVt$SWRuˋʃD$5L$jD$PQ| փ8uD$8 uvHuouYtuPW74T$RE HP ;u|}qu VVR_^][YWu2jT$jRF' u@hPL$Q_^][YËE HP4E H_^A]H3[Y̋C H;H Ul$VWu?w ~";uPGP4u _^]ÉGw EC HP,C H_A^H3]33~3SI: B;|[V33҅W~3U,8 @;|]R訐t$C H;H u }u VVR_^ËC HP4C HA_H3^QSjD$PSS< }[YËL$V[YQSjD$PSS< }[YËL$&[YQSjD$PSS< }[YËL$[YQSUl$D$PUU@؃|} 5hxQ][YVt$SWRuˋʃD$tajL$QP$ uT$R_^][YËD$PE HP ;u"|}u VVR_^][YËE HP4E H_^A]H3[ỸWWD$PSS< }_V33~tQWo؃|4jhϐVV4 |"SGPVV4 |jhkVV4 }!u OWQ_[]L$N WWR؃|ȁ} D$ U-D$D$ TL$T$PD$PV\$V4 n~RNyuFjjV$ EFP;P u跒+EFHP,F@SEPVV4 D$ t͋3L$_[3]M ̃ h/Ul$W|$D$G=t$hPu_]L$wM ËE(SVu|GO H|V舏؃[jhԐUU4 ESFPUU4 1jhkUU4 NVQWcV؃T$jT$RUD$X\$D$L$ U4 ExuujjUK |tEH;H u|l|$$EP@4E@u FVPD$(t ϋg|1^[_3]L$K SNQUU4 }u VVRL$^[_]K QSUWWl$-؃u>F$t D$ )D$ (D$ tPD$PVV4 O_]3[YW,k~$|eVڢNUQ%t/3~jh֐VV4 G;|͋tjؐRVV4jhVV4 V_FUP誜tLF(tjhאVV4 |Z͋C3|jh֐VV4 |7G;~ٖ͋jhՐVV4 |ϋ|D$ Mu MUQD$ _][Y_][ỸSUl$WG,D$t莛G(t D$ ]D$ (D$ lPD$PWW4 |uU譊|hu&}|G,uW诗|JD$@W薗|1VUt V7D$Hu NVQ^G,tUW蠛u _][ËD$_][̃SUl$WG,D$t莚G(t D$ }D$ (D$ dPD$PWW4 |Um|ru&}|G,uW诖|TD$JW薖|;VhhU t V譡D$Hu NVQ^G,tUW薚u _][ËD$_][̃SU3W9o,l$l$l$l$ l$$l$D$ t\$,hjhWW4 6Vt$0PV;ʼnD$9o(tL$UQWI 6RV;ʼnD$$ 5UQP ;ʼnD$ UR@3ۅ~sD$ SP"jVW |Hu NVQC;|3HVVR(PGG(D$pu 5hQVP葖D$R芈؃mVwZjhWW4 DD$SPWW4 ,jhkWW4 UVWW4 jhkjhWW4  5t$0QV23ۃ;ÉD$(tF5SRP ;ÉD$@=HthhHPñuVW脓R(Ptm( 5QV軷;ÉD$u(Rt=2΋]|)D$SPW |jhWW4 |\$^G,tL$,QW=uD$ D$_][tu PPRD$ tu HPQD$tu PPRD$tu HPQD$tu PPRD$tu HPQ$Ãh/SUD$ D$,V3ۃ\$t$0t A6L$,PQsT$,URt$ eVD$>U߅D$)^S;D$u$D$, 5VPh,QЈMQPu$T$,5UVRhP̢蛈;D$,t3Iu HPQT$,5UVRhP`Iu HPQ$W65PRp hǔ.F=fhfPunD$, 5VPhQ`އt$ u NVQ\$tMu UURt u CSPD$0^][L$'B ËF~}=v=D$ D$==D$D$#ЋD$ D$T$L$PT$ RWW4 :D$0- 5PD$0Ph\Q( t$ jhWW4 T$RSWW4 jhkWW4 D$PEPWW4 jhkWW4 L$,^D$0L$$^][@ ̃Ul$M$VW33L$QT$RL$T$$D$PD$4QRjjhP|$4|$8|$<诪$t4L$ A=t0hP迬u5hRg_^]ËL$;u|$9D$u|$9D$u|$;St56L$ PQ萲؃;ue(RT$ WRU D$WPU jhUU4 C=0th0Pݫts 3u 333 u KSQ;eT$RƓ}5hP<[_^]ËL$Y hSuhd5R[_^]ËD$0tT 6QPQu(RLt3;tu NVQth0jS\$0SM |EPݑo~UID$DJujVS Hu NVQ%jhSS4 l$(3t$0;tOD$;t6@=Ht,hHP%uU}[_^]Ë΋D$;tPsD$;tPؖ|D$;t)WPU- ajhUU4 K[_^3]̃SVt$^0W3|$|$|$D$ ;؍KN0~hR-9|$(\$$uF;tP謘;t D$ ujhVV43Ƀ IL$ UkU  $nt nˋOD$fS脏D$oS6D$QuuSD$7u[SbuND$0u9K}WS'D$u9K}WSV D$;~FS¾|$NWQgtϋׇD$U  H$ 0jS~D$IjSV0 D$+uD$SD$HuuSD$tuYSuD$rj8 u5jSD$ 5QpD$,u:F t3Pt$D$DujSD$&hU'tjSD$5UR谋|$Fu!jFu u7CSP+FH tFH 9u PPRFX FjPWF l$SJF8u HPQF0 6RSm|$F$P4l$ Fu"j$FuMu7MUQ+FH tFP :u ‹HPQVj FD$jPWF l$~uJF8(HPQFQ(R蟿K߿5PSs|$ 5jQWC l$ E=0h0PE=t1hP٣u5Wh0Rd| U݋|]X}G=t:hP舣u(t D$ 5Ph0Q,n| PSUV! D$?5Wh0RA| #D$PSD$ 6SQ]V0D$J_V0^[tu PPRD$tu HPQD$tu PPR$ÐF (`áSˢ.lK,    QF$| jL$QVD$ D$ V4 }YËT$jRV |jhVV4 |jjVV43Ƀ IỸT$$PL$QhRD$uËD$Vt$PS}3^ËD$tjV襒^^̃ WD$PD$ L$ QL$ T$RhhĤP3Q|$ ntJT$D$VRȕ;t*D$P| u NVQ^_ Ë_ ̃T$SD$PD$L$ Qhh̤R3P\$tj 5WhQ;tQT$VR);t.D$P&| 5WQ u VVR^u GWP_[̋Hu @hLQȹ3ø̋L$QҸnun̋D$Hu @hLQt3̋L$Au@hLPE3ËI QPrQVt$ FD$u@hLP 3^YËT$L$QjjhRt܋D$PʬtF N;~NPQq^YËFNPQq^Y̋D$Hu @hLQ脸3nn̋T$Wzu@hLPT_ËJD$Vr +΅|;~ɋ}3L$1J ^J _̃L$$PhĥQD$ D$  t$L$ RD$PQ` $}3ËT$PRp̋T$Vru@hLP脷^ËJ W<1J;s8 t@;r;s@L$9J r++_J ^QD$ $t $Qh̥PA uYVt$ T$RVh}3^YËT$|;}+ʋV ++щL$V PD$Po^ỸL$SD$Phإ3Q\$ u[USp;u]3[ËD$VWT$RP;|sL$VQ1otWWUst7Hu WWRD$ޅ~;}BL$D$PQk}Hu WWRMu EUP_^]3[_^][̋D$Hu@hLP襵3@ ̋D$Hu@hLPe3ËH Q+QVt$ FD$u@hLP+3^YËT$L$QhR/ tD$}F 9F~FFF ^ỸVt$D$PVD$ %|ST$|;}+ʋV ++щL$V L$PQumt#Huu PPRP3^QSVt$F3;É\$u@hLP<^3[YËD$L$QT$RhP:tڋD$u D$N D$u N D$N;~J;ȉN@FNVQR4;uFP^^ ^^[YÉFD$;}3NF H;D$|$ND$NH;D$}@^[YS\$SV3;u@hLP1^[ËC KUl$;|P;ȉK@CKQR4;u.0hRCP ]ss s^[ÉCSt$W{ ͋ʃS KՋ;ȉS _}C]^[̋T$$PL$QhR腽t$L$T$ PQR }3Vt$FW3;t P~~~~ @_^̋D$WPRu_SVWtQ\$L$ QT$RV_G tcD$ L$PQS7 tpu VVRW蛾uu OWQuX^@[_u GWPu/NVQ^[3_u WWRu FVP^[3_Vt$Ft PVD^VWh3;u_3^S\$S~ ~~;ljFu-0hPeH~u NVQ[_3^É^[_^Vt$FW3;tF98u HPQ~~~~ @_^QVt$ FD$u@hLP軯3^YËD$L$QT$RhP躺tۋD$u D$ N D$ uN }3F ^YVt$FtF8u HPQV誸^̃Vt$D$PL$QVȔ t"VB 8PhQ 3^hh5tT$APL$pH@ ^QL$ $PjjhؤQD$萒uYË$t PJYhYhjhhhphАOWP3^hl|ehh|TVjhVhW赕tu FVPhhhLW萕hh@W耕^_̋+ʉyHΉD$%D$ uc$X( %c$T' u$V3Ҿd^u u3̃u)u$W3ҿd_u uË̃ ~'u"V3ҋþdu þuA^ËIx>QimVQ+^øH:UVWmiH™ ™™k׍ ȃ tbt]uu;u3ɋT$E2~ t3ɋ<;~p2 +T$+_E^*]ËD$I L$_^ ]VsW|=QimȸQ+ȋƙ4~"u3ҋÿdu ÿuFL$ _^PD$fVNx=QimȸQ+ȋƙL A^+ʃ~=6e| =ɚ;3hɚ;PhаP̃V|U'M|/ *| ;3^á@h$Pĩ^Ë @h Q諩^Ë@hR蒩^̅|mh|L;G|+;&| ?B3á@hPFË @htQ.Ë@h\Rá@hDP̋|;|+ʉyHΉ̋|@B|*C‹i@B+ʉy H@B|Q|,E.‹iҀQ+ʉy HQ̋SUl$ VW| ~7p1| |'*@+1yH E9u+]u#3ҋþdu þu\$3|;~xu0w1~M_^][ËE_HE^ ][@;u G99 ~1E_@^E][S]QjD0_^][PV| ='3Ë hQUl$V|@B|*C‹i@B+ʉy H@B|<|&‹k<+ʉyH< |<|'‹k<+ʉ yH< EM||-*@+ʉMyHML$L$t$ QL$V^]| ='3áhPۥ̋T$3PحuL$H̋T$3P蘭uܧL$H̋P T$HL$@HP̋D$jPt$L$P T$ HL$@HPSVt$(PD$0Pt\L$ HL$P T$HL$PT$HL$ PHL$$PۈX @PHtp^[SVt$PD$$Pt?L$ T$H L$PHL$PۈX @PHtp^[̋D$VtSWt$|$\$_[t$6e|ɚ;~hɚ;VhаP訪3^ËD$jPtL$ T$@p HP^́t;F=t1hP胉uFH 8QhȱR4 3=u A ËL$Qh0RP̋FW3=thPt F tF_ËF=0th0Pt F tF_Ë_Ul$VW=u3Qh0UPtu_^]Áu 3F=t0hPJuVB 8PUhtQdF |WSNiQȸ‹k<+yH<ɋuFt@Uh@P螨 u NVQa|~@WUh R`_^]h̃ =SVt,L$QL$ \$} 4uxD$t A^ [ kt kucPUhL$$jdQi|~dsyd\+$D$RPVhWSi|M;sI+D$tPhгWSi|);s%؍L$+ًSR@_^][L$l páhP $_^]3[ p̋HP@ QRPh4Vt$FNV PQRh4PFPhĴ4^̋D$3Ɋh HQ̋D$HQr̋D$HQR̃SVW|$$G3ۃu[w F=0th0PTlt<~u6NI s,D$ jPV_^P @[ÍD$$PD$,L$QT$RhТhPW-th|$$D$ L$} _^3[ËD$ L$$T$ \$jPL$ T$t T$H L$@XPH؋_^[QD$ V$3D$u<t3^YÍD$Pt)H P@QL$BRlPhQ ^YË@hȴR跄^YVWht*hhV諉 Hu FVPu_3^ËL$ Wh0hlQwHu WWR_^̋L$VD$PhQ3& tD$T$$R ^Ë^̋L$VD$Ph,Q3֎ tD$}@hR蕃^SL$ QT$R\$WD$L$T$PD$(QRhP詇[^ÃP3Ɋh ST$T$V3ҊHL$L$I tPэD$PL$ QL$T$\$|'~hR^[jh(t T$ H L$@XPH^[Vt$F=WhPh|$G=hPhutF=t>hPmhu,F=thPQhthPigu,F=thPMgtYjV_^GS3ۊ PG_N3ۊ~ FQ^whjj+jW[_^á@_^́h/$$ HPQ3Ɋh RPHB QPhtL$hQbT$R/:$$(́h/$$HPQ3Ɋh RT$HQhhR bD$P9$Ġ̋D$hhP܄ ̋D$jjP3 QL$T$ $Ph0hh<QR݇uYVW|$hh$Wn u_^YËL$WVW Hu FVP_^Y̋L$AS3ۊy PAY[BT$̋D$HS3ۊx UVWQX@R+ȸ$I‹k+ʋyH}2K+θ$I‹k+ʋyH4|CD$;|\$3GWEUSh,_^][S\$Vt$F=tahP!duOh$Vt@^[ÃttD$ P^[^˸[+W~ t$ 3_t^[̋L$QAjjjjR3Ҋq Q ̃W|$OW3g L$L$T$T$GD$D$PD$QL$RhТhHPQdu_ËT$D$L$VRPQh*u^_ËWjVRc Hu FVP^_̋L$AS3ۊy PAY[D$X̋L$AS3ۊy PAY[T$̃ jP4Ph| *Vt$F jP4Ph|)NPQhX)^̋ Ph`Q辂 3̡h h`P蛂 3̡hh`P{ 3̡hh`P[ 3̃Vt$(F=t,hPcau8h<P {3^ÊF SF;D$$FSUh\$4Xu zugD$0t @h Qz][3^ËFh\$4 ؃u zuD$0t@hRaz][3^VN3f T$3ҊvW~FL$$VN+D$(FD$F L$T$|$x<|4L$QT$$RD$,PL$4QD$$|$(\$ |$VD$L$hRT$$PD$,QL$4WRT$@PQR$Fh\$8؃u yudD$4t@hPTyGu _][^|$x<|IL$QT$$RD$,PL$4QD$$|$(\$ }Mu UUR_][3^Ë|$Mu EUPNT$D$hQL$$RT$,PD$4WQL$@RPQ$_][^Ë@hRx3^QSjE؃u[YUl$VWhUyt;SV{H|$u FVPu$ u KSQ_^]3[Yy@\$hU|ytISW,{Hu WWRuXD$u HPQ uSSR_^]3[YuyUfttP5Ut7 u CSPu*u NVQT$ERPhXS% _^][YËL$UVQRhd6%_^][Y̋D$H Q̋D$HQ̋D$HQ̋D$P3ɊhH Q̋D$H t@ø̃SU3VW|$,D$ D$D$D$G3ۃD$w F=0th0P\\~F<nu.wt$} 8htQu_^]3[Ë\$D$(RPۋUH fUfQ@X L$_B^L$]H[ÍT$RD$PL$ QL$GOW VPQRh~tV;GHu FVP^G_W|$u>VG jP Ph|.tV/;GHu NVQ^G_Vt$FNFVFBFFtN9u PPRF tF 8u HPQV^%^̋F t#@=0th0P4tF øtËF t$@=0th0Pt4tF tNQ RPD$ P~^ Vt$F t$@=0th0P4tF tNQ RPh$)^ ^Vt$F t$@=0th0P3tF tNQ RPhD] ^Vt$F t$@=0th0P3tF tNQ RPhd] ^Vt$F t$@=0th0P/3tF tNQ RPh9] ^̅Vu 3^ËGN;tCQP2u5GH VB QP 8PhQS^3^VW|$u D$tVxG=hPb2t$ F tx@=0th0P72t\F Yt$ F t$@=0th0P2tF tNQ RP8hhPR_3^øtOQ NRQ RPh(Vt$ NQW1uTF t$@=0th0P1tF tW NRQ RPh8P(R_3^ËNjWQD _^QSVt$W|$\$ t D$ _^[YËFjWP _^[YQSVt$W|$\$ t D$ _^[YËFPW_^[YQSVt$W|$\$ t D$ _^[YËFHtNQWV_^[YËF t$@=0th0PT0tF tVJ (QPhRP_^3[Y̋FPWUubF t$@=0th0P/tF tOQ NRQ RP8hPPL$3QVt$ W|$D$PktD$_^YËL$VQRW _^YQVt$ W|$D$P+tD$_^YËNAtD$VRPWV _^YËF t$@=0th0P.tF tNQ RP(h,PO_^YS\$ UkVt$}QF t$@=0th0P.tF tNQ RP8hP%O^]3[ËNW{ QWSuZF t$@=0th0P.tF tWJ VQJ 8QPhhRN_^]3[ËFjWP tUjS uu OWQ_^]3[ËT$RVW؋ Hu FVPu OWQ_^][̋D$HPVjQRL u^ËD$L$ WPQV萁 Hu VVR_^̋D$HA u P̋D$HAu Pp̋D$HA u P@̋D$HAu P̋D$@tL$ QPT$u3VjP't/tL$Q~KPF uu VVR3^Ë^S\$ VW;jhX&t4D$tWFOF uu FVP_^3[É^_^[S\$ VW;jhK&t4D$tWFOF uu FVP_^3[É^_^[S\$ VW;jhذ%t4D$tWF/OF uu FVP_^3[É^_^[S\$ VW;jh%t4D$tWFNF uu FVP_^3[É^_^[S\$ VW;jhX+%t;D$tWFoNF uu FVP_^3[ËL$^N_^[̋D$HL$ QL$QT$RL$QT$`*D$L$QPRN*}3Pn[̃T$$PL$QjjhlRD$I'uË$L$T$ PBQhhlP>H̋D$Hjh+QH ̋D$Hjht2QG ̋D$HjhܺQG ̋D$HjhQG ̋D$HjhXQG ̋D$HjhQ|G ̋D$Hjh<Q\G Vt$NFFVFBFFN9u PPRV^̋D$HL$@[D$HL$P*D$@tL$ QPT$u3̋L$QT$ ?T$BD$0@WhtID$AVwG~t hhLFh hAF0hr^_Vt$VED2}lA DFtF8u HPQF tV :u ‹HPQVq DDI Dt^,8V8^̋T$BVt$ N;uF ^D$J L$=@^VW|$ GPA,tO Q>,u_^3u_^̋L$A P@P AHRRh>P̋D$HA̋D$HQD$̋D$HQBu ÉD$ZSVt$ F@@^ Wx tL$VBQL$PQS׃_^[Ul$tME=HthHPN%t Ut$VB8Qh RE ]_^3[ËFHT$QRS׃ ]_^[S\$CVt$W|$t VP׃uC t VP׃u3_^[Wh(tRD$GD$ AVwG ~t hhCFh hAF0hr^_Vt$FNFVFBFFtN9u PPRF tF 8u HPQFtV:u ‹HPQFtV:u ‹HPQVV^̋L$t?t7D$@u (hLQ$=3ÉL$ D$D$YAD$̋L$ u D$@T$B u!ɸxtdP(P<ÅuL$QhP@ T$QRhP@tu HPQ3̃WD$PL$QL$(T$RT$(D$PhLh3QR|$(|$,|$0|$$D u_ËD$;u3D$9T$ u|$ 9T$u|$;tD$ ;tD$;tL$;Vt L$;uED$ ;t=h("PG=;t D$;tD$98u HPQ i=L$D$T$ PT$P T$^PH3_S\$CVt$W|$t VP׃u8C t VP׃u&Ct VP׃uCt VP׃u3_^[QSVt$W|$\$ 9t D$ _^[YWVu_^[YS\$ UkVt$}QF t$@=0th0P tF tNQ RP8hPA^]3[ËNW{ QW.FuZF t$@=0th0P{ tF tWJ VQJ 8QPhhRA_^]3[WVtUjSd uu GWP_^]3[ËL$QVWZt؋ Hu VVRu GWP_^][VPj7 t! xVQ8Hu VVR^̃L$SUl$]VW}|$#t\$|L$(;p7;u\$jD$,9uZjQBV8 ID$uNVQD$T$;U9s7L$(D$D$,t$D$|#Ƌt$@s;D$,9uX;tXjQBV7 Hu NVQ||D$$T$;Pu;9su6xD$7L$(p;u D$u\$D$Tl$$}L$,]|$# t\$_^][_^]3[ËD$u_^][QD$L$ y0UhWx|$t_@ *]L$D$ S\$V#vG;7u D$u|$ t#ō@D$ ^YË^Y̋T$S\$W|$ h_[t 3̋D$L$jPQ W|$tPG=HthHPt4V5t#jWV u^_u FVP^3_hh8!3_SW|$ `_[SW|$ _[SW|$ p_[̋T$S\$W|$ heH_[SW|$ `0_[̋D$HuD$jh7hP7P SUl$ VW=,PMQ׃CEt;t_^]+[̅u3ËC<V;t3^fLf u \hf uݺlxT<UWDLÅtr8tg-w ƍPI@u+ƒruAF F 8u HPQFF8u PPRn ]^[_^juMu EUP uKSQ][_3^QL$ $Pjjh eQtN$hR t$jhP YË $Q> u8htR 3YË$VPu3^YËD$ jPtNpL$L$H ^YVt$VuF tF 8u HPQVV^̋D$@ tL$ QPT$u3Vt$F|APF PtN^Ë Q" uR tS F FtF u HPQ3^Vt$F u ^D$:Pu3^ËNA3;^J#щT$鐀VWPL$Qt-tT$ WVRD$VWPu NVQtu WWR_^hjhPh7h4!VWP蒹(VhHW: jVW@1hQ'VW0 j(VW(j VW jVWjVWHhT'VWj)VWhG'VWhW'VWj VWhN'VWHjVWtjVWfjVWXh8'VWGh?'VW6hP'VW%Hh>'VWh:'VWjVWxh3'VWlhH'VWdhJ'VWXHj VWPjVWLh9'VW@jVW8jVW0sh5'VW$bHhB'VWNj VW@j*VW2jVW$jVWj!VWHhM'VWjVWh;'VWjVWhA'VWjVWHjVWhD'VWhL'VWujVWgjVWxYhU'VWpHHjVWh7jVW`)j$VWXhI'VWL h7'VW<j'VW4HhE'VW$hC'VWhV'VWj VWh6'VWjVWHj"VWwhF'VWfh@'VWUh='VWDj VW6j&VW(HjVWh<'VWj$VWhK'VW|jVWth4'VWhHjVW`hP'VWPhB'VWDh6'VW8hQ'VW(shN'VWbHh('VWNhV'VW=hl'VW,hC'VWhS'VW h'VWHhm'VWhT'VWh:'VWhE'VWhO'VWxhR'VWhHhJ'VWX|h?'VWHkhK'VW8Zh'VW,Ih'VW 8h8'VW'Hh'VWhF'VWhL'VWhG'VWhu'VWh'VWHh9'VWh@'VWhA'VWh5'VWwh;'VWpfhk'VW`UHh3'VWPAh>'VW@0h='VW0hH'VW$hU'VWhI'VW HhW'VWh&'VWh4'VWh<'VWh7'VWhM'VWHhD'VWo Hu FVP_^̋D$ SV5FWtHXt uPQ3T$N(ɋ~,^0V(T$V,F0t u AQPtu OWQt u SSR_^[S\$VWtT$tFH(ɋp,x0X(P,@0t u AQPtu NVQtu WWR_^[̋T$tFH(Vp,Wx0P(@,@0t u AQPtu NVQtu WWR_^̋D$VPL$ VQ tu VVR^̡F@(Ul$W"|$G=hPE=tt QPtE=tumE=rt-=thPwtJRUct6G=rt6=thP@tPW-u 3;_]WU _]SVW7؃3~ QUuF;|^[_3]^[_]_3]̡FL$@(QP̡FH(T$ H,T$ H0T$ 3ɉH(H,H0̡FH(Vp,Wx0@(@,@0t u AQPtu NVQtu WWR_^VW=8hT讷VW tu FVP_3^̡F 0@(QPu*7t0PR~3á0P3̃$h/SVWD$,03ۃ\$ u艃t_^3[L$ v$;ut~;0} <^SST$RhVShH;uVD$hP |$\$ #;ËL$ ~Q  ~.u H;È\D$8;tPWVhWVhn ;tL$4VQjHu VVRD$ PTL$,_^3[v$̋D$VWt P3D$ VPtu NVQ_^Vt$ WtVPV{ 3D$ VPdtu NVQ_^̋D$jP4Ã$h/SD$$D$03;VW\$ uSSD$PhVShH;uVL$hQ |$\$ $;ËL$ ~Q  ~.u H;È\D$<;tPWVhWVhԨ ;tT$4VRHu FVPL$ QTL$,_^3[jt$̋D$ VWt PP3D$L$ VPQ tu VVR_^Vt$WtVPVy 3D$L$ VPQ tu VVR_^̋D$L$jPQO ̋D$ xjPQ- ̋D$VWt Pp3D$ xVPQ tu VVR_^Vt$ WtVPVx 3D$ xVPQ tu VVR_^̋L$VD$PQT$VRtu FVP3^̃ S\$UVW3j.Sl$l$l$ ;u8=heVW ;tu FVP_^]3[ Ët$$;u5l$(uD$htUu++QS؃ۉ\$ttShtU u]F=t%hPuVju.UVGWhhD$tu VVR\$D$tu HPQt u SSRD$_^][ ̃FSUh0Vp(3Wx,h|$l$H(H,H0.e؃bSh_!F3=rtM=thPtPV u!F=0th0Pt0~~ru~~ tj.WtxhtVuShX^"U轲tSP?^Sh4^SuhW^|$ttSh`^jSW[tMu MUQl$|$Sh]T$$jSR[Sh]tu FVPtu OWQtMu UUR_^][EtPqth$PuD$Phs3ËL$u T$ RQL$QhP_uu PPR3̋D$L$jPQo VWhD$ft+VŤh4PJ Hu FVPuL$Qhr_3^ËL$ u D$ uT$PD$RT$PD$RQPh,W u_^u HPQ_3^́h/$$W8$VhPu^3_$mU3~<|$ jVD$hPƄ$]t$t< uL$ uV;]uL$ I< t< t< uAQ)^_$mË$3_l̋D$SUl$ ]V0W3Iu@F=tt QPt~tu~C=rt5=thPLRS4tSWfuj蜿/F=t!hP`uVjt+jWS, Hu GWPl$ u KSQu VVRFp(T$ ux,t$>x0:3;ωx(x,x0t9:u  u AQP]ۋ6_^][;t4 u KSQD$߉]_0^][u VVRl$D$]0_^][̋D$L$PQhPR̡h|P̃ FH(L$P,ST$H0VL$WT$@(@,@0RD$PL$Q\$,S}fu?*T$ VhR} t!u FVP|$tzW%u*L$ VhQ5 tu VVRSWt*D$ VhP tu NVQT$ hh,R tqD$;L$ hQbuDT$ Rt,D$ VhPx tuNVQT$ hRu D$ hhP- tL$T$ D$QRP _^[ ̋D$VjPtSjFFF uu0FVP3^hc~Fuu NVQ3^Ë^̋D$ Vt$NQ PRu^ËF F 8u HPQD$ F V zu'FtFu HPQV B F3^Vt$FtFu HPQF tF u PPRFtFu HPQ3^Vt$FNFVFBVFvNV^S\$CVt$W|$t VP׃u&C t VP׃uCt VP׃u3_^[̋D$@ HtIt D$uH L$iD$c鬦Vt$F WPt8Nq j.VtpViD$ uu WWR_3^ÍD$ WPОD$_^̋D$H tPt@RQPjQHQjѻ ̃Vt$WD$ F=Ht-hHPu8hP_3^ÍL$QT$ RD$PVǺt7|$L$T$QRW |D$PL$ QT$RV萺u͡@_^̋L$Q T$T$B D$Vt$FuFu^ËFF^W|$ u8hxP_ËG=Ht+hHPu 8hXQ_Vt$ FtFu PPR~^3_̋L$A u ËA A ËD$u8hP(WP:u_Vt$ F tF u HPQ~ ^3_̋D$ S\$ Vt$ W{PSVf u_^ [Åt>FtFu HPQuS V@_^3[~^v_^3[Vt$FtFu HPQVi^Vt$NFFVF3ɉBNF;tNu HPQV VV^S\$CVt$W|$t VP׃u VWS _^[à D$SVt$W|$ P3WV\$\$ \$8 GL$ QT$RD$PjjhWiF;t^u HPQD$FF;t^u PPRD$FD$ ;tYN;t^ u AQPD$ FjBSWW ;u _^[ ËF F 9u HPQ~ _^3[ Vt$FtFu HPQFtFu PPRFtFu HPQVa^Vt$FNFVFBVFfNV^S\$CVt$W|$t VP׃u/Ct VP׃uCt VP׃u VWSc _^[SUVt$FWhc؃tTFPAu u>KSQ_^]3[j蜳u$Mu UUR u CSP_^]3[ËFt VW O Ft FG OoWS Hu KSQWWR_^][ËFtsFtlhu؃bjѲ@Ft VW O Ft FG^OPv Ft&HtV_^][ËF P_^][hc؞_^][VW|$ w ~u=Gt6ju_^ËG @ F O AFGWVGtPGVPj.OVQj u VVR_^̋D$YJQ$øø ø øøø=6tNQw^$l ø øø ø)=tA w$=t=yø ËIOU[agm    UIm        Vt$FW3;t~u HPQF;t~u PPRF;t~u HPQF ;t~ u PPRV_^Vt$FNFVFBVFVNV^S\$CVt$W|$t VP׃uACt VP׃u/Ct VP׃uC t VP׃u VWS _^[̋D$ L$Vt$PQV; u ^ËFu^WPWut_^WF tF u PPRFWF VtF_3^SUVt$FWhS؃tTFP1u u>KSQ_^]3[j茭u$Mu UUR u CSP_^]3[ËF t V W O FtFGoOovF Fh苙؃tjjF t V W O Ft FG OWS~Hu KSQuWWR_^][V}_^][̋D$ UVt$ W|$oPWV u_^ ]S3ۃ| F;t^u HPQG FW;t+t-hR~Hu GWP[_^]ËF;t^u HPQG FF;t^u PPRGFF ;t^ u HPQGF F$;t^$u PPRGF$u GWP[_^3]Vt$FW3;t~u HPQF;t~u PPRF;t~u HPQF ;t~ u PPRF$;t~$u HPQF(;t~(u PPRVB_^Vt$FNFVFBVF&NV^S\$CVt$W|$t VP׃ueCt VP׃uSCt VP׃uAC t VP׃u/C$t VP׃uC(t VP׃u VWS _^[̅ҋu܄Ê t\uBJBuQSUl$EV3;tPh؃;u^]3[YËC=0th0P u^][YËE;Wt'@=0th0Pt |$t$E;t&@=fthfPt D$t$;u9t$u_^][YËs@tEpuPt͋D$tMD$t$MQRUPPSRh<4UPCPh4VW MQQPSRh$VWW蔔Wu _^][Y u CSP_^][Y̋D$@ Hu H L$5tIt D$P T$D$c̅u8ShpP ËF=ftdhfP/uRF=t+hPu 8ShPQ VMut ËV3WPOu_Ëtu HPQ>3_̅u8WhpP; 3ËF=0t*h0PPu 8WhQ 3WPɒu_Ëtu HPQ>3_̅u8WhpP 3ËF=t*hP谾u 8WhQg 3̋D$VpW_^̋D$VpW_^̋D$VpWeM_^̋D$VpWe_^̋D$VpWe _^̋D$SUl$VpWheuCL$qet.}H}E9M|IMu PPR_^]3[_^][̋D$SUl$VpWhuCL$qet.}H}E9M|IMu PPR_^]3[_^][̋D$Vt$WP Mu_^ËFtFu HPQ~_3^̋D$Vt$WPLu_^ËFtFu HPQ~_3^̋D$Vt$WPLu_^ËFtFu HPQ~_3^̋D$SUl$Vp W(uBL$qet-}H}E9M~Mu PPR_^]3[_^][̋D$SUl$Vp W(uBL$qet-}H}E9M~Mu PPR_^]3[_^][̋D$Vt$WP@Ku_^ËF tF u HPQ~ _3^̋D$Vt$WPJu_^ËF tF u HPQ~ _3^̋D$Vt$WPJu_^ËF tF u HPQ~ _3^̋D$Vp$Wl_^̋D$Vp$Wlm_^̋D$Vp$WlM_^̋D$Vt$WP`u_^ËF$tF$u HPQ~$_3^̋D$Vt$WPu_^ËF$tF$u HPQ~$_3^̋D$Vt$WPu_^ËF$tF$u HPQ~$_3^QSUVFNWL$tu HPQFntEu PPRF^tu HPQF ~ tu PPRF$$tu HPQT$D$L$Vh0WhfShfURPh0hQ 0uT$_^E][YËD$E?6@_^]3[YVt$FW3;t~u HPQF;t~u PPRF;t~u HPQF ;t~ u PPRF$;t~$u HPQV _^Vt$FNFVFBVFFNV^S\$CVt$W|$t VP׃uSCt VP׃uACt VP׃u/C t VP׃uC$t VP׃u VWS _^[̋D$ Vt$ W|$ PVW u_ ^hV`_^̃ h/D$Vt$(D$PV$uL$QVt3^L$I ËD$W|$ W;udFH y=PhjT$R!=hxjD$P hpjL$Q腱V$NRWD$PQh(V$RHPFWPh|L$8_^H ̋D$L$T$PD$QL$RT$P`QRhP ̋D$ Vt$ W|$ PVW: u_ ^h0V_^̃3Vt$D$D$D$PV#uL$QVt3^ËD$W|$W;uAFL8QhT$jRIF$VPWL$$QRh[$_^ËN$VQHPWRh7_^̋D$L$T$PD$QL$RT$P(QRhPB ̋D$ L$Vt$PQV u ^ËFUntEu PPRFS^tu HPQF W~ tu PPRF$$tu HPQT$Vh0WhfShfUhh R(u_[E]^ËE?6_[@]3^̃ h/D$W|$(D$PWuL$QWt3_L$F ËD$Vt$ V;u]GH q=PhjT$R!=hxjD$P hpjL$QW$RVD$PhdO$QHPVh,L$4^_E ̋D$L$T$ PD$ QL$ RPQhR&h } hU'h} h7'h} h'hx} h&h@} h&hp} h&hR} h&h4} h&h} he&h} hG&h} h)&hx} h &h} h%h} h%hHb} h%hD} h%h&} hu%h} hW%hh} h9%h} h%h} h$h`} h$h(r} h$hT} h$h6} h$h} hg$hH} hI$h} h+$hh} h $h0} h#h} h#hd} h#hF} h#hP(} hw#h } hY#h} h;#h} h#hp} h"h8} h"ht} h"hV} h"h8} h"hX} hi"h } hK"h} h-"h} h"hx} h!WhjhPh7hLBg ShH% 7؃u h!VSuu h!PhWq QhV-t hxL!RhlWpPhlVt hx!p pQh\WppRh\V谬t hx 88PhPWdp 8QhPVrt hx Rh@W%pPh@V4t hxS  Qh0WoRh0Vt hx Ph$Wo Qh$V跫t hxRhWjoPhVyt hxX XQhW,oXRhV:t hxYPhWn QhVt hxppRhWnpPhV辪t hx8 8QhWqn8RhVt hxxxPhW3n xQhVAt hx`@@RhWm@PhVt hx" QhWmRhVĩt hxPhWxm QhV膩t hxRhW9mPhVHt hxg` `QhWl`RhV t hx(((PhWl (QhV˨t hxRhxW~lPhxV荨t hxX XQhdW@lXRhdVNt hxm  PhXWl QhXVt hx/RhLWkPhLVҧt hx Qh@WkRh@V蓧t hxxxPh4WGk xQh4VUt hxt@@Rh(Wk@Ph(Vt hx6 QhWjRhVئt hx``PhWj `QhV蚦t hx((RhWMj(PhV\t hx{ QhWjRhVt hx<Ph̋Wi Qh̋Vߥt hxRhWiPhV补t hxH HQhWTiHRhVbt hxPhWi QhV$t hxCRhWhPhVt hx QhWhRhV觤t hxhhPhtW[h hQhtVit hx00RhhWh0PhhV+t hxJ Qh`WgRh`Vt hx PhTWg QhTV讣t hxRh@WagPh@Vpt hxP PQh$W#gPRh$V1t hxPPhWf QhVt hxRhWfPhV赢t hx QhWhfRhVvt hxppPhW*f pQhV8t hxW88RhWe8PhV^t hxjjhp 7u h u KSQ[_̡7t78u HPQ7Vt$t!F=0th0P貟tF^3^Vt$t!F=0th0P肟tF ^3^̃$VFtmPL$QRuWD$ %=@uGj pPjhQ衽pVRtu FVP3^$Ë^$S؋F F U3;u HPQFF9(u PPRF<F<9(u HPQW^ ;rT$jbWFVnjUWFn Ӄ؉F0n4n89n]F<[u3ËD$FVt$WPI@u+‹u@h P賷_^SU-jUVՃ+WHQPӊ  Hu NVQ_][^W|$ u!"uhPޗ_ËG=0tYh0P~uGu֋L$VQQu^_jWV Hu VVR^_ËG=0th0P}tu@hLP@_ËL$WQ<3_Vt$F=fW5hfPA}F= hP}hVGjjWP Hu GWPF=ftthfP|ubF=t=hP|u+ 8hQIHu VVR_^VHuQFVPEV Hu6NVQ*8hR_^V虉V }@WhPǜ _^Ë_^QL$D$VW33ɉD$t[A=0t(h0P{u_3^YËL$A0uL$T$D$QRP _^YËy4q8D$S\$HU-xD$~tISՃtYt3 uSՃtG u   uL$A L$t L$IɉL$utL$$ɋT$ty4q8tSՃ t SPD$|$3;][_^I#ỸVt$W|$ G=0th0PfzG0uD$L$PQjV_^S\$Uo48d$T$$RSjVt$ tv+ЉL$D$@ D$u  F#t u3C uF3JuD$uut T$$B tD$(L$h4]x8[_+^_3^Vt$F@t VnFtQFtJSW6FPVWeu(=׋׋ QPRh4(_[F,PF tF 8u HPQFtF8u PPRF$ Ë$4 L$QhR艘 tUG;ʼnD$tSWD$$ND$$t$,D$($8 HPQ+VST$4RR;؅D$$L$(Wj SPL$4Ӌ uxD$,=D$,L$Pu5VXED$͋x|$t$0ʃ*D$P>L$L$|$F+RWDD$yPD$ PID$JD$8u HPQE+Rj VӋ uD$+UWPD$, }9D$(sT$UR_DD$L$ $8 jPukD$D$8HPQ$8 ND$ A tpR膏FPm hQWT$VR<Hu FVPD$t0L$PQOHD$JD$8u PPRtD$u HPQD$D$_[tD$8u PPR$( D$^]&$ SWF tN$+N(P耀F W0F u a_[&VF VRWPySAu;NA t2pR%FPF t P~ _[ËF F(ljF$_3[S\$C Ul$Vuŋ}^]3[ËC(s$+uD$PjB^][WVj PP tS|$@D$+s( >QjAtnD$΋s(|/ʃ;C$C(uy_^][ËC T${(͉D$QPSC 2 uL$Q~_^]3[ËT$΋|*ȃL$Q~_^][̋D$Hu@hLP%3h jP tHuu HPQ3̡lXUl$ tEPhD7ujd7M;u!MLQ@hlR ]Åt!E LP@hDQ7 SVt$$EV ^WST$ \$cjD$\u h 9EjPVD$82EU @ʋ3Ƀ ҉D$ L$@43~9 t T$,@;| ;D$,KQWőu hL$,D$A;L$,ȃ=|dL$(PQ葧 7F;uULR@hP 8uL$(VQCT$FL$RPQ=c T$QRbL$D$ A;ʉL$ \$D$ElXtkMQhD3~E\$I΃L$tSݦPhD D$F;|hDW_^[]̡lXthDSVt$ 3ۅ~-W3FL8Džu PV,C;|_^[huY 77V;v QQ;wA^̡7u7uËPD$HX7́h/$$ tV$ F=0h0PljF=tWhPLjuED$ PL$QVh 8hpRك3^$ËF=|)@hDP覃3^${ËV j$QPRYPu$‰T$p@u+ƉD$ FVT$D$ T$L$ S4t)8RӃD$t @D$u8u*@h(P[3^$WL$QP0h\$ =D$;vƉD$L$ ;uAQhT$(hRd @D$0PQ_[3^$RÊtRӃD$t;@D$u;tu @hQ-_[3^$À8tˋD$ PhL$(hQ4d@T$0RP_[3^$%D$DzT$ Rj\$D$$$(_[^c̋D$Hu 7H7ÉD$̃Vt$t$F=thP_gtF^;X-^ËF@0to@PthVЋtoF=t1hPgu 8hQ趀X-^ËFH\$u VVRD$^á8hPwX-^̃$h/VD$$D$4PhL$ j Q{bT$@BL$<$D$ PQVh<-uF>t"W=R׃tFFu>_u .F0FL$$^$̋D$ L$PQL$ jd[ V7F=ftohfPeu]F=t#hPeu^V^{X-Dzst^F3^̋D$L$j Pjd ̋D$L$jPjd ̃hh/L$lD$dD$t$PQjdL$ ST$|RD$P<L$x3|̃hh/D$dD$ljPjdL$ L$ QX8L$tFx̃hh/D$dD$lj PjdL$ L$ Q8L$txU$E@SV\$$u F3=W\$<hPd&D$($FuA=ft/hfPcuvthVctH%=fhfPcF=t$hP|cu_^[]%D$(Dz3D$(%zV|$s;D$tD$\$(D$'Vs؃u#|t/}~D$3\$(D$0wVx3}D$(M\$(UD$(D$$P$D$0؃ ;zv3\$(%}D$3ۅD$}Vwq/D$(L$Q$\$4D$ $>n%D$(DjD$RWi؃t}u GWPL$QVi؃tYu VVRD$PSh؃t5u NVQ\$URWVz |PD$\$tu FVPtu OWQt u SSRD$_^[]%3\$(FFE $D$(DD$D$Pn_^[]D$(DD$D$PA_^[]D$(AD$D$P_^[]D$(uVD$D$P_^[]D$(z+D$D$P輑_^[]D$(AtՋP\$藑_^[]ËD$P聑_^[]ÍI)X̋D$@$^ỹSVt$F=Wt.hPQ_u\$ |$ M}D$ _^[F\$ t$$F=t.hP_u\$|$$ }D$$_^[FD$D$ 7\$u7u_^[ËPD$HX_^7[̃SVt$F=Wt.hPq^u\$ |$ m}D$ _^[F\$ t$$F=t.hP.^u\$|$$*}D$$_^[FD$D$ 7\$u7u_^[ËPD$HX_^7[̃SVt$F=Wt.hP]u\$ |$ }D$ _^[F\$ t$$F=t.hPN]u\$|$$J}D$$_^[FD$L$ 7\$u7u_^[ËPD$HX_^7[̃SVt$F=Wt.hP\u\$ |$ }D$ _^[F\$ t$$F=t.hPn\u\$|$$j}D$$_^[FD$%DzhPu_^3[D$ 7\$u7tԋPD$HX_^7[̃SVt$F=Wt.hP[u\$|$ }D$ _^[F\$t$$F=t.hP^[u\$ |$$Z}D$$_^[F\$ =|X|jhPi |'%D$ Dz hQt_^3[D$7t$ \$u7tԋPD$HX_^7[USVuF=Wt,hPlZu\$}i}E_^[]F\$u F=t,hP,Zu\$} )}E _^[]F\$%D$DzhPs3_^[]D$D$T$%D{D$ c$XD$Dz %X-5D$D$\$փ8u0 lD$D{D$Dz,""փ8"u%D$Dzփ8t#փ8"t@Pr3_^[]D$$_^[]̃D$ @7$u7uËP$HX7̋D$Hu@7$u7uËP$HX7̃D$ @7$uc7uËP$HX7̋D$%@D{3̃Vt$@=fhfP-SA=tMhP Su;B=thPRu ^ËD$63^ËQh\$X-D$Dzlt^D$$T$A3^ËP(D$7u7uD$3^ËPD$HXD$73^̋D$PvQ$^̋D$PS $Q$؃ $z%$Vz$#PM$$]̋D$Hu@7$u7uËP$HX7QD$=T$ L$$nt QRPm YÍ$PhhQRsuYË$@=0t h0PPu $QgYË$jRY̋D$ L$VPQh[ u^ËD$WjPuu VVR_3^F_Hu FVP_^̋D$@$h Vt$ F=0t1h0POuFH 8QhRp 3^ÍFW3u7Le3uR7t8Ht%Hth`7_3^hL#_^h8"_^h0"_^Ë @hQh_3^̋T$D$PL$QhRsuË$SVW3u 77!Le377D$U03u3]_@^[ÿL3u83u,;tL$@Qh`Rn ]_^3[á@hPg]_^3[Ë @hQg_^3[̃VW\$t$3u3ҹt$H1T$D$K;֣77u_ 7 7^S13ۍT$ ;K[_ 7 7^̃p7h/SUV33;։D$xWt$t$5757BE3Ⱦ9Yu9tG9Yu9tGNu܅2tP 7 79Xu8u7P7P;u8u7P7IuRD$@D$L$υL$R`XL=@h@P׃u L@hkQ׃=ctkctkT$QU+LUPV@hR׃=`X~j7t_$u>~u0>t+j VjdL$$LD$$PQV@hR׃ KumuL$|_^][p̡7 mD$Vt$WtD$%z D$ D$ SD$P$c AzB%z5\$K\$}0~S$ 37%D3u%D{ %% ct3C\$}4L$ ш ˈ7[_3^ ؋ hpQc[_^ áhTPc[_^ ÃD$\$u2D$t7D$T$T$T$43 ÃuыD$tɋD$̡7D$ Vt$ WtD$%z D$ D$ SD$P$c AzH%z;\$K\$#}3S$ 3:%D 3u%D{ %% D$D$D$}% cةD$t*L$AD$tCD$\$}\L$D$ Ј ÈD$7[_3^؋ hQHa[_^áhTP)a[_^ÃuLD$ tQD$T$T$T$T$T$0fT$43ÃuD$ tD$Q7VD$T$ t 23SW =u@hP<`X-_[^Y * υɉL$ D$ }% u %P$ t_[^YÃuD$tL$ T$D$^YÃuD$tL$ D$$HANuD$D$D$^Ỹh/D$7V D$ D$t43ҊSW u)@hP_X-_[^L$ 3Ҋ0   ( ʅɉL$ D$ }% (t$ D$ }% u %W$ f_[^L$EÃu+D$ t0D$@T$D$D$^L$Ãu؋D$ tЋL$D$HANuL$D$ L$L$D$D$^̋D$H(t @@PËHu$u FVP^[_3]ËD$(uFL$N8FT$(N RT$(j\RtD$4N T$0PF(j\L$$RSD$L$T$PQR|M _^[]̡8t/$H P 8%88J8uء7tu PPR7Vt$VFAF^UVh8 t$3;D$ n$S\$FW^ H4NnnxWw|DUWG=0t3h0P4u!G=thP4u8B;ʼn~n n(u+h tX;ţ8uu FVP_[^3]PS];tF(F~t hh\G hhBG8hx_[^]^3]̋D$x8 tjCh[3Ë@̋D$x8 tjMh[3Ë@ ̋D$x8 tjWh[3Ë@(̋D$x8 tjahW[3Ë@W|$8 tjkh&[_Vt$u3"tAF=thPD2t%GtG8u HPQw^3_ËhRK^_̋D$x8 thhZ3Ë@W|$8 thhSZ_Vt$u3?F=t3hPu1u!FH QhR&R ^_GtG8u HPQw^3_˄uáh4PJ蛄th4PJ3Vt$F u06F u^ËF F ^Kth4PGJVt$ u 8hQ&J^ËF=Ht+hHPI0u8hlRI^ËL$A Bq tu HPQ3^諃th4PI3ËL$AA{th4PwIËD$tfxPu]H(T$VqJtI;t'RVQRP@hP7P^Ë0JF0B u QQR3^á8hPH̋L$AA軂th4PHVt$ t=F=0th0P.t!L$ABqu HPQ3^Ë8h$RYH^;th4P7H3ËL$Au ËAAth4PGVt$ u(3L$Atqtu PPR3^Åt֋F=thP-u 8hPQG^̃SD$PL$QT$RT$0D$ PD$0hHL$$QhPh hdRP\$4\$8\$0O,twD$;t7@=0t-h0PK-u 8h@QF3[ËD$ ;t7@=t-hP -u8hRF3[ËD$H(VqL$A=t_hP,uIt"9\$u$8hRdF^3[ËL$;t#8hPAF^3[ËL$;u3A;t&L$Q4P@VRhPM^[Åt3҅~ 1~qu&B;|L$T$QR~u&^[ËNQ 8Rh|PL ^[ËD$ ;t FF8u HPQT$ VD$;t D$FD$;t L$N^[Vt$FNFVFBFF$t VoFN9u PPRF F 8u HPQF(tV(:u ‹HPQFV:u ‹HPQFtV:u ‹HPQFtV:u ‹HPQF tV :u ‹HPQFtV:u ‹HPQV^̋D$P@PPhxtT S\$CVt$W|$tVP׃C t VP׃unC(t VP׃u\Ct VP׃uJCt VP׃u8Ct VP׃u&C t VP׃uCt VP׃u3_^[̃SUl$VW}3;t2G=thPg)tG WD$D$t$t$\$$;C=HthHP!)S ;uP;uE_^]3[ÍOQWT$,R3Sl$4t"IFPVL$,QSuŋl$+33UL$t$ RT$QRPWVMPE VjPQQ(t W_^][̋D$=u3D$:Vt$FNFVFBFFtN9u PPRFV^ËD$@tL$ QPT$u3̋L$AtAu HPQ3̋D$Hu hQ$A3ËD$ uT$BPT$ D$L$KQL$ $PjjhxeQ$tDT$Rhxe&t.$PBCu# $QB 8PhQG YË$T$A$B3Yjh!t L$HVt$FNFVFBFFtN9u PPRFV^ËD$@tL$ QPT$u3Vt$FtF8u HPQF3^̋L$AuhP?3ËAAQL$ $PjjhdQx#tT$Rhd$uYË$D$ $H3Yjh`D t L$H̃D$ @UVWD$D$ hd$t9D$ 8EQEh3\ 3tuP 3uL$ AD$L$ 녿@3uL$ @AD$L$ U03u L$ D$AL$ ((3u.hP=L$ QD$$RPM_^3]Ë PhQDT$$BL$(PQL_^3]_^]̃ 8SU3W33;ʼnl$ uhxG;ţ 8u _]3[ËL$ tt _][VT$ Ju3;tt 9^NL$u39FuUu`T$$\$RVtkFˋ\$A 8E땃u"L$uV:u\$D$En\$E_h8P3^ËD$ L$PQVF u VE3^Ë^̉@̋3;̋HPQ̋PV02VQPA^̋;tV QHN1@̋ 3;t @;uV3;tF;tPW u 6;u3^Ã^̋;t PP;uVt$FHT@tt VЃt F~HF3^V7;tFjNh0(QP\6 ;u^Vt$FHT@tEt VЃt1NɍFt u"HJL$ QPA@3^V3;tKFt NI\FSh(PFы NHONw1>F;Ëu^̋A=tu 8PQ ËPTt3Ʌ= u Qk3Ul$Vu;t{SF=tNu 8PQ)PTt3Ʌ= u+QtFAGFw0>F;݋u[^]Vt$FHT@t@t VЃt,~u&NVFJL$ QPA@3^V7;tFWNh@*QP\6 ;u^̃T$W:3;L$D$L$ L$SUVG@T@/t\Xh~Ut;tMVqF t-~t'NVFJT$PL$D$L$t;uL$T$(;uT$;tud$YyjWS? uS@ u HPQu WWRL$;u!FAL$,AFq0L$D$D$;uD$^][_̋GVpt'F=0th0Pt VtL$WPQh蘵^W8ttu Q_ètGP WRQh,Y_̡8Ul$VW;u j8u hD;t~$8 wuNF=tu 8PV)HTt3Ʌ= u!Vt8VR|'?;u ;tEACE(_^[3]_^]Ul$Vu;tqW8 ~t8WPx&OA`tAWЋHu WWR9uuFACFs0Fu;u_^]̃0 8%U\$ l$8VW3;lj|$@|$u#hX{?;ǣ 8u h`98$8;t:WhP4: ;u6V讳\$Hu FVPUh<;h1 3;tA;uQhh|hkM} DmL;|M4$8Iu;~5Tm  0;tJ1NHJ@OuߍDmS } 8l$\$;td$HH;u3;tVjFh0(PR\6 ;uL$0ыL$4T$0O;t ;tEACE([D$ T$0RD$(L$$t$$ǃ;t!NT$ RFh@*PQ\6L$, ;uߋD$0T$0;‹ T$D8BT$Dt~stY~tuPFxt3G=0th0P/tWRVPh h)VtPh htNQ VRh h,$8t_8tVjhP7 uC49V+d$H\$u FVPD$$h諰 L$0;T$0UR\$L؍D$8\$LP D$,l$ L$, ;8EstY~tuPVzt3G=0th0PtWVPhh)VtPhhtFH VQhh,ׯ8T$ ;ft$Dt)uuh觯U.Ph蓯 L$Q\$$2:1[t.8uh8P9hh_.^]0V3dI1;qJ4}^R%^ll̡lPEHQL$T$ $PhHhQRD$8t^$|D}? 8t 3PuYP8pP8MYá@hP/3Y̋D$h8hP: u̡8D$D$)z̋D$h`hHh0hPb:u̡` H0PQRh̡d L4PQRh̋L$QV3~t$ 91t @;|3^ø^Ul$VW};t=G@\w;t(;t$t"Sh4VЃ tL$VQ|?;u_^]_^3]Wju_S\$V WVyth|^[_u GWP^[3_̋D$L$PQa3҃‹Uju]SVW|$G3ۅ~M 7FHT@t.t VЃtF@\tUh5VЃ uL$AC;|_^[]Mu UUR_^[3]Wju_S V3;tF;tPWu6;uh|^[_u GWP^[3_VhjhhhPh08uPh8PAh0V $8uh虝$8u-jh$V |tjhV |`jhVs |LjhV_ |8jhVK |$j hV7 |j>hV# ^̡8t3j88̋D$D$$Vt$Ft hhFFh hAF0hr^Vt$Ft hhFh hAF0hr^̋D$P;tPHHHPQ@̋D$P;tPHHHPQ@̋D$VPb2u^,F4 0@;4~8lt/t+8u",*u8)8F^Vt$FPrt p^Vt$FNW|$ǍDP@t xp_^̋L$AP@Vt$ ֍DPQW4u^+p^̋L$yAtHPQ 4~I 4D$t2̋L$yAtHPQ 4~I 4D$42̋D$@tL$ QPT$u3VW|$ GOwFFBGt W{~t hhZF hhBF0hpGtH$tOWAVFVQGtGu HPQW_^̋C FUl$Vst@hP'^3]ÅF$~t8Ft1jWЃt ^ËL$QjW }^h^̋҃¾A8Swk(G$GsttuNA9#u;\$A3[Ê!uA3[À&uA3[Ã3[ø[ÐGFFF GVt$F=t)hPuhTP3^ËVD$;}_t$ L$t*;ctHRPQ 8Vh Q"3^;ctHR8PQhRe"3^ËL$;~Zt$ t);ctRQP8Vh P,"3^;ctRQ 8PhQ"3^Å~D$N W9pJ>u_^̋D$t+xHthh)3PDuËD$ 8PhQ! 3̃h0P(u VVRT$`t$\_^][<ËGD$(|$G|$u.u*u NVQT$`t$\a_^][<Ë|$?CD$uPu*u VVRT$`t$\ _^][<Ë|$d#T$:L$D$pʃL$,ɋL$$tJT$ 7tK;ȉL$~u NVQT$`t$\Ź_^][<ËT$( FD$,PI@u+;t*u FVPT$`t$\Ź1_^][<ÍCD$uPL$u*u VVRT$`t$\Ź_^][<Ë|$dpt*u FVPT$`t$\_^][<ËL$T$:t$,ȋD$iD$HPQD$L$X_^]3[<ùp똀9#7Ɖ7Pt$X3ۃT$,\$(t @D$(XE=t2hPuT$`t$\ŹT_^][<ËL$U D$,UtD$(A_^L$L$L]3[t$X33҃tW OlgT$`t$\Ź_^][<Ë77Ƌt$PEXPF#T$,t$tT$`t$\Ź_^][<@TC CjUЃtT$`t$\Źr_^][<ËT$,RjUS Zt$X33҃tW OtL$T_D$ ^]3[<ÉD$L$T_^]3[<ËT$`t$\Ź_^][<ÁuNUB t$\PD$dhhLPV_^][<ÐICOKCLMMZ_ZZ7IONxUNUJ{KLL'P\_Y[HR] Vt$ 8(D$ uGL$ T$@D$ D$$PD$jQL$ RT$ PQL$ RD$(PQ$u D$ L$ ^ËT$$D$ L$RT$PQL$RD$PD$$QtʋT$^́h/SU$V$3W$D$7;D$ D$D$$D$tW%PGtetL$EAL$tI|u L$L$$:tA;tB(tC7u39E$t= hQhpR|$ʉ|$ ġh<9D$$}T$T$$$i9$uJD$D$\$$;$ $QRhtuG$RaD$~3~$4t$VQ$uG;|b8VhRd wF;V;L$;3~w$$ $$8|u@$L$Q$h$RD$4PSQ$RP G;|L$D$;$$$:|u @$$ $QR>D$P$h$QT$4RSP$QGV>b Hu VVRsL$WD$D$$P$L$QT$(RPD$0$L$A=0th0PT$RD$ 34͊:tA:Fu3L$QL$$PW\$4D$$ ȉL$dx3~#-X PPՃF;|L$ 0QQR!$S$D$E;D$L$ PWEU\$4LD$$ ȉL$x3D-X RPՃF;|L$D$ȉL$qx3-X RPՃF;|L$L$QL$$PEU\$4D$4D$$ ȉL$ x3Z-X P5PՃF;|L$0ɃtyD$G;8UhPZD$$ ȉL$x3~&-X I RPՃF;|L$ `AQPQL$$Q$T$RD$(PQ(D$t8u HPQ_^][$wĜË8hRD$ ȉL$x3~#-X  QPՃF;|L$ QQRL$D$ uq;|ctk;|;uq;q|qD$uYcLWUVRQPh$hR$$P8P$_^]3[svĜù́h/SU$$$VW3|$|$ D$|$l$$|$$uE;wAk$kuD$G|hW˅uhWO뵅uOuD$릋΁Qt etD$녃|uT$T$st$l$ t$t hWD$}D$D$ۋl$$$ D$u6$zucQLPhMQPh=|$$uKu cLQPh$hQ8$RPL$Qh$R$L$4Q$RQ$RP T$RPD$0P\$8N hXQ@$B=t"hPeuh P $^;\$Y9\$O3~i $}|uE$L$Q$h$R$D$4PQR$PQ G$;|EPE<(<|t|<:tx<;ttL$$QhRD|$ j_^][$rĜËT$RPW\$4L$,|$ jp_^][$rĜËD$t8u HPQ_^][$rĜËD$ L$;ًT$|ƒctk;ً|;uq;ٺq|qD$u cL D$SWVRQPh$hR[$$D$ L$ 8QR$_^]3[qĜgYgvggggVW|$ tnG=thPtRt$tF=HthHP}t.L$t&D$tT$jT$T$RPQVW_^hh_3^VW|$ tnG=thPtRt$tF=HthHPt.L$t&D$tT$jT$T$RPQVWn_^hhY_3^VW|$ tnG=thPtRt$tF=HthHP]t.L$t&D$tT$jT$T$RPQVW_^hh_3^VW|$ tnG=thPtRt$tF=HthHPt.L$t&D$tT$jT$T$RPQVWN_^h1h9_3^QT$ jL$D$QD$D$RPQT$ jL$D$QD$D$RPQT$ jL$D$QD$D$RPQQT$ jL$D$QD$D$RP!̋D$ T$jL$QD$D$ RP̋D$ T$jL$QD$D$ RP̸@̸X!̋L$$$PQPt$ËD$$̡"8SUVW";\$}/D$:-u#JɍBt3uC"_^][ÿ3u_^C]"h[Ë 3u_^C]"V[C"0@"tD$VPu,"tv LV@hQ _^]_[Àx:uj"8t_(8^]"c[á";D$|,"tLV@h\R _^]_[ËL$@(8"_^][<\t.u4F<\t;t ;r NN;u+WVRD$(PӍD$, D< P@u+tIL \t/tHuD D$ D;;N̡D;u D;̡D;u@:̡D;u@:̡D;ub89̸[PPhhhhH;H;VWjg3;u hBAD$ >~~~ ~F_^VW|$ O@@PQGu h@O@@D$4ыT$PF_F FFF^Vt$F N@@WPQ3;ljFu hp@N FIAN 8xxx xx+Fȸ*_^̋L$QD$@V4‹V QR Fu h?NfT$ @fD$ffA^SUVW|$3~NoL$9Mu8t$M:utY:^uu3Ƀ@;|GRP_Gu h@K?OT$4@D$PFlXtVGPQWh(DW+_^][̋T$ Vt$ 3~R92t2@;|D$ LPV@hQhh>3^̡lXS\$UVt$WtS=DPh ׃ =D93~OCnD$uD$:utX:^uu3tGG;|‹\$ k34 ō$:ubtP:VuTu3KlXt!T$B ȋL$PQhd D D$Ht$ FщPt!G5sUh@ D_^][álXtWUh$ D CP;_^]C[ÃKQR$CP_T$H:uSPn3t"t$ NQ_F^][ËT$ B_^][D$D$ %D8Xu5QR芘3uKL$ Q_^][T$D$ %DtVPtO8XuJT$PQRߙ 3tt$ FPLL$ Q_^][T$D$ %D_^][D$D$%DlXtCPh׃sFj'Vt+ƍPI@u+‹MQuVhD_^][UVW\/SR{_^][SpPh׃ _^][VW|$ G;~G QWaGF;|_^̋D$L$Q@̋D$uÁ@|uIQh jdhH<H<Åu P Ph jdhH<H<̡<t<uhd $<uVP<Pu^ËF=fthfP0tVT t 3^̃0D$PL$QT$RD$PL$(QT$0RD$$PD$TL$DQT$(Rh P,u0Ul$t%t t <hxUQQ3]0ËD$,T$ T$;t<hx P#3]0ËL$D$3;Vt$W|$TT$,3;+TT$03+ʋ+ƙ3A+@Qj觕|$8u_^]0SWL$T$8t$4ʋT$֋t$(;؋L$T$L$ ;|[;t$(}U|QT$,;}I|$uT$@DuT$fzf(T$U|$u@ EL$0T$;zL$ t$4;t$_|$<[_^]0̃($PL$ QT$RD$PL$$QL$DT$4RD$Ph Q$tBD$tt thxUT$ L$ L$;thx <RF3(D$$VPj t$(u^(SUV聗D$3ۅl$$l$(t$W3~gL$D$ |$T$$L$ƃu UE)ufAD$(fD$(D$,D$,t$G;|D$C;|t$4_][^(̃D$PL$QT$RT$,D$PL$Qh RUuËD$ U;tt<h P3]D$D$ L$;t <hx Q3]SQj角؃u[]VWS L$ t$;͋L$ugʃT$L$;3~.I΋+׋|$: 9T$@F;|׋L$E;|_^[]T$ 9l$3~~‹T$ƍ+׋|$:<8QT$AA@+׋|$:<8T$A@+׋|$:8T$AF;|D$E;o_^[]̃D$PL$ QT$ RT$(D$ PL$Qh Rut$L$L$$;t<hx R-3ÃWPju_SVWi\$23ۺ~8I\$;\$~ u @2ɋ\$ F;|ׁt^[_̃D$PL$QL$ T$RD$Ph Qt#T$T$$;t<hx PS3@+UPju]VWU蕓L$323~1SL$ ÃuG23ҋL$F;|؅[t_^]̃D$PL$QL$ T$RD$Ph Qt#T$T$$;t<hx P3ÃUPjEu]VWU迒L$323~0SL$ ÃuG23ҋL$F;|؅[t_^]̃D$PL$QL$ T$RD$Ph Qt#T$T$$;t<hx P3ÃSPju؃u[UVWSl$233~El$,/| u @2ɋl$G;|́t_^][̃VD$ PL$ QL$(T$ RD$Ph Q3t$T$T$ D$;t<hx P3^ÃPj聍D$tSUWPD$23~?$T$ց+ ڃ u ]E2۹D$G;|̅t]D$ _][^̃D$PL$QT$RD$PD$0L$QT$Rh P uËL$ Vt$t$ F;t <hx Q3^WVj背u_^W~,T$ T$uT$@uT$BT$Nu֋_^̃UD$ PL$ QL$$T$RD$Ph Q37u]ËL$W|$ |$G;t<hx R_3]SWj訋؃u[_]VS!3Ʌ~<uD$(@D$   ˆFOu^[_]ÃWD$ PL$ QL$(T$RD$Ph Q3Wu_ËL$S\$ \$C+;t<hx R[3_USj̊l$u][_VUA3Ʌۋ~6d$uD$8@D$ ˆFMuԋl$ ^][_̃ (D$D$ PL$ QL$0T$RD$ Ph Qqu ËD$Vt$ t$;t<hx P3^ SVj؃ۉ\$$u[^ WS`@UD$$D$0΁ɉL$(D$(D$}% clK҉T$(D$(}% cV3^V (L$;`Xt tWh=V3^ÅtD$PWh= ^VP,t3~Pt.L$XQhR! Hu FVP3^Ë^VWVd' [;tXWhXP _3^V8'Wpt`XtWSh4= WVS Hu NVQ_^SV3Gu^[ËD$ VjjjjhWP tVjWPZV艙^[VhhV}3h PU-VWhhW|h Pu `X^]|$D$; [SjVP)jVjL$(jVQBVӃ(uHF uBjjVT$ jVRVV`X t8[^]|$D$j;`XtWhtV;VWՃ[^]́ h/SVWVS$|$ u,ShP _^3[$d6 UhD$tdWSstRUWu]_^3[$ 6 á`Xt$ UQh4o: DVt`Xt$ SRh;: tD$PV$ SVQ% Hu VVR$]_^[d5 SU-$[EVW3t:Š:utX:^uu3ttGu_^]3[ËL3_^][D̋D$UPu}3]Vt$ SV̆hSV腇 t^3]W3~CL$WQutejSPu uYXRt@DG;|jShbB u&XPλt:_^]_^3]ËL$VSQ Hu VVRuԋ_^]̋D$@tt3ǿDh/$@dXu*h t$@3DÍ$PW`u+ WVhQ3$@N3DP\$HRD$0VP$L @3D̃$UWP@u+‹E =r_3]$S/\0V]4;Ή4A8D$PWQujuWƍP@u+ء5u4 ;BAuL$QWuj{t^[/_]$^3[/_]$SUl$ VW= t=:utA^:uu3ɃtO u_^]3[Ë_^][VuXVh`P¾ 3ËHu XVh<Q裾 3Ë@}PQ Ul$VU4u^]ËFuXUh<PP ^]SW~3ۅÅtߡ`Xt۸ucPUhr5 NWQE Pt8UhRݽ ctJUNtRPfU)t;VhSt؋ Hu FVPuhWU uu OWQ_[^]u WWRu FVP_[^]WG=HthHP@D$ <uh tV<t <uh6<u3_á<L$VPW|gF=0th0P誛G<URWA-t5~~@hpP+]^3_ÍF+Њ @upj.VՃu+D$~ @hDQ]^3_]^_+Ƌr@hpR踴]^3_WVS\ t$N~j.SՃtSNÍP$@uL$+‰SPuSh RJ ]^_á@hP!]^3_^_ø_̡FVpFu hd L$vhQV谛 ^́VtguD$PQFtOG=xt%hxPșuVSW虵 }$3^WxctVSP9 }3^ø^Q [$D$f"[D$d$$jPk Sjl؃u[V5<WtBNVQRPh`t,WSlp|2u GWPF u_^[ u,KSQ_^3[ u SSRu GWP_^3[QL$ $PhQ| t$R}3Yu YË$PtYQL$ $PhQ uYVt$^YQL$ $PhQ uYË$KP'YQL$ $PhQ輼 uYË$RZu P}YË@PoY̅Vu29UuD$QPu6 pQ谵^Pu@hR ^̃ $PD$h0L$ QT$RhPD$u ËL$$VQUu^ ËL$S\$WD$ u V_[^ ̃ VD$PD$h0L$QT$RhPD$3_t D$tL$Qhu3^ ËT$D$ VRP$ ^ ̃ $PD$h0L$ QT$Rh PD$u ËL$$VQhEu^ ËT$ WRT$D$ u V_^ QL$ $Ph Ql uYË$R^YVWP(%L$T$VQRtu FVP_^̋D$ ,PhdtT$4 $QhTR u,Vt$ƍP@u+‰D$uhDXP荮^,ÍL$ QVuT$@uh03^,hbTWhjh[hahhO*VW]hV3hVhVkhVPhV5hV|zhV|chV|LhV|5hV |bhb@htWbX ^_UVt$ 3tDEuu^3]á$[S3ۅt LCu+uP<P4u[^]Ë$[9<Wt ʃt$$[<؍ <ȃ_[^3]̃L$T$3$D$D$D$ $PL$T$̡<uUl$ WUPIu_]S\$VS!tV[tWP褘t^[_3]á`XtUSh) ^[_]̋D$L$jPQ ́h/S$U$V$3W$;D$D$tƍP@u+=vhP4T$X+֍ @uhd TF=thP貐4>GV>Le3~XWVyeۋuQ$Qhh4 PR=u PPRG;|u FVP$C=0th0PSD$XPI@u+SeT0$;rkXh`PFVP$u VVR_^][[$!#ĠË Xh0QSeՍ$@ BuOIGGuf D$XfЊ@u+OOGuȃT$X+Պ @uT$XRxt7D$XՋ+э$ @u_^][[$X"ĠáXT$XRh Pe T$Xt.‹Ջ+ъ @u_^][[$"ĠÍT$XRL$Xt3Ջ+э$ @u_^][[$!ĠË$RUD$PQD$t$$_^]D$[$u!Ġh4؃ۉ$C=thP蔍h OD$$@=thP[lhp D$0F@=HthHP"&SaD$\t$(P@u+…D$D$ EID$ $PQD$a؃C=t3hP褌u!C=0t>h0P舌u,H@CK jRPQvD$؋kT$$D*;r#D$tlHPQ]$C+Њ @uƍP@u+;t#D$'PPR$tD$$L$0PQuy=t^$Rhkh4 P{D$ tu HPQVVRvD.<\t GSPL$QU#u/UӃ^][3_$ á@WGRPQT$ RVhNHu FVP$^][_O ̃T$$PL$QhRD$]uË$L$PQQL$ $PhQ t$R}3Yu YË$PYtY̅S\$~!u@VhP蝦 3[ÍN$S[Ëo[PRS [RSy[Åt:tڃSuu)t XSPhQ3[SP腆u)tXSPhTR̥3[[ÅuXh8P蝞3[Shkh W赣[Ë XVShQ}3[Ëh/S$FUVpFW3;Nju hd vSVt$ 蜅;t7$(=|$|$u3hPG;tlL$Q$0T$RhD$(PVSD$4w;tu NVQ;uVXRu_^][$@_^@][$Ëul$|$ST$ _tu GWPt UL$$(S$0utu NVQ3$ _^][́h/SVW${@XFpF3;u hd e;ߋNL$ |$|$u%hdE_^3[$Ë$$;F=xthxP6UVDLT$URl;UtXh8PĢ SFt]_A^[$qVUS[j.Uu+QU7Tt=T$WR3g؃uG XGPh Q5 Hu WWR]_^3[$u GWPhSFYu蛜L$QT$RhD$(PWUD$4tu OWQuD$qiPPZ\$|$vUT$ tu GWPt Su$(T$QUR ]_^[$á8hP$$_^3[̃D$PL$QT$RD$PD$0L$QT$ RhP t~ $t6+؃usT$;T$ti u CSPL$VQ؃tt=t$ Vt u SSR[_^3]YWUV\D$07 8Nu+ u KSQXUhR˜ [_^3]YË[_^]YQD$hPpuYËL$ SUVWjQD$J8\$$l$ IG=0th0P{{.G<*wugu WWRD$(|$hmW}u 迖jSUVW?Hu FVPyL$WQuYƍP@u+=+.+Ƌ΍PI AuT$VR)ttu HPQu WWRD$@PD$D$ P Q處t2ݕ_^][YË8h4Ru GWP_^]3[YË @hpQǓHu݋WWR_^]3[Y̋T$$PL$QhXR襞uË$L$PQ́ h/S$ $ U$ P$ L$ Q\$D$u][$  WT$ RL$QhP$,u_][$  Ë$AVtDIT$RD$PVV$0H؋Hu NVQt^$ uupu FVPu OWQ@h R<^_]3[$  u WWR^_]3[$  Ått Uׅu'u FVP^_][$  u OWQT$jRD$PUVu+wNVQ^_]3[$T  Ë$^_][;  V:D$L$ T$jPQRJt- <t#9([u <uQ([^Åtu FVP hH Q3^VD$L$T$ PD$ QRP1t- <t#9([u <uQ([H^Åtu NVQhH R.3^̡<SU33uLh\臚<t1h_q<th("hp=<u]3[VWt<PVDfjjjjhH%u_^][Ë <WQhht= G=Ht#hHPuu<RW{(<PWn؃u <xQR"t<L$jPVVQSƖtu VVRtu GWPt u KSQ_^][̋D$VPHu^WVcHu NVQ_^SVWhb3)`Xt h< jHVhd Hu FVPyVhp iHu NVQWG؃Sh -uyht|Gt}V]Hu VVRt]h0W؎Hu GWPtMVSJHu NVQtA8hpю`Xt2h#輎`Xth`Xt ht9  u SSR_^[U h/SEVWEPI@u]+‹ȋÍp@u+ƍ|%ǃc EPSQh\WVnE} URPVh}ӅtUMQRVh}Ӆu`< tTux@u+;v}P+QD>P t!uK u3eM_^[]Ã;u3eM_^[]ËKQWtU eM`_^[]S\$ Vt$ SVtA^[UWj.Vu3xD$PSWVzLufu XWhQ _]^3[Ë=D-DӉ=Du)VuPoruhR赊_]^3[Ë\$ShW;7 }_SVHtϡ`XtSVh _]^[øhu驌 @@V;v QQ;wA^Vt$|} <^á@u@u^ËPHp@f^̋D$=w D$D$̋D$=|= D$eD$鬈̋D$Hfu @H@ÉD$̋D$ @H@Vt$F=fthfPotF^ËF@0@HVЋF=fWhfPnusF=t:hPnu(u NVQ8h4RM_^V{Hu FVPu"Nt _^Ë~Hu NVQ_^Ë8hR^Vt$u8hPLJ^ËF=ftDhfPmu2F=thPmu V^V|^ËF^Vt$F=fthfP~mtF^ËF=thP]mt VP}^ËF@0@HVЋF=fWhfPmuoF=t:hPlu(u NVQ8h4R膆_^V|Hu FVP茆t_^Ë~Hu NVQ_^Ë8hR(^Vt$.F=fthfP>ltF^ËF=thPlt V^ËF@0@HVЋF=fSWhfPkuyF=t>hPku,u NVQ8h4RD_[^VHډu FVPDt#_[^ËFHډu NVQ_[^Ë8hRԄ^QW|$t|$~@hP蜄3_YU-8Vt$tQՃtFFuSӅu0>0u+WT$RVf }'D$jPV豏 [^]_YWL$QVg D$;PR0tnD$t'QՃtD$@D$u T$:u=Ӄ8tD$ L$PQV1 [^]_YËD$tT$W[^]_YËƍP@u+=sƍP@u+PV4<tMV%jHu FVPt-T$ @OQRhTP"Hu OWQ[^]3_YVW|$GuPu_^7D$ jVWPOtV_3^ËL$QjVV_^̋D$HT$QhR 3̃Dh/D$@D$HHQhT$j@R{dD$P!<L$TX̋D$L$@I;}3;‹ËD$@uS\$C=fthfPhu [VsW|$G=ft&hfPgu_@^[ËO13}3}ȓWS_^[PQ_^[S\$C=fthfPfgu [VsW|$G=ft&hfP4gu_@^[ËO+3}3}ȓWSP_^[P_^[̃ S\$C=ft"hfPfu[ Vt$F=fW{|$ t)hfPfu_@^[ ËFD$D$L$ ȉL$T$ D$DzQ_^[ %tD$ %t A{ȓVSP_^[ ÅuhPÃu};uË+t 3}HT$D$3QUl$ E=ft hfPeeu]YS]W|$G=ft'hfP2eu_@[]YVwD$PL$Q!^tHt_[3]YËȓWUR _[]YËD$P_[]YQUl$ E=ft hfPdu]YS\$C=fW}t'hfPrdu_@[]Yá|XVst!jhP臈 }^_[3]YÍL$QT$R7tHuܡȓSUP ^_[]YËL$Q^_[]YVW|$ G=fthfPct t$F=ft%hfPcu@_^áVW_^QUl$ E=ft hfPUcu]YS]W|$G=ft'hfP"cu_@[]YVwD$PL$Q^tHt_[3]YËȓWUR_[]YËD$P_[]YQUl$ E=ft hfPbu]YS]W|$G=ft'hfPbbu_@[]YVwD$PL$QQ^tHt_[3]YËȓWUR_[]YËD$L$ PQh) _[]ỸVW|$G3=ft(hfPau@_^ËGUl$D$ E=ft)hfPau]@_^S]}@D$$=t 8hQ{[]_3^ËPUWR []_^Ë|$$tXG=ft*hfP`u[]@_^Ëwu@hPz[]_3^Åۋ|$~Gtυt9;uut*t Ǚ;u8tNjʙtgT$RD$PqtLHL$$T$ D$Q ȓRPQ []_^ËD$$L$ T$PȓQRP []_^ËL$Q[]_^̋D$@}>;u6VPjt"WVnHu VVR_^3^؉D$L̋D$xfuË@D$$̋D$H|xfuÉL$D$W̋L$Q3̋D$HщL$Vt$F=fthfP^u ^S\$C=fW~t&hfP^u_@[^ËK}@h\PBx_[3^Å |mNQkiSRUiuuFVP_[3^WVAf؋Hu NVQuWWR_[^Ë;tiFPht KQhuu VVR_[3^WVe؋Hu FVPu OWQ_[^P<_[^Á~fu @_[^ËVR_[^Vt$F=fthfP6]u ^S\$C=fW~t&hfP]u_@[^ËK}@h\Pv_[3^Åt/t+ |3ɅIWl_[^W]_[^Á~fu @_[^ËVR9_[^Vt$F=fthfPV\u ^ËvW|$G=ft%hfP%\u@_^ËG#P_^Vt$F=fthfP[u ^ËvW|$G=ft%hfP[u@_^ËG3P@_^Vt$F=fthfPV[u ^ËvW|$G=ft%hfP%[u@_^ËG P_^Vt$ @=fthfPZu^ËL$3^̋D$xfuË@D$T̋D$HL$eD$@$~̃hh/D$dD$l@}Ph|jdL$ Quf$0PhtjdT$ RV$P-L$hl̃hh/D$dD$l@}PhjdL$ Q PhjdT$ RUD$Pi-L$hWl̃D$ =fVsD$t$tL$T$QRP` ^ËT$D$PD$L$QhchRP{txT$u <^9t$uRk^ËB=0toh0PYuYL$A=t1hPXu 8hQr3^ËL$T$AI RPQy ^ËT$WzǍpd$@u+R_.;tIT$RYt.L$ @FPQhTRyHu FVP_3^ËL$ QjW" _^̋D$ L$VPQhf[ u^ËF=fSt>hfPWu,VMe؃uqtu VVR[3^Ë^D$ WjPuu FVP_[3^É_u NVQ_[^̋D$HQh̋ @U-VWuYhՃuEs8 @@;v$QQ;wADžȉ @t9Q pf<F @s_^]_^3]à SUVW<3;t9u HPQOuދ@3;Ӊ\$\$@@FBt$3ۋȾ)yf;u9tCy ;u9tC Nu؅ۋ: @ @)9hu,t&H|,}$<<uB<@P@H ;u,t&H|,}$<<uB< @H@ NsRD$@D$L$t$˅L$١`XL=@h(R׃uL@hkP׃=ctkctkl$Q LV+VPS@hQ׃=`X~^@tS $IuR~futVRPLV@hP׃ Kuҋmu_^][ Vt$V腂ujhX|3^WhgCu_^Gw Gwt hhFh hAF0h_r^Vt$FNFVFBFF tN 9u PPRVC^̋D$@ tL$ QPT$u3VW|$ w tWGPVjtG_^Ë Q@nuR-ntqnu FVPG _3^Vt$F t!Piu3^+Fx ^D$^D$EWhgeBu_ËD$GD$ AVwG ~t hhFh hAF0hr^_Vt$FNFVFBFFtN9u PPRF tF 8u HPQV>B^S\$CVt$W|$t VP׃uC t VP׃u3_^[SUVt$F3;WUe8;FUWPMn؋ Hu OWQ;t0V jRSwj ;u_^][ u CSP;~IPlt5\lF;tnu HPQF ;tn u PPR_^]3[̃T$$PD$L$QhhhRPD$ruËD$ VjPtDFFFL$N D$T$RUFuu FVP3^Ë^Vt$V>FtF8u HPQF tV :u ‹HPQFtV:u ‹HPQFtV:u ‹HPQFtV:u ‹HPQVV^S\$CVt$W|$t VP׃uJC t VP׃u8Ct VP׃u&Ct VP׃uCt VP׃u3_^[hiNuÉxp Vt$FF8u HPQF V :u ‹HPQVq^Ul$VuFWu)FP6utwF =uOAljF~VE jRPg ~JF~FtFu HPQ_^]jWP{o uu OWQ_^3]Vhj=3;u^ÉF FV~<^ËCu9VW{hjj=tF FV~;_s^CtC;~ }DËFPtuF DUl$W|$ Gt UPT$uHG S3ۅV~%wd$t UPT$ u!G C;|Gt UPT$ u3^[_]W|$GtGu HPQG S3ۅ~+Vwtu PPRG C;|^G[tGu HPQ3_Vt$V%;VoV< ^SVt$ ~ 9W|+^[FF8u HPQ~F ~^ ;_ }DN A_N ^[ËWRrtG DN A_N ^[_^3[̋D$@tL$ QPT$u3VhlE;u^ËD$HHNP VV F9^WPY~u_ËG=lVtShlPJuAhl:t9FVu \;3 F F"9WJu OWQ^_QL$ $PjjhQHHuYË$GYVt$Ft VnFtFu HPQ3^Vt$V%9Ft V%FtFu HPQVp:^̃T$$PL$QhRD$nt$}@hPOc3UP0u]ËD$u]ËL$WQ|uMu UUR_3]Vh)Wdu3u GWPuMu MUQ^_3]Ëu D$ ;S~']jh)Vg t3D$G;|[^_]Mu UUR[^_3]S\$muD$PhtGtT$ L$QjjhR%Fu3[ËD$VP{u^[Wjuu NVQ_^3[jSu"u VVRu؋GWP_^3[Éx _p^@[Vt$V6F tF 8u HPQFtV:u ‹HPQVV^S\$CVt$W|$t VP׃uC t VP׃u3_^[Vt$FWPnun`t Q3btkwbV RtVF PztFNFF u QQRFPmtFu N WQ_^_3^QW|$ ouD$PhSEt$D$L$QT$RjjhPCu3_YËL$VQXytjWuu VVR^3_YËL$L$p ^H@_YVt$V4FtF8u HPQF tV :u ‹HPQVV^S\$C Vt$W|$t VP׃uCt VP׃u3_^[QSUl$] C@pVWSD$Ћt]}t|MjVQf tJWRD$Hu WWRD$t:u FVPST$u_^]3[Yu NVQ_^]3[YE_^][YQW|$ hpuD$Ph cCt$D$L$QT$RjjhPBu3_YËL$VQhwtjWuu VVR^3_YËL$L$p ^H@_YVt$V2FtF8u HPQF tV :u ‹HPQVV^S\$C Vt$W|$t VP׃uCt VP׃u3_^[S\${C u3[ËHVPQpu^[ËSWjVRd uuMFVP_^3[UWPHu OWQ]t_^[u VVRC_^3[̃D$SU3W=rl$ l$l$uD$(PhjAu_][Vt$(L$QT$RD$PL$(QjjhV@ VS*D$uK=P[tz]@hR[^_]3[=tPu[t7]D$=t;Pvu+w[t]@hP.[^_]3[ÅD$t8=t1P؃u[t\hTk}hT_T$RFtt[D$$jPuuCFVP^_]3[Ép^x_h ]X@[h @QeZ^_]3[Vt$V/FtF8u HPQVV^̋D$@tL$ QPT$u3SVt$ NW~GXp;N }(WӃt5u PPRVBVN ;|؋Ft9F} WӃu_^3[ËN ^VC;щ^V }NN _^[QW|$ @tuD$Ph>t$D$L$QT$RjjhP?=u3_YËL$VQrtjWuu VVR^3_YËL$L$p ^H_YVt$V.FtF8u HPQF tV :u ‹HPQVV^S\$C Vt$W|$t VP׃uCt VP׃u3_^[VW|$ G HPQpt)F=t$uVP8hRW_3^ËGjVP=[ Hu NVQ_^QVt$ 0vuD$PhH<u^YS\$US%} 8hQrW][3^YÍUR$D$ tW;~.p d$Ppt?G;|t$\$jVu4D$u$PPR_][3^YËD$u HPQ_][3^YËL$HK _]B[H ^YVt$V,FtF8u HPQF tV :u ‹HPQVV^S\$CVt$W|$t VP׃uC t VP׃u3_^[̋D$HUWQ$Ui#u_]S3ۅV~' T$B Qct >C;|ދD$@ =u^[_]u WWR^[_3]jWPX Hu OWQ^[_]QSUl$VURt$wuD$Ph|:tS"D$ u^]3[YW3~*p +荤$.Pnt8G;|t$jVu]D$uMPPR_^]3[YË 8Q> u AQPC;|^[_]uiOWQ^[_3]UtI3ۅ~Ͼ T$B HPQpt>C;|^[_]u WWR^[_3]QVt$ (D$uD$Ph<;1u^YW|$L$QT$Rh0WVu_3^YW4uD$}D$jVt̋L$L$HT$_P ^YVt$V FtF8u HPQVV^̋D$@tL$ QPT$u3̋L$A u~HA AAVW|$ GP1u_^ËG uNQhX?[PVRhH+[ u FVP_^̋D$@ u 8hdQJ3ÉD$̃8UVhjhhmht$D$ oD$$hpD$(rD$,@tD$00vD$4wD$8@yD$u-vt VhSՃ hkSՃ_][A^ËNQh|SՃ _][^áA_]H[A^A_][^PQAA̋D$ LP QAA̋C;| ;|s33 W+H;v H_u3?K wuPQ4tĉC {s3_̡HBt&$HHBAPHBuS\$}jdhT3[Á?U,wpHBVt!4AHHBW F ^hu^][ÅuP~ uu FVP_^][G͋3ʃ~^^t hhRGh hAG8hz_^][Vt$F=t)hP6+uhhS^ËF^Vt$F=t(hP*uhhS3^ËD$ | ;F}N ^áLBuhaLBPR|C3^Vt$F=t?hPv*u-D$tu HPQhhR^ËD$ |*;F}%V ɍT$t u AQP3^ËD$tu HPQh RC^SUWD$ًkuhhoR_][Áuh( P]C_][Vu^t}y3;~K E;| TH;}D$_]3[Vt$F=t)hP&)uhhQ^ËD$PD$^SUl$ W{uh( PB_][Vw^tEK ,_]3[Vt$F=thP(tD$ t P^hh Q^Vt$VUD2A DF tBW~Ox-F <t!ȋV 8uʋPPROyӋF P_HBP}~u4A@HB NV DDI Dt^9V8^W|$W7t|D$ hP3_S\$U-VhL SՋG3~1d$~ hSՃO jSR9 u GF;|hH SW7 ^]3[_W7^][_̃ SUl$3U\$6;t~hX][ ]3[ 9]u$hP 8UD$[7D$][ áHB;Vt4AHHBh5;yW~^ ^^t hhGh hAG8hzE~SE Q&D$PV*D$JD$8u PPREC;|hL ?D$F PL$QD$D$V D$hH D$tqV NLPT$RL$fFN T$TD$t?hD$t*VPaD$ D$JD$8u HPQ_u VVR^U5D$][ ̋D$@S\$ VW|$33;w}G jQS= Ft_^[ËD$|T$;B}J R áLBuhLBPP<3S\$Vt$W}3 C;~D$;} K;~+ƋWu_^[ÅK P 4~+  Ou_^[Vt$F=t(hP#uhh L3^ËD$L$ PQVI ^Ul$ E=t1hP6#uEH 8QhT RC 3]ËEVt$ Fy^],?Pu^]ËNP S^ W3~+ڋ  NG;|NP } M3~+ : MF;|_[^]S\$ VW}3ۋ|$w˅t;t_^[>HBti<AHHBwG GG~t hhFh hAF0h_r^[hu_^3[QyD$tOp uO 3Ʌ~7:GA;ˉ:|_^[ÅۋG ~3҅~ OB;|KuD$_^[̋D$Wx tEVpN@@ @xt8u HPQNyW^3_̃8SD$UVD$ D$T33;W|$L\$t$D$ u \$;uPHQSP ;u _^][8ËT$TD$PVRPWHu NVQ_^][8h P9V;t$/F=thPC u VT$FD$F=thP u t$N L$t$T$P;}\$P G;~D$PT$P\$T;}T$T G;~D$T\$Tl$G++ʼnL$$u#tu NVQW5_^][8ËG 4 D$XvbuPD$u=;|$T$(;t WD$tu HPQD$ _^][8ËT$PD$X|$΍4ʃ}6|$LO+QR +Rw G D$X=~?\$L{4/VD$TK +WRPL$d D$Xt$3҅~ L$PL$ tB;|t$$Nx3|$t:u ‹HPQNyD$ |$D$ Vt$F=t)hPuhhF^ËD$L$T$ PQRV^S\$UW{tl$t }S!@_][ø;~_][9VTu^_]3[Ãs ~M3Ʌ~$BA;|Mu^@_][̋D$|AT$;B}8L$ uQHQPRR  Iu HPQ3Ëh Rv6̋T$$PL$QhJReAt'$L$ PD$u3S\$W{uh( P5_3[Vw^tD$K @_[S\$UVt$F=WF=;;3VNGHpVL$pC}Q5t>8R6u+(P6uOWQ_^]3[6k4(;|9kWT$tCC;C} S 4C"VHu FVP|EWT$u4t Q6tK6s;su GWP_^]3[h VUPtG=thPgouOWQuC4(D$=uuWWR_^]3[ËG=thPW tW C L$ ~+ы Nuu WWR_^@][̋D$Vt$PVu^u HPQ^QL$ $PhJQD$ 4> uYS\$ Kuh R23[YËD$}D$x<;}8S Vq;WuVSRP)0 FS \$|etL$A;L$r‹D$[^]Ã;suNSQR/ FS\$|uËL$A;L$r[^][^]̃D$S\$ Ul$VWD$D$ u|$ESWPd/ D$S]B|$ \$0rD$$+D$(D$~HuLSWQ/ S\\$0+tt$ t6~!;t$|D$;~D$(T$ D$(T$ t$wD$(H~VۍuS+‹WQ. +So\$0D$(ut$ t6~Z@;|D$(H;~L$ +++l$@;ƉT$ D$ }VD$ +D$,uLPD$ PQ . t$(F뱋\PD$ |tG|$ 9t$ |_^][_^][̃SUl$؋D$VW|$(D$ED$u WPS- WkZL$$A~JՍ +хu WPSE- W*tt$t6~$D$$@;|L$$A;~D$++ȋ}L$$t$$D$F++ȋfD$ +D$$D$~CIDu WPS, Wut$t6~T;t$|ƋD$;~D$$T$+l$@;ƉT$D$}MD$+D$(uLPQSM, t$PD(|tG|$9t$|_^][_^][̍P@ @@̋FW;t P|"~F _;^ 3ËFW;t PD"~F v *._ÍP!Ft^ 3_.F;t P!~F _̃S\$ Ul$ VW|$$GD$;_ D$~R} _^][ËD$$ˋt$0XML$4I\$(t$0L$4|$,T$3|$D$uPPQ|* P]\$,t:L$D$4UA3Ht$0L$D$4uD$;|@=ED$,GH\$(D$D$,bD$;b@D$T$$3Ƀ+L$,D$BD$PjQSD$tI ʃ ًL$,+ȃL$,t$0ED$4Ht$0D$4L$QjЋRVPt0|xPVUD$@ +ljt$0D$4tF D$,MH\$(D$,tK|$D$T$$@D$B"3D$L$,t,_^][Ët$0|$4WVU /3_^][̃S\$4VW|$,GD$ ;_ D$$~} _^[Ët$8\$4ȋUl0ʃt$4L$0yt$$t|$ |EKt$4\$8@|$@  L$3D$D$D$uPRP' P\$<3;t:UT$BKt$4T$L$\$8D$;|@FED$@D$D$@HL$D$@gL$D$;\@ D$\$8L$03҃+‹T$AL$$D$RCPSQ%A+؉\$t1+P+VREPt$@D$D +ÉD$8D$@MHD$@T$RT$$HQPRPT$@+tB ++|$u_^Gw Gwt hhmFh hAF0h_r^Vt$FNFVFBFF tN 9u PPRV9^̋D$@ tL$ QPT$u3Vt$F t+N;H}@ AN^u HPQF 3^̋L$A t@+Ax D$dD$׆Vhu^ËD$HINVF T^Vt$VF tF 8u HPQV1^̋D$@ tL$ QPT$u3̋T$JɋB |;H} @ IJÅBtB u HPQ3̋L$AI @t9A}3VWx}ޅ~Tp f:uI;t }ىH_^̋D$=~3Ë PDhPkPr VW|$ w}ށ~ _3^á VThRP tNOHx׍Lp +Ff< f9Nu_^SVW|$33ۅ}߻td$Fu~ _^3[á VThRtP{ t)ۍP tޅptf2u_^[Vt$W3tGu~ [_3^á WThRP tH xtցfu_^UESVW$D$u2E$uh("P@ 3_^[]E%z D$L$Q$L$\$$ jC_^[]ItVM؃tD$D$HBR$F |8tC xd$YD$D$jf$ OuӋD$؅tSډS_^[]Vt$F=thP^tnN3W}ISx&TN Ë;u%I}=w[_^Å} =u[_^áhx"P [_^ËF=fthfPt V臂^hhP"c^Vt$F=thP~tnN3W}ISx&TN Ë;u%I}=w[_^Å} =u[_^áhx"P [_^h hP"^Vt$F=thPtaN3}h"Pn ^IWxTN :Nj;u I}_^Ë h"Q/ _^ËF=fthfPQt&V}h"R ^hBhP"^Vt$tsF=thPt0N3W}IxTN A2ƃIu_^ËF=fthfPt V^hghP"%^̋D$@u3ɅL ̋T$B3Ʌ}؅~83fLB VpL$k;^ufD$IAt ffuËh"R̃T$$u RËD$SWtD$؍|D$ |$\D$ Ul$$t3?@D$$L$مV3%vI8uF;r+t;sG v ^]_[C ~< ^]_3[á RThRPЃ ҉T$ u^]_[33ɅviZ |$(tՋ rցfT$BT$D$OuɋT$ tD$ftA @D$D$(|$t߅z}ޅ~'Tr f:uI;t }ًT$ JT$ ^]_[̋D$@3;S}.؉D$9L$0u 8h@#Q}[É\$D$L$9L$,Wt|$(T$(D$,|U3Vt$33҅\$ l$$T$D$D$D$, D$,t$D$,tt$5Ƌt$% ֋t$N9t$u1l$33;us3F;t\$ l$$+΃r;l$4szEl$$sD$,t$FD$,D$;t$Tvt$4;s:D$Et ЈGD$4;u;v7D$vHډuNVQ_[^Ë8hR ^Vu^jjjD$PV+~D$T$^̃Vt$tGF=thPt+jjjD$PV}^ËD$T$^hhP"N ^W|$toG=thPrtSGUV33}Hx)S|G XjhVQ[zKu[VřQRPhPu,F=fthfPtaFP3G=t]hPuKG=ft+hfPnu8u HPQ3]ËWRUE]É}]Q3҉$~uSUVt$+D$ I3f,f)ʼnD$ %fAfD$ fKfD$ uft)L$;}!fWfD$ t$ ff4WBfu^][Yf$YQUl$ D$~pSV+ڍd$3ff++D$ D$ %fAfD$ fKfD$ uf^[t2;}.3f Wf+ȉL$fD$ff WBfu]YfD$]YVW~}ߍG=~ 3. PDhPP T$u_^S3ۅ~0H +U,l$Ջf)Ou]fTX x[}ޅ~$Tp If:uI;t }ىH_^VW|$ 3Jx0UۍjIF3ҋ+Mfu]_f^SV؋sW}ށ~ _^3[á VThR~P u_^[ÍO C \$QFT$fw}څҋ~&LW $f9uH;t }؉G_^[̃Vt$ D$F=thPtF}W|$(3D$ ~FL$ 3SUl$4kL1ظыL$;;SjD$XtD$4tNLL$,A}D$-u N0WL$033;~BD$3ȈD$D$, D$,$L$, ؃D$"N< ɀـWȋD$+H;} 3;3;؅uċL$,D$E;L$,|L$,l$ǃ L$ |$\$$uD$Ct\$$T$RpD$,u%D$D$8u HPQ][_3^Ë PD$$\$ ؋D$, f|hD$ uMqJqyqq}uqÙ|$0ˋЊl$0*N $WOt6ufu͋D$,u HPQ|$0u\D$N0{tϋ\$$D$,?D$,u HPQD$D$8PPR][_3^Ãu NxN0" tǙ N#N0;~N0D$tND$;t@Fu+D$PT$RD$][_^áh#PD][_3^hhP"3^̃SUV2ރW\$tEu9 x}IFET$z}ޅ~Lr f9uH;t }؉B_][^ËD$u HPQ_][3^ËD$~D$lE +¹+ʉ|$D$ L$$D$ q83I qyqqzmuuT$D$, ;sAD$,+D$$+֍4 ΁f;rڅT$t f7D$|$L$@;D$|$bD$PPR_][3^̃SVW|$؋G};+=D$ ~_^[Ë PDhP7P> t$u _^[ÁU~Y4 SDhPP uu NVQ]_^[ËD$w } ʃL$ɋэtX D$x ʃL$ T$$]_^3[̋D$SVp}މt$t$L$ A}؋ЉD$2=~ b^3[Ë PDhPP؃ ۉ\$u^[ËKUW3{ ʃ~ 3 VThR}P D$D$'Mu EUP_]^[Zt$D$;Ƌ؋D$(T$tP } ȃL$$UQ]tWL$D$V RQ+RV|A Hu FVPD$T$+ӅD$T$i\$C\$ u KSQtMu UUR_]^3[USVuD$ D$W} D$ P\$eu_^[]Ët$L$QV-\$ |$(T$RW\$0X-D$D{X-D$ Dzt3u FVPu OWQ%D$ Dzhd$RS3_^[]Ët$+t$xww} %=D$kt$ V$\$$% D$D{I׃8"t& lD$D{D$DzhD$P3_^[]D$$\_^[]Vju^ËD$WVPHu NVQu_3^ËWډW_^̋D$xuÉD$Vt$Fu~u^VtNىH^Vt$F}V~t"NىH^Á~u^VX^̋D$@}3Ʌ̃ SVt$,W|$4D$P\$D$u_@^[ Ët$FU}cVL$QW؋Hu WWRS`D$HjCSP[\$Seu<} @h\QyNɉT$ D$}+ȋl$,PjhRSPZ Hu FVP u KSQ]_^[ ù+ʻUL$(K5D$,XD$tyFD$}PډP3~WL$p D$THIfL$ 3fBf#G;f}L$$3f*f#l$( f.l$,;|ŋD$t$D$u VVRD$u HPQD$]_^[ ̃SVt$W|$$D$P\$D$Lu_@^[Ët$Vȃu u} @h\Q|$|$Gk+ʅU}؅؍3D$t@D$PD$GT$}B؉B~3z f|$3~6L$W tq  ËȁfNOuߋT$|$t L$fDJ r}څҋ~'L$LQ f9uH;t }؋T$Bt$]u GWPu NVQD$ _^[̃S\$$CUVt$0W3;}"S؃;߉\$0Pl$|$T$89z}|$ =S؃ۉ\$ $L$QWD$$Hp | ʃPD-ȋC++t Tj L@h,QHu VVRu GWP[_^UjSWL u(u NVQu WWR u CSPu][_^Mu MUQ][_3^̡F@HVhD-Qu^:hch8-V uV u PPRu FVP^̃TLS\$`Ul$`V3Wt$t$t$D$ nu9tPjT F;Ft TF jT  G=f hfP舖 G=8 hPd" G=hP@G=hPG=0fh0PPG=hPԕG=9hP谕#G=hP茕G=HhHPhG=`=h`P9GhP PtPjcF;FtcF jc=OO vOlObOVQHWVR>G VP4O$VQ*W(VR G,VPO0VQ W4VRO8@GBF;Ft>F2j>&tPj<F;FtƹT$"D$ WP{'D$(P@u=+‹؋t Pjf׃F;FtfF jfPS׃ƋˍT$ SƋˍT$ tPjlF;FtlF jll_Ƌ}ۅ~O Ku:tPjiF;FtiF jiϋTF$$HF8_^[]̃ D$(L$,$3D$D$D$L$L$$$ à D$(Vt$0D$D$D$ ~ 藐D$D$T$(L$QRt$(D$$^tD$8u HPQ W tQPjW_ËJSVr+;}ȋ˃J^[J_̋SxWt PӃF;Fs f8@FtPӃN;Ns AN3Ɋ ϋ%_ [V1Wt-SxVVV V Ӄ [_^ËQy;s BQq;s Fqq ;s Fq ‹Q;s2B_ ƉQ^Ã_ ^̃ h/D$WL΋CjjD$D$ jP|${L$_ ́Lh/SU-xV$\$TWt PՃF;Fs @FVB=\$V~0HF@h/P聢3$XW_^][LÍC|5 $l,     nnnnP؁ۋ}W,D$X3ۅh 8|fEC;|D$`D$u HPQ@h/RLD$D$)t PՃF;F8@F֋ǍL$X_;qL$XQD<\Q$/ָL$H'zL$HjQ2A\$@X-D$8Dz àzD$8$et PՃF;F8@F֋ǍL$X;T$XRD<\4\$<t PՃF;F{8@Fk֋ǍL$XD;VD$XPD<\݈D$< YBָL$8t @h`/QsT$8jR@\$PX-D$HDz 葟HָL$8t@h`/L$8jQ?\$XX-D$PDz :D$HD$`Z+BWjWD$H֋;t*D$D$8u HPQ@h`/R\tBD$PTL$VQR[ 8D$1YN;AsI D$D$)؅|yquPu M֋Ë-;tW@h`/P貝 jSW1WD$ D$ { @h/Q`؅SjD$63. VBT$*G;|D$(؅|PHSVD$3V"L$Q G;|D$@h/RLD$VtOVtD$UWP%i u OWQtMu UURVKu]D$5؅SYiD$3~% Vt*T$*G;|D$|$^ ̃ D$$$3 $D$D$D$ ̃$$PQPt$ËD$$̃ D$$VjD$PL$QD$$D$D$ D$D$$JD$8u PPR^ ̃ D$$L$(D$VjD$D${PT$RD$$D$D$$JD$8u HPQ^ ̃ V3j2Vt$ O;ƉD$HPL$2RD$D$D$0;Ɖt$t$ D$ ~ 螁D$t$D$(T$RPD$$;tD$90u HPQD$;tQL$P+ʁ~.D$90u PPRh0Py3^ QL$QHD$9t$t:;tD$90u PPR|$0t/P@P"3^ ̃,$PD$8L$QT$Rh`0PD$8L$A=0t,h0P{u8h<0R謔3,ËD$VP3D$D$;Ɖt$t$$t$ t$t$~ D$(t$(D$ L$T$RPL$4-D$0;tD$(90u HPQD$;^t%0t/@PR 3,,̃ Vt$,F=0t,h0Pzu8hl0P輓3^ VjD$ ML$ QD$(D${D$( JD$8u PPR^ ̃T$$PL$Qh̤RD$荞uË$L$PQ̋T$(D$PL$Qh0RDu(Ë$L$D$VjD$D$$LT$RD$,D$D$,JD$$8u HPQ^(hjjhphl3tjh0P> ø(@F h/S$0@V$,@WD$ PSPuo|$ ~g@t$0QWtASWjVPV#L$H;t V_^[$$@ (@S~$4@_^[s (@VW=׃8!u@h~P\_^׃8"u1%D$ D{ h~Q)_^_3^Ë@R萕_^U VD$PQR u3^]Ë5D$$U\$փ8u. lD$D{D$Dz"փ8tD$$uD$$ ^]UVD$PEL$ QRPRu3^]Ë5D$\$D$$U \$փ8u. lD$D{D$Dz"փ8tD$$/yD$$ ^]̋T$h1m̋T$h1M̋T$h 1-̋D$hP1̡TT$P$1̋T$h,1̋T$h41̋T$h$<1̋T$h*D1m̡XT$PL1L̋D$h0PT1̡hL$PQ\1̋D$h6Ph1̋T$h<p1̋T$hBx1̋T$hH1̋T$hN1m̋T$hT1MU M VD$Ph1QC u3^]Ë5֍T$RD$ $ \$փ8u. lD$D{D$Dz"փ8tD$$ yD$D$P$h1:^]U U VD$PL$ Qh1Rnu3^]Ë5D$D$P$ \$փ8u. lD$D{D$Dz"փ8tD$$KyD$$^]UM VD$Ph1Q裖 u3^]Ë5֍T$RD$ $ \$փ8u. lD$D{D$Dz"փ8tD$$yD$\$D$$h8^]̋F=t+hPpuD$L$ T$PÍ $QV΅T$ %Az@h~Ri3$T$$D$ 1\$D$ $T$$D$$ỹVt$D$PL$ Qjjhd~VD$nu^ËD$uh1hZVt$ ^ËT$WRjzYu_^Ët$ Sh1hZW؋ Hu GWPt#L$ Qj0Yu u SSR[_3^Ët$ h1hZWl Hu GWPu uŋKSQ[_3^VSxHu SSRu FVP[_^QVt$D$Pjjh\~Vlu^Yh1h`Vt$ ^Y̋L$$Ph1Q蚓 u$ 1$̋L$$Ph1QZ u$ 0$khjh(hh u)VWP7%Q ~$tpVh~Wo |]u FVP %$t!Vh~WCo |u NVQ_^̃|$QSY UiIVWL$t|$LD$L|$## xj׋ ʋPˋ## T$V  ы## p.p $ ## x ν X|$##l$ \$| ы## H*ƇG  ϋы## P2F0 ֋pщt$## t$F X t$##l$\$4 \$>ؘi ## x$D  #ˋ# H([ ϋ#֋# P,\ ӋX0щT$#l$# Ջl$Ӎ2"k #ڋ# p4>q  Ӌ## x8Cy щL$#ʋ# HQZ^& ## 8Ƕ  #΋# ͋h͍]/֋ ωL$#ϋ#\$l$$ H(SD  ʋT$#ڋ# X<3؋ ֋t$ы#\$# p>  #ދ# x$\$! |$#\$# x87Ë  L$#ً# X   ʋT$#׋#\$ P 2ZE ы## p4\$㩋 t$#ڋ#t$ ދpލ;t$  |$## X og L$#΋#\$ H0\$L*  ʋ33Ջh B9 Ӌ33ݍ3q ދp,ډt$D33/"amh8 3t$3 8  L$l$ h3͍D꾤l$0 ʋPΉT$@33ꍔ+Kh  ً33Ս:`K 3׋T$P(3ꍴ.ph4T$,  ֋t$3l$<~(3 ΋03+'t$  X 33덼/0ԉ\$( ދ3|$x|$83*h$  ׋|$39ً ϋ33l$Hh0@<7  33| \$D$33ÍeVċ  Ӌ\$׋ 3ÍD") ˋ\$ʋ 3Í0*C  \$  3Í8# \$$ 3Í9  Ӌ 3ōY[e ˋ\$(ʋ 3Í0   Ƌ\$,3Í8} \$0 3Í]Ƌl$Ћ Ӌ\$4 3ÍO~oNj  3ŋl$80,   3l$<>C  3l$@N  ׋ 3~S ʋl$D\$ 35:   3Í0*ދ ދt$H 3ƍӆ닄$p ʉpH ˉH HˉHH_^]H[|̋D$@@#Eg@ @ܺ@vT2S\$Ul$ E?Vt$\$Wd$ٍ;~3y@WVUE+ ?ۉ\$_t$^][Ë}}ϋ};t$}sAMtI@~ @+ˉL$|(ʃ@|VT$EU4+\$@|U@Outˋ}ʃ_^][̃ h/D$VWt$L$ L$ NT$ L$ T$ L$D$+?AQh2VT$cjT$RVV|$43Tȃ@T8|L$_^ Vh(5bu^ÍFP^+̋T$$PL$Qh2R襆uË$L$T$ PQR @̃lh/Vt$tWD$p|$D$PL$QT$jR3$_^lÁh/V$W$|$8D$PL$IGQ>҃_^[ËxtzNt$_^[FUuh|8PU_^[Ð. X     f E  } C  ( j   >        W|$G=xt*hxPf:u8h49PT_Vt$u#)Tu 8h9QS^_Wu!W(Ph8RZ^_ËL$VQP; uu VVR^3_̋D$ PvD$ *̋D$ PF D$ QVt$D$}3^YWV |$t_~eS\$$Ut$ D$SVP uD$MuҋD$][tD$u HPQ_3^YË|$T$0L$;t'u WWRh`8P}R_3^YÅt@_^ỸW3D$L$L$_}3uÃVuT$RD$ P PjL$ QT$RVD$ PD$ 3^VD$ PD$ \^̋D$VPD$ 3?^̋D$VPD$ ^VD$PD$3u^ËL$WjVQ Hu VVR_^̋D$L$WPQRu_ËD$VT$R3uu GWP^3_SjVWn؋ Hu OWQu VVR[^_Whx&u_ËD$VPo %8 u6Ohh("Q$8 uu VVRW$^_Åtu FVPu OWQ^3_Vt$F=xt%hxP6uj0hl9^3^ËFu`;F^Vt$F=xthxP5u Q3^ËFt;h tP7t'F=0th0P5t V ^áh9P$O3^Vt$F=xthxP65u Q3^ËFt;hPt6t'F=0th0P4t V ^áh9PN3^̋D$UhV3;xL$QT$RD$PUt$|$tdL$A=0th0P]4tDT$R| _u0x_t*=`X~Ph9XD$hPU L$QT$RD$PUrL$QT$RD$PUt$W|$ tpL$A=0th0P3tPT$R _u_ 3t*=`X~Ph9D$hPU L$ QT$RD$PU.f_^]̃T$$D$D$PD$L$Qhh9RP.UuVW|$wu>8twL$Qh tVU4 } _^ËT$ Rh("V54 3Ʌ_^IVt$V!Ft#VFJF8u HPQVV^VW|$ WDu MtWuMVh:$\_^PVh9\ _^̋D$@tL$ QPT$u3̋D$h:PVu t pQÕ $PD$L$QT$Rh:P0Vu VW>{L$T$ QD$RP$V_{_^t pQJO  ̋T$$PL$Qh:RUuË$L$PQ$upRNPWËT$$PL$Qh:RUUuË$L$PQ(upRNPQL$ $Ph:QT uYË$RupP6NYPFY̋D$h:PTu,P}QD$ h:PTuYSVy0VyL$jQ\$ ^[YQD$ h:P0TuYSV@y4VpyL$jQ\$ ^[YQL$ D$Ph:QS uYT$R8@YQL$ D$Ph:QS uYT$R<upPLYYVP9u^IL$ T$VQR/ Hu FVP^hjjh8hhVWPj̽uI Vh0;W/ Hu FVPj蕽uWI Vh$;WY/ Hu NVQj^u I Vh;W"/ Hu VVRj'uH Vh;W. Hu FVPju_^HVh;W. Hu NVQ_^̅u3Vjuu GWP3^ËL$Q~ uuVVR3^ÉF^̅VWtR03t@3u_^ÿx3u_^P_^_^SWP37u_[Vj/uu OWQ^_3[É^ @VWH؋Hu VVRu GWP^_[̋L$Au0D$FuD$3uxD$ AAVt$ F=0t*h0PF+u8h;PD^WFu_^Ët$ FtrvF8u HPQ~_3^̋CVs W{+@;}ȃ+;QWu_^Ë?D7C OT9_S3^̋CP @Vs W{+;}ȃQWu_ ^Ë?G pK G W P_K3^̃ SUVWًD$~<Xt>th<PC_^][ Ã_^]3[ ËC+t<D$D$$Cl$ L$s jL$+PGVjT$ RPUD$4?W u5xCj+‹WPVjL$ QRUW tͅtqSH;v^K{+Iу~ +; PWM ?D/OT9S?T$ _^] 3[ ÃtKT$+4Su$UVPC+PQQAsCC NT1S{ t$͋ȃs |$s OQu}w@u S+S|9CKp;w,u OWQD$u PPR_^]3[ AVhD<PF t$u VVRD$tCu?HPQ_^][ Ë 8h <Q?뻋 h;Q?_^][ SUl$VW~<Rt8th<P6?_^][Ãn_^]3[Ëst<+u9K C;v6S fC _^]3[ÃtKS+u&WVPC+PQL$(RpC VhD<QD 8h<R<Mu&EUP_^][Ë h;Q<_^][̋D$uhc{=?L$( SUVAWD$$L$L$T$~ >@DPj&D$(%|$L$l$4t$0PT$@;D$ ~\$D D$ T$S+P+ύT$$RQND$ PQUV T$,D$Tt9ut/L$@QUǍL$t |$L$;rD$ T$NtU+PFT$ RPUуt;d$L$@QUL$uFT$D$ +PFT$ RPUVuɋT$D$(H+Ѓ;tWRL$,QuDD$$tD$$8u PPRD$(tD$(8u HPQ_^]3[ËD$$tD$$8u PPRD$(_^][̃h/T$$D$D$PD$$L$Qh(h(=RPD$yCu L$@Ë $A=StyhP| ugT$R3؃ۉ\$t@C=tHhPI u68h=P9Hu KSQ3[L$蹳3ۋD$P UhD$ VT$cu$t u CSP^]3[L$tW|$,OAtPRL$ QPu OjVUT$$RD$,PQu=rvu VVRt u CSP_^]3[L$Ãrvu NVQt u SSRU(L$(_^][诲̃4h/D$0D$ PD$DL$ QL$DT$,Rh(h4=PQD$<Au L$0[4ËD$ S؅u[L$0=4ËL$ Wu?rv u SSRjjjl_[L$04ËD$,VD$D$ QjD$(D$跷ȃɉL$$Q t$DT$ANBD$yt!PRL$8QPD$T$|$ L$;sWD$T$+‹VP+ύD$PBQL$QPL$HQRt!VSRL$u5|$ L$;rT$D$$x H+;tRD$(PֵulL$$rv u KSQL$$D$ tD$ 8u PPRL$$t D$$8u HPQ^_3[L$0荰4ËD$ tD$ 8u PPRrv u CSPL$(|$$QL$@^_[74?̃ UVt$F3=Wl$tzhPKuhV/;|$ |$G=tKhPu98h=P5HlOWQ_^3] Él$ t$nst$~w+;~ 7V+D$KsʋT$r SL-RPD$0uVW|$jWh=WP(tdt 8hd=Q&EWVD$F$D$F D$ 5FtFHt9PRF Pуt(u NVQtu WWR_3^u GWP_^3S\$CVt$W|$rvt VP׃uC$t VP׃u3_^[Vt$VFt!rvFF8u HPQF$V$:u ‹HPQVV^SVjP$u^[ËK WVh0hHQ@+Hu VVRu_^[u GWP_^3[̋D$L$t3Ul$ Ue9u8h$>P$3]SVWU3 "~AIWUi"tAL$u NVQt#UG!;|ġ_^@[]_^[3]Vt$NVWjQFRVD$D$PN QRgFt6W~.F Wh0hHP)uu OWQ_3^u WWR@_^̃T$D$PD$L$QhHhD>RPD$r,uVW|$jWh=W$tdt 8hd=Q #EWVD$F D$FD$ FtFHt9PRF Pуt(u NVQtu WWR_3^u GWP_^3S\$CVt$W|$rvt VP׃uC t VP׃u3_^[Vt$VeFt!rvFF8u HPQF V :u ‹HPQVV^̋D$x}t@hX>P!3VPFFtNQЃt3^htp^̃hD$D$D$ ȵD$D$X|{Shjjhhp؃tXVW|$ IPX|78PG8@ PSF u t hp>|_^[̡DtV5֋L$D$ WPQ t3^=uj谧u3G t^փ8u&XRP蔦]P}^m^Sjd؃u[ËD$ V5P֋D$t LP@hQ L@WR֋|$jdS t HÍP@u+Uti|3 tb~7uPS4؃tjvh>P=W|$,3UuōP@u+uFuVS4]_^[S_^3[]_^3[QX;Fu h>Q3YáXu X`C Du DFSUVWXND$DjP.t$ =V׋PӋl$,tUPӃtL$ QUVX T$ RUV%D$ PN DQ_^]X[Y̋D$L$ Vt$ W|$ PQVWD7_^̋L$ Vt$ W|$ D$PQVWD7_^SVt$ W3t8PӃtFFuD$tu=>0u]NFxtXu0uFF0uINF0t x;ȋh}5~|6;<зw-׍<;r!V xFK;|͋D$t0_^[ËL$t'9x}$VRP Hu FVP_3^_^̋D$u D$(?H0tuËIDu D$VPыtdF=0t^h0PuLF=tBhPu0FH 8Qh@?R Hu FVP3^Ë^̋D$VP5u^ËF=WthPtt&jjVS Hu NVQt_^_3^̃ $PL$QT$R[jh?P9!}^D$tD$8u HPQD$tD$8u PPR$t3$8u)HPQ Ë$D$L$RPQ Ã| ƃ Ëjhl?R |3D ̋GN;Ul$tBPQ t4F@T t+@dt$ QWVЃ =ugu PPRG@T t$@dtUVWЃ =u:u HPQF@T t@dtRWVЃ ]]̋KUl$E;u;v]]Átu]VWUStcMy S9tcSr ǍI:utP:Vuu3}_^]~ _^]ËE;C_^@]̃wC$LO 3Ʌ13҅&3Ʌ3҅3Ʌ 3҅‹…nunÍIN O O O $O /O ̋D$̋D$HQu^E=t7hP"u%EH 8Qh@R _^]jjU  u _^]EuW6EBSUWc3ۅt'HQTttL$$QVPӃ D$NQT}v}ދyIt$Lэ<2t}7uL$$to7D$$Bu UVY PUV| D$}"xR%t(UP uQNVQE|$t$tT$$RVPӃ D$'O (EPQuh@h@RM[Mu EUPD$ _^]̋T$ntRntu3ËBH0t I(tR"H8t tR@4tt RЃ~̋D$P| 3ɅS\$ V3VW|$A;u@Tu @_^3[Ë@0t@Dt SWЃ~!F@0t@Dt WSЃ~_^[̋D$L$PQ~8h@R D$ND$AfD$ehVB} hAfh8B} hAfhmB} hAifh0A} hAKfhA} hlA-fh0A} hPAfhA} h(AeY̋D$uD$%̋D$uD$%4%Wu_VhAWu6PGu^_VhAW |u FVPFHT$ xN $9tH}RV^3_^_KtfVhAPktPF=thPt4FHx.N T$ 9t H}^jPRPV^ËD$ DHD̡Dt?$HPIDDBPDыDDJDuSUl$3ۃ ~h BP][Euet 0h0?Q][VW|$WD$uhBWuPQhAW\PJu@D$Pt.tPEUjWV:؋HuFVPT$RWPу ؅uG tpP W_^][̋D$ L$T$jPQRVt$uL@h\BP^Ë LW=@hPBQ׋Ljj@RVrFuHB@ LVQP@hBR׃_^Vt$Wu?h(?h0jV  Hu FVP_^Á~u_^áDuhdBTDt|PV1tjjWN@ HuROWQFdF=hPurF=0u@DVt5u_3^ËF=t6hPru$h0PV  Hu VVR_^ËFN PQń_^VWGPT tPduFHTt6Hdt/D$ Pu_^Áuu NVQ_^VkHu VVR_^ËGPT tPduCHTtHduV3IPË?tt F|ܸ^Ë^ø^̋T$JtA(Vt$ u VRЃ^ËNtu VRQ(^Åt;A(uVRЃ^=p y(p D$ PL$ Q}^D$PJ(tQT$ r;N(uERPыD$JD$8u HPQD$ D$ 8u PPR^D$8u HPQD$ D$ 8u PPR^VRV^SW؋G;Cu@(tSWЋOtu*u"/|SW| WE_[Vw^_[VW|$ t`t$tX;u_3^áF@ q FHq9A ~hB=4u2ƋM FQ JQ }_^h.hpB_^SSV| V[3ËL$3Ul$VWU=u1u HPQVW| SW/[3_^]_^]̡FW@ q FHq9A ~hB73t3_Ë|$ OS\$Vt$F;uy=ttr@T t$@dtSWVЃ =ucu PPRF@(t>WVЃu FQ ^3J[Q _Ë FQ ^J[Q _SNj FQ ^J[Q _̋D$L$;T$ uuÃu3VRQP u^Á~mWu 3n Vu NVQ_^UEVWD$P$% DD$VAt!D$VAtD$NzD$$u7D$$u E%zB BE$u _^]V%Hu NVQ_^]ET$R$ B yt$D$ |y؋ȋD$+ƃu_^]W|$G@ t L$ QWЃ_ËT$ VRu^_VWHu FVP^_̋D$L$PQtu PPR3W|$G@$tL$T$ QRWЃ _ËD$ VP4u^_ËL$QVW  Hu VVR^_̋D$t"Htu.hxPu3u HPQËQ@3QS\$VWhSu'UhBSsu:]_^3[YËD$VPHu NVQ}_^[YWD$}ju GWP]_^3[Y3ۅ~SWWt0T$VRCHu FVP|"D$C;|u OWQ]_^[YuWWR]_^[YSVPQ3u ^[ËF=thPtPFU3~EWV hSbuOG=Ht)hHPuu GWPLWHu OWQKVCW3V4?hBSu[V%G=hP?OQ 8RhBP WV؋Hu WWR}Zt{SV}|mfhStTF=HDhHP.8hBPIWtu OWQ3tu VVR_^[V5DWDtg<;I$  DkPQ4SD;ߣDs4kUoLI;As q 31B;r]k؋=D[V~hDuD5D_3^Ë=DGȁ=DFFF@t+F?FN_N ^SVW|$G=1؋ ȺQ;tAA0qq;qwQT_QI^[ËI _^J Q[Ë5Du#h5DFFNtQV1DN+$I‰AAFNuv5DtFȺAA HH 9Yu A_^Q[Ít q+A _qЉY^Q[ÅuW_^[̋T$%HV; DWU=Dk 9+91H ɋPIu|HP Q JpkL>HNFF A;ȉNuSFu VDNHFtVPDQF5DDHD_^ÃuDFFtp_5D^ËFt;Hv͋VtBDFVBFtF;HvFP…VuFpFt_p^IH ȺQ HP _A B^_^T$%S\$uD$ P[ËDˁA;syDk+Ёsat]D$ Vq4;w v;v^[ËUPt΋WȃS_]^[ËD$ t PS4[jS4u[̋D$Pu3P ̋D$PVu3P ̋D$Pu3P ̋T$$PL$QjjhORuË$L$PQ̋T$$PL$QjjhORquË$L$PQh̋T$$PL$QjjhOR1uË$L$PQ̋T$$PL$Qjjh ORuË$L$PQH̋T$$PL$Qjjh(ORuË$L$PQH̋T$$PL$Qjjh4ORquË$L$PQh̋T$$PL$Qjjh@OR1uË$L$PQ̋D$Pf̋D$P̋D$Pf̋D$P̋D$P̋T$$PL$QjjhHORuË$L$PQ̋T$$PL$QjjhTORauË$L$PQ̋D$Pu3P ̋T$$PL$Qjjh`ORuË$L$PQ̋T$$PL$QjjhhORuË$L$PQ8̋T$$PL$QjjhpORuË$L$PQ̋T$$PL$QjjhxORAuË$L$PQX̋T$$PL$QjjhORuË$L$PQx̋T$$PL$QjjhORuË$L$PQH̋T$$PL$QjjhORuË$L$PQ̋T$$PL$QjjhORAuË$L$PQ̋T$$PL$QjjhORuË$L$PQ̋T$$PL$QjjhORuË$L$PQ̋T$$PL$QjjhORuË$L$PQ̋T$$PL$QjjhORAuË$L$PQ̋T$$PL$QjjhORuË$L$PQ̋T$$PL$QjjhORuË$L$PQ̋T$$PL$QjjhORuË$L$PQ8̋D$Pu3P5̋T$$PL$QjjhOR!uË$L$PQ̋T$$PL$QhORuË$L$PQl̋T$$PL$QjjhPRuË$L$PQ̋T$$PL$QhPRuuË$L$PQ̋T$$PL$Qjjh$PR!t$L$PQ< u3P̋T$$PL$QjjhxMRt$L$PQ u3P̋T$$PL$QjjhMRt$L$PQ u3Pa̋T$$PL$QjjhLR1t$L$PQ, u3Pxa̋D$Pfu3P̋T$$PL$Qjjh0PRuË$L$PQ̋T$$PL$QjjhP2_]^[Vt$xPoV^PD$QRQPRu L$3̋WxD$QRjPWuST$GO@LV;uL@hPP_ËT$ PH3_QL$D$SUt|$VuWt$} ?uDOt=:u7:utA:Fuu3Ƀtt$D$ KRL$|x4t$ wu3t%t$ aupO3t D$_^]+[YËt$M ~D$9uAtJ_^][Y_^]+[Y̋D$QBx@VpW83x(uH,qtx 3ugfPHfHHtZfuH`SY3҅~FAUx|f9uq03t0;|][_^ËD$|][_^QD$L$ Ul$ PQU D$}]YSVWd$Mq IN ыQ;Z;A }U+QtFtVPL$0T$,SPV7D$뎋Qv>iu 3u UeD$} ύt;ʉ}E_^[]YËD$(L$$T$ PD$ QMRQPRuE M@FLɍtK8uFv>iu 3u Uu ƍt;utp_^[]Y_^[ ]YËT$,t*AI I;utI _^[]Y_^[]YVt$u ^ff=SUWV3f=RDPT$tQQuMu UUR_][3^Ë\$PjUӋF 3~>|$D$ L$VPSQT$ Rdt;PGWUӋL$ F ;L$|f>RuNQRPGWUӃ_][^MuEUP_][3^Ël$ URT$t<PQ\$ PjWӋNQPjWӃ uVRPPjWӃ_][^Ul$ fMW|$ ff;~_]}_]f=S}9E:u tWX:uu[_3][_]ËGM;~[_]} [_]3ۅV~(3IEOPQ_u GC;|3^[_]̋D$L$;u3ÅttIL$PT$VhEtD$F ~^W舿^Vt$FPrV,^QD$T$V3;Ɖt$u)D$PD$L$QhhxhTRPD$L$Qh|hTRP;t7L$3;tQ"؋L$ QPhp2 h0 R^YË^YQD$T$V3;Ɖt$u)D$PD$L$QhhhTRPHD$L$QhhTRP);t7L$3;tQ؋L$ QPhhPRA^YË^YQD$T$V3D$Uu)D$PD$L$QhhhURPD$L$QhhTRPtL$T$ BQP,u^YË^Y̋D$V3u(L$T$ D$Phhh(UQR2D$L$ hh UPQtT$z ntn^Ë^̋D$V3u(L$T$ D$Phhh@UQRD$L$ hh4UPQtT$z ntn^Ë^̋D$L$PQh|e ̋ DPQQVD$PD$hQRPD$3tOT$IWVQR-8 t&hʼt ~_^ ^YW_^YË^YQL$T$ VD$PhhLUQRD$3tJD$WVhP7 t*hKt~_F ^YW莻_^YË^YQL$T$ VD$PhhTUQRD$3tJD$WVhP.7 t*h˻t~_F ^YW_^YË^YÃD$SUVWPD$ D$D$L$T$(QR33;3ۉ\$|$;Uz;WU;F=fthfPtFD$u NVQUt jU.؃C=0th0PluJjUt9F=fthfP6V|$0uFVP|$0sFVD$t΋sʃ|$0 u CSP\$|$0t$T$,jQVSRdp| D$,HT$tWVU ;u|utMu EUPD$T$L$ @;D$T$D$,_^][h VUhV DVQtu VVRtMu EUP_^]3[Ë DhUQ_^]3[ËSB DPhUQy HuSSR_^]3[ËCH DQhURC Hu FVP nKSQ_^]3[V}_^][^Vh@h\UR _^]3[QSUVW|$3UW;t$VH؋Hu FVP}qS:utP^:uu3^QSVW|$_t;tIPDQhpVP3u=T$DRhVP[ _^[YËOQT$tuWK [ ʿV tj~eUD$9\$}Jt$NͿV tFL(QT$ t3T$0T$u]_^[Yff=+Ukt! DPh+hpVQy3]Ãt }3]ËSRK]ËKff=Wtk DPjhpVQ2JuDPhVR 3{ DhHhVQ _3]Ã3tC0P_LtSLmLc^t~VMHd$;}CPLGu^_]_]hhP PQ ̋CW3;DhWP3_ËS v +ƃ3t]KDv V zt@CTv пW$]t#SLv 3Ct _3!$u+ƃu3uDhVP1_hxh P k ff=#t DPh#hpVQ3ÃytDhdhVR 3ËI=$Vt==%t6=&t/='t(=t!=HtPDhHWP3 ^QtC^ff=SVst! DPhShpVQ93^ÃtuKW_tڃuChXhP PF; ^ff=t DPhhpVQ3ÃytDhhVR 3SY,[t͸ff=Nt DPhhpVQZ3ÃWuыN3_ÃuFN3t/NpOtN03u!3_ËDh4hVR 3_ø_SUl$ fEf=MWL$ DPhhpVQ3tV;\$}lMο&tHUD2ff=ts DPjhpVQ;SuDPhVR 30u^_][iM3RJVff=Nt! DPhhpVQ3^ÃuVR^ÃuMFWPt7NpO"tN03 t_^_3^Ë DhpWQ3^QC$tC=t3UtJVW;l$ };KοV tCD0t30u_^]YQVW|$GwD$ t]SU|$d$;l$}?O˿V tL$Qtt30u][_^Yff=t DPhhpVQ3Ã~tDhhVR 3ËNW@_tS^[t̋Q3~Id$f9u@;|̃UVW{3|$~Cf8uF;|K3,vf|)D$ ff=t&DQhhpVR _^3]ÍF;|8t݋|$ tKT)RtKD>@ @tl$ L.IK ffuuD$T.;rW@[KD.@R=Kt.v L_^]ft Q~_^]̃xtDhhVP 3Ë@t#t DVhWQ3^P<̃ff= KVWL$ t DPh hpVQ u}!3u[DhWRFEK0t-Cff= DPjhpVQ3D$tgU0T$ ;T$}VKͿV t*CD(ff=tADQjhpVR3T$ 0T$ u]_^þ{VfNW3f=4t" DPh4hpVQT_3^ÃuvHwZ $ _^ËFO3tO3tPDh XP3 _^Ë DhWQ_^Ãt DhhVR 3_^ËFffSt? DPjhpVQ3u DhWQP[_^ÃtʋFPO3up3t)3upO3v[_^ÍIM C  QCUl$WD$tNCPT$t?VǾ;|$ }NK1;T$t&;t#PDUhpVPR3_3]YÅt QT$0u^_]YS^WttDhhVP &ff=DtKDQhDhpVR3uP~tDhhVP _3[ËN QtuNQ\$_[Ë_[hdh PE QSUl$fEf=G]W\$t$ DPhGhpVQ_]3[YÃ|M^HL 迠 tUR"t \$\$3|$`|$t^_][YQL$ UD$Phh@X3Ql$W>;T$SjRh7l؃ ;tVVWSU ;t'DVPh8XVl Hu NVQ^u WWR u CSP[u OWQ_]YË]YVhjjh hM_xDuPPhX DSPBhtXVJi 7ShhlXCV!ihhdXCVihhTXVih|h("Vihh7Vihdj.؃@WhLXSqhQVdhHQVDTDttDt-t)jPVhWtu HPQDuWWRD_tu HPQtu VVR u CSP[^Vt$ff=Nt! DPhhpVQ%3^Ãu+vff;СDRQhpVP3^Ãu_NWWtCFhxh P  t!N0 L[t_^_3^Ãt DhhVQo 3^ø^̃~tDhhVPE 3ËNWt_tFhdh PE\ tøS\$fUkV3f=Ct DPhChpVQ |~#ͺuDhXR舺^]3[ËKff=WuitDhhVPh _^]3[ÿtKtҋK0t_^][Ãu'f=/u _^][L$ _^][f= uuQtSS v ʿ xt7F+t2S vf3]YÅtW;}DhXR_3]YËMSV$@L3 3 D$;D$HQYFCKT$Bf<( (uC;\$=X1L$QD*P8t}0;t$oL$IͿV FC;t$>T$Bf(f=$t f=#\$^[_]Y^3[_]Yà uV{u^[_]YL$MQTF|$|=Mf9u1X0tU0R@t3l$4[+D$HοV tL$QD2Pt30|NL$Qf<2 2u=X~tD$HT1Rt30N^[_]YÅt0D$+t(DhXP3R^[_]Y3^[_]Yff=@VsWtL DPh@hpVQ3.u{tDhhVR _^ÃtuNjKpNtCTv п mtS vDPyyuKQ_^ff=.VsWtL DPh.hpVQH3^u{tDhhVR _^ÃtuNjKpNtCTv п tS vDPyuKQ8_^hh PB ff=Vst DPhhpVQY t,t'C3tDhhVR* ^ËKWWt9CvL LtuKQi_^_3^̋L$ff=-Qt DPh-hpVQ薺3Ãt3ËIf9.u S[ÉL$h h P, ̋FuDF0PtQNW$_t7VRAt$Ãtʋ DhhVQٹ 3̋FuDF0PtQNW$b_t7VRt$Ãtʋ DhhVQi 3Vt$ff=Kt' DPhKhpVQ8v^Ã~t#DhhVRv ^ËFf8Lu^D$Vt$ff=Nt' DPhNhpVQ踸v^Ã~t#DhhVR菸v ^ËFf8Ou^D$Vt$FF`PNWFhdh PER tiN0OtPvh Hh V, t._^Ãw DhhVQ虷 3^3_^Vt$FF`PNWtxFhdh PEv tVN0Ot=VHRt*_^Ãt DhhVQж 3^3_^̃S\$VW{|$usDh4YP良UGD$|$T$J˿V tSD$HT R$t;6KQ u[f{LC{_^[D$3T$|$0T$g;tDh YP3轮]_^[ÅtٍG;uҋL$QDm ¿V X]_^[ÃS\$VW{|$usDhYPYUGD$|$T$J˿V tSD$HT Rt;6KQu[f{OC{_^[D$R3T$|$0T$g;tDhXYP3荭]_^[ÅtٍG;uҋL$QDm ¿V (]_^[ff=JVst! DPhJhpVQ93^Ãt tuSRt݃uCP}^ÃuKWX_tK0Qt^̋T$ff==SZUVt% DPh=hpVQ胳3^][þ;}-C;t! DhhVQR 3^][þBIW $ [L LzD$@fxSXu w_^][S:_^][Ãu _^][Ãu<PL$A 0_^][ËDhYR3C_^][à [DT$BP_^][ÃttL$AW3҃_^][ý;}FBff=t" DPjhpVQ蕱T$$3Eu_^][3_^][Ð  M  q '  ̃L$ VWy3|$ 3G;t! Dh hVQ _3^_^ÃS~/3~)AOIf8Juxu Xf9SthF;|U,v+ƉD$I|oY1tXD$HL)V 3|$t6L$L$L$0벋Dh\ZR1[_3^L$+ޅ۸vQ,v*=J *u"PF;Gh(Z-CuL$QD*][_^D$ uk\$KT)Ro KDv V +CTv пW$ SLv PD DhZQ][_3^Ã$uXu5WtVT$BL(Q t>][_^ËDhYR跧][_3^hYDP蚧3][_^ff=AVsWt DPhAhpVQh t-t(C3t DhhVQ9 _^ËKtEut DhhVR 3_^ÍAFt_^ÃtDhhVP辭 3_^hAh PB tC0 띍vL L22)CP#_^QS\$ ff=<UkVWt% DPh<hpVQ _^]3[YÃ|iSRCtY\$;}!Kf<9A9u5Fu_^][YÅt|;}x+tDhZP膥_^]3[YMvl$;t$}Cl$M˿W$"tMT Rat30u_^][Yff=S^Wt" DPhhpVQ_3[Ãt tuNZ2t֋VRtËFN@L3ottXN0WLtF@F п L*]uNHQ_[SUl$ fEf=Vut$t* DPhhpVQ33ۅt,W3|t$;}uCu_^][ffFSUWt#Ph DhpVQ褪_]3[ÃtuT@F п8tӋFNT@fftPj롍T@ ѿ tFN@tF@F\riu NQ_][ËD$ff;Pt  DPh;hpVQũ3Ãu)@fft ftf uPuÃuʋPRCtSUl$ fEf=:]Wt# DPh:hpVQ=_]3[tUR6tVd$;}DE 0ff=tf=t f=0tf=uQt30u^_][S\$ff=9t! DPh9hpVQ蘨3[jjh  t[Sff=8t! DPh8hpVQJ3[j#j"h  t[QSUl$fEf=7]\$t8 DPh7hpVQ3D$VW tEStԸϋ\$d$9\$}[Mο=Vt/UfD2f=8\2t7 DPh8hpVQf3|$0|$u_^][Yj#j"h  tѸQff=6K $ti DPh6hpVQ3UtjV0W;l$ }[CL0迠=!t5KQt#tSRyt30u_^]YQSUW|$ff=5OL$ tg DPh5hpVQ>3tdV0;l$}W_t=WL2远=|$tt_t30u^_][YSUl$ fEf=3]Wt[ DPh3hpVQ蒥3t\V;}QEt7EL0Qt#tURt30u^_][Vt$ff=2Nt! DPh2hpVQ3^Ãtuu/NW_tӋVRt^ÃuF^D$Qff=1K $te DPh1hpVQf3UtfVW;l$ }WKοQt3CP t#tSRt30u_^]YQUl$ fEf=0ML$t" DPh0hpVQ诣3]Yu3]YS]D$tWVWT$;T$}CMο"tE\0t3|$0|$u_^[]YSVt$ ff=/^t" DPh/hpVQ^3[u^3[ËFf8@uut^[WPtkt]uaN$StHV0Rt5NH'tF`P7t _^[_^3[̃ff=$SUnWl$  DPh$hpVQ 3"u~t Dh$hVQ ՁyJB'FDh$hVP誡 _]3[Ã|N$GvVRS_N0 B^H/%yH@=VLm ʿtBNDm  t%FTm\2tl$ 3l$ _][ÅD$`ItvNͿ(tFNL)0 t,VD*Pt^EHt3D$L$ `;D$|_][hXhP PF+ Sf;Sua[hXhP SF [QSUl$fEf= ]VW\$~ DPh hpVQh3D$)9\$MοXUf|2SD2\$tEhXhP PF7 wkMfy\9A(t!DhhVR褞 _^]3[YÍA0u_^][YËEH,A=3=3C3=3=3=3=3tx=3tf=3tT=3tB=3t0Z3t DhZQ3k_^][Y_^][YhXhP PF t3|$0|$_^][YQSUl$fEf=]W\$ t$ DPhhpVQ_]3[YÅ~Mxt߸;VEf8/uPI}j1#tU0RHt33vNL$L$9L$UM˿V tUDPt3L$0L$u^_][YÅt6uVX^_][Y;}U v ʿV c^_][Yff=Vst! DPhhpVQi3^ÃtuKWP_tڃuChXhP PFk ^ff=S^Wt DPhhpVQt;t6t1t,F3DhHhVR諚 _[ËNHQ|VRV~kN0V FHPtv~4N`V tSNxQt@u8N0V tFHPt _[3_[SVff=!^WtA DPh!hpVQ腙3蛒uDhZPW_^[Ãt tu͋N^tVRt~.N0OtRNHQt?uN`V tVxRt _^[_^3[SVff="^WtA DPh"hpVQu3苑uDhZPG_^[ÃtuҋN(tVRt~N0V tNHQt _^[_^3[ff=%SUnWt# DPh%hpVQ觗3_][ÃtuN BtڋVRRtNjN0 t^HtuN`{Nx ʿ^^ÐTH_][ff=&SUnWt# DPh&hpVQ跖3_][Ãt uNRtڋFhdh PEÿ tN0OtFHXtN` s^x|` TN豾5N 葾^_][ff=*VsWt" DPh*hpVQx3_^Ãt tuKtָ;~SRtuK0V սtCHPt_^ff=SVwti DPhhpVQȔ3Un;Gff=tu DPjhpVQ耔3\|GhXhP PF謽 tGvDfftDQjhpVR__Cd]^[V uuDh [Pˌ^Ul$fEf=HVut DPhHhpVQ裓t2t-t(E3t DhhVQo ^]ËMWt&EfHftDRjhpVP-3_^]ÍLv ȿ λtEvS\Z[t˃u^M0W虻tEhXHhP PF tM` L^l_^]Ã\M0W/=MH̃Ul$fEf='VuWt$ D$t DPh'hpVQ|ƙtH3mLvf|*tvDռPDht[P近 _^]ËMS`"M C]0лETv к U v\蝻H $Mf<*uXmt1UL 賹tE\0Ct3T$HT$u[_^]Å\$;\$M[ fft%DRjhpVPy3[_^]ËpS3҉t$uLjh[ոtȋM` t]xzt[_^]ËL$T$q;uHD$3t̋3t Dh<[Q3譈[_^]Ã;TUL 6D$MD@軹Ev п[_^]V0[觷[_^]SUVt$WI^3N $H VoVB_VrOt= DhhVQm 3&Dh[R> vff=tf=tf=t f=tf=u/VrVDVetDhlhVP褍 alRt DhdhVQz 7d(tDhXhVRP XN׾i+ssg[V>Kݶ=hXhP VF豵 hhP VQ脵 VVV6hdh VE' FVIynVa#VVIV =t7=t0= t)="t"=!t DVh[Q3蒂^ÉL$SUl$ fEf= ]WtG DPh hpVQb3}^}tSDhLhVR< 3;|ыURtM[L3ʱt뢸KuMK[ [ 蓱ta~\VD$9\$}GMο[ btUD2Pqt3|$0|$u^_][̋L$ff= t DPh hpVQ93ÃytDhphVR 3ËIf9 u L$n̋D$SXKUVWx+P [fftI DPjhpVQ躇333;}wT$Bf8 uP/Iff=tCDQjhpVRa3wuPDhVPB Eu uEu Dh[Q_^][̃xu@PtV3u Dh(\Q^QL$T$ VD$Phh\QR3t%D$Pu @h\Qe3^YËT$WR蒭tb=u4Zu'au{Dh [PWd(j=u@WtEjuuDht\R~_^Y=RuuWldWad DhD\Q~ ̅u\QPR ̃ SUl$,VP3Q3\$$\$(;ÉD$u1L@h\RD$iu@3t$uD$ D$|uT>wuO3u;D$8@u\QPh I t$D$;r|+{t$D$ uD$$uڃuՀ>auпpO3uD$8@u\QPhh땃u>wu3t$uD$$v|$8\$OQPD$ RVSP L$,QT$ RUwA 3ۃ4D$"EL$8L@h\RD$@3ۋ|$8D$P } u OMUG +щuUP+VUgA u)FPutvMVQW\ >T$8Uz*_^][ ÃtV萄_3ۋ|$8?8L$xǂx!xtKhR _uU37*_^][ ËxXH@DžxU*_^][ ̉H3ɉHH H HHVt$FFD$W|$P ~FF F@u9z_3^Åu\ xXu `Xt3Ʌ=xX|T$ L$RVPD$$E _^̋L$T$Vt$ W|$FFD$ PQR ~FF F[@ u _^É xXu `Xt3Ʌ=xX|T$(L$RVPD$$ _^̋D$L$ T$jPD$ QRjPs̋D$L$T$ PD$ QL$ RPjQ@̋D$L$T$jPD$QL$RT$PD$QRP Ucu]V5@փ8S֋Wj=P}+QP0uy`GW1uyuGVVR;VUCuWVUuD tyyu FVPu OWQC__[^]̡8P{̡8WVPC{Vm _SV5֋օtWP}^[ËQ_}^[SV5֋օtWP}^[ËQ}^[Vt$F=uL$ @3҉1^hP\u%H@h0PV|L$ 3^ËNV QR'L$3҃‰^VP}3^WfVT$W藦_} 8^L$z^̡u`=أ̃VWu`=أtL$ D$PQV u"[wT$L$ QRVˀ uH_^詥T$RPT$(VͥuHD$P2_^gD$ PT$ V蔥u|$ _^á@_^́h/$ $PD$=x:tL$Qhu3$ yV5jT$ ht`Rփ tCjD$ h=Pփ t.L$T$RD$PL$ ^$ $^́h/$ `V$`Rt$D$L$ t1Pht=~0Pu j3^$kW=Djh`V׃ tRjhx`V׃ tAfVT$ RfL$D$;t V_^$$_^̃@SjhPQ)kd\$T$T$ +L$[̋ W=jhRPȋQl$™~_̊L$$%It $ ̃3SUl$WM$%It $ jjfFMjQBM 3W׉F(V,MEhQPkd=+jNDF@MEhQ\$PT$ kd+jNu3Vu$Xt ^] Éu^3] V\$FH0VQHtWVH|$ u VVRuWt _^] D$ }l$ `;}_^3] ̃8SUV3Wt$t$u`=أ;Ƌ|$PtnD$PL$ QhbWTbtCT$r 1jjjjjhVSQu_^][8XH@D$PL$QRhbWatGÆjjjjjD$$hPV߆u |$L$QL_^]3[8ËT$RLL$ugD$8P5L$(QT$D$8_^[4Vh)hD$8W,PU$h/SVWjjh|fEӋJVWh|f}Ӆ<8;r ;\tK;s`=hpfCSltxhfPI@u+‹ȋx@u+\0Ã@ˋ3ʃ󪋅MPhhfQh`fSVN)UhURj\U33҉Mt$u+ր| \u D\ AuMDEPI@u5t+¹+QUhPfR֋EPMQӃh`PUR\E ƅP@u+€|\t}OGGufLffEPI@u+¹+QUhPfR֍EPMQӃthPfheRL `hfP@u+‹؋P@u+‹EP@u+‹ȸPfpI@u+MÍ\Ãmˋ3ʃ󪋅MPhhfQURheSVw'3}󫋅E܋MMQEEPjjRjjjVjEDEfEptMQ UE=׋ׅt VQKRJhePxD3tI_^[]̃ Vt$VD$%)D$ FUVMA FUPSjV؃WjVSAW轺~HP讹PjVULD$;t6WSd;tL$QSht T$T$|$SFUP FQ uFu PPRF_[Mu EUP]L$ Q$D$^ ËT$ D$PL$QhfR$Nu VsL$D$PQT$RpVD$"sD$^u8P G ËL$QPh ̋D$h hfh hfU(|L$QT$RL$ QT$,RP%D$(\$ %\$%\$D$0}%L$4 fD$4}% fT$8\$D$8}%D$< fD$<}% f$hf,]̃D$$u`=أVt$WtxD$PL$QT$RhfV\LtR@qL$T$D$PB QPtW^q} 8QKE_^V輶_^~BT$RH@D$PL$QRhfVKu_^pL$T$ D$PQRWp}%D$ P8P3DV6 _^ËL$ Q6V _^QL$ $PhfQLK uYVW,pT$R0VWp_^}8PCDYYQL$ $PhfQJ uYVoT$R4VD$ oD$ ^}8PCYPTY̋T$$PL$QhfRuJuVWSoL$ D$PQ8Vyo _^}8RdC̃ $PD$L$QT$RhfPIu Ë$tHt Hu$$$L$A=SVthP$u T$ RB D$ P=Y>t^3[ WWnL$ T$QSVRW؋yn_|s8P`B^[ VS;^[ ̋T$ D$PL$ QhfRHt8D$}8PA PjO$u3 VWmL$ T$QRPD$PWm}.D$D$8u HPQ8RA_^ ;t$ tD$VPD$_^ ̃ $PD$L$QT$RhgPHu VlL$T$QD$RPVD$lD$^} 8Q@ Pٲ ̋L$L$Ph gQG uLVWhlD$t$ 9Wlt%5֋֋R>B_^LÍt$ \_^L̃ D$PD$L$QT$Rh gPD$hD$Fu Ë$VqAu+΃tP@u+ƒPu =3^ ËL$IABuVPtV3^ SWQkL$VQS{kVu8Ra?_[^ áL$ PQhgWtT$RV轆_[^ QL$ $Ph(gQE uYË$RPsRỸVWjjjD$PL$QtVju%5֋֋Re@_^ËD$5(jP֋L$jQPWhU_^̃Ul$D$PL$ Qh4gUEu]ËD$P@u+‹ЋD$Vp@uW+ƍ|WRjTu ;_^]ËD$ L$SPQhc^WSS[t%u VVR8P=_^3]ËM DVQR t:u FVP_@^]QL$ $PhdgQC t$$Ru@h@gP83YPgỸT$WD$PL$ Q3hgR|$|$CtjhpgPB }3_ËL$T$VQRx;u s:^_VV^_|u8PK<Ë QhghgP̃h/jD$hgPB }3L$WÍ $QuEVhgPhOz8VR[6tu FVP3^L$Í $QL$3%̃ $u`=أUVW|$ t#D$ PL$Qh$hW3Au2J8H@L$ QT$RPhhWA_^] ËT$ t+p@u+jPRn u 7t$ UftF 3T$J jjjQPjHWiftu VVR D$x 迾_^] eL$T$ jjjQRjDVf wN=t$׋EׅtVP; Q;T$R+_^] ËD$P+_@^] QL$ $PhhQL@ uYË$}@hhR;YáFSVWhh=hhV׋؅u h`hQ;_^[YhPhVׅFuh4hRr;_^[YhjjjhFӅt=L$ QjtLD$ FVRPQFu2u VVR5֋֋P;:_^[Y_^[YPQRH jhiV3 tjhiV ujhiV ujhiV uhhiV uPhiV ujhiV ujhiV jjh|iV RhhtiVn 7hhliVS hhdiV8 hhXiV h@hPiV hhDiV hh4iV j@h(iV }jhiV ej h iV MPhiVm 6jhhVU jhhV= jhhV% jhhV Vhjhhh;W*W@hiV u GWPX8 8Qh8VD u DDuv'3 ËL$j ̃ D$PD$L$QT$RhjPD$jD$?2tM $u hk};tFRtW^̡FW|$;u hlh}`FtPѫ;uF_D$۫_W=Fu h8l}F FtPz;uFP舫_OP̡Fuhhl|F̋L$F FáFuËH@u* FA@u8"FB@̋ FFVpjQFtL$9HPtu FQ3^ËL$ ɋpLtFRHLtu FVP^̡F̋D$̋D$@̋D$QU9 u]YáFSVWjP0FD$t_L$ytFI_t4WPR@tMSVU؋ Hu FVP|+?uL$D$u FQ_^[]YËFRΦEHEu EUP_^[3]YËF3;̡FP53FF̡Ft"VP} hlzFH̡FtFt Pب3̡FVPĨu hl1z;5Ft hlzNHuV^|$^u(N̡FSVWjP营t$~3ۃ;tW?;u FQ蕥F;t^u PPRF;t^u HPQF ;t^ u PPRF;t^u HPQF;t^u PPRF ;t^ u HPQF;t^u P_^[D$b_^[W~tE;=Fu hlxFtPO;uFP]~u_Vt$WFjPHF?u h\mx;tFt h,mcxFR0V_^VWjTF3;u F @ ;S\$^~~ ~~~D~H~LFPF;lj~@~(~,~0~4~8~<~~~ ~$t"VP} hlwFHFjPFKFRsb [_^諥L$F Ft(Vt$ VP謥} hl;wFH^̡FVWP蓥u- FQu hmvFH3 F3;‹u V4KVHB3_VH^ÃX-SU\$VW3|$|$0Ɖt$ Hd$@u\$0+>.l$|$u FÍ$ t t t t t u@݊+t-u@0|9 H@0}8.HD$@0|I9 H@0}etEu@+t-u@0|9 H@0}|$D$5օL$+D)uPuPD$4tX-_^] [UVP uD$4X-_^][Ë+ˋʃt$L$+Ƌt$ ʃʋT$L$+Irʃt$L$T$R+UDD$\$$t+;v +\$DÉD$UD$(9 3-u<0uD%u4FhmPuetEtftFtgt Gt^3[D$L$W$Vt$QV8ǍP@u+‹؀?.uGtt<+t<-uFU-RՃtd$FFPՃuSWV ]u-.Fv$Lx@u+NjWQV 7t$_^[̋D$jPDSUl$tU0؃u][á@V3W~!{ D$ QtPF;|D$L$h<htShnPQhnh Hu SSR_^][ u SSR_^]3[Ul$ WSu_]V3~DPt>O F;|D$WhoP3Ƀ Hu WWR^_]u WWR^_3]SUWu3S{u_][V3~#d$PT$tM F;|^_][Mu UUR^_]3[̋D$uP-P ̡FtáVh<hthhnh0hq@hnh HuhP h<hthhnVhJAhnh5|H  Hu hQ58Gu3^SjV3u[3^Ë8GjhRhqHtס8GjhPhqpGt 8GjhQhqFt8GjhRhqHh|H h<hthhnPhpAhnh  Hu hQ5|GhV|GjhRhqPH|GjhPhqF |GjhQhqGj|GjhRhq GB|GSh PhqcG |GjhQhq;`G|Gjh Rhq$G|Gjh,Phq,H |Gjh<QhqH}|GjhHRhqxHU|GjhTPhxquG. |Gjh`QhpqMF|GjhlRhdq%DG|GShxPhXqF |GShQhPqG|GjhRhHq$Hi|GjhPh Hu hQ5FjjV GPhoV$ " FQhoV HRhoV FPhoVζ  GQhoV豶 GRh|oV蔶 FPhxoVx v HQhpoV[ YGRhloV> <GPhhoV"   `HQhdoV NVQ2 HjjRlGjjP GjjQM txEPK(tTVhWV |3u VVRmU(t!VhnW# }&u FVPtu OWQ^_3]u VVR^_]Ë  Ӥ  u    ^ ? !  ٫  d  g @   ڰ   VW3u@_^ËHwc$ HjjP hFhТ k@VhnW u NVQ_^ËpGjjR賒 FhТ  VhnW谲 uFVP_^Ë FjjQQ VR;VhnWR t^JFVP_^Ë HjjQ tJFhТ Mt&VhnW u VVRu GWP_3^ÍI,   M 苚D$"̡HI uX$PL$QT$RhgthDPHIt$L$T$PQRĭHI ̡LIVP;}|^̋D$t 8t̡̋D$PI̡PIu dXuhPyQVW 3t~ 3tlD$t^S3u;SjL$jQufD$ ;uS_^Y_3^Y_^YSUl$ ؋G=VhPܓvhWZhW@uViu FVPhW襮V$؋Hu NVQ} #h,W]]uT$u;FVP/V#؋Hu NVQ} 蹬udT$hWtJu!D$u FVP^][VhL$uu VVR^]3[ËL$T$QRUSVh\yW#^][Ul$VW|R~P@u+;uOSj VӃt+;}+|7pj VӃu[< t< uFOUhhyUV}tƍP@u+€|0 tUhkTt;UhhyAO~$Uh$c%OuUhdy_^]̃,h/SUWhD$83|$DAۉuL@hyPty L QD$Ht=tSP0whWHt(T$$RD$PL$QD$(L$, uZ Vt$@F=r=thPTt QV@jSV oShyD$$Suh\PShtyT$RhpyD$8j P܋L$@SQShkD$L(t L$Su WWRD$ D$@胩_~ru ~|$ V T$tj.Wt@D$htVt$uShNVJet3L 3tSPSh|$t$u FVPSuhWxD$D=tkPugF=0th0PwtFtSh`ujSV  u NVQuShk^|$@u WWR_][t薩L$(!,VPD$ QRPCu^ËL$T$ WQRV&& Hu FVP_^VWW;thyP8_3^WWW tSF=Pu>L$T$ QRV% ttF % ȉ u NVQ_^uVPhyR谦_3^̃S؋UH3VT$ $( XD$ {u {Cu {xu {iT$ {[p{QH{G {=< Q舥^][Y^][þ{ T$ zzXD$ z XL$ dzT$RD$PL$QD$ tPtUauLzD$tD$8u PPRD$tD$8u HPQD$t;D$8u0PPR$zPL@hzP yKS CWQKRPQhyRCtP'C3ۅtWVhyR ؅tMu UURtu GWPL$SQv_t u SSR^][Ð~ O 1  r o o     ͽ ; E h ̡LVW|$ W@h{P5 h{Whk%̡TI |ËL$ H@TI3Vh tY@jh jjVu)P迤u h|!ju NVQn^tԤ̡TI~$HTIHTILV5 P֋ L@Qփ^.̋D$PPtáhXu3ËD$VWt'P-3t܄3t_^_^Ujh |hdPd%SVWeE eE3e܋Md _^[]øËeEe܋Md _^[]SVW|$jWӋtVWӃ_^[%̡LIVFpLI(HItu HPQHIuaV+Fj_VYNR/~Z[A6X09觟hZ蝿^̋D$;FVpt h|Ht hT|;Fu"8uFV萂jVà ^h,|dh\u h|EWP>Ph_W u6VhH%ot$Vh_Wڇ uu FVP^_h|̃S\$0VWt % 3L$4|$0T$,PD$PQhZWR7%t!D$Fu h~v u h}aP[>F u h}GAhXhXPxFN PhQuhLhLhH%hH%(vD$ ttpXuWVOrhD _HI^ubjyY̡LIu h}Viu^SV(q؃uVp[3^UWSlxFxhH%hH%FX tW=FtvhXhX.tNtJP<F tJ輦P&FN PhQtLWpXuČu_][^jSLiUkSkVo_][3^S\$VWu \$D$h Ou,hFVh  tu FVPh u,hEVh t tu NVQt$|$$SVWH u_^3[̋D$L$jPQ/ Vt$ Wu܄|$ VWt(D$PVWD$ t W_^ËL$T$QRVW_^Vt$ Wu܄|$ VWfjt VW _^jVWw_^̋D$ L$T$jPQRJVt$ Wu܄|$ VWtD$PVW3 _^ËL$QjVW_^3;} +Ht$@Ë̃ D$PhD$ D$D$fou Vt$VXL$Qh\V u(3^ ÍT$ RD$PL$Qh0VtL$ u@hR谉3^ ~T$t$3;}T$t$3;} ً+3H@}hPd3^ hoTL$pHT$ P ^ ̋D$V|"L$q;}AQ Rz^áhP3^̋D$@̋D$PҋP u;u.@Ph ;uHPRQh̀ ËH P@QPRhИ̋L$Q;Q}AA BQD$.3̋D$H+HL$ Vt$~thhӖ3^h(2nt@NH V PNH^Vt$~thh胖3^h(mtN VW~r_p @HP^QPjL$jQfL$ƒQPjL$jQL$L$T$ƒQ$$D$D$PjL$jQQȈT$T$RL$jD$ D$jPL$QWS3&=jD$ jPfD$ffSjD$jPffD$$ffSjD$,jPfNfD$4ffSjD$<jPfNfD$Dffԃ@SjD$ jPfNfD$ffSjD$jPfNfD$$ffԃ _fN YUh/SW$V3&|$=jD$hPjjVfVjL$0jQd$8D$9fCVjT$@jRd$HD$IfCVjd$PD$QD$PjPfCLVjL$jQd$D$fCVjT$$jRd$,D$-fC Vjd$4D$5D$4jP׋C ЈL$<VjT$EȍT$DjRL$ND$O׋[@VjD$ˋӍD$jPL$T$\$VjL$$jQD$,D$-D$.D$/VjjhH׋$0_[]QUl$ VW3tES$UL$jT$ȍT$jRL$"D$#ӃOu[_^]YQUl$ VWtBSUjD$jPӋD$ D$"T$#ʉOu[_^]Ýh/$$$PhQH u$ĠË$ShR؃u)XIhpP3[$ĠVt$ BSf|$ ^t* XIhPQ蝂3[$rĠT$D$RPhU~0$ [EĠVt$…tIANu^̃Vލ$0i0pippipp ip pippippippip I8^tʐiIuV|+Wߍ4_HHH HHHH JutIJu^ŠSAVyYr@QPQPQP QPQPQPQP NuƄtPANu@Ar)IPPP PPPP Nut NuAU^[Vt0WPxiҜk8kONu_^QUW<L$,;l$,SVI;s$G8Gu:t;r+ƙI~~+ÊڀˀAf~O3ff fCۍڊ^Y^Y^ Y^Y^Y^Y^Y MuftҊAJuwl$f׃;sÍI7;u;r+™t~~+ƈAAu;^[T$+_@]YQL$ $PhQ| uYá\I$P\I?YVhjjhh tJjhP茈 u1V-jjh/XItPh8Ve ^́h/$$D$8PhQD$(诈 t.T$8hRD$u(XIhpP]}3$3SVt$Df|$Dt XIhPQ}D$F<tXIhR|L$Jt$NU%=W|$TL$GD$ c\$};މD$<D$-PՋL$Q\$@ՋT$DRD$<Ճ ۉD$@l$0D$jhPL$$QƋ~T$(RƋp33;l$~D\$ \$V3Ʌ~T$ ;| A;ˋ|L$ |$TE;L$ |D$|$D$j?WPt$`\$à D$  Qjh4D$,rP7L$ ɉD$(D$VD$$T$0\Il$@T$T$(D$tL$TIL$L$TD$4D$8L$0t$+D$DD$D0;tjPD$ PL$P<1 ;D$<T$RjPU>T$,͋\It L$ٍT$L$4T$TA;ʉL$4|T$(L$T\$t$$ًL$FIL$L$V;t$$\$pXIhЁP'zD$4Iu HPQD$,D$85tPփD$0tPփD$@P \IɉD$t VӍD$D$TT$8 L$T$D$4D$V~D$T\$0t$D$<+\$8D$VD$$;tL$jPQ> T$3L$@RjPQ3L$PD$ JT$u ^S\$ VStEVHu NVQ@HuhR[^[3^̃VW;uW-_^ËF=`S=h`P?>FhP&>VUq؃tySdt)FtBu NVQSdu u KSQW[_^ u SSRu FVP[_^ÍT$ RD$PD$tUD$ PQRWW tHt J;tPO u AQPL$ QT$R{uO GW+;} [_3^ÁP W[_^̋D$L$Ct 3̃ Vt$F=`WD$Htu=tnh`Pn<u\FhPY<uG9~tBD$P@t$Ƌt_^ u OWQ_3^ SUl$ Ej{؃FT$$;RD$Pu~6tLL$$IPQVD$ L$$< uL$Qst"T$$RD$Pu][_^ KSQ][_3^ tΐ|$$WQRVV tA@t;JuWt:D$$PL$Qju][_^ u"SSR][_3^ u CSP][_3^ VW|$ G=`t.=t'h`P:uGhP:th`P-u,FhPj-uh-h؃V^ËF ^Vt$Fh`P--uh7h؃U^V^W|$G=`tE=t>h`P,u,GhP,uhAh؃dU_Vt$~0uF uVp2u^_PVWW t@t;Jt^_^3_W|$Gh`P=,uhKh؃T_ËD$ f_Vt$Fh`P+uhUh؃T^ËD$ ^3Vt$F=`tE=t>h`P+u,FhP+uhah؃4T^ËT$ L$QRu^ËD$HT$ ^Vt$F=`tE=t>h`P+u,FhP +uhph؃S^ËT$ L$QR;u^ËD$HT$ L$^Vt$Fh`P*uh~h؃7S3^V^W|$Gh`P]*uhh؃R_ËD$ _̅t8t1VW 3%3 ȉ Nu_^̋JpHpJtHtJxHxJ(VH(J,WH,rxr0x0_^́,S$4UVWs0|$RQ>t$߉|$\$  ߋ 3ߋ 3ߋl$ ## \$|$0|$  ݋ |$ 3݋ 3݋l$$3#|$ $3m1|$D$|$|$0 ؋ 3؋ 3؋ #‹# \$ÉD$,D$؋  ݋ 3݋D$ 3݋l$$D$ 3#D$3D$$$Í'D$,щL$ ً 3ً 3ً #΋# \$ˉL$( ˋ 3ˋ ݋l$3ˋ\$ 3݋l$ #3$ًL$$ YL$L$(  3L$( 3\$( ## l$͉L$$ ً 3ً 3ًL$3#3$L$ 덌) ƉL$L$$   ًL$$3 ًL$(3\$$ #ȉL$4L$(#ˋًL$4 l$͉L$  ˋ 3ˋ 3$3#3ًL$ GL$L$ ً  ݋  L$ 3݋ L$ 3 L$$#L$(l$ L$4#l$$L$4 \$ˉL$ ˋ 3ˋ 3ˋދ$3#3ٍQcL$\$(ډT$\$( ڋ 3ڋ Ջl$$3ڋT$ #Ջl$ # \$ӉT$T$(ڋ  ݋ T$(3݋ 3݋l$(3#$3Ӌ\$$2g))T$މt$\$$ڋ  ދ 3ދ 3ދl$ ## \$t$t$$ ݋ t$$3݋ t$(3݋l$$3#$3\$ > 't$߉|$\$  ߋ 3ߋ 3ߋ ## \$|$0|$ ߋ ݋ 3݋|$  3݋l$$|$(3#|$ 3|$($8!.|$0ȉD$ ؋ 3؋ 3؋ #‹# \$ÉD$, ؋ 3؋ ŋl$ 3؋D$$3#3$D$(덄(m,MD$ЋD$,   3D$, 3\$, ## l$ʼnD$( ؋ 3؋ 3؋D$ 3#3$D$$덄( 8SD$D$(   ؋D$(3 ؋D$(3\$, #ljD$4D$(#Ë؋D$4 l$ʼnD$$ Ë 3Ë 3$3#3؋D$ Ts eD$D$$؋  ݋  D$$3݋ D$(3 D$$#D$,l$(D$4#l$$D$4 \$ÉD$  Ë 3Ë ݋$3ŋ3#3؍ jvD$ \$,ىL$\$, ً 3ً ͋l$$3ً #L$(L$4L$$#L$4 \$ˉL$L$,ً  ݋ L$,3݋ 3݋l$,3#$3ˋ\$(.L$ډ\$(T$ ڋ 3ڋ Ջl$$3ڋ #Ջ# \$ӉT$T$( ݋ T$(3݋ T$,3݋l$(3#$3Ӌ\$$2,rT$މt$\$$ ދ 3ދ 3ދ ## \$t$t$$ ݋ 3݋t$$ 3݋l$,t$(3#t$$3t$,$>迢t$lj|$ ߋ 3ߋ 3ߋ ## \$|$0  3 ݋l$$3\$(3݋l$(#3$ߋ|$,;Kfω|$|$0   ߋ|$03 3\$0 #|$4#ߋ|$4 l$|$, ߋ 3ߋ 3ߋ|$$3#3$|$(덼/pK‰|$׋|$,   3|$, 3\$0|$, #|$4|$,#ߋ|$4 l$|$(  3 ݋$33#3ߋ|$$;Qllj|$|$(ߋ  ݋ |$(3݋ |$(3 |$,#|$0l$(|$4#l$,|$4 \$|$$  3 ݋$33#3ߋ|$0D$|$0|$$ ؋ 3؋ ŋl$,3؋D$( #ŋl$(# \$ÉD$ D$0؋  ݋ D$03݋ 3݋l$03#$3Ë\$,$ًD$ L$\$, ً 3ً ͋l$(3ً #͋# \$ˉL$L$,ً  ݋ L$,3݋ 3݋l$03#L$,$3ˋ\$(5L$ډT$\$(ً  ڋы 3ڋ 3ڋ #׋# \$ӉT$T$( ݋ T$(3݋ T$,33T$0#T$(3T$0$Ӎ2pjT$t$ ދ 3ދ 3ދ ## \$t$ߋ  ދ 3ދ 3ދt$,l$(3#3$t$0덴.Ɖt$t$   ދt$3 3\$ #t$4#ދt$4 l$t$0 ދ 3ދ 3ދt$(3#3$t$,덴.l7Ήt$t$0   3t$0 3\$0t$ #t$4t$#ދt$4 l$t$,  3 ݋$33#3ދt$(3LwH'։t$t$,ދ  ݋ t$,3݋ t$,3 t$0#t$l$,t$4#l$0t$4 \$t$(  3 ݋$33#3ދt$(;4\$߉|$\$ ߋ 3ߋ l$,3ߋ #|$0|$4|$,#|$4 \$|$$|$ߋ ݋ 3݋|$ 3݋l$3#$ 3 9|$0D$|$0|$$ ؋ 3؋ ŋl$,3؋ #ŋ# \$ÉD$ D$0؋  ݋ D$03݋ 3݋l$3#D$0$3ÍJNL$D$ L$, ً 3ً 3ً #΋# \$ˉL$L$,ً  ݋ L$,3݋ L$33L$0#L$,3L$$ˍOʜ[L$T$ ڋ 3ڋ 3ڋ #׋# \$ӉT$ ڋ 3ڋ 3ڋT$0l$,3#3$T$더*o.hT$T$   ڋT$3 3\$ #ЉT$4#ӋڋT$4 l$ՉT$ߋ  ڋ 3ڋ 3ڋT$,3#3$T$0*t‰T$T$   ڋT$3 ڋT$3\$ #щT$4T$#ӋڋT$4 l$ՉT$0 Ӌ 3Ӌ ݋$ 3Ӌ3#3ڋT$,ocxʉT$T$0 ݋ 3݋T$0 3݋l$0T$ #T$l$T$4#l$0T$4 \$ӉT$, Ӌ 3Ӌ ݋$$3Ջ3#3ڋT$,3xȄ\$މt$\$ ދ 3ދ l$03ދ #t$t$4t$0#t$4 \$t$(t$ ݋ t$3݋ 3݋l$3#$(3\$>njt$(߉|$\$ ߋ 3ߋ l$03ߋ ## \$|$$|$ߋ  ݋ |$3݋ 3݋l$3#|$$,3|$0D$|$0|$$ ؋ 3؋ 3؋ #‹# \$ÉD$ D$0؋  ݋ D$03݋ D$33D$#D$03D$$0ÍlPD$ L$ы؋ ً 3ً 3ً #΋# \$ˉL$ ˋ 3ˋ ݋l$03ˋ\$3݋l$#3$4ًL$ L$L$   ًL$3 3\$ #ωL$4#ˋًL$4 l$͉L$ ً 3ً 3ًL$03#3$8L$덌)xqL$L$  ًL$3 ًL$3\$ #ȉL$4L$#ˋ\$4 l$$@݋i\$ii \$i iYiiߋyiYA$q T$0y_q ^]A$[,3@p@g j@ g@rn<@:O@RQ@h@ ك@$[H(H,Ht@x 3@p@؞@ |6@p0@9Y@1 @Xh@ d@$OH(H,Ht@x̋K(Ul$ ;VWsC,K,C(ȉK,KttL@+;~ŋStt$|0ȋʋT$Kt+@T$KtuiS @|AD$d$t${0t$@St$D$HD$uӋt$͋{0ȃkt_^]̋F,S^(?Ul$ D20BD$ 38W|20~,@+ʋʃV[3~08+ʋʃD$NhЋViNjFkӋËVVlFmNn^oV UF EN MVUFENMV UF ENMVU FE NM VU FE NMVUFENMVUFENMVUFENMV#UF"EN!MV UF'EN&MV%UF$_E][h h S\${uhh u[ËKpHpStPtKxHxS(VWP(K,H,sxs0x0_^[́h/$$HpPtL$pH(SXxVW$P,L$4p$T$8|$p0|$<$Pt$n$SQP$ _^[EĠ́h/S$KtS(UkxV$Cp$W$C,$T$8D$t$t$ l$<ދD$|$8 3 |$3 ݋l$ 33l$3\$   \$3ދt$ \$3Nj|$( #l$4 #\$0#t$ ߋ|$<# T$֋t$8T$XD$ދ D$ l$3 t$ 33Ջl$'t$t$ l$<ދD$Ɖ|$83L$$ 3ۉ|$ ݋l$3Ë\$  3l$3 3Nj|$( \$3ދt$ \$ #l$4 #\$0#t$ ߋ|$<# T$֋t$8T$XD$ދ D$ l$3 t$ 33Ջl$ˁҾLډ\$\D$T$3 l$XD$` Ӌߋ3  Ë\$`33֋Nj\$`3 ݋l$L D$`3Ƌt$H3Ӌ #\$P#|$L #l$T# ދt$ ƉD$8T$|$\t$X D$\$ 3\$ t$3ŋl$\ 3t$t$X3 ދt$ l$ 3|$,3Ë\$(3#\$X3l$$3\$(#l$\T$<3$Ë\$0$Nj|$4l$T|$P*~e֜)Yt$t$8l$Tދ|$P3D$ |$ 3ۋ ݋l$3Ë\$8 3l$ \$3ދt$8\$3 3Nj|$@ #\$H#|$T ދt$ #l$L# T$֋t$PT$0D$ދ D$ l$3 t$ 33Ջl$Tt$t$P3 ދt$ 3Ӌ\$ D$43l$X|$$3#\$P3l$\3\$ #l$T3$$\$(|$,|$H:֫o_T$T$L։t$t$0މ|$H |$dT$L3 3 ݋ t$d3\$03׉t$d3 l$< \$83֋t$d3|$0 #\$@#L$8#ϋ|$<# |$ t$L$H\$L  l$L|$hD$l \$l l$h3 ًL$l33ωl$hl$LL$lL$H l$l3|$P3 ًL$h33|$X\$Tl$l3\$\#|$H#\$L3|$X3\$\$ϋ|$l$ \$ l$$ˋ\$@l$DXGJ׌DlL$|$T$(\$@l$D3ڋ  ͉|$hL$l3ڋ l$l3l$l ˋ\$h3ًʉ\$h3ۋ  L$h31\$l|$0 #\$8#T$l ߋ|$ #l$<# D$Ћ$(hX xHڋT$(T$4ΉhhHL$0L$8X Xxx ډhXT$+@4h@8kA@<ك@@y!~@D[HHHLǀ@3ǀ@؞@ ]@|6@*)b@p0@ZY@ 9Y@$/@(1 @,g&3g@0Xh@4J@8d@< . @@O@DHGHHHLǀ0̋KHUl$ ;VWsCLKLCHȉKLtW+;~ŋt$|PȋʋT$󤋋+=T$uqS|CD$It$ {Pt$ƀSt$·D$HD$uЋt$͋{Pȃ󤉫_^]̋FLS^HUl$ L2PBD$ 3pW|2P~'+ʋʃVL3~Pp+ʋʃ2D$ЋӋËV蜆VUFEN MV UF EN MV UFENMVU FE NM VU FE NMVUFENMVUFENMVUFENMV'UF&EN%MV$UF#EN"MV!UF EN/M V.U!F-E"N,M#V+U$F*E%N)M&V(U'F7E(N6M)V5U*F4E+N3M,V2U-F1E.N0M/V?U0F>E1N=M2VV@U?_][h}h}黠S\${uhhq}u[ËSHVWPHKLHLsxsPxP _^[U,h/$(E$HHSVW$PLL$Xp$T$\|$pP |$`$Pt$P$SQO$@ _^[]́$h/S$,SHUV$,$W$CL$T$XD$\s|$sP |$`󥍌$Qt$T-RjUN tWQu'u GWP_^]3[$ &$Ë3~C$4< ~W0B ~W0 BF;|ɋ$0_^][$ËT$$PL$Qh2R՟uË$L$S\$PQ@[hf ̋D$@D$xtD$pD$M̃T$D$PD$L$Qhh2RPD$肜uShLz؃t t u KSQ3[ËD$tT$RP[̃T$D$PD$L$Qh h2RPD$uShy؃tyt u KSQ3[ËD$tT$RP=[h |6h|hjjh(hB4̅t8t1VW 3%3 ȉ Nu_^̋QdPdQhPhQPQ VP WQ:p>z~z~z ~ RVq$x$_^́LUVWs$|$Kd@T$HD$8D$hH8p3͋h3ϋx3΋ ыH33H3ϋ Hh$3H3Hh 3΋ H333ωP  ыL$p(P,IL$us{CS ΋ ͋3#3KD$(yZ ʋ T$3#3S*yZ l$ t$ 3l$#3/yZ  D$$|$ |$3#3)yZ ‹ы Ջl$ 3#3l$ T$(ꍔ/yZ  t$,3#3t$ .yZ l$  L$03l$ #3鍄(yZ ʋ T$ l$43#։L$ʋT$ 3͍9yZ ΋ l$t$83#3l$*yZ  D$<3#3D$(yZ l$ |$@3l$#3)yZ ы Ջl$T$D3#|$|$3ꍴ.yZ Ћ ŋl$D$H3#3l$荄/yZ  L$L3#3L$)yZ l$ t$P3l$#3*yZ ‹ D$Tt$ t$3#3荼/yZ  ͋l$ L$X3#3l$ 鍌.yZ  T$\3#3T$ *yZ l$  3l$ #3|$`(yZ  ͋l$ 3#|$3l$ L$d鍴.yZl$  ы3T$h3ʋT$ n ЉT$ 3֋ ŋl$l3ŋЋD$n  ֋t$ T$p33>n ʋt$ ϋ3t$t3L$ n  D$x|$33/n Ћ T$|33T$*n l$ʋ $3|$|$3鍌.n  ŋ33$D$ (nЉ|$ Ջ33$T$*n  $l$33鍌.n  ʼnt$ 3$3D$(n Ћ Ջl$ $33ꍔ/n  $33L$ )n l$  $l$ 33荄.n  $l$ 33ꍔ/n ʋ $33L$ )n l$  $3l$ 3 .nD$ ЋD$ $3l$3ꍔ/n ʉ|$ $3l$3鍄(n ȋ ΋33$L$n l$ #Ջ# ׋ $T$ܼ lj|$# # Nj $l$D$ ܼ ʉ|$ ## ϋ $7ܼ|$  #׋# ׋ $T$ܼ |$ Nj## ŋ $l$D$ ܼ ʉ|$ ## ϋ $7ܼ|$  #׋# ׋ $T$ܼ lj|$# # Nj $D$ ܼl$ ω|$ # # ϋ $7ܼ|$  #׋# ׋ $T$ܼ Nj##Ɖ|$ ŋ $D$ ܼl$ ω|$ # # ϋ $7ܼ|$  #׋# ׋ $T$ܼ |$## Nj $l$D$ ܼ ʉ|$ ## ϋ $7ܼ|$  #׋# ׋ $T$ܼ |$ Nj## ŋ $l$D$ ܼ ʉ|$ ## ϋ $7ܼ|$  #׋# ׋ $T$ܼ |$## Nj $D$ ܼ |$  L$$3l$ 3.b  $ l$ 33ꍌ)bʋ  $33ЋD$ bʋ ։T$  $t$ 33>bʋ  $|$ 33/bʋ  $33D$ (bʋ l$  $ 3l$ 3ꍔ.bʋ t$l$ ΋t$ 3$$3>bʋl$  Nj3$(3D$ bʋ  $,|$ 33T$bʋ  ͋l$ $033鍌.bʋ  ʼnt$3$43D$ (b  Ջl$$833ꍔ/bʋ  $<33L$)bʋ l$ $@|$3|$3荄.bʋ Ћ Ջ33$DT$*bʋ  ͉|$3$H3L$)b  ŋl$33$L荄.bʋ  $P33T$*bʋ щT$ $T3T$3S:bʋKK  ЋCЋCK L$CC_^SC]L3@d@#Eg@ @ܺ@vT2@ÉHH HhSUl$؋K;VWsC K CȉK KhtH@+;~ŋSht$|$ȋʋT$Kh+@T$KhuWj@|3D$It${$D$@8L$ut$͋{$ȃkh_^][̃S؋SC W?D$D$ G38T$~0@+ϋ|$ʃT$3{$8+U|$̓]D$ K\K]ȈC_K^C`ʋKaCbSc\K S VC FKNSVCFK NS VCFKN SV CF KN SV CFKNSVCFKNS_V[hFe[h&euËL$QdPdQhPhQPQ VP WQ:p>z~z~z ~ RVq$x$_^́h/$$HdPhL$dHL$T$hP T$ HT$QT$ QT$Q IVWL$ p$T$|$,D$t$tjR6$_^Ą́h/$$HdPhL$dHL$T$hP T$ HT$QT$ QT$Q IVWL$ p$T$|$,D$t$tj(j 6tW9u%u WWR_3^$Ą3АL4t< ~W0B ~W0 BFrы$_^Ą̋T$$PL$Qh2R赇uË$L$PD$Qx@j@YjID$D$ 5̃T$WD$PD$L$Qh0h2R3P|$su_VhU}C@|$ WP蹲tu @hȅQp_^[Ët$ }K뷋T$B=|$u>WPgu]_^[Ë}Éy 3H9| >C|ÉL$A =t$ u.&VPt} Éy9~T$$ };} ~;|D$(]_^3[Ë+}@L$(]_^[@3HT$(]_^[@3̃ D$V3Pht$t$t$ Ut)L$ QL$T$ RD$ PjjheQSu3^ ËD$;u D$D$t$T$ RPD$ P ^ Vt$FF8u HPQFV:u ‹HPQF V :u ‹HPQVx^QVWh(hD$(|$GPUPL$QK!T$VR G PUPL$,Q,!T$0VR GPxUPL$@Q !h Ls(@PT$ R Hu FVPD$_^Y̡L$VPQfu ]nu&T$RD$PD$ L$QT$RVP}3^ËL$T$D$ QRPh^QVt$ W|$;D$u_3^YËOVD$PQRQ |!D$uLO V D$PQRQ } _^YËD$u"OVD$PQRQ |D$_^Y̡8hP0mVt$F=0th0PFSu *o3^ËD$ u L$QPV-] u^Vt$ W|$ G=0th0PRu n_3^ÅuD$PVW\ F=thPRt$jjVl Hu NVQtHG=0tCh0PeRu1WB 8Ph,Qs Hu WWR_3^Ë_^Vt$F=0th0PRu m3^ËD$ uL$QPVZ u^Vt$ W|$ G=0th0PQu m_3^ÅuwD$PVWZ F=thPeQt$jjVDk Hu NVQtHG=0tCh0P%Qu1WB 8PhdQq Hu WWR_3^Ë_^Vt$Ft@HtHu hhKVP7t hfNV^W|$ uhhXy_Vt$ F=0t`h0PFPuNF=t3hP*Pu!FH 8Qh(Rp ^_jVktL$ɍFt F^3_ÍP$@uN+;t 8hQoi^_̃D$ UV3+t$l$y ^]Sd~TD$0u&3Ʌ~D$(D$$8uFA;|[^]3~ L$( t$$8 0Q@;|[^]Wx3ۍO3L$\$~DT$,L$,3ɊʽL$ :ӉL$uD$FH;|ӋD$0\$l$ t$,3Ɋ 7 3҅\$L$(,LL$IL$8L*u\3Ʌ~)D$(4$\$,:uA;|D$0\$;uL$4uXD$.3Ɋ *tT$3Ɋ *uЋL$ B;xD$4t_[^]_[^]D$_[^]̅u |BjPD$ PQ}3̅u}jPD$ PQ|̅Ul$ u}] D$] +ӉD$ x.VWID$4ˋ3t JyD$_^] L$_ ^] Vt$}y3;~}y3+ƅu}^ ^ L$ jRT$QR|^ ̅}y3;~х}y3ҋL$S\$PQL$+Q [ VAVu3^HjPQV3Ƀ^S\${0VWtBSjNu_^[ËD$L$PQV Hu VVR_^[D$Utfl$s[~?+Ai@ؐUhjVOuUSjV]_^3[ËK5PQ{j'WD$ 'փ tSRj"Wփ uD$"t$D$VPC3=D+T$;tW<\tS< u hV׃N< u hV׃=< u hV׃,< |<} VQQhQhV׃ CE;|T$VR]_^3[ËD$@S\$ CW0;t[WPGJuMC=t2hP+Ju CH 8QhRj _3[ËD$ SPY{_[Ul$EtKu"9}u9{uu @]_[E]_[Vst$y hmQac^]_3[ÍVRnku ^]_[epx@ @Mxurʃv+  BOuKUTsrʋT$^]_D[Åv +  BOuT$^]_D[SVW|$}3\$Kt$t"ƙ;tḧPfb_^3[;U0u9ku ]@_^[ÍF;w ḧQ*b]_^3[P:jЃ҉T$u ]_^[tdrjB BD2Ku.~*C؊ϋz]f΃_^[Åjsrȃv+ @Ou[D$;}I+;Ӄ+rʋȃv+ @OuD$;|T$]_^[Vt$ F=0t]=tFhP/Gu4F=0t:h0PGu(8hP`^ËL$VQiw^ËFL$Qu3^H‹jPVQ3҃^Vt$F=0Wth0PFt |$G=0th0PeFu A_^;Ul$u(w#$d n]A_^øn]A_^Ãu,N;OuFW:u3uϸn]A_^ËVS_;Ӌ|˅~%oF+u%3tl$u;} 3;l$[wN$| 3Ʌ&3҅‹3Ʌ3҅‹ 3Ʌ-n]A_^ø]A_^ÍIr d d r r d    =   ) 4 ̋D$T$HV;JWuzp:u3u_^_3^W|$G u7GOVwV|BSiCB3AJu[3ƃ^uG _̋D$thP^ËD$T$ H @á8h@P]̋D$t L$Q̋D$thP]ËD$T$ H @Ë;~}‰9}} ‰yà Ul$D$PD$hL$QhT$(RhhPD$$D$ phu ] D$H0SWh0Q-CukL$ A=t;hP Cu)L$ T$RD$ PQrA tD_[] T$ D$L$ URPQVg_[] D$ x|$X\$|$\$N~T$RWFPD$_[] D$T$ }y3;~х}y3PWL0+Q_[] ̋D$Vt$jP^u3P`̋D$Vt$jP_^tu @hQ[3P̋D$Vt$jP^u3P̋D$Vt$jP^tu @hQ3[3P̃W|$D$PD$ hL$QhT$RhPD$$D$40fu_ËD$H0Vh0Q@ulL$A=t5hP@u#L$T$RD$PQ:? tE^3_ËT$D$ L$RPQWfd^3_ËD$PT$pt$t$WD$;~}…D$}3D$L$ }ʉL$ y3ɉL$ +u|(@P`^_ËT$jVRL9Qc}3P7^_SPUV4W|$+RWP3Ӄ tL$E;}@+QWPӃ u_^][S\$Ul$Vt$W|$}y3;~ }y3u_^][+…}R;L$ $L$ 8 u%\ L:uGJt3t[|$t$H;}_^][;=L$ L$ 8 .u)\ L):uGJt.3k|$t$E;~Ƀ_^][QSUl$Vt$W|$D$}y3;~ }y3ۅҋL$(D$$+څ}j;D$ L$ 8 uBL:Lu5GJt3u|$D$(GH|$D$(~~+ً|$t$K;}D$_^][Y;XD$ $L$ 8 .u=L(:Lu0GJt.3u|$D$(GH|$D$(~l*|$t$E;~D$_^][Y@;|_^][ỸSUVWD$hF=0tqh0P7=u_F=t6hP=u$L$QT$RV; t<_^][D$ L$PWSVQb_^][VvT$t$t$;~}}3}y3ۋD$ };~"_^]3[+;|;+;~+;|؋T$|$΍t3_^][̃ D$PD$hL$QhT$RhPD$$D$ au3 Ë$B=t\$ $D$L$jSt*u/T$ BG;|աn_@^nn[ _^3[ án_@^nn[ ̃ D$PD$hL$QhT$RhPD$$D$ _u3 Ë$B=t\$ $D$L$jSt*u/T$ BG;|աn_@^nn[ _^3[ án_@^nn[ ̃T$$PL$QhRD$D$^uË$L$T$ VPQR tdF=0tah0P9uOF=tEhP|9u3FH 8QhЉR-Z Hu FVP3^Ë^̃T$$PL$Qh\RD$D$^uË$L$T$ VPQR tdF=0tah0P8uOF=tEhP8u3FH 8QhR]Y Hu FVP3^Ë^S8VW|$wuPӃt_^[D$iu_^[D$i;sQӃtF;r_^[D$iSVW|$wuPӃt_^[D$miu_^[D$Vi;sQӃtF;r_^[D$.iS0VW|$wuPӃt_^[D$hu_^[D$h;sQӃtF;r_^[D$hSVW|$wuPӃt_^[D$mhu_^[D$Vh;sQӃtF;r_^[D$.h̋D$Vp@uP ^D$gtOSUW03;s2- Qu)uRՃtF;rWg_][^_][^D$g̋D$Vp@uP^D$cgtOSUW03;s2-Q u)uRՃtF;rWg_][^_][^D$g̋D$SX@uPPf[Åu Pf[UV33;WD$sII;Wt u=W t t"3D$C;rUff_^][jWf_^][̋D$HQPhZ ̡8hhPN3Vt$tlW|$tG@=0th0P4t+WPJ8u HPQ>_^Ë8u PPR_^̋D$Vt$ VPptu NVQ^S\$V3F=0Wth0Pr3tY>uT|$|LFuEGPVXuV~VfO_^[xD8_^@ 3[u NVQh hX[_^[̋ ;}Wy:_| QP8á8hPtL3̃ h/Ul$(VD$$D$4WP\$X-D$ DzPLt 8hQ}fu D$ ug gtGuW ;vjfuG5;v^D$4ucVWPhL$$jQ-D$$$T$RUSu3ÃP@u_^+]L$O hPRKL$0_^]' ̃Dh/SUl$\VD$LD$dWPu1Kt 8hQ} uu8dc}D$`t2xtXu(WUWShpj@T$(R4xt Xtou=뼅ucWUPSh`j@D$(P,D$xvF;v? T$XɍL$tVQPR,D$hP@u_^]+[L$@ Dh(PJL$X_^][D̋F=0t)h0P0uWhVT uWhVT uGS\$V3tF=0th0P/u hЋn~0utFumKu4KtDWVPt8u HPQ;_^[ËKVVR }_^[JF_^[Vt$V5P;tH^VKt8u HPQO|֡O^tu PPRO̡KHHthHQ].KSP&؃C=thP$.LUW@hPk3~CVK 4Ft!HtHth袣 @G;F|^H_]u SSRKPKIu HPQK[[HS\$Ul$uOt#A][ÃutKMQNu][?Iۉh@0@ @t8VWxr͋ʃv+IAOu_^D(u"D$D$PD$A]O[Ãu%t!L$QD$D$K][QS\$ UPd$@u+‹vhPE]3[YÅuOt A][YÃu KURMu H][YÍMVWh@0@ @Prʃv+I  BOu_^u#T$RD$ D$ A]O[YÃu!D$D$Pk D$ K][Y̋D$L$VPQu^ËT$D$WRPV Hu NVQ_^̋D$L$VPQ`u^ËT$D$WRPV Hu NVQ_^̃$PL$QR tË$̃D$PL$QRL$ #QVt$ F=0t6h0P*u$D$ PL$QVn t^YËD$ ^YËF^YQVt$ F=0t4h0P)u"D$PL$QVL$ #^YÍF^YSUl$u@hDP$C]3[Wjru_][L$T$VjUQR}!D$G OGG^_][D$VPL$ G D$$+BSVG|GBtu WWR^_]3[Vt$u@hDPWB3^Uju]^S\$+Wx* t$(D$|$$΍43tKy}!OE ED$E_[]^SPL$ E D$(ED$0؋D$$+PSEAtMu UUR_[]3^QUl$ EV4_;Ru OuXVRpIuCCp@0@ @D0uD$D$P}D$OD$D$D$SW't-M=PQuSV׃ tURj"V׃ u"t$EF3~eD/;tK<\tG< u \Ft@< u \Fn3< u \Fr&< |<|RhV \FFEG;|\$F+D$VPD$_[^]YË hTQ@^3]Y̋D$jPTËD$x0uËHQP̋T$}3ҋL$ }3ɋD$Vp;~΅u;u x0u^;}+QDPF^̋D$|L$;A}vS\VKuZjTGu^[A@@0@ @X@D$D$P_D$KA^[Ë hxQ>3̋T$JA0VWtUATtLtBPR7|$$u>t _3^Å}wVW_^Át$L$ QD$PL$QND$PQRD$ mOuYj'Fu k@_^ÍT$@@0@ @R@D$ 1D$ OA_^VD$$P3tT$ D$ 3Ʌ~81D$T$ A;|RVFV3 _^á8hPC=_3^QSUl$V؋D$3 Wt$| @P;|$HD$L$I;L$}.P8tF;|;F;} .Q8uF;|+RWlD$ } L$Q <'D$WPHu OWQL$D$|$AL$?;.P8tF;|;+SVt0\$ }?O 4C__^][YHu WWR|$u GWP_^]3[YVW>tHuӋVVRHu NVQC__^][Y\$__^][YQSUl$VW|$ 3 ؉t$ }GP;ƉD$3I;.+UP|$ T$B 4G‰x_^][Y |$ Oɉ|$ ~;}T$8tF;|똋+QP~tXD$ T$}J <WRu$Hu GWP|$GF;|$|9Hu OWQ\$ u SSR_^]3[Y \$VStHuϋNVQHu FVPD$Gx_^][Y |$D$x_^][Y ̃(T$0S\$0VsWD$ PL$Qh{Rt$4D$D$<|$,D$ DL$ } L$ D$=uQW_^[(ËP0tth0RjD$uZ@=t6hPJu$D$L$ QT$RP t7_^3[(ËL$ T$QRS[ _^[(ËL$ PT$@D$ L$ D$ u@hDP8_^3[(ÃuQL$3ҊRV"_^[(à }AUPG3ۃ;l$[D$$;Ɖ\$,|$L$I҉L$,;t$ +L$P8uF;u{0u _@^][VW_^][ËL$QSUVt$^ۉ\$ u OuXCP/u/*CۉX@0@ @DuL$QD$D$OD$u^][YÃWrˋʃv+ @Ou3~#=.S׃t .D$F;|D$_^][YQSUVt$^ۉ\$ u OuXCP.u?)CۉX@0@ @DuL$QD$D$OD$u^][YÃWrˋʃv+ @Ou3~#= .S׃t .D$F;|D$_^][YQD$VpW3;HL$u O;uTVR.;uK(?;p@0@ xD0uD$D$PD$O;ljD$u_3^YUP;~aSL$ASL$ tu Sؿ'SttS,ؿ3]ENu[D$]_^ỸD$ SUVp3;hl$ u O;uSFP-;uH'>;p@0@ X\0uL$QD$D$O;ÉD$u ^]3[WP;~(]ESl$ tSG~?-,Nt$5D$@SD$փt SՃD$GHD$uҋD$_^][̃D$ SVp3;HL$u O;uSVR+;u)&>;p@0@ X\0uD$D$PD$O;ÉD$u^3[WP;~[U-t$5 D$@SD$փSt ՃtS,D$GHD$u]D$_^[́($0SD$PL$Qjj3hLR\$,\$(\$0\$ HD$ H0h0QD$ @=t7hPu%D$ L$QT$(RP tZ3[(9\$t 8hQ'"3[(ËT$ $0SRP+ [(ÍHL$$PT$|$t@hPP!3[(ËL$;A=0tuh0PL$u_A=t7hPu%L$T$RD$PQ+ t@3[(Ë8hRI!3[(ÍAD$IL$\$\$UV$8n;W|$0u O;uTUR);ua#?;h@0@ XD(uD$D$P.D$O؅ۉ\$\$,u _^][(ST$(҉D$4upM|,iI9F@;tD$ MuD$ u0$<~0u u CSP@_^][(_^][(39\8A|3Ʌ~|$9A;D8||$ M|'YL8Ft @;tKuu8$<~0u(D$cPPR@_^][(Å~+D$4PD$0PD$,_^][(Áx0uËHQP̃SUl$$VWOY;ÉL$ }؋ƙ;ÉT$,thP_^]3[y hQ_^]3[u OuXVR&u !Cp@0@ @D0uD$,D$,PD$0OЅ҉D$t|$,rt$(͋ȃv|$(+Ŋ 7FHuK3~rD$(ىL$+‰\$\$t$,BZHG|$,rt$(͋˃L$vI0FOut$Nt$uD$L$ +ȃr"t$,D$ʃ_^][vD$,+‹  BNuD$_^][̋L$SUl$]VWPuQˋu3}0uE_@E^][URV_^][+u OuXEP$u3Ch@0@ @D(uL$QD$ D$ OD$u _^][ރ\$~kT$ T$d$L$+PQOV|$,P tA+փrʋ˃v+AOu|$ \$p+ރr D$ˋʃ_^][v+I.EEKuD$_^][̃S\$$UVWPL$0wjjQoU΋ӋD$u+0u_^][VU1_^][Ë+u OuXWRI#uCx@0@ @D8uD$D$PVD$ OD$u _^][D$|$l$ ~tD$L$ H+ʉD$3;~ }y3u3+xBL$, L$L$8 *u%t$, *L:LuKGt*3t:\$0E;~͋|$L$ +ʃD$ʃ_^][|$tȋ\$0‹+D$$r͋ʃv+׋ ANuD$$|$D$|$lv+׋ @NuD$_^][̃SUVnD$UP^SP D$u,~0u ^][ FPS^][ u OuXMQ7!u{Ch@0@ @D(uT$ RD$DD$OЅ҉D$ u ^][ Wr͋ȃv+Ŋ 7FHu|$t$$+Ê\$ Lj@N~#=PL$+RQP׃ t@ND$_^][ ̃D$ SXUl$Vp3;Wt$} ;}3;u)D$$OAЉT$+͉L$xQ|$ T$$$T$$80u'0T*:T/uGt0M3t$tL$|$ @;~ D$$uD$x0u_^A][SV=_^][CPguFۉX@0@ @DuL$QD$ tD$ AOD$Ѕu _^]3[Brˋȃv + @OuD$$Ѓrt$(͋ȃv|$(+Ŋ 7FHuD$ÉD$D$,HD$,IL$+ʋ3;~ }y3u3d+t$|$ L$$L$$8 u%\/ L):uGMt3tt$|$ @;~͋D$_^][tIЃrt$(͋ȃvt$(+ @OuD$,HD$,1D$_^][̃SVWL$ wP_Q΋賻D$ u,0u _^[ WRS _^[ |$(Uoȋ;D$thP]_^3[ y hQ]_^3[ QjD$tL$ɍht$T$$T$$ID$L$$HD$+PQSP D$;uFr"t$(ϋʃ|$,Cvt$(+ϊ@IuC{+Ӄrʋ˃|$,v+ڊAKuD$rt$(ϋʃ|$,vT$(+ՋANuXD$t$D$+΃r]_^[ v+ݍI+UEIu]_^[ ̃T$UVWPL$$wjjQoU΋躺D$ u)0u _^]VU_^]|$,S+ڋȋ;D$t hR[_^3]yhP[_^3]QjeD$tL$ɍXt$IT$L$$jjJQ+ʼnT$T$4U(;ՉT$uPr't$,D$(ϋʃ|$0vt$,+ϊ@IuD$(}+Ńrȋ̓|$0v+Ȋ.FIuT$؃rt$,ϋȃ|$0vt$,+ 0@MuD$(ߍ,D$t$D$+΃r D$[_^]v ++CIu[_^]̅L$UVt$}iu^]|$\$iu a^]u$u3Ҋ^]T$L$PRV^];u*Pu33ҊPR^]SRVQ+^]WSu3ҊR^]RV^]y0tAPQ^]y0u @^]QRQ^]̃D$PD$(L$QT$RhЍPD$$H0th0Q$tHL$ PT$HhQ$D$PL$QR u\D$H0trh0QbD$u\@=t3hPBu!D$L$QT$RP t33ËL$T$$QL$$RPQ-ÍPT$@D$L$ T$ D$S\$W|$QRT$(_[Ë$L$T$QRPD$,P,̃L$$PhQD$  uËD$PSUTV333;WT$D$sD|$< u~-|$|$+;EA< t< u xKD$F;r4)}YhP _^]3[Ë hQ _^]3[ËhRz _^]3[u OuXNQyuCp@0@ @D0uT$RD$D$OD$IL$T$3;ʍhL$sc$< u4t$~=Ù+ޅt0΋ ʃL$ECE< t< u3ۋD$A;ȉL$rD$_^][QSU3;W}3ۋD$;}l$;u;u|$0u_][Y |$Vwu O;uTFP4;ux?;p@0@ hD0uL$QD$ED$Ot.D$ ˉ\$؊}fËʃ|$OD+Wrȃv+Ћ @Nu|$L$t(WD$ Ս|؊fʃ^_][Y ̃T$$PL$QhRD$ @uËD$ PL$;V|x0u^Ët$V+QP3E^ÃT$$PL$QhRD$ uËL$ QD$;V|y0u ^Ët$Vj+Q^̃T$$PL$Qh RD$ puËD$W|$W;|0u _ËV+ʋ#+D$P+QW^^_QL$ $Ph,Q uYËD$P $;|x0uYRP^YVj0+jPu^YÊL0+t-uHD00^ỸL$VD$Ph43Qt$r u^SUl$]WV;ƉD$3;D.< t < tF;|;}%|. uV;} |. uFT$t+PD)PtDL$WQ0u!Hu WWR;|D$_][^Hu GWPD$u HPQ3_][^QD$=0T$ L$$t QRPM YÍ$Phx.hDQRuYË$uhcYPnY̋D$ L$SPQh0{؃ u[ËD$UVsVPtBNESrWʃ_v +Ћ @NuS U E u CSP^][ÃSUl$,WE3 wQp^ $`^ D$$HPQD؉\$)D$$PJ0PQTD$$PJ0PQXD$؃u _]3[VS+uHu SSR^_]3[ÃthhXs^_]3[S=~@hLPV^_]3[À|0LuP23<-D$,+ߨu!Xt ot]xu++Ѕt-l$0;/PjD$(ƾD$u-D$.HPQ^_]3[Ã~K뢅PT$~ I BFOu+ͅɉL$~0000̓ЋD$~  BFKuL$ uQQRD$t$T$ |$|$4Xu3Ʌ~1t$$t$F=hPxmruD$Pt$$t$$?F=0th0P2D$$XxD$<|$,\;TMiudL$A=t7hPu%T$D$%uQފFFt<%tPt.u:VFRt$(3t!VFR|Aut$$t$I<%tPuFFut$$>luFzuFu t 5u t u u #u u ,u u v         Vt$F=0th0Pu ^ËD$ PV^̃ SUl$V3V؉t$h;ƉD$ u ^]3[ ;W.P8tF;|;$ .Q8uF;|;}{+RWD$WP萧D$ Hu OWQD$L$A;L$}.R8tF;|D$$t9D$};7D$_^][ ;}+SVWt%D$VPHu NVQ}D$u PPR_^]3[ ̡jh@P t3SL$QT$RD$PD$4L$QT$R3h0P\$,\$ \$4\$0t:9\$uL$T$ D$QR[9\$u@hDP3[WSd3;|$ L$ Ul$ ;VL$T$4 : utt3|$(uaT$+QPVW覥Hu FVP|ot$$l$L$ Fɍ+؉t$$t ;}CT$ +;kL$T$+QP臠t!VW7؋Hu FVP}u OWQ^]_3[^]_[̃(UWj3h@P|$(|$ |$d|$ u%L$QL$ $QL$$T$RD$ Ph Qt<$}@hR3ËD$T$ SUVW<333;lj|$ s+< u|$D$+;4 A< u3F;ry<hR)_^]3[Ë hQ _^]3[Qj֓D$$tŋL$3;ύXL$sU< u6ř|$t$+~/΋ ʃ|$ L$ CE< u3A;ωL$rD$$_^][̃Vjh@3Pt$D$ u4L$QT$RD$PL$$QL$8T$ RD$0PhQh u3^ËL$T$;~ʉL$;}ʉL$y3ɉL$D$;}‰D$y3D$T$+A;Su+SO[^;Ét$}.UW$t$(|$$3uD$@;ÉD$|_]T$RqO[^̡jh@P t3Ul$L$QT$ RUn t3]ËD$SWP3W؃;߉\$u _[3]VS_D$;lj|$~o-D$@SD$ StՃ"tS,D$L$F@;D$|u'l$(\$ u KSQE^@_E[]ËD$^_[]́h/j$h@PD$ uI$L$QT$RhPAt&D$t|$~) @htQ3$ QË$S8tPӃtD$@D$uVW=D$L$ u90ujT$RQŹ PD$PQL$D$ ;HQ0T$t)PӃtD$@D$u L$9uM׃8t'T$ RhPD$ hP @L$(QRCVL_^[$ PËD$ Ph,L$ hQø@T$(RPs$0_^3[FṔh/j$h@PD$ uI$L$QT$RhPQt&D$t|$~) @hԑQ3$ OËT$Wt)=8P׃D$t @D$u8u* @hQz3_$ OOËT$ VRL$ QP D$uT$T$B 8Ph,Q`D$ JD$90u PPR3^ËD$HthQQD$pSUl$ WhBQ荩P8hBRtP8؋h(BP[P8$;D$t[;}@M 8VWQhRD$$JD$8u HPQ_][3^;~*U 8VSRhP;tU 8VWRh|PUȃɉL$t3~R T$B=thP7u D$ L$Q D:L$Nu;}Kt$+ƍ4| +ID$tL$$Qx 2QP7uKu΋D$D$8u PPRD$_][^VW~}3W蝍u_^Å~P +  Ou_^Vt$W~}3W[u3~P +$  OuV諦Hu FVP_^Vt$W~}3Wu3~P +$  OuD$PVfHu NVQ_^Vt$W~}3W苌u3~P +$  OuD$PVHu NVQ_^S\$VW{}3WtE~ӍN +֍ OuD$PVHu NVQ_^[_^[S\$VW{}3W誋t@~ӍN +֍ OuV=Hu FVP_^[_^[Vt$W~}3W;u3~P +$  OuD$L$PQVa Hu VVR_^̃ UVW|$GhBQP\4WwD$h(BPP;4VD$,葊l$tϨD$uMu MUQ_^3] 3ɅS~ݍG +ߋ΋Nu;L$}At$l$+ƍ4\ +OQxL$ P2PQ艤 Mu݋l$T$ GRUPhjEHE[u MUQD$u PPR_^] QS\$UVs33WT$t=~ !b;ljFt ғ;ljF uV_3^É~~ ~_^S\$ Ul$ VW3{u3;}tu@UtO\$FʃuD$tUt)F먡hPwMQ(ERP藶_^]3[ËD$u Ut_^][WtjPV. u_ËGStVu[3_ËFH$GtVtۋFH$ ?tVt[_SUl$EHVW$p m\$3uu3E;{PSGӋEt$PVM QVkU]OuhpN蝰OL$QUZ t13{u3;}PD$P!_FԡOuhpN-Ot$jUj #ERu )_^]3[ËMQVt Ut$RVEPVM QVR}3ۍw$u3;}T$PRECԋm3uu3E;PD$P JGϋ|$3MQWm3ۍuu3E;pWCԋT$URyEt$tPVFH$F@$@ hQURP#_^]3[ËM\$QS+im 3uu3E;PS:GӋUD$RP}3ۍwu3;}L$PQCԋ} 3ۍwu3;}!PD$RPrCыEtL$PQOmT$UREL$PQ UD$RP_^][ËMt$QVtjhV>jhV>jhtV>jhhV>jhXV>HjhPV>jh@V>jh0V>jh(V>jh Vw><^̡FHA uËT$RPuy̡FHA Vt=T$RPUyt)F=0th0Pwt VuD$ ^̡FHD$Vq u#W|$ WVxu_^WVy_^ËT$PRV y ^̡FHAWhH%PxuhR3_S\$u@[_hhWؒ t[3_uVhpcuhpP^[3_jVSm ujV~uShWf uá^@[_̃ $PD$L$QT$RjjhD}P tu Ë $T$D$QRP @ ̡FHt'L$|$PQWA t*D$@~D$뱋D$u PPR_^]3[Ë_^][̋D$Wj;$u h4FHVq u"h4Vmt0h4VmWh4V m t h?^u WWR_SUl$ ؅W~u ,eS>tDV3~!DP>tPVWv@ F;|^_][u OWQ^_]3[Ë_][́h/S$ UV$$$WSVFHA 3;ʼn|$ul$h4PkD$;u h6;FBp u"h Vkt0h V6lWh Vk ;t h9l$$(~qtmX-3tWD$PL$ QhSPt\$=j\S׋uj/P׃tt+E~~:tM|$US"<u hh?T$VjR@ } hLu FVPu OWQ$ _^][́h/SU$ VW$D$PL$QT$R;FHA $RPjtxV;tkWSD$$hP`dL$,VQC<tT$URӃ|r0VhtӃUhӃ WSU D$L$T$PQRv$ _^][̡LT$ PhpcL$̡LT$@PhL$́h/hjhxWh(VhX$"$u$ĬVP/1 LD$PQPu'T$@uhKjHLSUWjhhhP-P Lh hi hQLh hi@hR0蜀t_][3^$=ĬáLHQtEG=0th0Pdft)PT$u pP jFF jP0S׃_^3[̡pPu pPD$L$jjjjD$D$L$4D$ uátP$RPh  uT$ RD$ D$ËL$ jQdT$ RD$Vt$FjPpNQVR.V}^QL$ $PhQD$ ~ uYV襣T$D$ HRQVD$ǣT$R=^YVt$FjPt!NQPhRr 3^ËFP@^Vt$FjPtNQ^D$韊^D$鑊̋D$L$PQhXh  VhhXu^FuV{Ph P36r ^̋ ďS\$ Vt$ ;W|$u }u FVP_^3[_^[S\$C Vt$W|$t VP׃u&Ct VP׃uCt VP׃u3_^[Vt$FW3;t~u HPQF ;t~ u PPRF;t~u HPQF;t~u PPR_3^W|$Gt\OtS@tLVPPt;d$F@t!OQP<tWF@RP=VbPu^W"OW_SJO؅uh4Po3[ËOVQS;P[txWUVRSN< Hu FVP]|QGtGu HPQWw;ďtIOW QRWЃ }7GPS<^3[ËG;ttGu HPQw^[W|$u_ËD$L$ PQW` _̋L$Au(hPn3ËAAW|$u_ÁitD$ PW]_Vt$VPK:u VW]^_ËA^_Vt$WPQW誝N VFQRP詨un QvotobhNhjt VPRLN@PQf hkju PPRFF8u HPQFV:u ‹HPQF tV :u ‹HPQVWIL_^m̃ $PD$L$ QT$ Rjjh|PD$PL$Q_ouhbD$@=t,hPRu 8hQl3 Ë$t6@=Ht,hHPRuhܟ8RSl3 Vju n^ áFHT$VD$ FL$N D$D$ D$t$Vh0 uwPhğRkD$JD$8u HPQD$ D$ 8u PPRD$tD$8u HPQV3^ Pd^ ̡Pj3[VhheQu^EFuVhtPh P3j ^uPh8Pj3ÉD$QL$ $PhQD$ u t$}@hRUj3YVD$PuL$@QhtR.q 3^YÃuPhPPj3^YVs^Yhi膡Whjhth8thܐ/ txVWjjhؠpPh8VP^Qhhh@h̠V@ihuh9QihiBhĠWi4^|_>_̡hQP(3QD$ȉ $$l$X-A{%tYء@h|PhY%pQV5Dz*h`Q֍D$PtXL$ L$ tNl$pQT$R֋ `QD$5dQ+L$ΉD$L$ l$5pQ${^D$D$ $T^VhPţGlPF OAQFW RFGPFOQFRF GRwF$WBRjF(G P^$F,gtu NVQ3^Ë^QD$$ $u @gt3YV5D$PT$u!փ8u @QNk^YW_^Y3SUWΉAAA AAAV RA~WA ^SVFPNQL$0V RnUD$,PhQq,D$ =l}aPhܡRMD$HfthfQOLtzD$PtiD$ E|4c/lUFJ@U_][Å| Dơ@hȡPe_]3[Ë @hQ}e_]3[̃03D$ D$D$D$D$SD$$D$(L$QD$0T$ RD$8D$DhĢ3P\$Gpu[0ËD$;VWu(S(L$QD$ |$ Pt$/D$(u\$(; D$$;u D$$D$ ;mdD$;Q;HD$;=9\$0}@hR=d_^3[0ËD$4u\$4;=mD$8D$P@uU-+¿WD$Ջ;t@IL$D$PQWVw)T$;sVWՋue]_^[0PVWVӃ ]_^[0h @hhQJc_^3[0Ë@hPR-c_^3[0h<? @h(Q c_^3[0Ë@h Rb_^3[0h@Pb_^3[0VhԢu^ËD$ WPh0hVgHu NVQ_^̃,L$4$PjjhQD$^Fu,Ë$VuPWP(T$RD$ |$_D$ PH u@P^,Pt$1u^,̃L$$PjjhQD$E$tG=t@PO\$ au^D$$pD$uat3j(D$T$Ru@hP$a3Àx u@P̃(VD$WP(L$ QD$T$@ |$Rt$ _^t*D$P$u hQ`3($$(Vt$Qh0V -Ph(V RhV HQRhPh V <^Vhjhh`hTdXuh<t 8t3PhܡV VAVP jjjjPjh@ hQ8PuhyhP PhPAhV P P^̃D$P<L$ L$D$ D$D$ pT$hAuhHP^VW׎D$ \tZ9PuM hQQ<hQVRdu5jW̎pPb_^VW蟎_3^̃D$P<L$ L$$ D$%DzpRJb3Ã$̋L$$PhxQh t$$t3̃$PQRD$ Zh t$$t2=t+P\$C]t3D$ÍD$P<L$ L$$ D$̋T$Vt$Z^uá$P$] ̋T$Vt$^uá$P$ h3Ƀ;u3úHHH H@ H@H H$lptx|̋Fdžptt P3̍CuPtVt$Wˋʃ_^̃h/S,Ul$ VWD$ D$3+ 7D t_uD4- PӃD4F |D4xPt$3jD$h0PӃ (t$3tzlPt$ 3tft$ 3tRjD$hPӃ t=j L$hQӃ t(j T$hRӃ t_^][L$_^]lP[L$ËL$ _^]xP[QUV3t$~)<#t< t< t< ucE;|;SW}l\)jCh8P uJ<:t<=u>GG< t< tQ0u<-t<_t<.u G^3]Y;rt$EC;|_[^3]Y+EuP؃t͋ʃ+S;tLSƃP@u+‹؍CuPtˋʃ_[^]YSW|$|D$ UxVtupxP3tIlP 3t7t$UVT$$؃txdžleU|$YD$^x]_[Í:utP^:uu33ۅUu#xuXPh@P^ ^]_[SV׃džltl=Vu^׃=u V׃=tVhӃ[Ëxt PhxPx[PӃ[QL$ UVWIL$uDVPYuEGLJptt P_^3]YLJ~0u VFHu NVQtSU]t$ ;މD$~\+SPu>Mu UURGLJptt P[_^3]YËD$ދT$ˋȃMuMUQT$[_^#]YS\$KVjhPQ賠u^[ËT$WjVRiD Hu FVPu_^3[hpWVHu OWQt_^[̋D$HL$%x̋D$HL$%́h/U$V$lW|%/ ` l}SUFjPSU踾t{}OtuEǍP$@uh +VP u}_^]$ËxutI<w AAu_^]$tዎAQRPD$hhPL$ QRSFdžptt P$_^3]0Vl| F@ ^Ëu&PQQVu u^ÉPb`@^̋T$A̋D$̋D$L$̋Vp@uL$jQ+PRSVu^WVAHu VVR_^̃ SUV3W  \$\$\$3퉞"t"P\D$PGt< uL\$EtAAudžtTh +VQ u-D$t%h +VPK u _^][ ËǍh@ujR+PWUt"WHu WWRuL Ph܁QW Fdžptt P_^]3[ U _^][ Ë\$_^][ Vt$xW=tP׃t8u HPQt:u ‹HPQFt tP׃V׃_^Qjhxc# L;t3YVhxcF=0th0P5hUn<VE=0th0P56uWFUu D$|$ p@uj+WPQ)St'jhxPVcO Hu NVQuMu UURP_]3^YS_GP؋Hu OWQtlt$=R׉t$xtP׃|$ǍP@u+W/xtMu MUQ[_]3^YËt$Mu EUP[_]F^Y]3^Y3^Y̋FN;SUWxF ;NEPLH QP/ ɉD$ t18VT$ RVtD$ PFl$ ~+D$+XI@u+Í8CuPQ4BQ 8N+͍@uU NAN L$F<Bt PD$ jPFF@F F3|$ uv>u hF ^ +PuF j R^FP3Ƀ:F+D$ l|A guOPR9Ou5Fdžptt PF )P!Y@tF ^AFu+~+ۋuQP4؅ 8N^ }3+QΉF`upFf NjQFH ft)T$ FF;r8 u @F~ u$F;FN_A]N[F t hkN_]N[PF ƋN=SQ׃t4@NuNNB_FA]N[ËVjR׋N;uF _][Ë=RU׃_]F[ËF_]FF[̃Vt(VJ;Vs h菥v;t^̋D$ۃY $ øø ø ø ø ø øøøøøøøøøøøøøøø!ø ø2ø3Ä f  $ T H < N ~ Z 6 B l x r  * 0    `      ̋D$߃[ $ |$=Ã|$=ËD$u4|$ =u-.Ã|$*u |$ =u/Ã|$/u |$ =1t3Ðb v : N  ̋tFFFËtQhdž3̃\h/SUVD$dD$pL$lW3;lj~|$K3퉾؃ uGE u!NǙ@ř@ʃ u33뿃t(VJ;Vs h輠F;t#t uux usti|$F L$;~PHd; F A@F |$V OD$E~F ;|$}IHF F ;|$;t 0FF~d$Ft؃ t t tNI#N|$+ꍛ;؈Gt t/PrMQT$Rt@MyAu+Q| (F `XtPhHirt t,؃u~3 _^][H4L$X蚼\ÃtS_ c.=S׃0+؃. jJxX30|I8} ؃0}S׃tS׃u.eEjFJ=OF _^]4[L$X聻\ÍC#<( $0( G؃rtRu6؃"'"\5  dž|sD$džFL$pVD$tJ_dž|^][L$X跺\؃"t ' n+nE3\$|$\$k v3dž|܋N_FN^]4[L$XD\ËV_FV^]4[L$X!\Ë}@_^][L$X\H_^][L$Xݹ\=S׃t(VJ;Vs hɛF;tVD$pNT$t_^] [L$Xm\Ë=GS׃ulL%S׃ulL.uS׃uet E؃+t-uS׃uOF t(VJ;Vs hښv;t_^]4[L$X萸\IkS׃ujtJuP؃t(VJ;Vs hpF;tVD$pNT$t_^] [L$X\ËFFF_^]4[L$X\ËQSL$3tyT$QRSL$ 3t1t,^K;‰^sh辙L$F;tFL$pVD$t_^][L$Xa\Ãt,~O;‰~shhL$F;tC؃Uw$l( $`( @HNT$p FL$tS_^][L$Xض\Ã;D$V+VG;uJ;\$u\$3t(VJ;Vs h褘F;tD$t FL$pVD$t_^][L$X7\Ã\u3N_FN^]4[L$X\ËVJ;FVs hv> t _^]4[L$X軵\ËVۃ_^V^]4[L$X蕵\Ë=0d$S׃u_u \t(VJ;Vs hzF;tFL$pVD$tL$h_^][\ÍI" ! ' 1& :& G& ̋D$ L$Vt$PQ*pt 4F^VWhxPQ3; t*T$ hxRVW: Hu FVPu;_^̋L$xV3 WPD$SUWW1FPA؃ ttt VUS\ u OWQ|$~6L$x HRtVz@u FVP][_^_^Ë^VtD$u V3^ÉFF F^Vthu VJ3^ËL$ T$FFF D$F^̋D$L$PhQr Vt$V D2}lA DFtF8u HPQF tV :u ‹HPQV DDI Dt^/Vv/^S\$CVt$W|$t VP׃uC t VP׃u3_^[Vt$FtFu HPQF tF u P^D$b^Åt {XuRtNx uEVhXk t-t^~ Gt$+F=thPH VÃ|$P@u+3D$UVG=0th0PwD$LsnWT$ @ BuD$ P@u+;uCv |4\tD4 \F+ÍT4 I @uT$ hRD$ut$D$E;:6 D$ $ l$$ $ $ QWRh$4hP$ $<SQ讜 ~=IjU$,hRƄ$ Ӟt$t< uNuu\$$< t< t< uGShhy3u0SW#u j WuShkU_][^$ŭË$^训Ul$VW33tYIGuIuH;3F HQ4RN QPFPB0PPSvOuȹu_^]Ul$Wu_3]Á}XthhB_]Vh t1F=fthfP2tV^_3]S\$Shƚu W[^_]S\$}j h({A3[ÅVuxQtA^[Ã4xQF xQ QW~ 3~ u QA5xQ QF~t hhGhh@G8 hy_^[Í;u" ~Shg^[^[ 4Vt$F=t&hPujYh(S@^ËF^Vt$F=t%hPvujdh(@3^ËD$ | ;F}D ^áhP03^Vt$F=thPt>t*D$tu HPQjuh(?^ËL$ |';N}"D T$T tu HPQ3^ËD$tu PPRhPPK0^W|$Wu_3҅~SVt$NCL B;|^[_SW|$ _WAD2Aۉ D~nC|-UVt hIt8u HPQMu^]}5Q= Q} uxQxQW 8 GW DDI Dt_[&W&_[SUVW|$hWWӋl$E3~@] $~hWjWP' u4EF;|Ћ}u hVWӃh LWӃ_^]3[_^][̃ D$SXU3;݉l$uhP][ WS;u _]3[ ;V~;D$ +Ǎw D$ D$ 0QD$E;|hWD$G PT$RD$SD$G D$tt LPD$teLPT$RL$ D$DD$t?h]D$t*WP D$ D$JD$8u HPQ^u WWRD$_][ ̋D$SUVpNH WCBxV4L$x76XBT$PT$T$t(3N}Ё|u_^][_^][̋D$@S\$ Ul$ VW33u ;}}jPS , Gt_^][̋L$|T$;J} D D áhP,3SW|$}3\$ KD$;~;}Džu;u{u_[+VVu^_[Å| P ~+  Nu^_[Vt$t1F=thPtD$L$ PQVK ^hch(':3^Ul$ E=t1hPVuEH 8QhxR2 3]ËEVt$ Fy^]L-P6u^]ËNSW3ɍ^ P ~+ڋ  NG;|NT M3ɍ} ~+ : MF;|_[^]S\$ VW}3ۋt$~t ~u_^[ÅxQt _A^[jhhu_^3[ËQB=xQQAw~t hhFh hAF0h_r^[Ëˋ;t_^[ ,Qzۍx ~,UN3҅~$L )E)NB;|Ku]_^[̋D$SUVpNWx+\$l$| t SPՃu N}3_^][QVt$ F=WthP4t |$G=t&hPu@_^YS^Uo3~BD$L$ +D$D$d$;}70jPQ.( tG;|ыD$ $; ;};}D$ un][@_nn^YÃun][@_nn^YËT$L$PD T PR& ][_^Y3;+3;"3;3;3;3;nun][A_^Y][_3^YÐn; w; ; ; ; ; QD$=T$ L$$t QRP YÍ$PhhQR/uYË$xQtYWjheu_YËQB=xQQAVw~t hhFh hAF0hr^_YP@Y̋D$ L$SPQh ؃ u[ËD$VsWVPu_^[Å~ӍO +׍$ Nu u SSR_^[̋T$JA0 VWtUATtLtBPRn|$ u &t _3^ Å}wVW_^ Á|$L$QD$PL$QOD$PQR:D$xQt A_^ jhQB=xQQAw~t hh+Fhh@F0 h_q^ PEt?L$T$3~3L L T$ L$F;|_^ Ë8hR$3_^ ̋D$HQjPPh|QD$UV0RNCnt >3S\$;u[^3]YÅu)uVQS{L$3҅[^]JY;݋FNFVFBWF}<+Í| D$It8u HPQD$HD$uSV,ЃuT$VW_[^]Y;~+3| ΃D$r~t hhMF hhBF0h_[p^3]YÅtu NVQhh(1^]Y̡xQtxQ8u HPQVWxQ|Q7td$Ƌv PUuQ|_^Vt$FNFVFBFF tN 9u PPRV^̋D$@ tL$ QPT$u3Vt$F t)N;H} D AN^u HPQF 3^̋T$J 3tA+BD$$Vt$F=t(hPuhoh(`03^Wh(u_^Gw Gwt hhA}Fh hAF0h_r^Vt$FTt^ËF j.PuF P^@P^Vt$FTt4htP2u (htQ'3^^ËV j.RtN +^D$L$)hH%/^̋D$HTu@ 8PhQ' ËL$uP 8RhеP& ÉL$ D$tL$̋L$̋D$u PVt$FTuFXt PF^Ëh("Pu A ^ËHt VjPу ^^̋D$L$;vSUl$Vt$NEFW|FT@Wte&؃u _^][ !ϋ3ʃFTtFstkFT@t=Cst hh^zFh hAF0hr_^][̋D$jP̋A@SYUl$VW3~/pd$~uT$ t UPT$ u G;|3_^][̋D$SXUl$VW{\E u5d$FtL$T$UQRw us~\E tϋ;t$L$QW tt UPT$ u0CTt UST$ utT$D$URP׃ _^][3_^][̋A@Q~:VWp ~u%u F Åt u QQROu_^S\$VsF`=F uFtF`=F tt SЃ^[^3[S\$W{GT@u]tSЋIG= G u$A= G tSЋHGWP_[SD@2DOU G ;VuI9EtGhtEhu SnCst hhkwF hhBF0hSpNFNHGht+Ehu$SrhtPzTuo G u#d$Ftn G t዇t9u/S D$tt uAQPD$FT@t=Cst hhQvF hhBF0hpSՋHu OWQD^]t%DDH_D[Se D_[̋D$HTuL$;t 0t3øËt(QV3~t$ 91t @;|3^ø^ËL$I;tu0Ul$Vt$VUo7|uVU}^]ËFSX3W~x PU|F;|_[^3]_[^]Vjt$D$PVtu^u NVQ3^̋Q@;}I 91t @;|3øVWh tWuWt(~0t"h0W^uuVW_3^_^̋JSV3W~)Z ;p;}S9:t@;|ƃ;|_^3[h tW:u|Wt(~0tQh0Wu?uVW3tP8hPm tu NVQ_^[ÍF́h/SU$V$؅W~3D$~>IN T;Q}!A hRS mD$@;ljD$|Sah T$(hRD$(D$,PL$(QT$(RSD$0 D$h tPuUt0n0h0U[uVU3tPh+PL<,Q&tu VVRL$tG=s D< ,D< D$PL$QT$RS$ 8D$ PQHu SSR_$^][E uKSQٍFD̃D$SVpt$uP؃u ^[ÅW~3U$3t$D$;t$L$(A ;Q|D$F׋I ,D$+T$;T$}/ 7Q@;}I 9)t@;|D$΋t$F늋T$$UR |>L$3dd$L$(Q  ;J} R 9,uA L$@;|4S ]_^[9D$Su]_^3[ËL$,S]_^[̃ Vt$uVhK}3^ SU]CPl$\$~u][^ W3~{ l$L$)E=t7hPu%P8؃txUSu\Ë\$R-tON L$G;L$|l$Uu>u0NVQ_][3^ u SSRu FVP_][3^ Ë}&u VVRuًGWP_][3^ ËT$ N Rh_uCF;|][_^Ë 8hQ ][_3^QD$ SUVW33L$+Y D$$3F=thPtEuL$QtpjVtSL$BW щu FVPD$E;|t:WHu,WWR_^][Yu OWQ_^]3[YËt$_^][Y̋D$uSXUV3W~3l$x xru@ UPu F;|3_^][Vt$FNFVFBVFat9u PPRt8u HPQt:u ‹HPQt:u ‹HPQt:u ‹HPQt:u ‹HPQVXR*t8u HPQt:u ‹HPQVV^Uj8u]ËD$Wu_]S_V3~#O B=tPU| F;|^[_]Mu EUP^[_3]S\$Vt$W|$t VP׃uVt VP׃uAt VP׃u,t VP׃ut VP׃u3_^[̋L$tǁu HPQ3̋D$@T%3VW|$ PW uUD$Hu1t$tBF=HthHPt&Vit 8hQ _3^jW_^̋D$HD$QD$SUhVjU؃u *s0th0Vgu uSV3ۋETtL$ &U j.RuE @PD$ D$ u^]3[YÅt4WCH% 3_tL$T$ QRPh4D$M PQh? ۋt u SSRD$ u HPQ^][Y̋L$A@,uX L$+̋L$AA;t t3jjV螆 t{UEHEuUUR VS莹tKL$ WPQ |6u WWRFT_^3]Yá@hP_^]YSUl$ VWtGPSSu/VUŹt0WPSr |u OWQFu_^]3[_^][SUl$ VWtGPSu/VU赹t0WPS |u OWQFu_^]3[_^][̋PPVWuQPtPTPTqT pTUh4uQ4tPTPTqT pTpTQT3t4x0uQ0u u"Q4tփPTuu qT pTP0]uQ0tPTPTqT pTPҋuyPT@u1AT@t( t#p\up`u@PTQ\P\Q`P`pTSYT#t&0utu P҉xuQPYT#@[t PhuQhPh#qT_^tu ̋V0SUG0Y0u3Ƀ:ut tY0;tV0BuG0@ttY0;CtBV0BuG0@ttY0;CtBV0B uG0@ ttY0;C tB V0BuG0@ttY0;CtBV0BuG0@ttY0;CtBV0BuG0@ttY0;CtBV0BuG0@ttY0;CtBV0B uG0@ ttY0;C tB V0B$uG0@$ttY0;C$tB$V0B(uG0@(ttY0;C(tB(V0B,uG0@,ttY0;C,tB,V0B0uG0@0ttY0;C0tB0V0B4uG0@4ttY0;C4tB4V0B8uG0@8ttY0;C8tB8V0But3^YËL$ VQT$^Y̡VPQut ^Å}WB4tt WЃ|^̋D$Hu/H VW|$ uJt_3^VWT$_^ÁxthTP3Q 8jh$Q3̋T$$PL$QhDRuË$L$T$ PQRT$ ̋T$D$PL$QjjhcRpuË $VW|$u kuD$ PVWT$( uOt_3^á@_^̋D$xthTP3ËHtQ 8jh$Q3ËH VW|$ u ujVWT$ ut_3^á@_^̃ $PD$L$QT$RhHPPt( $T$D$QL$RPQT$(u5t3  ̋T$$PL$QhDRt%$L$T$ jPQRT$$ut3̋L$ythTPc3ËAt 8Pjh$QQ3ËI T$VQRT$u Nt3^V^̋T$$PL$QjjhcRt#$L$T$ PQRT$ ut3̋L$ythTP3ËAt 8Pjh$Qq3ËI T$jQRT$ u oűD$xthTP3ËHtQ 8jh$Q3S\$Ul$VWx w9n(t8SRVu'CN @ 8QPPhLR_^]3[WSՃuVt\_^][̋@td$HTtuËHL;L$tP D$ 8RPhQ(3̋T$$PL$QjjhcRuVt$W|$h(zVotD$L$ PQWփ }_3^á@_^̋L$ythTPs3ËAt 8Pjh$Qa3S\$Vq W|$hzWu_^3[jVS׃ |_@^[̋D$xthTP3Ë@t 8Pjh$Q3ËT$VRT$u t3^VZ^ËD$L$T$PQRT$ ́xthTPW3ËHtQ 8jh$QE3ËT$ @ RPD$ PT$ ̋D$ L$jPD$Q ̋D$ L$jPD$Qk ̋D$ L$jPD$QK ̋D$ L$jPD$Q+ ̋D$ L$jPD$Q ̋D$ L$jPD$Q ̋D$xthTP33Ë@t 8Pjh$Q"3ËT$VRT$u$uPu^̃T$$PL$QjjhcRD$t>L$u3ɉL$$=u3$uu8hPg3PQL$QT$ ̋T$$PL$QjjhcR1t$L$T$ PQRT$ }3̋L$ythTP3ËAt 8Pjh$Q3ËI T$jQRT$ |̋D$L$T$PQRT$ }3S\$UtC=thPau hp =l$E=thP4t}}C 8PhLQ ]3[VW} wt5hVu#V C 8RPh Q_^]3[SWu%C  8PWWPhRl_^]3[ËǹHTtIuEPjU谴 tXT$RVW Hu FVP_^][Ë;t@ W 8PC RPhĹQ_^]3[̋hPOt3VjWhf t*VhQ\ tHu VVR^Hu FVP3^VHWVQu _3^ËT$ BVPuu OWQ_^SjWV؋ Hu VVRu GWP} [_3^Ë[_^̡SuhA SuSVW|$PGP_NuWRWVЋ D$PT؃tsj肫tUjWV_ m؋ Hu OWQtu VVR_^[áS (PQ_^3[ u SSRtu FVP_^3[̡SVW|$ wuh,Su_^PVNuЅ u dž_^ËT$uL$ujQRWP_^Q0Ruhl0RuYS\$ PSBD$u[YUl$VW}GPu_^][YË A ^ ~VM OuL$ |$QVW؋ Hu VVRu GWP_^][Ýhr @4$\r @8r @0@tV95Rt3 @ɉ5R`R(t;uH4u `R3ɾ`Rt`Ihr W4h(\r W8\r W0ׅtt :tu‹Nu^3^̃S3UkhL$L$ L$rD$P42\rD$P8rD$P0@T$;щT$t ȉL$uC ;t][VW$C|$$PWF=XuOCt;D$uKL$VB ;C uoNT$$QRtZD$t;FuEFD$D=u.Ny u"33uD$$L$ST$D$C ;:D$_^tL$uL$][ËD$T$][Vt$ tW|$ WZFu_3^̋L$T$A+Bu ;v̡Sur(V(t)PFu h<5Fuׁ($Ih jQh(S^{ (ɸ(tVuVS׃}ËD$VWPSÃD$ 3ɉ $QSUVWT$D$\$(l$$$q 4vtct.G=HthHP`tL$ QWuSVՃ|3T$ SURV_|L$T$D$@;‰D$|_^]3[_^][SUVW?(@CC=hr w4-h$=\r w8-\=r w0-tNtJ>tEPU$u5QSRW t@VPUͣ |/u NVQC]t}_^][_^]3[Vt$FNFVFBFF tN 9u PPRFtF8u HPQFtV:u ‹HPQVV^̋D$Hɋ@t!t@ HBI QPhܺu Åt@ Ph_øHBPhK̃SUl$]3VW\$t$ F=0th0Pֻt~ uB 3u3ɉL$KL$3~UC ;tG;|G;}cl ]sthVWu ru[ T$ RSu&D$G;|l$L$ QUN_^][ËFAt5|$G _3;J#‹T$RPVы Hu FVP_^][Ul$VwthV蔺tUW膺t @^]UVntG^]áSuhBSu^]SPWet6^thSt ;wtUVt [^] uVS8hP[^3]Vt$W|$trtjF ucF=tNjWQP,_^ËVSR؃u[_3^jjh< tNNX[x _H^_^̃D$VPhdD$ 3t%D$L$QT$ Rhh@Pu^W|$u D$&t"L$ Q u _^ËD$D$ D$T$ L$p_PH 3^S\$C Vt$W|$t VP׃u&Ct VP׃uCt VP׃u3_^[S\$CTuC 8PhQ [Vt$uS 8Rh|P ^[W~0t4h0W蹷u"O S 8QRhLPj_^[Í~ǍP@uN+;t @htQ7_^[8u PPR{ _^3[QSUl$VjU ؃u*s0th0Vu uSV3ۋETt"M j.QuE @PKD$u^]3[YÅuTD$ uD$ dt4WCH% 3_tL$T$ QPRhqE L$ PQhY ۋt u SSRD$u HPQ^][YUl$uE 8Ph̻Q 3]S\$VW|$SWUЋ uOG=thP苵t3u-tlC=HthHPet SȬtC~UWGt2GTt*t T$SRVЃ }u FVP3_^[]̃>uD$P1uËWQR苿tHuËWRWPу V?uD$Pu35VQR5tHu VRVPу uGu (PQ$^SVW?uD$PZt7SQR赾t"Fu KQSVЃ u u(RP_^3[ËD$t8tL$QP{ j趚tjWV؋ Hu WWRu FVP_^[V>WuD$ P{t7WQRֽt"Fu OQWVЃ uu@@_^ËD$t8tT$RPz jۙu_3^SjWV؋ Hu GWPu NVQ[_^QS\$ {VWD$ u SA=hRD$t"jV#Hu FVPu_^[YUWHu OWQD$teSD$E3ۅ~K} 7F=rt1=thP蝱t5VйT$PR腱 tTEC;|\$]_^3[YËFH Qh(8RE HEu EUP]_^[YËN Qh̡PRuh=PRtPD$P薻t Hu3VW|$ wt(tNTt7uW_(hPP"_3^áPRuhPRt%PVtHt u GH 8QhdR _3^ËWRWPу _^Ëu Mt_^VW|$ wt(tNTt8uWo(hPP2_^áPRuhPRtPVt Hu!WB 8PhdQ _^ËT$RWPу _^Ët$St<^Ht1hHSuK 8QhlR [_^Åt7tu HPQ[_3^Vt$FTt3^SUW FTu"0t5dž00@00uWLFu tGFu(u W( Wj{uKFttFxtVF|tVVt&H~1Xi;G=thP)tmMu׋FT@tAt<t=l u+N 8QhR FT_]%FT[^Ëh("PuWFXt7PYtWh("Q. Hu%WWRhh("P t4N0uH0N0N4uP4V4N8uH8N8NPuPPVPH3ɉL$~@X ;G=thPtVUD$E;|ËFT_%] FT[3^̋L$VhhX||Sgu^WVb=Hu FVP}#Su @h|Q_^Ë_^ËD$ L$PQL$ h||h|\R̋D$ u"D$L$Phhl|R !L$PQL$ h|h`|Ruu PPR3̋D$u'D$ L$PQL$ h||h|SF&T$ L$PD$ RPh|h|Ruu HPQ3̡SUVW|$uh|SSPGP詴Nu WRWVЃ tnD$SPj=u3jWV؋ Hu OWQu VVRtFS)Hu CSP[_^]GuL$jQW _^]_^][_^]̋D$L$PhhA$S ̋D$ u"D$L$Phhl|8R !L$PQL$ hh`|Ruu PPR3SVt$ NW|$W;tB0t8 u3ۋA08 tSQRAtEVvt1VhhvR =utu HPQ3WhhvS =uCW;Vt;u HPQtVhhvRS _^[_^[SVt$ NW|$W;tB0tx u3ۋA0x tSQR/tEVvt1VhhvR =utu HPQ3WhhvXR| =uCW;Vt;u HPQtVhhvRA _^[_^[SVt$ NW|$W;tB0tx0 u3ۋA0x0 tSQRtEVvt1VhhvhS =utu HPQ3WhhvRl =uCW;Vt;u HPQtVhhvhS1 _^[_^[SVt$ NW|$W;tB0tx @ u3ۋA0x @ tSQRtEVv{t1VhhvR =utu HPQ3WhhwS\ =uCW;Vt;u HPQtVhhvR! _^[_^[SVt$ NW|$W;tB0txP u3ۋA0xP tSQRtEVwkt1VhhwR} =utu HPQ3Whhw4SL =uCW;Vt;u HPQtVhhwR _^[_^[SVt$ NW|$W;tB0tx` u3ۋA0x` tSQRtEVw[t1Vhhw`Sm =utu HPQ3Whh(wR< =uCW;Vt;u HPQtVhhw`S _^[_^[̋OV;StB0txp u3ۋA0xp tSQRtEW0xUt1Whh0xRg =uru HPQ3Vhh_^[S\$VWh |R8tljjV5 Hu FVPG=thP袐uWU!WԓHOWQ~hhxRu߫h(xHRt3SB 8Ph?Q Hu VVR_^[荫SǕuةu_^[̋D$VWhxPS t=F@ q FHq9A ~$hxjtu VVR_3^ËD$L$PQV耬FH IH u VVR_^̋D$L$PhhS ̡SS\$Vsuh4z$St Su hSu^3[áSUPVVu)D$PhhSFHp K ]^[Ë SWQVt%xXu xR t|$jWSP߯|$WSou&(RZt螩VWSU襯_]^[̋D$ u"D$L$PhhzS !L$PQL$ hh(zXSxuu PPR3W=?-H=%-$ =U!Dt;=S!"t-LH^=T!E-V!tHtH&=i$h.-Z!(H $ pxph`XP-j$ $t =$%t-$h $ H=$Lw-$8$ @801( =U2=1@=$0lV=0NtE=',-' Q{D$D$=,c%-!0H^-%0]P $, -1=8 $h -V2i $h x~ph`XPH@80( Z a h > E L S 7        ;           ;     X  \          I\         g           g  \   I        g     X  g     ;      X                     ;     X   & - 4  B I P W ^ e l s z    ################################ ####################################### !"̋D$PX-D{3D$= 4= }U=tL wA $ =t/=#=_ t=( |=) ~=/ =0t3øË  D$`%`ED$`%`ED$`ȁ ` U|D$`ȁ ` U|D$`%`Ef 33҅~S$3Ɋ W B;|[3~ f94Bt@;|3ø̋F;Wta;5 }5N QV^3[ÍDuPF F-hht/DuPF F u蛄V襋^3[fV fZ^FF^[Vt$~uj=4T}^~ |F PF FFtF8u HPQF4T8X@58X4T^ËF PFtF8u HPQVV^W|$uhEh_SV7F=thP?g>\$F;;5$f/u?farE fAEsEL$  ȋD$CL$ D$\$HЍJD$ |$t D$f=rf=vfsˉt$T$t$T$D$tl$CD$$\$HrHMD$ T$t D$f=rf=v"fsˉt$l$r$Pt$l$D$ttT$ +t (f-u*;\$(;-f>t$D$$ffǀhf>t$~f+uGT$4D$(+C;؉L$@\$Hs;-uCf>\$Ht$FD$$D$-fw%fv ׀htf>Ct$\$HC\$HL$Q L$4+T$RT$T$,t<t2Q0uf+tf/t f-tD$ D$-FD$L$(@;D$$t+?F-F+t$L$VQ'D$ ^_][̃$S\$0UVt$4W3Ë|$$|$(>;ωL$;uD$D;t8_^][$Ëy ;|$ \$,\$0`=sfF|$ t$840;ӉT$v$D$D*D$<+pt$D$$| +t$XF~+t$HFmFЀt+t$8M?ȁ+t$$#V$f4f *f f f f ffG0;s40|-7(fG;s0|7 fGfD$,D$, D$,l$3։D$+U l$0T$ 9;ՉL$;L$$<\tffEF]|$ +;T$4s$>\ufE\F;r+$;$YUl$ V}uD$ PHLEu^]ËL$T$D$W|$(QL$(RP MjPQb F=t,hP@u8RPal|$,WT$RhPVetJ} T$ ‰x$D$ 9D$u NVQD$_^]ËRhD<Pa u NVQ_^3]̃4SUVt$D؁|$L,sW\$ l$,uD$0(D$4D$0D$43VW|$@|$ D$$sȃɉL$1u_^][4;ݍAD$t$(IfL$P;}L$AL$|$ +D$ D$$D$t$T$$ZL$(+t$,+;~/ ;}D$VP L$DD$t$(ۋT$$R ~(t$P$f K;@ۉD$D$@L$ AD$$u PPR;\$,,|$8D$L$+L$(;}PD$P tu OWQD$tu PPRD$_^][4ËD$ T$HRˋ\$8++PD$8Pt$$YD$$ tdQ8WD$$uRPPRFD$HT$ L$<\$4PD$4RyPt$$D$$ t P8D$$u HPQD$tD$8u PPRD$8tu HPQD$tu PPR_^]3[4ÍI/    ̋D$ L$hPD$ Q( Vt$F=thP6;u W3^ËNF hjQ ^̃SUl$,Vt$,3ۃW\$\$uqC .;D$T$(sffFD$t$0h+C D$T$RD$ PL$T$WVRD t*u FVPu OWQC|u VVRtu GWPD$u HPQ_]^3[$,0Í3RPt$uVJ_]^[$,0hV-D$F,^(V0~kt$$΃L$3΋t$ D$f~tEND$ <u L$ AL$3ɊN͈f~tJFL$ |<u D$@D$<3Fň f>tIL$ |<u D$@D$<3ˀň f~tKFL$ |<u D$@D$<3Fˀň f~tKFL$ |<u D$@D$<3Fˀň  Y$<D$_]^[腿0fu3 T uV2tq(Tu^WP&u_ËL$VWQ_THu WWRu.PjFF@^_Áu^_ËF=ftXhfP*uFF=0th0P*uË 8hQqDHuAVVR^3_ËF|=~8h\P:DHu NVQ^3_̋@;}QR@QSUl$Vt$WzyuFP؋E@t[;};}PVrM\E_@^E]3[YQi؃thu u SSR_^][YËC=ftshfP)uasM;t$}&T$u u CSP_^][YËT$U΍|sȃL$E3^ËN jPFPQ^̋uD$SWQL$PQpQP[fu WR+huSPkit8u HPQVt$PQL$^tPYQUl$V}uD$P'-EL$T$QL$$R&jPEP}C F=t0hP!u 8QRnBL$QT$RhPVFuu{NVQ^3]YËD$}T$L$$‰T$$D$$|";D$D$u NVQD$^]YËPhD<RA u FVP^3]YWP薰u_ËL$VWQIHu WWRu"P;<3^3_Áu3^3_ËF=ftYhfP\ uGF=thP@ u 8hQ9HuGVVR^_ËF|=~8hhP@ Hu NVQ^_̋H;V~-7+p  ;}RS/}^ËH q3^S\$Ul$WPft_][ËVuf=@=fhfP9@=thPu^_][ËsuK UffE^_E]3[Åtk\$ A U++|$D$+֍TuT$$}6r ȋʃM^_M]3[ËfPMfE^_]3[̃Ph/S\$\Ul$\D$TD]V3D$ 9t$hl$(t$,t$D$u:^]3[L$L蹱PWִ;Ƌ|$;kp ;l$$t$W G+;T$VRBD$tu HPQD$tu PPRD$0tu HPQ_^]3[L$L PË\$hL$(QL$0T$RD$PD$xSQD$<t$(tu VVRt t$D$$u;t$sKD$lPf\$,|$(tu OWQuD$$;t$r|$ T$ptw03tax3ut$D$ M3ut$D$ -3Tt$HD$ t$D$ D$ H$,0;s2֋t$+JB??fL$4Vt$L$dL$t$L$do;|$$+t$|$d|$dURD$Wt象WfޠuWu WTt;r_[^S؅W}3ۋL$} D$L$uu|$ u _[Ë|$ GU蕢t%U ~ D$fЋff|$OE Vw Xrʃ|$v +@IuL$^t'GU ÅɍGMuD$4HD$HJD$~D$,H fYfC뙋D$,H@ +XrD$ʃ_^][Åv+@IuD$_^][S\$h<[S\$hp<[SYVp @Wy ~~fff;uHK;}_^[_^@[3;_^[ÃL$$PhQD$ "! uSUVW|$$G WP333;T$sQff= u#D$~3|$D$+;KT$Af= tf= u xI;r)}YhP>_^]3[Ë hQ _^]3[ËhR_^]3[D$to T$X 3;stfEf= u0t$~K+΅L$t: fsffEAf= tf= u D$L$D$;rD$_^][̋D$L$;A}yI V4At>ff=s5Ћ8Tu#u^ËH ff8T^Wu_^ÅtO +AJu_^Ë hxQ3W|$Gu8O VwV|BSiCB3ÃJu[3ƃ^uG_̋D$Vp @u3fP^D$(+tYSUF3;Ws<3f>Wu8W`u+uW迍t;rU*_][^_][^D$*̋D$Vp @u3fP襍^D$*t[SUF3;Ws>3f>W5u8W踁u+uWWt;rU.*_][^_][^D$*̋D$Wx @u=3fPUu3fQu _D$)_D$)tESUGV33;D$s[3fS貌u3Su&SXtu^][_D$l)3 uD$;rUL)^][_VW|$ w u!3fPft_^D$)Gu_^D$(Ǚ;t5ḧP _^3]ÃuŁ}uE^]ÍL?W;ujЅ҉T$tESZ u6~2M 3ff[ff_^]Åu rʃv+ @OumT$;}Q+;l$ ~D$ L$ Ƀkrȃv+Ћ @NuT$l$ ;|T$[_^]̋D$H @SQ [̋T$}3ҋL$ }3ɋD$Vp;~΅u;u xu^;~ы@ +Q PQĉ^S\$h<q[̋D$hPD$ HP QRS\$h;1[QL$ $Ph,Q uYËD$HVt$;|xu^YËP QR ^Yj0+jPW u^YËH f qf+tf-uH fqfH fq0^Y̋D$HP QRh  ̋T$JA0 VWtUATtLtBPR|$ ut _3^ Å}wVW!_^ Át$L$QD$PL$QND$PQRD$ 30_^ ~ uPu i _^ ËT$D$3Ʌ~IfGfND$ T$A;|RV蔇V _^ á8hP_3^ ̋D$thPxËD$H T$ @̡8h<P@̋D$t L$Q̋ ;}Wy:_| QPá8hP3̋ƍP@u+H| $IfT1fTOyD$$PQV~ƃP@u+H|IfT1fTNyPQRVƃP@u+H|IfT1fTNyà h/VD$ D$0WPԄ\$ X-D$Dz %}fu D$ ug gtGuO ;v]fuW5;vQD$0ucVWPhD$ jPD$ t$D\$D$_^L$< Ë hQ@L$$_^ ̃VD$PD$L$ QL$RT$PQRu^ËD$Wuu FVP_3^ËL$3~L$ fO fAL$@;|W fJu FVP_^̃Dh/SUVD$LD$`WPًb{ut _^][L$@'~DÅ} uuPdc}D$\N;D$`t2xtXu(SVSUhpj@T$(R4xt Xtou=뤅ucSVPUh`j@D$(PEt$tT$xL$t+_^][L$@e}DË h(QiL$X_^][=}D̋F=hPwu~F=0tZh0P[uHVzu 1uQh|PÅ|=ffGÃ~ufNffGÃ~t8hdRËF fffG̃h/S3V5uJD$ PL$QV tC8RTtqFH 8Qh(R 3^YÍFvD$t$ t$ u f=94Lgfff;T$D$l Hl$4D$y@hlR$XPQ:D$xl$4|$$3ۃSt$XD$D t$\l$\fD$\%D$@=thPZtfsu$D$AD$fsu L$Q T$R迵D$؋C=thhPuVC=0th0PݴCh0jPKQ^Hu SSR|$YD$h XD$4.;&fiu D$d\$D$@=t6hPLu$L$T$,QRT$̃|$ VuMT$t$ B;Fu=Jt F=t^D$ D$L$ ;ָntn^^̅t7Vp u.xu@tH uHX t!u^̉APQPtJH̋ @HtAPD$QjjRP菧̃T$SVWD$ PL$Qjjh3Rt$$WD$HAT@Qh|$ ut$ HyhT$L$D$ \$ uuD$t _A^[jSt4D$ L$FNtF D$ uu׋_^[ËT$L$UD$uD$tϋ_^[ËQ 8Rh PQ _^3[QT$ $PQjjhL{R%@́xu hhLQ3ø̋T$B=X t=!u"B=uhhLP3ËЋD$HX t!u!@=u hhLQg3ÉD$T$ĭ̋D$HX t!u @=uhhLP3ÉD$鰩Vt$F=X t=!u#F=uhhLP3^ËT$ B=X t=!u$B=u hhLQ3^ËЋD$t5HX t!u"@=uhhLRh3^PRV ^́h/$$AP@P RQhxD$hPWL$Qy$9̋D$@=u hhLQѿÉD$1̋T$B=X t=!u#B=uhhLP葿ËЋD$HX t!u"@=u hhLQVÉD$T$̋T$B=X t=!u"B=uhhLP3ËЋD$HX t!u!@=u hhLQ׾3ÉD$T$̋T$B=X t=!u"B=uhhLP葾3ËЋD$HX t!u!@=u hhLQW3ÉD$T$d̋T$B=X t=!u"B=uhhLP3ËЋD$HX t!u!@=u hhLQ׽3ÉD$T$̋T$B=X t=!u"B=uhhLP葽3ËЋD$HX t!u!@=u hhLQW3ÉD$T$Ĭ̋T$B=X t=!u"B=uhhLP3ËЋD$HX t!u!@=u hhLQ׼3ÉD$T$D̋T$B=X t=!u"B=uhhLP葼3ËЋD$HX t!u!@=u hhLQW3ÉD$T$$Vt$F=X t=!u#F=uhhLP3^ËT$ B=X t=!u$B=u hhLQ׻3^ËЋD$t5HX t!u"@=uhhLR蘻3^PRVi ^̋D$HX t!u @=uhhLPO3ÉD$鰰D$HX t!u @=uhhLP3ÉD$аD$HX t!u @=uhhLPϺ3ÉD$PD$HX t!u @=uhhLP菺3ÉD$鰰T$B=X t=!u"B=uhhLPQ3ËЋD$HX t!u!@=u hhLQ3ÉD$T$d̋T$B=X t=!u"B=uhhLPѹ3ËЋD$HX t!u!@=u hhLQ藹3ÉD$T$D̋T$B=X t=!u"B=uhhLPQ3ËЋD$HX t!u!@=u hhLQ3ÉD$T$̋T$B=X t=!u"B=uhhLPѸ3ËЋD$HX t!u!@=u hhLQ藸3ÉD$T$$̋T$B=X t=!u"B=uhhLPQ3ËЋD$HX t!u!@=u hhLQ3ÉD$T$D̋D$HX t!u @=uhhLPϷ3ÉD$D$HX t!u @=uhhLP菷3ÉD$鐲D$HX t!u @=uhhLPO3ÉD$T$B=X t=!u"B=uhhLP3ËЋD$HX t!u!@=u hhLQ׶3ÉD$T$̋T$B=X t=!u"B=uhhLP葶3ËЋD$HX t!u!@=u hhLQW3ÉD$T$̋T$B=X t=!u"B=uhhLP3ËЋD$HX t!u!@=u hhLQ׵3ÉD$T$t̋T$B=X t=!u"B=uhhLP葵3ËЋD$HX t!u!@=u hhLQW3ÉD$T$̋T$B=X t=!u"B=uhhLP3ËЋD$HX t!u!@=u hhLQ״3ÉD$T$ĩVt$F=X t=!u#F=uhhLP萴3^ËT$ B=X t=!u$B=u hhLQW3^ËЋD$t5HX t!u"@=uhhLR3^PRV) ^̋T$B=X t=!u"B=uhhLPѳ3ËЋD$HX t!u!@=u hhLQ藳3ÉD$T$̋T$B=X t=!u"B=uhhLPQ3ËЋD$HX t!u!@=u hhLQ3ÉD$T$鄦̋T$B=X t=!u"B=uhhLPѲ3ËЋD$HX t!u!@=u hhLQ藲3ÉD$T$ĥ̋T$B=X t=!u"B=uhhLPQ3ËЋD$HX t!u!@=u hhLQ3ÉD$T$̋T$B=X t=!u"B=uhhLPѱ3ËЋD$HX t!u!@=u hhLQ藱3ÉD$T$d̋D$@=u hhLQaÉD$AVt$F t V莆fV^̋D$@=u hhLQ3ÉD$b̋D$@=u hhLQѰÉD$A̋D$@=u hhLQ衰ÉD$̋D$@=u hhLQqÉD$ѽ̋T$B=X t=!u"B=uhhLP13ËЋD$HX t!u!@=u hhLQ3ÉD$T$4̋D$@=u hhLQËL$ uT$RPÉL$ D$ƿ̋D$@=u hhLQq3ÉD$̋D$@=u hhLQA3ÉD$bQUl$ MAT@AhS(VWT$L$|$u3ut$t @_^[]YUt^T$L$u4|$uӋ_^[]Yu FVP@_^[]YËD$uD$tċ_^[]YËI 8Qh RZ 3]YQS\$ KAT@AhU,EVWT$L$|$u3ut$t @_^][YSt|S^t F!FX ET$L$u%|$t%u FVP@_^][YËD$uD$uՋ_^][YË_^][YËI 8Qh RK 3[YVt$t2F=t#hPRuF=X t=!uF^hMhֻ3^jPV觴 u VjuHPQỸS\$ WC@T@xh;V4F u4F uo<UWt$ O݉l$tD$PL$QT$ R蝭 u'_ G  6Q%y؃ۉ\$$u#tT$RD$PL$ Q@ ]^_[Å~mt$,oB{W G D$,HD$,uҋt$ l$\$$~({ t$,IwtbD$,HD$,u u CSPqL$T$D$QRP蚩 ]^_[hohй_[̋D$hPuËL$QR QL$ $PhQ謵 uYË$T$BYjwt-T$uL$ uP T$PH̋D$ L$Vt$PQVL }^F3^̋D$HL$D$hPuËL$Q|RQL$ $PhQ輴 uYË$T$B|Y̋D$ L$Vt$PQV }^F|3^̃$PD$L$QT$RhPD$8uV5W֋L$x*L$ T$QR\t:u HPQL$y+ljD$D$ $$_^_3^h$%H<hx##Vhjh!hP%hItdhx#|Sh$|Bx#hx#@hVx#S | $h$AhV $S ^̋D$L$S+UD$+Vt$W<.D$ D$\$ АFAY$ ÊY  ÊY ÈY ËY ËY  ÈFAFAFAY$ ÊY  ÊY ÈY ËY ËY  ÈFA FGY ËY ËY  ÈY ËY ËY  ÈGAGAGY ËY ËY  ÈY ËY ËY  ÈGA GJ0D$T$ JT$ _^][̃D$‹Ul$Vt$W7D$$D$(TT$L$ |$D$(SL$$V~^     ʋ ϋ|$ UE ˈMVUT$(_OBGD$$HT$(|$ D$$GL$|$D$(T$ ljD$(D$,HT$ D$,[_^]̃L$IS؋Ul$Vt$W+‹DD$ D$,|$L$( \$D$,d$|$$d$V~^     ʋ ϋ|$ UE ˈMVUT$(_OFGD$$  HT$(|$ D$$G|$\$ʋT$ D$,HL$(T$ D$,_^][̋D$@tL$ QPT$u3Vt$VwFtF8u HPQF tV :u ‹HPQFtV:u ‹HPQVV^́h/V$$FW܄t*@=0th0PtFP4^F tN@=0th0Pt2N Q^t"8tPj\WhHT$hR诃Wh(D$hP蕃L$Q8[$_^j.Vu@Ul$VWPd$@u+qAu+΍L rLXhpRʠ_^]Ë+Au<+$Auπ9t9.u\QAu͍qAu_+^]́h/U$Vj.V$u@SPE P\\$[}^3]$Ê p%Wp%t6+Ǎt NJ @uUL$ QRfu(Gu_^]$G$_^]c̃T$$PL$QhRD$muËL$Vt$Vu^Ãu^^QL$ $PhQ t1T$ $Rxtu$ LXPhQǥ 3Y3҃R袶YP3ɊhH  ́dh/W$l$dǍP@u+=v)h`P03_$`dÍT$T+׊ @uVhWu, LXWh@Q ^3_$`dSU-jjVVVjT$`jR t VLXWh P苤L$KT$JD$I T$H  ʁPKt VLXWhP@D$ZT$YD$X L$W T$V T$T D$U  ++߉\$4胈؅ۉ\$*D$`P@uj+‹WVDl\D$$V=PK+ÉD$,DaD$D-jO QVVVD$LVD$<VD$\VD$@VD$TVD$PuVmVeT(.jG*PVT$xVxL$t@~ۍ$hL$~4\$x$VӋL$u OWQ[^_](ËphRHu GWP[^_3](+y3ɃUl$ VWWSWS LXhhPO_^3]NS3ۊ~^  ;[t`XtPD$PhJZfx,D^n2HXh|&6DRl~*BVj* @pbP<,T^fpz *4>HTblv  (2<DNVblv",8@HPX`fnt|*4@JT^hrz&2<HVfnz$0<ZdnvF(8jGA$WCRANGE$$WCMODS?M:$1.2.30w,aQ mjp5c飕d2yҗ+L |~-d jHqA}mQDžӃVlkdzbeO\lcc=  n;^iLA`rqgjm Zjz  ' }Dңhi]Wbgeq6lknv+ӉZzJgo߹ホCՎ`~ѡ8ROggW?K6H+ L J6`zA`Ugn1yiFafo%6hRw G "/&U;( Z+j\1е,[d&c윣ju m ?6grWJz+{8 Ғ |! ӆBhn[&wowGZpj;f\ eibkaElx TN³9a&g`MGiIwn>JjѮZf @;7SŞϲG0򽽊º0S$6к)WTg#.zfJah]+o*7 Z-A1b62S-+ldEw}ZVǖAOIъ OM~-QJ#SpxAaU׮.7׵Y-6]]wll?AԞZ͢$ Faw$eڪ]]FD(koipvk19Z* ,  m86F߲]qTp0ek*1u4yީ%8S1bSWĔՖk1**ykʬHpo].*F6fcTT"eM©g0&):{ϼkZ> 8$,52F*sw1pHkQ6Fzw]cN̵J #pAF]#l8?1(BOgT~yUbL8^#ܖTZ1ObbSyOIV~P-{b-R4٠~^eGnHl/Su6: #jT$+e?yHf'*b#ٽЧ ?&~?$pi;FBzw[keZ~7 Sv8H 3?r$7jnԄYFܨ |OQ;օ U d S - =G\ p&Gw)` /a߫i5&LsZ<#0zMzFM8,9; :R:(q-v,.7/pXqYs3r%w+OQvrtEux܉~OK }!b|tyBxʠz{.lD~m8onlk[wjR1h58ib?mcf+aQ`צedd"fig HINSKyuJcO NZLݘMFGN@E$DD2AsX@*IBCPhTg3U>uW ַVS:R|P~Q9ZS [fYX4])\ZEo^m/_5qϱ٥s\ۼqދ!K7 kfֶԁ-b3Πjp]$^'~*I@VW<âM˟ŏ{ tDCm-@wm.B+(铜>Td"ŀǼϭ~8y$owJ1}05_K^ iϏ은BI#ƈdX܁T̓cQ: rՆ⩗ fn|xK)o%ƭ/3vUuA?)C:|sĵ@͂ Ͳ;bIUeh"׻_HS1޼^Z4eg Wb27_k%8ם(ŊO}do׸Jj3wVcXWP0qB{߭gCru&op-?'Bs ưGz>2[Ȏg; i8P/ _Y=чe:ZO?(3wwXR @hQ+ğH*0"ZOWoI}@mNП5+#*'G| AH=XX?#1jvʬ`p^Y<L~i/{kHwâ hs)aLoD~Pf7VM'(@ﰤ ہg9x+n&;f?/X)T`D1 ߨMߒ.FgTp'Hq/L0UEc?kǃh6ry7]P\@TN%s7@'>$!AxUʰ\3;Y^U~PGl!;b F2ȂpԞ(Q_V:1X: n3 m:@/)IJNv"2x+ٗ Kx.HҥfAj^y9*O]#kM`~b_R 7zFh!1߈Vc0a"j6nS Nr)Υ{t*F8#vufz`rs"WG9^EMvc΍&DAdQy/4Aڱ&S֚E biLQ<6'5P..T&q]w4.6IE? v\[YI>U!lDa>Ԫ΋ϩ7~8A]&nv|oY yKiw\¹9~$ 66nQfq>,o,IӔ 渱{I .H>C-Yn馑gQz tafw0a, Qmpjc5dۈ2yܸو L+~|-dj qHA}mԵQӅlVdkbze\Ocl=c ;n Li^`Agqr<KG k5Blۻ֬@2lE\u ϫ=Y&0Q:Qa!V#Ϻ(_ ٲ $/o|XhLaf-=vAq *q3xɢ4 j m=-dlc\kkQlabe0bNl{WeP|b-I|LeMaX:QΣtԻ0JߥA=ؕפmCij4ngF`D-s3 L_ |Pq<'A  Wh% of a^)ɘИ"רY=. \;l  tҚG9w&sc d; mj>zjZ '}DhibW]egl6qnkv+zZgJoC`֣ѓ~8ORѻgWg?H6K +گ L6JAz``ègU1nFiyaf%oҠRh6 w G"U&/ź; (+Z\j1,ٞ[ޮd°c&ujm 6?rgWJz{+ 8Ҏվ | !Bhݳڃn&[owGwZjpf; \ebiaklE x NT9§g&a`IiGM>nwۮjJZ@ f7;𩼮S޻G0齽ʺŠS0$6TW)#gfz.aJ]h*o+ 7 Z-1A26b+-Sdl}wEVZOAي»IˬO ~M-JQS#xpaA.U7Y-۩6˚w]]llA?Z$㧲F waރ$Ųe]]DFok(vpi91k *Z  ,8mF6]pTqke0*1¶u4%y<8syjHA}X*ݹ1SbSW§ٖծ1k**kypH]oF*.f6TTcMe"¤0g)&Ůޟ:{kZ >8,$5*F21wsHpQkzF6c]wN̵ׄJ# pȄA#]F8l1?(gOB~TUyLbˁ8#^TO1ZbbySIOP~V{-b-4R^~Ge­lHnuS/:6# $Tj?e+y䏼Hf*'˼Ѝb# &??~p$iBF;[wzek~ZS 7H8v ?3$rj7nFY |OQ; U dؓS - \G=&pGw`)/ ai5&sL <:R=Pe6^X7}o5641W0ճ2k3$k%'1&-[#bML"'{ "!$*x(+)`F(> q-q,v.Ț/7pqXsYr3w%vQO+tru՛E~xKO} |b!ytxBz{l.m~Do8nkljw[h1Ri85bcm?a+f`Qeddf"giH IKSNJuyOcN LZMݥFĚGE@ND$A2D@XsBI*CThPU3gWu>V SR:P|Q~Z9[ SYfX]4\)^oEZ_/m5qs<\kg2z &J8 좞V`a/6i\lU,zB\uHƒ=&FW A+Ox]`غ7W>9q߳!7Kk ֩fض-bѠ3pj$]^Ĝ'*~@IWVÕ<ӂMʏş{ Dt͆mC-@mw+B.(>dT"ş~Ϝ8yo$w1J}50K_ ^ϋiBۉI#dXфTQc:r Р fΫnx|)Ko%3/uUv?A)ġ:C|sд@͉ ;IbeU"hH_S1ފZ^ھ4ge ȋbW72%k_ܝ8Ŵ(}OodJֿjw3XcVPW0Bq{gǧurCo&p-?О'sB zGɠ2>[ ;g/P8i_ Y=嗇e:ϏOZw3(?RXw@ Qh+HZ"0*WOIo@}m5N#+'*GA |􏒨HX=#?X1vjʨ`^pYL'!$UxAׯ3\Y;U^GP~b;!lڇF 2p(ԐQV_:X1: 3n :m@I)/NJ2"v+x xKH.jAf^O*9y]#Mk~`bю_޶ Rz7hFм!10cV"ajحn6 SrN){t*8Fv#fu`zrϮsɛW"G9E^vMcD&dA/yQA4S&ֿ EbLil!>aDƋΪ~7A8n&]|vYoᡱ Kyi׫w¡\~9$66 Qnf>q,o,ӹI 散 I{.C>HnY-Qg̰t zfa deflate 1.2.3 Copyright 1995-2005 Jean-loup Gailly .@0@0 @03 33 3 3 31.2.3: %c%c%c%c%c%c%c%c%c%c`Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O `Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O A@!  @a`10  @     invalid distance too far backinvalid distance codeinvalid literal/length codetoo many length or distance symbolsinvalid distances setinvalid bit length repeatinvalid literal/lengths setinvalid code lengths setinvalid stored block lengthsinvalid block type`Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O `Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O A@!  @a`10  @     incorrect length checkincorrect data checkheader crc mismatchunknown header flags setincorrect header checkinvalid window sizeunknown compression method inflate 1.2.3 Copyright 1995-2005 Mark Adler  #+3;CScs !1Aa  0@`@@       L,l\<|B"bR2r J*jZ:zF&fV6vN.n^>~A!aQ1q I)iY9yE%eU5u M-m]=}   S S  3 3  s s    K K  + +  k k     [ [  ; ;  { {     G G  ' '  g g     W W  7 7  w w     O O  / /  o o     _ _  ? ?     @ `P0pH(hX8xD$dT4tC#c         (08@P`p  0@`  0@`zlib.Decompresszlib.Compressdecompressobjcrc32compressobjadler32decompressflushcompressError %d %s: %.200sError %d %sOut of memory while compressing dataBad compression levelwhile finishing compressionwhile compressing dataCan't allocate memory to compress datas#|i:compressOut of memory while decompressing dataError %i while decompressing datawhile finishing data decompressionwhile decompressing datawhile preparing to decompress datas#|in:decompressCan't allocate memory for compression objectInvalid initialization optionwhile creating compression object|iiiii:compressobjCan't allocate memory for decompression objectwhile creating decompression object|i:decompressobjwhile compressings#:compresswhile decompressingmax_length must be greater than zeros#|i:decompresswhile flushingfrom deflateEnd()|i:flushfrom inflateEnd()unconsumed_tailunused_datas#|k:adler32s#|k:crc32__version__1.0ZLIB_VERSIONZ_FULL_FLUSHZ_SYNC_FLUSHZ_NO_FLUSHZ_FINISHZ_DEFAULT_STRATEGYZ_HUFFMAN_ONLYZ_FILTEREDZ_DEFAULT_COMPRESSIONZ_BEST_COMPRESSIONZ_BEST_SPEEDDEF_MEM_LEVELDEFLATEDMAX_WBITSerrorzlib.errorzlibt9h9c\9L9@9,999cincompatible versionbuffer errorinsufficient memorydata errorstream errorfile errorstream endneed dictionaryinsort_leftbisect_leftinsortinsort_rightbisectbisect_righthiloxaOO|ii:bisect_rightinsertiOOO|ii:insort_rightOO|ii:bisect_leftOO|ii:insort_left_bisect000000 ^ &     000 0 0 0 0 00000006"'"("""*")""7"""%" "#"+"."a"L"H"=""`"n"o"d"e""5"4"B&@&2 3 !0 !&&%%%%%%%%%; !!!!0$$$$$$$$$$$$$$$$$$$$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$`$a$b$c$d$e$f$g$h$i$ 2!2"2#2$2%2&2'2(2)2`!a!b!c!d!e!f!g!h!i!j!k!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO+Mk1111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)1%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%JU?W(cT UTvLve^aUޘ*S T^l9Z)TlR~_Wq~l|KYN_$a|0N\g\ Θup"QIYQ[O&T+Yweu[vbbE^l&{OO gnmmy_+ubOܑe/Q^PtoRK YPN6ry[DYTvVV9eivnr^uFggzvaybecQR8~\/n`g{vؚ|dP?zJTTLkdb=urRi[sn;uRS݋i_`mOW"ksSh؏bc`$Uubqm[{^RLaĞxW'|vQ`LqCfL^M`pp%c_b`ԆVk`gaIS`ff?yOpGl~dfZZBQmmA;mOkpb` 'xyQ>WW:gxu=zy{eo!Y~  TghM|ƖS%`urlsSZ~$cQ ]߄bQc[OmyBR`Nm[[e_EY~~ Vg9YsO[RZ>2uGPNlZbnc]wQݍ/OS`pgRPcCZ&P7wwS~d+ebcP5rɉQ~GW̃QT\OzZmᐏUTaST_cwiQha R*XRNW x w^wa|[bbNpbp`wWۂghxyXTS4nKQ;R[CUWs`QW-TzzP`T[cbScb[gTzw^8YWcWWw{O_[>k!SP{rFhw6weQNv\zuNYAP'andWfFcVbib^WbU!JfUegV݄jZhb{pQo0cȉapntir^ΐgjm^cRbrlOYjpmRPNm~x/}!QWd{|lh^iQShrΞ{ryotNg̑xS)RPOOuz|lRtTOTޏp^`m^[e8K`p~|Qh|o$Nϑ~fNdJPuq[foNdc^eRˆpRs3tgx4NޜmQATbsÔ6OQupu\SNn tikxYuR$vAmgmQKT<{zWbG|iZd{oKbS^pcdSOx2B^oyU_F.btTݔOee\a\Q/l_sn~\cj[nuSqNceubn&ONl~W;#{=m~YsxlVTWpNVSȏ wnfba+o)+vl_+skwƔoSQ=^8HNsghv dql wZAk'f[YZN jv0sh_[/wa|%_s|yʼnl[B^h w~QMQR)ZbׂcwЅy:n^YmplbvOe`f# T}T,xdyd!jxidTb+gX؞l o[L _rgbarNYkXfU^RUa(gvfwgrFzbTPTZ~lCNvYHYWS7uV c|`mbTQZY*Pl<\b`O?S{n+bt^xd{c_Z?\OcB}[nUJMm`grQ[bl[rmb~SmQ_tYR`sYfPu*ca|T'k%kՅUTvPljU,r^`6tbcLr_Cn>meXovxvTu$RSSN^e*րbT(RpэlxTڀWTjMiOlUv0xbpom_h|x{ gOgcxoWx9ybbR5tkdU>uv9SuPA\l{OPGrؘothydwb+TXRNjW s^QtċO\aWlFZ4xD돕|VRQbNa郲W4gWnffm1fpg:khbYNQoglvQhGYgkfu]PeHyAyw\^NO/TQY xhVlď_}llcp`=murfbŔCS~{N&~NԞMR\ocEm4XL] kIkg[TTX7:_bGj9re`ehwTNO]d\OzRN/`zONy4tRdy[lR{"l>PSndtf0l`w^y7x3u{T8Om Z~^yl[vZuNanXu%urrGS~wviR܀#W^1Yren׋8\qASwbeNߘ[ƋSwON\vY_:yXNgNbR/fUlVNOʑpl^C`[ƉՋ6eKb[[c.US&v}Q,ghkbSmufNNp[qffr͞ ^\/gh_g bzX^pe1oU`7R Tdp)u^hbS=r4lawz.TwzUxgped6V`ySN{k[UV:OUcTن\~*gsTOuÀUOMO-n \pakSv)ne~;T3z }UtcmzbegScl]\TLNalK\eh>T4TkfkNBcHS OO^W bdfirRR`fqgRxwpf;V8T!zrzo` ^`Y`qpnPlrj-^`NZUm|b~w~#Sf\Or NSYTc(HQN~T$T7m&_Z>fis.sSz[wP~vSv{DXnaNey`TNy]ajPTa']xJRTVm[mSf\][!hxU{HeTiNGkNOSc:deQhxSall"Q\ #ke__OEfe)s`tQRWb_Lx^Og'`YDQQSylĖqOO=gUy~X bZV{_ĄWSe^\ud`n}Z~~iU[`es cv)w~tf[tz@Rq_e[o]k[l ŏSb&-@T+NYr]YmŖTN qT pmv%Nx\^plDYcopYvtGd'\ez#YTo0iNV67rΑQ_NucNSfKYmNX;ScO Oc7YWyNul[Y]_iP]YNwNzbfy\Ny_Ɓ8uNԈak_INvn㋮ ы_~5kVk4YTm[n9\_pS1jtZp^($%gGΏbvq_lx fTbcOÁu^͖ Tlm8l`R(u}^O`_$\1url8nI gSSQOɑS|^mNvi^aYOO>| annN1ZN\y[틽sWTGU\_a2krtm[Ոkm3 nQCQWScVXTW?sn܏т?a(`bf~Í\|g`NShAQЏt]UfU[S8xBg=hT~p[}Q(WTef^Clm|QgeojV vvpq#bRl<`Xaf`NbU#n-gg(whiTMNpȋXde[z:P[wky|lve-]U\8h`Sbz[n~jzp_3o _cmVgN^&N4vb-f~blugqiFQSnbTُYmsewu'xOguʋ/cG5#cAw_rN`tebck?e'^uѐg/e1TwAlKN~Lv ikgbS\fScSRRR-R3R?R@RLR^RaR\R}RRRRRQTNNNNNNNNON"OdON%O'O O+O^OgO8eZO]O_OWO2O=OvOtOOOOO~O{OO|OOOOOOOOOOOOO)PLPO,PP.P-POP P%P(P~PCPUPHPNPlP{PPPPPPQPPPPQ QN=lXOeOOFlt|nQ]ɞQYR SSQYUQNVQNnN҈y4[QQQQQQQQ‹Ëˋϋ΋ҋӋԋ֋؋ً܋ߋ  !%'*+./2356iSzS"!1*=]4]=]l][]o]]]k]K]J]i]t]]]]s]]s_w____________ba_rrrrrrrrrrrrrrrrsrsrrss!s ssss"s9s%s,s8s1sPsMsWs`slsos~s%Y$YYcghijkltw}^^^^^^^^^^S^^^^^____`_`___``___`5`&``` `)`+` `?`!`x`y`{`z`B`j`}````````````````` a&aa#a`aa+aJauaaaaaaa_ ,N?rb5lTl\lJllllllhliltlvllllllllllllllllllll9m'm mCmHmmmmm+mMm.m5mmOmRmTm3mmommm^mmm\m`m|mcmnmmmnmmnmmmnm nm+nnnNnknn_nnSnTn2n%nDnnnnn-onnnnnnnnnnnnboFoGo$oon/o6oKoto*o o)ooooxoro|ozoooooooooooop#pp9p5pOp^p[[[[[[/u4d[[0[GӏՏ & !56-/DQRPhXb[ft}P_W_V_X_;\TP\Y\q[c\f\*_)_-_t<_;n\YYYYYYYYYYYYYYYYZZYZYYY Z Z2Z4ZZ#ZZ@ZgZJZUZusssssssssssssss| tssssst*t[t&t%t(t0t.t,tttAt\tWtUtYtwtmt~ttttttttttttttLgSg^gHgigggjgsgggugggggwg|gg hg hgg hggggghggghgg2h3h`hahNhbhDhdhhhUhfhAhgh@h>hJhIh)hhhthwhhkhhnihi ih$ih iiWihiqi9i`iBi]iikiiixi4iiiiiificiyiiiiiiiiiiiiiii/jijjejiDj>jjPj[j5jjyj=j(jXj|jjjjjj7sRskkkkkkkkkkkkmqrsuvxwyz|~Ύ bbbb"b!b%b$b,btttuuu4eeee ffrgfffpff4f1f6f5f_fTfAfOfVfafWfwffffffffff236;=@EFHIGMUYljʉˉ̉ΉωЉщnrr]rfror~rrrrrrrc2cc?ddkkkkklll lllll!l)l$l*l2l5eUekeMrRrVr0rbR gۀ€Āـ̀׀g݀ gZ6,2HLStYZq`i|}mgMXZń&gʁ$k7k9kCkFkYkјҘӘ՘٘ژk@_keQeeeeeeeeepppppppppppqqq/q1qsq\qhqEqrqJqxqzqqqqqqqqqqr(rlpqfqq>b=bCbHbIb;y@yFyIy[y\ySyZybyWy`yoygyzyyyyyy__<`]`Z`g`A`Y`c``a a]aaaaabllmwwx xxxxe-xxx9x:x;xx?B5DEFILNORSTVWXY[^_]abdefghijkloqrs:wwɖyyyyzG]zzzz9z7zQzϞpzvvvvvtt,u "()*+,216879:>ABDFGHIKLNQUWZ[\^cfghijklqmsuuuuuuuuuuuuuuuuuuuuuuuvuuuvvv vv v%vvvvvv3vMv^vTv\vVvkvovzxzyzzzzzzzzzzzdir}ƈɈΈ! 4+6Af{u倲vvw "%&')(1 5CFMRiqxMTlnz|{ĆΆɆφІކ߆؆ц #;%.>H41)7?"}~{`pLnSc|dYe҇Ƈ凬ˇӇчʇۇ !9<6BDEzz{{{{ {+{{G{8{*{{.{1{ {%{${3{>{{X{Z{E{u{L{]{`{n{{{b{r{q{{{{{{{{{{{{{{{{{{{{{{ |{{|| ||*|&|8|A|@|D!"#-/(+8;34>DIKOZ_h~؈߈^||Ie||||||||||||||||nf|w}}}G~~sgmGIJPNOdbapio}~rtyU~Yič֍׍ڍލ΍ύۍƍ ,.#/:@95=1IABQRJpv|otxe։މډ܉>&S*-0> ΖҖwȒ>jʓ>k#zĜŜƜǜʜ˜̜͜ΜϜМӜԜ՜ל؜ٜܜݜߜ|XŚš˚̚њECGIHMQ .UTߚ#;~֓۞ܞݞߞ",/97=>D@:!~:1|;!~P<!s<!v=!X>!q>!iF?$o?!~@!~VA!~B!~B!~C!~FD!~E!~E!~zF!~6G!~G!~H!~jI!~&J!~J!~K!~ZL!~M!~M!~N!~JO!~P!~P!~~Q!~:R!~R!~S!~nT!~*U!~U!~V!~^W!~X!~X!~Y!~NZ!~ [!~[!~\!y4]!~]!~^!~h_!~$`!~`!~a!~Xb!~c!~c!~d!~He!~f!~f!~|g!~8h!~h!~i!~lj!~(k!~k!~l!~\m!~n!~n!~o!~Lp!~q!~q!~r!~O?O@OAOBODOEOGOHOIOJOKOLOROTOVOaObOfOhOjOkOmOnOqOrOuOwOxOyOzO}OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPP P P PPPPPPPPPPP P"P#P$P'P+P/P0P1P2P3P4P5P6P7P8P9P;P=P?P@PAPBPDPEPFPIPJPKPMPPPQPRPSPTPVPWPXPYP[P]P^P_P`PaPbPcPdPfPgPhPiPjPkPmPnPoPpPqPrPsPtPuPxPyPzP|P}PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQ Q Q Q QQQQQQQQQQQQQQQQQQ Q"Q#Q$Q%Q&Q'Q(Q)Q*Q+Q,Q-Q.Q/Q0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q:Q;QQBQGQJQLQNQOQPQRQSQWQXQYQ[Q]Q^Q_Q`QaQcQdQfQgQiQjQoQrQzQ~QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRR R R RRRRRRRRR!R"R#R%R&R'R*R,R/R1R2R4R5RRDRERFRGRHRIRKRNRORRRSRURWRXRYRZR[R]R_R`RbRcRdRfRhRkRlRmRnRpRqRsRtRuRvRwRxRyRzR{R|R~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSS S S S SSSSSSSSSSS"S$S%S'S(S)S+S,S-S/S0S1S2S3S4S5S6S7S8SV@VAVBVCVDVEVFVGVHVIVJVKVOVPVQVRVSVUVVVZV[V]V^V_V`VaVcVeVfVgVmVnVoVpVrVsVtVuVwVxVyVzV}V~VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWW W W WWWWWWWWWWWWWWWWW W!W"W$W%W&W'W+W1W2W4W5W6W7W8WX?X@XAXBXCXEXFXGXHXIXJXKXNXOXPXRXSXUXVXWXYXZX[X\X]X_X`XaXbXcXdXfXgXhXiXjXmXnXoXpXqXrXsXtXuXvXwXxXyXzX{X|X}XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXYYYYYY Y Y Y YYYYYYYYYYY Y!Y"Y#Y&Y(Y,Y0Y2Y3Y5Y6Y;Y=Y>Y?Y@YCYEYFYJYLYMYPYRYSYYY[Y\Y]Y^Y_YaYcYdYfYgYhYiYjYkYlYmYnYoYpYqYrYuYwYzY{Y|Y~YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYZZ Z Z ZZZZZZZZZZZZZZ!Z"Z$Z&Z'Z(Z*Z+Z,Z-Z.Z/Z0Z3Z5Z7Z8Z9Z:Z;Z=Z>Z?ZAZBZCZDZEZGZHZKZLZMZNZOZPZQZRZSZTZVZWZXZYZ[Z\Z]Z^Z_Z`ZaZcZdZeZfZhZiZkZlZmZnZoZpZqZrZsZxZyZ{Z|Z}Z~ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[[[[[[[[[ [ [ [ [[[[[[[[[[[[[[[[[ [!["[#[$[%[&['[([)[*[+[,[-[.[/[0[1[3[5[6[8[9[:[;[<[=[>[?[A[B[C[D[E[F[G[H[I[J[K[L[M[N[O[R[V[^[`[a[g[h[k[m[n[o[r[t[v[w[x[y[{[|[~[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[\\\\\\ \ \ \\\\\\\\\\ \!\#\&\(\)\*\+\-\.\/\0\2\3\5\6\7\C\D\F\G\L\M\R\S\T\V\W\X\Z\[\\\]\_\b\d\g\h\i\j\k\l\m\p\r\s\t\u\v\w\x\{\|\}\~\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\]]]]] ] ] ] ] ]]]]]]]]]]]]]] ]!]"]#]%](]*]+],]/]0]1]2]3]5]6]7]8]9]:];]<]?]@]A]B]C]D]E]F]H]I]M]N]O]P]Q]R]S]T]U]V]W]Y]Z]\]^]_]`]a]b]c]d]e]f]g]h]j]m]n]p]q]r]s]u]v]w]x]y]z]{]|]}]~]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]^^^ ^ ^ ^ ^^^^^^^ ^!^"^#^$^%^(^)^*^+^,^/^0^2^3^4^5^6^9^:^>^?^@^A^C^F^G^H^I^J^K^M^N^O^P^Q^R^S^V^W^X^Y^Z^\^]^_^`^c^d^e^f^g^h^i^j^k^l^m^n^o^p^q^u^w^y^~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^___ _ _ ___________!_"_#_$_(_+_,_._0_2_3_4_5_6_7_8_;_=_>_?_A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_Q_T_Y_Z_[_\_^___`_c_e_g_h_k_n_o_r_t_u_v_x_z_}_~________________________________________________________________________`` ` ` `````````"`#`$`,`-`.`0`1`2`3`4`6`7`8`9`:`=`>`@`D`E`F`G`H`I`J`L`N`O`Q`S`T`V`W`X`[`\`^`_```a`e`f`n`q`r`t`u`w`~````````````````````````````````````````````````````````````````````````````aaaaa a a aaaaaaaaaaaaaa!a"a%a(a)a*a,a-a.a/a0a1a2a3a4a5a6a7a8a9a:a;aa@aAaBaCaDaEaFaGaIaKaMaOaPaRaSaTaVaWaXaYaZa[a\a^a_a`aaacadaeafaiajakalamanaoaqarasatavaxayaza{a|a}a~aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbb bbbbbbb b#b&b'b(b)b+b-b/b0b1b2b5b6b8b9b:b;bc?c@cAcDcGcHcJcQcRcScTcVcWcXcYcZc[c\c]c`cdcecfchcjckclcocpcrcsctcucxcyc|c}c~ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddddd d d dddddddddddd"d#d$d%d'd(d)d+d.d/d0d1d2d3d5d6d7d8d9d;dd@dBdCdIdKdLdMdNdOdPdQdSdUdVdWdYdZd[d\d]d_d`dadbdcdddedfdhdjdkdldndodpdqdrdsdtdudvdwd{d|d}d~ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeee e e e eeeeeeeeeeeeeeeee e!e"e#e$e&e'e(e)e*e,e-e0e1e2e3e7e:eg?gAgDgEgGgJgKgMgRgTgUgWgXgYgZg[g]gbgcgdgfgggkglgngqgtgvgxgygzg{g}gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggghhhhh hhhhhhhhhhhh h"h#h$h%h&h'h(h+h,h-h.h/h0h1h4h5h6h:h;h?hGhKhMhOhRhVhWhXhYhZh[h\h]h^h_hjhlhmhnhohphqhrhshuhxhyhzh{h|h}h~hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhiiiiiii i i iiiiiiiiiiiiiii!i"i#i%i&i'i(i)i*i+i,i.i/i1i2i3i5i6i7i8i:i;ii@iAiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiUiViXiYi[i\i_iaibidieigihiiijilimioipirisitiuivizi{i}i~iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijjjjjjjjj j j j jjjjjjjjjjjjjjjj j"j#j$j%j&j'j)j+j,j-j.j0j2j3j4j6j7j8j9j:j;jl?lClDlElHlKlLlMlNlOlQlRlSlVlXlYlZlblclelflglklllmlnlolqlslulwlxlzl{l|lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllmmmmmm m m mmmmmmmmmmmm m!m"m#m$m&m(m)m,m-m/m0m4m6m7m8m:m?m@mBmDmImLmPmUmVmWmXm[m]m_mambmdmemgmhmkmlmmmpmqmrmsmumvmymzm{m}m~mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmnnnnnnnn n nnnnnnnnnnn"n&n'n(n*n,n.n0n1n3n5n6n7n9n;nn?n@nAnBnEnFnGnHnInJnKnLnOnPnQnRnUnWnYnZn\n]n^n`nanbncndnenfngnhninjnlnmnonpnqnrnsntnunvnwnxnynzn{n|n}nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnooooooo o o o ooooooooooooooo!o"o#o%o&o'o(o,o.o0o2o4o5o7o8o9o:o;op?p@pApBpCpDpEpFpGpHpIpJpKpMpNpPpQpRpSpTpUpVpWpXpYpZp[p\p]p_p`papbpcpdpepfpgphpipjpnpqprpsptpwpypzp{p}ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppqqqqqqqqq q q qqqqqqqqqqqq q!q"q#q$q%q'q(q)q*q+q,q-q.q2q3q4q5q7q8q9q:q;qq?q@qAqBqCqDqFqGqHqIqKqMqOqPqQqRqSqTqUqVqWqXqYqZq[q]q_q`qaqbqcqeqiqjqkqlqmqoqpqqqtquqvqwqyq{q|q~qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrrrrrrrr r r r r rrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r)r+r-r.r/r2r3r4r:rr@rArBrCrDrErFrIrJrKrNrOrPrQrSrTrUrWrXrZr\r^r`rcrdrerhrjrkrlrmrprqrsrtrvrwrxr{r|r}rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr p!q!r!s!t!u!v!w!x!y!569:?@=>ABCD;<78134  % 5 ! !!!!!""#"R"f"g""P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%%%%%%%%%%%%%%%%%%%%%%%%% &"000QDHa!0"0#0$0%0&0'0(0)02333333333330!!12 00000000IJKLMNOPQRTUVWYZ[\]^_`abcdefhijk0rrrrrrrrrrrrrrrrrsssssss s s s ssssssssss s#s$s&s's(s-s/s0s2s3s5s6s:s;st?t@tBtCtDtEtFtGtHtItJtKtLtMtNtOtPtQtRtStTtVtXt]t`tatbtctdtetftgthtitjtktltntotqtrtstttutxtytzt{t|t}tttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttuuuuuuuu u u u uuuuuuuuuuu u!u"u#u$u&u'u*u.u4u6u9uw?wBwDwEwFwHwIwJwKwLwMwNwOwRwSwTwUwVwWwXwYw\w]w^w_w`wdwgwiwjwmwnwowpwqwrwswtwuwvwwwxwzw{w|wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwxxxxxx x xxxxxxxxx x!x"x$x(x*x+x.x/x1x2x3x5x6x=x?xAxBxCxDxFxHxIxJxKxMxOxQxSxTxXxYxZx[x\x^x_x`xaxbxcxdxexfxgxhxixoxpxqxrxsxtxuxvxxxyxzx{x}x~xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyy y y y y yyyyyyyyyyyyyyyyy y!y"y#y%y&y'y(y)y*y+y,y-y.y/y0y1y2y3y5y6y7y8y9y=y?yByCyDyEyGyJyKyLyMyNyOyPyQyRyTyUyXyYyaycydyfyiyjykylynypyqyrysytyuyvyyy{y|y}y~yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzzzzz z z zzzzzzzzzzzzzz!z"z$z%z&z'z(z)z*z+z,z-z.z/z0z1z2z4z5z6z8z:z>z@zAzBzCzDzEzGzHzIzJzKzLzMzNzOzPzRzSzTzUzVzXzYzZz[z\z]z^z_z`zazbzczdzezfzgzhzizjzkzlzmznzozqzrzszuz{z|z}z~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz{{{{{ { { {{{{{{{{{{{{!{"{#{'{){-{/{0{2{4{5{6{7{9{;{={?{@{A{B{C{D{F{H{J{M{N{S{U{W{Y{\{^{_{a{c{d{e{f{g{h{i{j{k{l{m{o{p{s{t{v{x{z{|{}{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||| | | |||||||||||||||| |!|"|#|$|%|(|)|+|,|-|.|/|0|1|2|3|4|5|6|7|9|:|;|<|=|>|B|C|D|E|F|G|H|I|J|K|L|N|O|P|Q|R|S|T|U|V|W|X|Y|Z|[|\|]|^|_|`|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|u|v|w|x|y|z|~||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}}}}}}}}} } } } }}}}}}}}}}}}}}}}}}}!}#}$}%}&}(})}*},}-}.}0}1}2}3}4}5}6}7}8}9}:};}<}=}>}?}@}A}B}C}D}E}F}G}H}I}J}K}L}M}N}O}P}Q}R}S}T}U}V}W}X}Y}Z}[}\}]}^}_}`}a}b}c}d}e}f}g}h}i}j}k}l}m}o}p}q}r}s}t}u}v}x}y}z}{}|}}}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~ ~ ~ ~ ~ ~~~~~~~~~~~~~~~~~~~ ~!~"~#~$~%~&~'~(~)~*~+~,~-~.~/~0~1~2~3~4~5~6~7~8~9~:~<~=~>~?~@~B~C~D~E~F~H~I~J~K~L~M~N~O~P~Q~R~S~T~U~V~W~X~Y~Z~[~\~]~^~_~`~a~b~c~d~e~f~g~h~i~j~k~l~m~n~o~p~q~r~s~t~u~v~w~x~y~z~{~|~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 79;<=>?@ACFGHIJKLMNORSVY[\]^`cdefgklmopsuvwxz{|} !#$+,-./0249:<>@ADEGHINOPQSUVWY[\]^_`abcdefghklmnoprstuvwxyz{|}~ŀǀȀɀʀˀπЀрҀӀԀՀ؀߀  !"#$%&'()*+-.034579:;<=?@ABCDEGIMNORVWX[\]^_abcdfhjklorsuvwxāŁǁȁɁˁ́΁ρЁсҁӁԁՁցׁ؁فځہ܁݁ށ߁  $%&').2:<=?@ABCEFHJLMNPQRSTUVWY[\]^`abcdefgijklmquvwx{|‚ÂłƂɂЂւقڂ݂  !"#$%&)*.027;=>?ABDEHJKLMNSUVWXY]bpqrstuvyz~ƒÃăƃȃɃ˃̓΃Ѓу҃ӃՃ׃كڃۃރ  !"#)*+,-./02345679:;>?@ABCDEGHIJKLMNOPRSTUVX]^_`bdefghjnoprtwy{|}~„ÄńƄDŽȄ˄̄΄τ҄ԄՄׄ؄لڄۄ܄ބ  "#$%&'()*-./0123456>?@ABDEFGKLMNOPQRSTUWXZ[\]_`abcefgijklmnopqsuvwx|}…ÅąŅƅDžȅʅ˅̅ͅ΅х҅ԅօׅ؅مڅۅ݅ޅ߅  !"#$%&(*+,-./012345679:;=>?@ABCDEFGHIJKLRSUVWXY[\]_`acdefghijmoprstuvwx†ÆņȆ̆͆҆ӆՆֆ׆چ܆݆  $&'(*+,-/0235689:<=@ABCDEFJKMOPQRTUVXZ[\]^_abfghijklmoqrsuwxyz‡ÇćŇLJȇɇ͇̇·χЇԇՇևׇ؇هڇ܇݇އ߇  #$%&'()*+,-./01345678:;=>?ABCFGHIJKNOPQRSUVXZ[\]^_`fgjmoqstuvxyz{|ÈĈLjȈʈˈ͈̈ψЈшӈֈ׈ڈۈ܈݈ވ  "#$&'(),-./1235789:;<=>?@BCEFGHIJKLMNOPQRSTUVWXYZ[\]`abcdeghijklmnopqrstuvwxyz|}~É͉ӉԉՉ׉؉ىۉ݉߉  !"#$%&'()*+,-./0123456789:;<=?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxz{|}~ŠÊĊŊƊNJȊɊʊˊ̊͊ΊϊЊъҊӊԊՊ֊׊؊يڊۊ܊݊ފߊ  !"#$%'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeghijkmnopqrstuvwxyz{|}~NjЋ 89:;<=>?@BCDEHJKMNOPQRSTVWXY[\]^_`cdefghilmnopqrtuvw{|}~ŒÌČŌƌnjȌɌʌˌ̌͌ΌόЌьҌӌԌՌ֌׌،ٌڌی܌݌ތߌ  QRW_ehijlnoqrxyz{|}~ōǍȍɍʍ͍ЍҍӍԍՍ؍ٍ܍  !$%&'(+-0234678;<>?CEFLMNOPSTUVWXZ[\]^_`abcdeghjknqsuwxyz{}~ŽÎĎŎƎǎȎɎʎˎ͎̎ώЎюҎӎԎՎ֎׎؎َڎێ܎ݎގߎ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdejÏƏɏʏˏ̏͏Ϗҏ֏׏ڏ #$%'()*+,0123479:=?@CEFHIJKLNTUVYZ\]^_`adfgijklopqrsvwxyz{|~ÐƐȐɐː̐͐ҐԐՐ֐ِؐڐސߐ  !$%&'()*+,-.02345678:;<=>?@ABDEGHQSTUVXY[\_`fghkmsz{|‘ÑđőƑȑˑБґӑԑՑ֑בّؑڑۑݑޑߑ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsuvwxyz{|}~’ÒĒŒƒǒɒʒ˒̒͒ΒϒВђҒӒԒՒ֒גْؒڒےܒݒޒߒ  !"#$%&'()*+,-./0123456789:;<=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghiklmnopqrstuvwxyz{|}~“ÓēœƓǓȓɓ˓͓̓ΓϓГѓғӓԓՓדؓٓړۓܓݓޓߓ  !"#$%&'()*+,-./0123456789:;<=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijlmnopqrstuvwxyz{|}~ǔϔӔԔڔ '3=CHKUZ`ntuwxyz{|}~•ÕĕŕƕǕȕɕʕ˕͕̕ΕϕЕѕҕӕԕՕ֕וٕؕڕەܕݕޕߕ #$%&'()+,-/0789:>ACJNOQRSVWXYZ\]^`cefkmnopqsxyz{|}~–ÖȖʖ˖ЖіӖԖ֖זٖؖږۖܖݖޖߖ  !"#$%&'()+,./134567:;<=?@ABCDEFGHIJKLMNOPQTUWXZ\]_cdfghjklmnopqruwxyz{}~—×ėŗƗǗȗɗʗ˗̗͗ΗϗЗїҗӗԗ՗֗חؗٗڗۗܗݗޗߗ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst˜ØĘŘƘǘȘɘʘ˘̘͘ϘИԘ֘טۘܘݘ  !"#$%&'()*+,-/0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSVWXYZ[\]^_`abdfsxy{~™ÙęřƙǙșəʙ˙̙͙ΙϙЙљҙәԙՙ֙יؙٙڙۙܙݙޙߙ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkrÚĚƚǚȚɚʚ͚ΚϚКҚԚ՚֚ךٚښۚܚݚޚ  !"$%&'()*+,-.013456789:=>?@FJKLNPRSUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~›ÛěśƛǛțɛʛ˛̛͛ΛϛЛћқӛԛ՛֛כ؛ٛڛۛܛݛޛߛ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{}~œȜɜќҜڜۜ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÝĝŝƝǝȝɝʝ˝̝͝ΝϝНѝҝӝԝ՝֝ם؝ٝڝ۝ܝݝޝߝ $'.04;<@MPRSTVY]_`abenortuvwxyz{|}žÞŞƞǞȞʞ˞̞ОҞӞ՞֞מٞڞޞ !#$%&'()*+-.01234568:'?'@'A'Q'R'S'T'U'V'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'W'\C*!,!.!/!0!1!E-!k!d!e!Fy!f!GHm!Yq"r"s"t"u"v"w"x"y"z"{"|"{!|!z!}!IJKLJ!G!F!ML!X!^!NO!ON!D!E!I!H!R!S!`!_!C!K!W!V!U!PY!T!\!]!QRZ![!Q!M!SP!Y"Z"["\"]"^"_"`"a"b"E"F"G"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"1"2"3"4"5"6"7"8"9":";"<"=">"?"@"A"B"C"D"$)%)&)')()))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)TUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~v!u!x!w!t!s!p!r!q!o!n!b!a!!!"!#!(!)!e4!5!6!7!8!9!:!;!>!?!~!2!3!$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$abfg!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%$!`cdE(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i(e"f"g"h"i"j"k"l"m"n"ZIJKLMNOPQRST;R!6@_FABCrMIU}HOIBO"X;2kSD$Xs3E(WRG'X@JFpG{15RT4+6?K)XGHI*6J=AOQK%I-XLv8>Q\cPVMNa7O.4PYAQ/XTUVKDWC>X1X4CeRY.VZN'Uu:&7V@Z9FREGG[T9\K3RR]^?XE>rF2R0OgO_`abiJcd@XefghijrBRBkiHlmnopqrstu,Gvwxyz{|KA}hSyU~BJ~6!XZSw?FT%;AXeN.>(XGQ)P=XoYvM:?;=%:`Rz2`:6DmO)>$MAAWGqYtYKHiXZR2JJHlXjXFXv=MFp3kXq=i=THS4XBV2PWKJ{KLU68IOZYpX*GnXz4nATRmXGRoXGCvQYVrXuX~<[j=Yklmn:Yo30pqrBYstuvwxyz{|}~DY61?Y95s>HLr:PRCYh=+3EYk>FY;Y_D>YAY@Y.U5VcGHYYŃƃkHǃȃ+HɃʃK0+9yAbY˃<@29̃X9KPx1dF_>d5HW̓xQf<^J΃σ=)Eރ߃Z9#Z)T$Z{Y,6k7y1|Ye3v>v?1Rd@36~Y}Y;>`FFO-?K;PQJ5RI[WPS9M<0v3w;J[/:TdT65s5VXPHUVV7PGWXW/?XY;[XXZ[LP.;\]^>kPAuArTU844_u3`a>IbcdPEefgYE{@hp1iYXN9j=5klZXmnFV"K/H2IL4L?ot9p[X\Xg6A#Jt<18n8bXK=dXcX|EeXfX&A0Hl0&9S[?[x@">M@„Ä@[FJĄńƄ*2DŽȄɄBSʄcC˄+Q̄̈́΄τB[ЄU@ф҄ӄC[Ԅ1?Մքׄ؄لڄ6PraZstuvdGwx'3yr6|Lz@z{w@|9QaQGX}~^2e@q:HX-TaOIXJXCOx3G>KXL[%HXO~HN2VSf20mA6_5_;VP=YUH0#6I?(L3_7JRSOX6RE:>K>L7_p54_uST3w8:_O:*_ALMwRM7A_…D_Åąq7I0V6T7Ņ,:}LT?1KtFƅ(VE_DžbN33ȅɅ|N54ʅGNp:˅aN̅=Qͅ΅@_υЅt4хJ3҅f8;_ӅԅՅօEDׅ<_=_>_;E?_B_1TC_؅:GXNمڅۅ܅݅XDޅJ_߅O_\VI_Z_6NG:N_H_^EkIt:|CW>F_M_XE&UM:L>=S@8dVG_>9'?|AK_L_P_@[_e_AW_V_IWc_d_ke'RR_B)?C[TDH?T_EFGLOHI]_JJQK^_'07FS_Le:M_6[M~9UTNO__lO%0g_Q_FQU_X_Y_\_P);Q`_a_Rb_f_h_4SSTUVWg86Ej_ZI(ADDXY^?xOZ[\\Un_]^_`ab82c_:l_dA[edQfghitK=4j&0klmnoq_FLr_pqm_rstuvwi_xyz{k_|o_p_=;}~s_t_#;[J(N'`*3&`!`~_YM|_z_P?DWLIx_!0}_{_"`(`H7!F6I2@u_>EDXy_vD#`$`%`%P4`dL1`&?/`9N+`FI.@.`m:0:)`v_3`8`-49`2OH:0`†ÆĆņƆdžzPȆɆʆˆ̆͆ΆφІ,`ц{T҆w_ӆgEԆ-`ՆwSֆ6`7`׆؆نچۆD`aP܆݆ކ<`߆I`J`>`*`$IA`2`HJC`5`KNCKM`F`B`K`:`?`@`E`G`H`L`;`TKU`V`R`@AP`Ncd;7eP[.L2?5;xWS?fghiji?kla<3L^[S0kNX79WBFmn$@o9Lpg[a[:Fc[qh[rwEstuj[vwi[@?xyzf[e[{|}~94,@"Bb[d[MPm[]@r[b6s[R[89+Tl[Q?p[Q[f5k[e?n[q[y[!9#0qBG3o[x[RFt[u[w[v[~[rS:2}[ˆÈĈ$\ň{[ƈLjȈɈz[ʈˈ̈|[`Ey;͈Έ#\ψЈ%\шCL҈ӈԈQ6@]Ոֈ׈!\؈"\وڈۈ5G܈݈ވi6߈'\&\)\$1L50?_QB6@ABCDE(\FGHIJKLzKskMNO\KPQ~KRSTALUVWXY{HZ[\]^_*\`abcdnL+\efghijklmnopqrstuS[v/\,\w3>x{Jyz{-\|}~JI9D=G.\vTfP+DU6T[Z1U[V[>:‰ÉĉʼnƉljȉɉ@Hʉˉ͉̉Ήω?JIHЉ3WщyI҉ӉG?ԉՉx:։׉8hBlQHmn{eopqrJ6KoI͊Ί7fϊp6ЊъҊdCӊԊՊ֊׊؊يiS4fڊ5fۊ"H܊݊ފߊ=f9fEFqM;ffABCD:fEF7@GHIJKLMNO$S?ftICfPQDfRSTUvPVWXYZ[\]^_`abcdefg=ChijklmnDCBfopqrstuvwxyz{|Af}~Gf1OtkJfEf^<)I5eg4T6BK0Q<5YJb7dI+=>NpW!PYI{6Xfb<>3PIYf"3L^HSM^"RN^M>O^,J|R_3jeaD!>2NrDV>(Fc2ŒS>ÌČ|GkLl=]NŌƌ:JAFleaUVWXYZz{|}~@aAaGag3iF^4BQHaFaEaCaBa@18UDaKaLaJazoSaRa6GIaNaÍPačōƍǍȍɍʍˍ͍̍΍TaύQaMaЍэOaҍӍԍՍUa֍׍؍ٍڍۍ܍ݍލߍVaWaXa@ABCDEFGHIJKLMNOPQRSTUZaVWXYZ[\]^_`ab[acdefghi!Njklmnopqrstuv]gw(4]Vxy2Q23z{$9sWIG^>.9|WN}~n2O[:}4_a\:`a2;IBaalP=MbaC5GEcadaÏďŏƏySǏȏɏʏˏ̏ea͏-QΏϏfa"NЏяҏӏԏՏga֏B5׏؏ُڏhaU;ۏ܏ݏޏߏDP`bX1dRabIV|M&CCcRVgbhbGSlbl?mbeb@3nDnbCPv:ib^73;,LKKdbfbjbkb@AwbBCtbuTsbDE-EFzUBE@2GHobIrb/AoMs;hL/c1c'O.c)N];k5e>R2M391+cQ2,5_9h6kO7cL;ÐĐGHJPŐƐǐȐɐ8cn3ʐː̐͐)mΐzSdSϐАѐ*m9cbRҐӐԐՐ֐5cאِؐڐ^SېܐݐސP83cߐ6c_74c"@:c8T@H4A;cBE;CwIDEeIFGH=DIJKLMNO+mPQRS}BTUVW[;.?XYZ[\]^?N_`abc~-m?c):,m=c@c6:.68PC0.m/mA@Ac3E‘ÑđőƑǑȑɑʑˑ̑͑ΑϑBcБёґӑԑՑ֑בؑ2\ّڑۑܑݑޑ0mߑj8lN'jgPyJVH7OI3RNd=^cr;(j=U]F)j*j,j+j.j-jX=/j>BA4w4';flel?7yKb1glHIhlilVJP^E2zT@AKFG0r4SHBCDPMEF8?GHIJKLM[?NO$G4VP)@Q^(IoQ$Eg063EHQRb0STv7UVzEWXs6YRUP3<Q0abcdefVRcJ%Wg6M669?[Uh'8WEijkR^Y?UB@Gl$;(1mnjEop{E'Lqrst'1uvwV5xyz(D{S^:Qi3|rC}~w7tV#5p24DiD-@T^h0DE`AU9\>XMN0OMV^P>>WU^PU]0bD#Bp<5S9@!E&2qT(@CJW^|U09-H)KY^=?4F'W0JCDV3R98V|j40f?tLZM?VNBNN"L.PSD25X^uU762’ÒĒŒƒǒȒɒL@pKʒq<;;75˒̒͒uEΒf^ϒВђc^]>ҒӒ_^ԒՒ֒ג74]=ْؒ`^mDڒےܒݒFOޒ`5ߒ^6ZJt5e^FUa^ML~FEE4Rr>SB=L83S=X?FMZQk4d^]^g^~j0Bb^@V'5t2h^r^@ABm^Cq^DE`HFGHaWo^hCaLIe2JKL>RMNOPQRSn^Tk^UNU'4VWXYZ+?>>[\R=]^_`i^a.Tb^^cj^defg?@hl^s2i8'BijA=klmnou^x^pq+2$4rsj4&Ituvwxyv^QKzc8{w^z^|}~y^BLa0n4:e/Pk2!kt^cIs^Z0!Rw1/Lp^$K*U{^]4&D}^~C!D!_“ÓLAē|^o>œ2FƓǓȓɓʓ˓͓̓ΓE3vHϓГ:K~^ѓғ$_ӓԓՓ֓2Wדؓٓړۓ73ܓݓޓߓCAKG%2i4+WlD"_#_%_3:&_^@CIY2fG'_\G(_"k@ABSKCDE*_F)_GA2HIJKLMNOPQRSTUVWXYZ[\]^_`JEabcdefgh+_ijklmnop\TqrstuAHvwxyz{|}~,_p>-_'V7j6kUJ|XD8%9E7~UJ9'PMtP5tCH>7k=0L=2AV1(3R8"IX68k4>}JCG{Us7”ÔDNĔŔƔ+Us1ǔȔɔ3l_0ʔ5l˔͔̔76ΔOAϔzu1PДєeUҔSNӔԔo=b3Ք+8֔6Uה=mؔO6ٔ9KBPڔ۔ܔݔޔߔ=76l)JTE9l8lCB7l}P:l;leWjLM%@NOP;jQ}2RwCh;STUWRtN?jVWXzNgG'>PjGV@A]TQj>ORjnJ/E50TjSj_t:D)1•Õĕŕ_eƕǕȕɕUjʕ˕͕̕ΕϕЕѕҕӕԕՕ֕וٕؕڕەܕݕޕߕoJVjWjXFXjYj;TzG7R|8Bj\2|BxTfLnW@ABCBTPSCksED~7EFTkGHI7K^kJJ@KLM{MN/3OZFPQRSTU|kV>DW4N)D>1}TXuJYlVZ[SFd6\]^_z;`a`Pbc1IdST(HefK8g>hHaHOhThVhq9XhuW{D\hi2Qhm<–ÖB?MhyVĖxAq2ŖƖǖȖɖʖ˖̖_h͖AJYhΖϖЖі$UҖj1;UNhPh06ShӖ]h8@ԖwJՖ(K֖ז\Fu@ٖؖږۖܖihݖޖߖ#PrhjV`hahyQK:y8q8TTohnhlhp9RLfh&Nr?80qhph@Wdh)M#I8;[=jh@ABCbhcheh55ghEGkhmh0=.WDxhEFGHIJKLuhM0MvhNOPQRSTUV:AWhhX7Cp0YZ[\]^_`thabcwhdef#9ghijklmnopRIqrsNC`Nf@tuvwsKx]L5PyzaJ{sh|}~lir?istuAivwqAxy6Hz{|=i}~BiCi3i6i1;@iw69XH1O1Q1~EP1+C1U$kA:šÚĚ:LŚƚǚ%kȚ'kɚʚ˚(k͚̚Κ&kϚКњҚӚԚ՚)k+k*k֚ךؚٚښ,kۚOJ5XqCܚ%CxF-kJDݚ.k/k0kU7ޚߚz71kbG3k$:uQ102k4k*5HBhG5k.K_c@S[Y!M-VsG`Yc;::bc+O`cGI9:@A4QacjH/9-=X3[NBC@LDEFhcictMGHIJK-LL3jk{cucS:lmnoP7MSpNVSUA94UXQqrst9PvGuvw*H42xZCyz{nc|}|coc(7wctc~:7"Evc]E(2|F`D"Wa@yczc}c)Lsc>SC14mqcrcxc:PCFsT~c`='d&dsQ#d)dwH4O(d.deB46r="di:*d,d}6^V2d-d!dn;]M"GIEwA$d3G,===%dGWb2+dC4XYZl;[MQ\mL5m]^_`abcdeGefgh(TiKdUWBdj%=EdklfSmIdxIno>dpqeSrs~GI6t|T32WduvwBNxMdyžÞFWĞVTS2>lŞƞǞȞAjɞʞ˞/B64̞͞ΞWQϞОў43Ҟ2H;?@lӞԞKV՞֞?lAlמ؞ٞڞ۞ܞݞޞߞElf>?LZE<>Fl~1Dl(Uc5Bl6Ac3Cl8KC@~LRAHlf:S@rV@ABLQCDEF>?G37UIGlb;HLL}=HHI)OJKLMNOPiMQkERSTi7UVWXYZ[\]^_IQ8:`abcdIlefJlg@;Klhbl:1Y7ijklmnopqrs9=tuvwxyz{LlfQMl|}~;HQlSlM;e0ݟޟߟWlXldl88/RV0y53X,K]c,Ff0FE9k:k;k@Q#Erj2D5DN@sjADoNpjtj|I#GXL~Nujvj,Og@wj àĠŠƠ?6xjǠyjȠzjɠʠ{jˠ̠͠ΠϠРѠҠӠԠՠ֠qjנؠ٠ڠ۠ܠݠޠߠ.Hka87lama4WnaoaLSqaq?paR571sara|:ta79Q>@A|DB]:F=CDEFGHuawaIJ@6AO(JvaxU|Sxa|ayaKLzaj@M~a!bG@NOPQ{aR}aSTUVWX%bYZ[TA\]^_#b`(b~2"babcMCB2'b&bde$b)bfg+bhijIPmV(C,bkWOlm.bnoo:pq`i-b*brstu+;3Tvwxyz{|}~0b/bai1b2b3b!L4b@ABCDEFGHIJK5bLMNOP~PQRJBSqSTuMUV`gWXagYZ[\A>]^_`jBabcdgdecgfghijkfMl5Cmnbg7;VOoaAigpqrhgsttg#2uvwxjgyfgz{|}~lgkg:IdUeg)7ggngsgiVmgrgqg`0ug@ABCDEFGHIJrGKE@m@LMpApgNOPQvgvKRSTUVWXYZ"h!h[\]^_`AWabzgygc{gdwge~gf}gg|ghiUAYG}ECEjklmnmGopqr#hstuvwxyz{|}~&h%h'hw:xg$hpH*I)he9~Q(h@AB*hC-h.hD'AEFG/hHIJ0hKL,hM4hNOPQRSTUVWX+hY1hZ[\]^_`a5h2h3hbcdefghijklmnopq7hrstuvwxyz{|}~6hO9,p-p0Fj0?H_MMN1j@2jA?FI4BCDEFGH3jIJKLgUMNOPQRSTy]U4jV5jW6jXYZ[J80_uI\pL]^zI_`abc{IdeCS&Kf&8.pB1g8eoLISWJK^pL1E]pqQM`pL0j=NOPQR_R_pS/4h7fpep#FapbpC4TUcpnUVW[LR>2,H\]jp^_`awQbLV[:ipc;6de4Mfg&Fhij!Akpnpkmppplpl>;opmnop5LrpqrU3stuvT1wxspyztpvpa4{qp|wp}~zpxpup}pyp|p~p!qAN$q#qvA{p]Jq4q11L&q'q,qNU)q3H"q+q(q%q*q@ABCDEF)0-qGHIJKL/qM1qNOPQR0qS.qTUVW"QXYZ[\]^2q_`a3qbcdefghio9jkG5lW0Y0mnomTpD5qT=J;'prs^8tu(pvw(0x)pyznM{|*p}~+p$FeVdqeqsC[S@QVhEA/SBfRCDAn;05UNQ`xmwL[QEWvU|m{mymzm}m&>@ABC/K!n=6D"n@DE~mFG^=G2HIJKLMNOPQRSC6TUV%n:X#n&nWXYiCr3Z[\]^_'n$n9O`a(nwBbcdefghijklm)n*nn+^op3FqFGruVI5s2Ktuv+nwx+My,nz{|}~0U-nDvG[#4,Cfq8JSR*V@roAX>BC=soL6+0CDEF/JGH6mI7mJKLMyN/7s?8mkB0INOPQRS9mTUvF3?VWXmefiEghiFFjkiIRTAmBmCmEmly@m!4nopqh9rPmstuvQmwJmxOmyxNz{6KLmMm|}~uORmrA2SKm7HoJjlq@igIjklnFklmnllomFmlpqrstuvwxplyzfWsl{|qlnlol#WqInKtl}rl~iOvl1F@5Z<|;Xe8YZ[\]^BD_`abcdefgh#pijklmkKnopqrstuvwxyz{|}~&p(Q?>nG6q7qU?)48q;MTG-U9q:qOG$ROV;qQ=04=>\4QN_?=q@Az?q@qFGHIJAqKLMNOPQRSTU~AVWXYZ[\]^_`"AabcdefghijzJkl>Umnop:>9>BUqr"?s/M5qtuvwxy_=zK6{|}~qVCsDsM8FsGsJ0EsIsqKKs&PJ1HsOsQ5WsRsTsSs{7?1NsJsZ5Ps@AQsBUsCDEFMsGc2&t%t@ABCDEFGHI.b4TtUt+>@AVtBCD[tEWtZtF}:GXtYtHIJKLMNb8GL\tOZ2PQSCRScT7?TUVWXYZ]t[\]^_`4Eabcdefghitij5OklmnopqrstuvwxINyz{|}~XKwKt=OW[@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvuPwxyz{|}~jt@ABCDEFGHIJKLktMNOPQRSltTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~cw17mt@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abckWdefghijklmnopqrstuvwxyz{nt|}~yf@>zfl:{fKO|f*gs0^Ha=+gFH,gf;x8$Q-ggBx>J=3M.g/gn>ePgKPLL<0g(g?g)<@gAg6gP6BgCgDg:;^5FB`1Eg5TFg?8HgGgl7Igx2JgKgLgMgNgOgPg'SuKQgRgSgTgIIUgVgWgXgYgI=Zg>sW81H?s@sAs^9xMhX1:@^B7nA#7BCDE9nF8nU0GHIJK;nVUoWLMNCVOP=npJQnVWXY@nZ[?n\]^_`abcrQd‚ƒ„…†‡ˆ‰Š‹ŒŽyqO4‘’“”zq–—˜™š›œžŸ @2m1mAB`K^RCAKXUDbHE_@!7FkUGk90O?VEk}SWHkXYIkZ[N7\BkDkvIWVMU2POk8NPk](5^_`ab31Rk%LcdefghiVESkjQk_ENk$JUk{0klz:mn7XcqoJkKkLkMkVk@fYkph?HRWk\kl8Xkq:=rXPs70t]k\Duvwx,Vyz{`4|}vB9<~ÀZk[k`TjFTD_k'EuY12dkE=ÅÆbkÈÉÊËÌÍÎÏÐÑÒÓckÕ,8QMekØÙak3AÜÝÞß"F@ABCDEsLFfkG0@8RgkHIJ/8-8Khk;GsMLMNjkkkOPQRSmkTUVWHPXrkYnkZ[\qkyH]|Qlk^_ik`abc98YOeDokpkZLHMr0dvkefghiukj22klmn`8owkpqrstul1vwEL$D%Oxyz{|yk}~"lrEzk㥹ĆćĈĉEIċČčĎď_b~kđĒēNM!l[17Sĕ\RėĘ}k{kěĜĝĞğĠ@ABCDEFGHIJKLMN<3OPQ0jRSTWT+tt3UVWXYAVBVZ[\]^_iUJ>`'ta(R(t)tb*tK>_Scdefg`IaIhiBsjfJkrLlmnopq6b4KrhN[Vs-t.t/ttuvw2tx=:3tc00ty1t"=U2z6t7tf602OO4t,4{5t|}8t~ŀŁłŃ9tŅ'M:t;tʼnŊtřŚśŜŝŞş?t@ABC^t\R7E0G\>PA\(;_<7L\`aF\?\[Gbcd?Q@\efJ\ghP\ij-NB\kC\H\I\T2Q\UKl7T[\_\&Lf\mgC\\noA?Y\pz069e\S\qD\V\tH`?rstu;Ivwx=1y"Sz{Z\|}U\~;F^\ƂƃƄƅBW/C67QG)Cb\X\k\T\Ƈ]\%>W\`\Ƌc\d\x\Ǝa\"]g\ƐƑƒƓƔƕƖƗƘkt\F]2GHIJKs\vz>ǍJ:ǏǐǑJ]E]?]ǕǖK2C]K]$2U]Ǚǚ>]ǜǝPFP]ǟǠ@AT]bAF7BCDEFN]O]GHID]JKL=]MM]QLNI]OPQRB]HCGz]|]~]"^*0N1klmno,^pqrs&^6=oHtuvwxyz{|}~!^ʁ%^ʃʄʅ)^ʇʈʉʊ(^ʌʍ'^ʏʐʑʒʓʔʕʖ-^LTʙʚʛ3^*^.^ʝY@ʟʠ@A!16^B1^CDEFGHI2^JKLMNOPQRST&Q5^UVWXYZ[/^\]^0^_=P`ab4^mJ9^cdefgh8^i7^jklmnop;^qrstuvwe=xyz{|X2jC}~:^:E˂˃˄˅ˆ<^ˈˉˊˋˌˍYLˏːˑ*7˓˔˕˖˗˘˙˚˛˜˝˞˟ˠ@AeTBCD=^EFGHI?^JKLMNOPQRST"DUVWXA^YZ[\]^_`abcdefgh>^i@^jklmnopqrstuvw:UxyzB^{|}~̀́̂̃̄̅̆̇̈̉̊̋.r";2B0EGB̍/ȑ̐̑̒iP̔̕]S̗̘=k̛̜̝̞̟̠̚f30r@1rAB-JCDEFGHIg:3r5r4rdK:O2r4JORlBJKLMNOPCN8rv07rQRSTU>rVO2WXYZ[\AQ:r]^_`aijjjkj`ljmjnjojG=abc{udef}ug~uh|uijklb=m!v%4nopq"vrst#vuvw2lxyz{|}~ӀӁӂӃӄTQӆӇӈӉӊjYӌӍӎӏӐӑӒӓӔӕӖӗӘәӚӛӜӝӞӟӠ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_$v`abcdefgh:nijklmnopqrstuvwxyz{|}~ԀԁԂԃԄԅԆԇԈԉԊԋԌԍԎԏԐԑԒԓԔԕԖԗԘԙ2UԛԜԝԞԟԠ@ABCDEFG~S\LHIJKLMNODJPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ՀՁՂՃՄՅՆՇՈՉՊՋՌՍՎՏՐՑՒՓՔՕՖ՗՘ՙ՚՛՜՝՞՟ՠ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab@ecdefghijklmnopqrstuvwxyz{|}~րց%vփքօֆևֈ։֊֋֌֍֎֏֐֑֖֛֚֒֓֔֕֗֘֙֜֝֞֟֠@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_/>`abcd)Fefghijklmnopqrstuvwxyz{|}~׀ׁׂ׃ׅׄ׆ׇ׈׉׊׋׌׍׎׏אבגדהוזחט%ZF<)6<8OH%<&Z'ZVLCH(Z}F5QiR6QG<2=d;)Z*ZHQ+ZmPo6[BOKm7hIC7w>$V,Z-Z@FgW6J)U_KoU.Z_VJ40Z/ZkR1Z2Z3ZTJ4Z+J5Z6ZO3oV7Z0;.58Z9Zn9/QhR:ZC8jOo2;ZZUSe;?Z5KPK@ZkGnVAZ5EA6BZL7N?CZDZ-KEZw5FZBA;WGZ8LjR1DHZ}5Q;IZ3PJZKZ=NLZMZNZw2QZOZhQPZUCRZSZTZUZ;P%Ry0VZ+GWZw=!CXZYZ}C7LZZ[Z>@WF\Z]Z4G^Z_ZH9@ABCDEFGHm;IJKL96xtMytNOcMPQRSTUVW9uXYZ[`k\]^_`asO?;bcdefgh@:%TijklmnoYapqrstu*1r2tuvwxyzuu{|wu}~؀Q:vu2C؃؄؅؆؇؈yu؊؋xu؍؎؏ؘؙؚؐؑؒؓؔؕؖؗ؛؜؝؞؟ؠ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ـفقكلمنهوىيًٌٍَُِّْٕٖٜٟٓٔٗ٘ٙٚٛٝٞ٠@ABCDEFGHIJKLMN41jU:8O19F2pTMO\0KUu;JV770L6Fa1:9|Va9!7zTDuLuڙښڛO0x5IuJu\Eڟڠ@EuFuABGuKuC`>Huz8DEFPuSuGHIg?Jr9Xulm_L[unopqrH2YWsYutZu\uubuvwx`uyz{_u]u|}au~ۀ^udueucLۃ?e85cuhu#Lۅۆۇۈfuguۊۋیۍێ>uېۑےۓ۔ەۖۗۘۙۚD1ۜ?u۞E5d2luiuW6@muAjuBCDEFkuGHZ4IjTJKLnuMy3NOPQRSTouquUVWpuXYZ[\]^ru_su`abcdefghijkmI*9lm{Gnoc6pqrstuvILwxyz{|}~܀܁܂܃܄܅܆܇܈܉܊&j܌܍܎܏ܐܑܒܓܔܕܖܗܘܙܚܛܜܝܞܟܠ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~݂݄݆݈݀݁݃݅݇݉݊݋݌ݍݎݏݐݑݒݓݔݕݖݗݘݙݚݛݜݝݞݟݠ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`53~Tl9yPami*WniVBmHd:oipiqiaVrisiuitiviwiaGxiXTyiN=bzi{iO=|i(8>A}i21T;u9~ic!j"j#jx7-MQe:6@(Md9AEJQ3YKlTRej7BCDNeEFGHIJUe~4VeKLMNOSeTeP]RQR_BF1SbSTU]6lKVWeWXvSYZ[\]i1^t6ZeXeYe@5_`aER\ebc^edefghi]e2Gj#Rkl[emnopbTZUqrstu`eqWvwxyz{|ae}\1{Q~bede߁߂߃ce߅ee߇߈߉ߊXRK5_guZxZvZwZߒߓzZOPGDߕn0ߗߘ0PyZJS*:"[qG|Z{Z[I}Z![^W~ZZAߞ%[ߠtS@A'[$[B([CD<=EFGI@#[&[#VH)[IJK-[LMN.[,[B:OPQ$?+[RST*[GT?2UV/[Wy9X0[YZ[\;3]^_&5`abc<61[defu6g2[hijklmnopqrstuvwxyz{I1|}~4[3[5[7[6[8[9[@:[ABOSztuGCWdE|t}t{tCF>DEFGoPHIS7JKMT*LLM"u!u(:~tVKNOP$uR@Qj3R*M%u#u4=(uS)uM=8Ca?aK*uTUV&u'upDWXYZ[,u\<4]mW^W4+u.u_`-u/uQPabcdefgQC)Hhijklm0u1unopqrs2utu3u4u5uvwxy7u6uz{|}8u~I2TSMJo@XV0R?Ap=*8@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmxYN39VnUnXnWn%EYnZn.G[n/G\n'2]n^n_n`nanjWbncnXo?o}N@o`B846Wu=@GOCoAoBoDo'6|LCEoFoAGoOoHoIoJoBGqoM6KoBLoMoF6>CNoCPoQoRorUDSowDEToxDUoVod8w0WoXoYoFZo[o\o]oG^o5>ao_o`oHbocoMAdoeofogohoiojokoloX@Imo-AnooopoJKbOLMNOPQRS$3TUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[ECEcAIFc\U1JN34rHGcPOHcdlm2>ne5opG7q??RCfCrsLXtuvo8wxyz{|}~y=%QP00w1w,P002w3w4wJG@AO>BC7wDEFGHIJ6wK^1L5wMN8wO9wPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~$NMH+:8h9h:hB>tROTXI@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDE3R%6jG|qnO3KkPoggMK9Y6}qd0LK~q$T-BlADF1>!rUb?b@bAb97{R$=NJ%1GKBb|6DHCbH=}1Dbv6EbYDFbZO]9Gb!@Hbv2@IbAsAJbKbxBLbMbNbWJ8XeYcOBCDEFGHIJKL%pMN0\OPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQmB&TTM1Q[3}GR52?B`f;JafbfT>cf$WUMef]=hffB':ifTjfR3iQUV%?kfoFlfmfWXnf-FofY'Ipfqfrf9esftfbBufvfhVwfZxfG9[\]^_`a;w:wbcde>wuvvvwvxvzHyvzv{v|v}v~v!w"w#w$w%w&w'w(wn1)w*w+w,w-w[A.w/w@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[qD/p&<0pyC\8E;Q]1p2p3p4p5pp?pi>@pl6ApBpCpDp5HEpFpdGptEeHpfghIpiJp=wjKpLpMpkNplmnoOpW:pPpQpRpSpTpUpVpXpqr%SWpsYptuvwxyz{|}:u9B~dwewfwgwhw4BjwkwsB@ABCDEFGHptIJKotLMiBNawbwOPQRSF;TUVWdYXYZrJh@$p[Z:\]-G^_`,Dablwmwnwcpwowdqweftwgswhrwuwijklvwmnopqrstuimvjmkmwv&6>XD9;X1\sJwwxwyw@ABCD{wEzwFG1G|w}wHIJKL~wMNOPQRSTUVWkF4lXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~]33v4vdA5v6v7v8v9v:v#H;vzA(9hmj9_Y@ABCDEFGHIJKLMNOUhijklmnopqrstuvwxyz{|}~!#"###g!%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#+!i!j!V~#W$#@Q.Q;(V`@ B) hhhh h hhhhhhhhhh h"h$h&h(h*h,h.h0h2h4h6h8h:h<h>h@hBhDhFhHhJhLhNhPhRhThVhXhZh\h^h`hbhdhfhhhjhlhnhphrhthvhxhzh|h~hhhhhhhhhhhhhhhhhhhh,@ )|0k  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~fghijk mnopq  !"#$%&'()*+,-./0123456789:;<=>?@ABCDErstuvwxyz{|FGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde>0////////////   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg..s4G4..566..n99&99s:9+,N;n<<.12.V@_A.7C...;CC.CDaFLFC#G)G|GG.GIzI}IIIIIIIIITULLLLwLLMMMMMMMMdhijklmnopqrstuvwxyz{|}~@@@¶@@@@<@XھRBL<PPTWX]^knqstuyVUZ\[`_becdhijoprxwz{}|ªêĪŪƪǪȪɪʪ˪̪ͪΪϪЪѪҪӪԪժ֪תت٪ڪ۪ܪݪުߪ«ëīūƫǫȫɫʫ˫̫ͫΫϫЫѫҫӫԫի֫׫ث٫ګ۫ܫݫޫ߫¬ìĬŬƬǬȬɬʬˬ̬ͬάϬЬѬҬӬԬլ֬׬ج٬ڬ۬ܬݬެ߬­íĭŭƭǭȭɭʭ˭̭ͭέϭЭѭҭӭԭխ֭׭ح٭ڭۭܭݭޭ߭®îĮŮƮǮȮɮʮˮ̮ͮήϮЮѮҮӮԮծ֮׮خٮڮۮܮݮޮ߮¯ïįůƯǯȯɯʯ˯̯ͯίϯЯѯүӯԯկ֯ׯدٯگۯܯݯޯ߯@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~٦ڦۦܦݦަߦ§çħŧƧǧȧɧʧ˧̧ͧΧϧЧ¨èĨX[]^_QRSYafglmv~>>Gs$&@ssNNnVV__7 La:#GwLd$&-2QY_`dghim~*,CEGILNjl23456789PUR`b !.%PP3R 4       $ ' / 1 1 4 4 6 : <  !~!!!! !!! !"!_!l!o!, z!!0 !!F !"H "" "" "" "" "" !""" $"$" &"&" ,"-" /"3" 8"<" >"G" I"K" M"Q" S"_" b"c" h"m" p"" """!""%!""0!"#I!#_$!j$s$"$$"L%O%V#t%%Z#%%g#%%j#%%t#%%#%%#%%#%%#%%#%&#&&# &?&#A&A&$C&.$..A,..C,..F,..H,..R,..a,..c,..f,..j,..l,..o,./},//-00-00-0 0-*0=0-?0@0-00-00-00-01-*12-*202.222.23F/330033<033>033`033i033k03F4m0H4r40t45 15 6326626929m95o99599_69r:m6t:M;7O;m<7o<<8Lp 35n>uIlyl*$NNNNNN7OL4OH>PP}444QYQQRNyRR'S5SQ5SS5S#Tm5r56TTTTTTU#U(U5?U55U5}%UB  +QU,9AFMS@zw8,4:G]iMd|  d~ d,VDF MGN,g:?5RԗxD-nC`dTL-+w9ofgydRPC h!L1 H?sX-E`L yU@CJf* yc9u'V|dC> *,99:x5I^ RV1, 4=l;Ntu."[͌z4 h(9)5Q?0G OL H =?&2d39v+~  Q,U,:.2PkҌʌTĂUÞ&^w-@qm\re47_Sw5M 6 V'xxHUyPN-TZWv͂{~Q7RI:wA|XhR6=W{h[H,K'It[=1U5V(NYxQ[NN>5#\Q__8Lb5ezk5l:llp+r,NrHR;y|Sjb4KcfQi]SdxxuΘޘc|Ğok7N7b;Pmsz=NAwp\ KQY50]"a2qgs2<KxtQ @cj#B*zGUMp$S~ v㉤wNOP/NO4T}XX^^_'e3iCjcJ[t\Vz{|l~Ϗ_!?q@BZhkgvB=Wօ{I qLtm{]ko[[~>]H]V]=8]] 888B^^%__99?9M9`=a\9aaa9,bbbc9V:ccdZdK:d]!V:e:eSf:f";gB;ghX;Jhhr;q;{; iCi\rdiii;i;ejtjqjj;j;jjjjkkkull<mm&mmWn>qWN6it[IzXٔez}zYzzzzqdAzzzAT\ {U{){S\{o{[l{!{ ]=e\{5|\D||H|}fxE|||t|||g~EDn]}nt}}5q}W@)`}=}}m!aZan~~+Cl'~@AG6ybᙗQcah\Ef7E:d/l;mkk5=U EmӃ~4nWjZ4Bn.X[q=DjJI|; qzÎԒ-eP *Iމ==^b2%#9n7Il{lAnaxSIltdJ 31B6J=EEJupA[ՑWJ[_%P00җlTt3zyJ43Kf;uqQ=0\AWʘȘǘJ'mUx9)JrKW ;X%W6՛L-4P4i8}0P@>EZcKB hԝ#ߡ~4hĝ[! ;394MdC`;9=2O7+K$m9VVEbizrKuIIwqIHCQJsڋy~6iD쒁˓lDr>rwCzpsDC~qp5>/T"796tK_#7[W%J6UIeq1>\U>RpD6&og37<=lX"hW@?7@@A!lTVfV ƓN+Q86DNeKOOQVhZ9 54)Ouڊ NP QOOJ>BO.PlPPOOXPPvn59>>rm>QQDzYRRsRzFqC Ii>ttVtsKJ@S5r@UET W]fWWW>6XZFo,ZY~ZZZFYaB6mCt!Z^Z׋tqrI7\\^^H^|:^O[766*Gr4 __'kZ;D[u`~``(+&_>%%soa>F&aau`,-FMqdeFj+):"+P4x.7c[d1ccIg-b,;dkeri;02I2 U2?f21:AU"U[U%Tx1*42d421Bf$mkfK0fpxcf22frX8:87;73t;g*Fhh;jc87D3jRjjkehLj;zjWk?<ˊ܉gm oI?=n<@=Z nGX$mBx;qCvBpPrrrG%GyQJzt>_6JJI_?>J#5?`>tIH2WBdP!RQxw22ww{wF7^:H8tt>JJ@JaUxxxxsYyAwVAy-j>:zynA2A5yL I=n5kUp56 zYZ&ZZ Z[x*Z[zA]|m|B[^^|I||||j}~}Nab\aH{}^jBuk gN5WdcbI'{,ZC] {^Ecj?49Iee'qlD7Dƀ BgØBjbeQjSmrZA@+[Z=-"tZnEOeMVTwwً>FF7=HM_+Be)qpEm}YwYnC6* L0JBXlo!#Hyon雵6/IqUIKb@';+4Et>HBJC>%2fe>IxJ?tkt>AGhJWh&/c[itc>Jjss>>JJfJ$IHtIpvIs_1ΊU5IkqCI V Uy}PJR.E 7IYtZ6[=6_yZbt< J9Pi=L=uqBnDWmO~gpln oo=Qu64F>qHYn>IAkXW6RpbCqJ/#hgi4{673Lj6l>DD&mQmloo q=:타lSpYZaZqZA-7Y<6qfBnZ+ZB+j>6w[DBqYBተO(m\DM~C jVBp3qC=l%OJe~Y/]=\_]J}&T:3~W?p[p]s|Y Orsz8s9sVAsHs>{lqHs> w>lVttt>>>>t?S?Bumuruu|?uu?Mv?tv?zv\Oq#ViX@Cw9@agE@5wj@o@^\wwXxpx@9xGxQxfxH5U3yh2yA AyyzgAzAzyAzzA!Nb{l{{{||`BzB{||B|B|p }}}}rC %9{.1T=WpC *s`uD9;VYZD:X|%D-DWTDvʂ؂DWiipd`E8R;EopwErEFF$Ggy)8QԌG_XÍGN:UTWqU7HΎ򎷏ʏ̏3ęHI(XkCEIQIS->jITy-I3Ig$J@5J—TVJ`KDXQ7B]bpKřK<ziݛmL o7I:PV{ƞܔzDiÔY@X7vWWsq jT; T ; S e | ` zV o Ui/-s \ ^\Ovg{G6/;dSu6wxNp-j-E*pbqUhE i6|"##*'q(O)g))**+?+GL,,,[----B.t//30f033_Hffyzg55I67FXgi:Wv_>>u HJAB C;@4CCEJQY;<DDWtF9/Gəb7!^NHHJ rJx eYNOyڎ,PR?WqqRTJ?JUFTnTRks4?U2v^UGbUfUW?I]XfP43Y|GHZ[\WQqa|VaObdJd[]kdId?eKef'eWa'ZV!EfjN4IVml6wgnhd^hhB{ &i9iEzi&-j_6id!y4j[k,]5kFl;uemX7%KpqTzf=Uv<5VVYN^XbVmm[>Lc{0e-VJ\TS=}L"VVI^uY@=pNI 6^;vENvwE2TH%V2UbyCVT5VUf-64uUUTrUA ^HQvb,Z}UubmT͌qvccciUC+r.Q4 QMTUUfv-huLjDsG[ h{V&/}As}nrp<frNGO@]e-HG| uH`q~PNNw5 [lgS69}S6FXnK-KTWZy R:e$ts M<0[LOޟ\=rg 7.c%}>,>*:Rt>z6E@vZzxGX@|Vt]Tv4L7a0C]VWcI4Rp5|V|9WlS\dД5cdq( "mJq Q]L{\{hb5c{*~|B||{ >IZsU[OO`R>RgWVPY^ȗ\iT@,S0a,iS ;LAiPFumڙsRY\Qc#mjVzubOsp|!\<Iv*N BJ\izWR]N1l9OTTR55Rk|.zq{kx VJwSԍOb}(uzwJ>zxlgvZ&lևuSx@ rqs-st댻J/_D;n~%`gvךDn,s!5rLQ|JYaYaL}a_Woab9b\:aS3dch5W]‹ڏ9PFy2S8;e@w|_|-zfcM}ut gbt[t$wgSun·ȁIC+wtڄ56im@t=vq`a?@ABCDEFGHIJKLMNO!!!ZNRQv12!!!00............................P[TuSKjxψXR`|ZT%f%W%`%l%c%Z%i%]%R%d%U%^%j%a%X%g%[%S%e%V%_%k%b%Y%h%\%Q%P%m%n%p%o%Gے?LBsQI6BID<i-7{_ R&R8qDmStS~SwSSSSsrWY?sSSIlINWS: S?-Sw Typ+UWf[mmTSkt ]UTTG =M &GUL/TtUU:@RE5Df7Vf2ffMVOVxVSWVVf#6OFWAnlpBW6~lWXTcC&XK\XXa5XX<X[CWPxBӓ5Yh6Yn>$ZSUYN l*mYmqm(YEnZcZ6I7ZetZoT%=27^Rv[e|[z@]H[`a4Y[[M\D\s\(kI\H\\\]7]]F]\]-8II s!68;.^jz^D SNSq ^^^^8^>h _:H::_h#q$c_nnr_@6_]_=PRjph&֑)1`fwc9=96W'qy@>``IISztPZda$BanaQVa[?_(a]a29)(#`\aecbpb .lcI:8dco6.@Wdd{f::dW:Meo(J#Jeme_e~0e@I7Ke@)ee_4f11Df11KfugfQsf=121Sw(gC!J+;i7ggbgAgD"hPn<h3m]ho4i jߊsih5ii2=:<6;gaiJB6ii;cPiY6*!Ej7j;gj <k# `5ktk'n:X@7!TZ;k>k7l$HQkZl&yl=D=A II<6<2 1$7h%mmmm\m|noI@rn3toQ.!/>St?yOnZK0o 7o0>n=@UEDo\oN=top;=oDAo@UA9@???AQVAWA@AaKp~pppppppA=qqwB+qEqZJq\eCOqbB,qZD'J"Jq苽prBrYC$rAV.r@rtIhUrWrU>D0 h=or+s#H+H(s.sss: .jsItA$J#f6IIIsti&J9t>(`tGtsvtlt07tt,jtSIJ_AyJF[tuuَK[MuJugunuO?Mu]tuuv,vQvOvovvvcv7iivvvvobP}Qw&w@wd RXw2wdhwvJhxxx.yUx4yx v+`&yiyWXy9{y y@@$@@@X`@@@@@ @ @ @ @@@@|@@x@@t@@p@@(@  @v"@#@r%@&@Y,@V!IL7߽d^ @D #  ` @V2A PHU0:j.A9P -k"n z2sD!1 `AR* `;ȧ M t^K.Um37̟*~SM72S!GJ @1e $@0-{PE @`  (IZ3 VB-w`!F8`H$ބ$P4(|X"BS4 @=H-:YW][fa_jhomsqwu{yVgZl\np^txXir`vz|}~k@ABCDEFGHIJKLMNOPQRSTUVWXYZ\]^_`abcdefghijklmnopqrstu[ceƶƷƸƹƺƻƼƽƾwxvȡƢƣƤƥƦƧƨƩƪƬƭƮƯưƱƲƳƴ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ǡǢǣǤǥǦǧǨǩǪǫǬǭǮǯǰDZDzdzǴǵǶǷǸǹǺǻǼǽǾǿwߖՉ͓ߛhډYۉ]܉ڊ܋ۗSnȋKpݔӊے۔zF~hhٟןj\^Рf욫HEoޞޔe֕ڗE}XdVM[ǕYWESxQlk›{`KdighBfݓ̋mnopd`t×ЊtȜxZH}}ŠJъGڞQŞxkIo~y{DLSÍōʍ̍]aRV֍ޠҗۍIƗY֖ŗחIrkP̝eDncڠSy]cipjNJ׉MݞdoØŘfnݗҒa˘]̘i͘ΘbcИјur֘٘ۘݘm]MWߕÌƜ~@ɔӔFєs“HKUNY`tUDˌVY[ČEC͕ɗPƕgvQsOzdnpS\zdb͗dLɎT|zȖÙ֐vpKǎǙאߞΙϙɒܗyۏzޙRgޗѕJVIەʼndUԖ|MHI}PG؎ɐUXՐAZ\—`EXcIknOFגuԓypx͑Joj_͞yΝҌsќCɞx{֝OΉğԋrF{ƋWЉωщ~oNjk҉ϟӉgsNOxԉҟnoPWf։ޖpnl؉Yc@sىVqrėgihQoqRZ݉RSU[}hG~߉TzO}͟Ēoӛ՟UŒVܞqǒLh}WXazȐڒYZYʝmDuVyǚGӟʚZ]QԟyXWABNܔڕjFFGHޒSڛ~CRН럩ϝȝOTU֊_Қj‘b`^Ŋl~TŜ[\[WǘŽԛdv`šsr̟g}oAJBgi}leNnߙT{wo}~xrq\t]މ^B{_`͛ӝLRÕtߗwTŕU~BŌQ\LkxOqe[P@MrsAwxrKuڐgߐTaHygٌbc}ku]LɋɟDdMhXsHux`ab@ԌQeXfTΟuiONez{jSY@ACaFbkLʋzQTlaWpQ|ˋnafzkkܠhmqdКa[@M~rvnttqy|PyxݠuvtwÐyyv͋ZzEuFQ{|֞[|LŏÝJKMƊ[MxEVCǝ΋g~ۓcՓqؓӓvbѓYRSMrP~R܎PʌYM^}GPh}iOV㜩D@Jj~|JEHGjQٚNDRFѠʟϒčALWޜBlX^{͔Z[^ƍȍǍɍpˍ\e͍΍_𓶟ύcЍbe۟fϋэҍqoӍ矽ПЋrыۊΕvbԍxvƘՍїBs׍؍OٍkΗڍZ܍Dݍ֠A՗JM˗ލߍ~ӕhdGE֗DPҕܜϕgЗҋِGcppol^TFcpQCZ~՛Úȗ۠БݏʒWQIv̜SIʛܒȂDӋGHUKLxQVaWfՋiILeXuSeYJǞ֒ԑ[S^ZŔ\tsFdhNeZԒiEȘɘʘmlksn_Ւqzwyu]|DӒq^jϘ٠MΠÉm{ҘٗĠvxӘԘq՘\DטؘݝژߝY\wܘޘŸkĘ͠ǏOԏĕnLOPFԔۖĔYɓVŐ؋hƔiڜrɉABב̔іՔДDcϔjILMsGPOIQRLVMʑWG؏X\SVO^jdٜ]PQbRhaY]fndSTpark@{W_sbXurZyxz\|}ًמBvB}U`bac܌vpnopqrstuѝ׋ڋŽĎdeNˎߋΎώhikюlԎՎm֎ݎ]qer\ߎftvwyڝ\_cg|}~[aȠ˜w‰klJvHЌRwAIM䝵ThJBQFU͜xSocVvƟXHelb̖gu~fnE`ўbLǑ_mq˔ÖϠmrBw@D™\ęř{Όƙ͖ǖaph~PӐVșəyIʙ˙՝z_͙ɠۚƠנǠCa^|ǟj|ERЙÏďƏ`љҙœә]ɏ ʏԙX͏ԠΏyЏ֙יʠX֏ؙӏٙ|EޏߏK̠ěLz{ڙˠHۙNܙdHܝݙ֟Ҡ@ĊȕZJ\ɕHIJћLM˕̕x|}~]ZPOTƨCE}`[۞ybUehlؕjnqJܟpcܕq^I[PՏsucԔwMxܖr@JؖKA@[AݑBCYDQvUEEKٖtEڑ_LzޑFylXfGIHJdߑyזCzۑjݕHKEM␴NO@CݖQNCRStTPVW̙YĐǐRېfҐԐ[ċfސFQXP]z\|R^vƑtWߟ^ɌjBbiDCA`IJKdfgijRMf{klglmjlđwoURSU]qmsTqVmWƉljjW_][\^\Wer`^adAihtum`ޟßgvՕʞwxpoqcgzVښ~ޝP􋤟^}H۝sz{–ws}TpmAJAÑiȑɑˑȉݟ@ABCDFIJMOPQRTUbdCmt׌،ڌy~ȡ3245P6Q|77(9`}d9Pp9==9p:33r:f<11h<5=? ACE~GtIBK MNPRTV|X+ Z[]_fa\c egdh8j `kJm@o4q0s uwxz|~ |^*  #p(,j2 ҙ̛bX@,ʪ¬l`N pN@ $%`J4 jpvn> Q|`"Q-Dn VR|H> (pKzquvHƎŋ|NKzHGESrGߔџ}ː{ؔ_TږytuIߒ|c`mbkjTsؗBvelnu@v{m̉B\{ÒЛPƒFcÞfSĚŚbƚɚ˚r^̒\̚C͚Κ̛Ϛњ|Ӛ_şYkԚ՚DJd؝֚֔MWCDTךؚܚʊcݚeo~CВfpu䊤]H@vޚwdgKSJ׊_ߚXaם}Byz~D|qNcIΊnΒZ{|Arrs_|EnVKǗ˜@NhlŒjtAǜŎGҔaƓZGfUCڔdNDiԕK|ŝ񑱎˓UtlcƝ`Xv쑴JIx֑UVQАDUckQWxPL@A‹|BCyDy^ˉSדtEGPH[LKiՊsYÛNЕ_NOPƞPsX^Yupqwm]Ak}׎MQÊhmglRpSUVˊW͉Y[]O{BPP`EFb{`؊ciG̊|efrzhwgYiQ_jklNmgʓFϓΓw̓ZTQٓړѐnpo@{Y@_vGtҖFOIu\yKӖX_CٝM[z՞ɜXȎߓϖޓϊiRn||gNt˞ԝ{ҞSٔXy{ڎٞԗHK@؞^_ΔJpg؛Hڏ~CӗHؠJKZْݒY[F؜m|a`ROnmdSx]ZГbORґk˒kQq葺LjaDibUw}fYXǛTt֋tț~}oaוRXhIMIΑqόn򜸓CYהf}oFm|͒e~XwϑՖmFF[ёgɛbkNg`uӑ{j^~h쎽[ٛ]VbOؒ˛_ϐeLؐmʕstKUi܊vΛhߘϛΞ{қEJZ֛o_˝כȓۛܛǓIÓœy{~FpȔ@WCDOܓoJNžQdad[ɝlsuq`jLRTԊCҝbЖWwmV@󠾔ۋGދÎIL̐`KpCG̎TI^^\Kَ_LێVT^Ԟhàa_M[icgieTln]sjmMՌLuݛtEƖjNxUA\feIBzʐ[MӎaKғ@FgZAӌLɖUo}o˖ΖVĖ^lSkʖyoŠxBZaOs֌CŖKJҜ\EFь`HGqӞp}ߊiA렣ȏL`ǔXÜĜ֓qяՙΜԜ՜p׏s[ҏdh֜܏ُAlלn@•jϗ|AۜA朰bNʜfS@AEsʗBaҊCߜDʎNEOGʉ^cWfbgH]k\iWUsKؑF`SӜN@BVelJPRZIGxϏ`NVܑa]ގOޕ@}’{{wCƐe}eēHSś]__n]UTAՑzGVfGOMNّrzXrőB͐Ye̗ΐY[\~^`ϜݐFKXLcϞefZdlيgpPhtQdvijNkle]mZBjn͝orȞUqr̞tО\ҎwUx|wuvyuRE_ݜw@xzɊKutȚGËHwRz !|  J Gvy,,  d T"#%/'<(*h,w, . r0 (2 4-KH4DF5*L6F7(9:EL<*=|j>!@e0AB@DEG&~HfIK&NLN OtP3RTUWrY([]^::^^\_ZZ^_c`@ bc5Zefhj l,no.qrtvpxny "{|;}2,+ n1W̉` t C8ΐ`)ZX5Z-Rؠ! "n& Bڭܭ"tذTX6$ /MO.ʿbl+3P, 4rt@ B p(MJsb>#2 4[V%p(0cp`Pcbig5hkscs_nonbmpbig5hkscs_bmpbig5hkscsmap data must be a CObject._codecs_hk_codecs_tw__map_big5P@J `@@@`J `@@`P`J `@AF`@@`@p`@x``@```0@`J `I@(c8` @` @` @p` @` @ ` @` @ciso2022_jp_extiso2022_jp_3iso2022_jp_2004iso2022_jp_2iso2022_jp_1iso2022_jpiso2022_kr__map_ksx1001_codecs_kr__map_cp949__map_jisx0208_codecs_jp__map_jisxcommon__map_jisx0212__map_jisx0213_pair__map_jisx0213_2_emp__map_jisx0213_1_emp__map_jisx0213_emp__map_jisx0213_2_bmp__map_jisx0213_1_bmp__map_jisx0213_bmp__map_gb2312__map_gbcommon_codecs_iso2022000 000@>?00000N0000  \0 \& %      00;=[]0 0 0 0 0 00000 "`"f"g""4"B&@&2 3 ! &&%%%%%%%%%%%; 0!!!!0" """""*")"'"("!!"" ""#""a"R"j"k""=""5"+","+!0 o&m&j& ! %!"#$%&'()*+,-./0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZA0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO%% %%%%%,%$%4%<%%%%%%%#%3%+%;%K% %/%(%7%?%%0%%%8%B%NUZ?Ta(cY"uPz`c%nefh'Weqb[Y{b}}b|[^ cfHhǕOgN OMOOIPV7YYZ \`apafipOupuy}}ÀcUz;SNNWxNXn82z(/AQpSTTVY_m-bp TS[poS\zNx&nVUk;YSfmtBVNKO SU0[q_ ffh8ll)m[tvNz4[`풲muvř`iSQW0XDY[^(`cclopqYqq?s~vт`[iXeZl%uQ.YeY__be*j'kksV,Ğ\l{QK\aƁvharYNOxSi`)nOz NSNUO=OOsORS VYZ[[yfggLklkpsyykSkWl"ooEotuv wz{!|}6f̊Qeӗ(8N+T\]sLvT/Z__`hjZtxw^NɛN|OOPPIQlQRRRSSTTUQWW}YT[][[]]]x^^^^_R`Labbc;efCffmg!hhi_l*mim/nn2uvlx?z|}}^}}T*RLaʐuq?xMؚ;[RRSTXboj_KQ;RJTV@zw`ҞDs opu_`rdkNVdWXZZh`aff9hhmu:}nBNPOSUo]]]glstxP߈PW^+cPPQgT^XY[i_Mbc=hskn}pǑrx&xmye0}܃ dR(WPgjQBW*:XiT]Wx\OJRT>d(fggzV{"}/\h9{SQ7R[bdd-gkіv֛LcvRf NPSq\`dce_hqs#u{~یxefkNN:OO:RSSUVXYYYP[M\^+^_`c/e\[eeegbk{klEsIyy|}+}󁖉^ifnj܌̖okNrtux:y 3ꁔPl_X+z[NSW1YZ[`nouꌟ[{rPga\J~Q\hcfenq>y}ʎndžPR:\Sg|p5rLȑ+[1_`;NS[Kb1gkrs.zkRQSjT[c9j}VShT[1\]Oab2myyB}M~Frt/1KlƖNOOEQAS_bgAl ncs&~͑SY[m]y.~|~XqQSO\%fwzQ_eoikmndov}]uQR@bffn^}rfRSsY^_U`dPQR SGSSTFU1UVhYY~ d_xRbcBdb-z{v} INHQCS`S[\\]&bGbdh4hlEmmg\oNq}qez{}J~z9nΌxwMRU8o6qhQyU~|LVQX\cffZiruuyVyy| }D}4;a PuRSS PUXOY=r[d\S``\cc?ccdef]iioqNuvz|}}aIXlňpmPXaӁ5 OtPGRsSo`Ic_g,nO^\ʌe}RSvQcX[k[ \ dQg\NY*YplQ>UXY`Sbg5Ui@ę(SOX[\/^_ `Ka4bfln΀Ԃ.۞ۛNS'Y,{Ln'pSSDU[Xbbblo"t8o8QSSFOTjY1]zh7rH=j9NXSVfWbceNkm[npwz{}=ƀˆ[VX>_efjk7uNJ$Pw0W_e`zf`luznE{\uzQ{Ąyz6Z@w-NN[_bm6t4xFZuO^bcWeogvLr̀)M PWZhsidqrXjyw)/OeRZSbgl}v{|6f or~Q{rx{H{ja^Qu`ukQbnzvOpbO{zVYX䆼4O$RJSSS^,deg>lNlHrrsTuA~,酩{Ƒiq=cifjuvxC*SQS&TY^|_`Ibybbekluvxy}w^ۘ j8|P>\_gk5t w;gz9Suf_񃘀<__buF{ee gllp2x+~ހ *JҒlONNPVRJWY=^__?bfgghQ!}~2 T,SP\SXd4ggrfwFzRlkXL^TY,gQvidxTWY'fgkTiU^ggR]hNOSb+glďOm~Nban+osT*gE]{\[JnфzY|l wR"Y!q_rw'a iZZQ T}TfvY]rnMQh}}bxd!jY_[ksv}2Q(gٞvbgR$\;b~|OU` }S_NQY:r6Α%_wSy_}3VgS aalRv8/UQO*QRS[}^`ac gggnm6s7s1uPyՈJĖYNYON?P|^Y[^ccdfJii mnq(uzIɄ! e} ~ab2kltmmeg<ma}=jqNuSP]koͅ-)RTe\Nghttuψ̑x_szNceuRAmn tYukx|zOnae\NNP!NQ[ehmsBvwz|oҊ|ϑuR}+PSgmq3t*W`tAXm/}^N6OOQR]`s|}o#,BTojpŒ2RAZ^_g|iijmobrr{~KΐmQy2֊-PTqjkČ`gNNkhi~nxU _NN*N1N6NYzUYPYNYZYXYbY`YgYlYiYxYYY^OOYYYYYYYY%ZZZZ ZZ@ZlZIZ5Z6ZbZjZZZZZZZZZZZZZZ [ [[2[Z*[6[>[C[E[@[Q[U[Z[[[e[i[p[s[u[x[ez[[[[[[[[[[[[[[[[[[[\\\ \\ \"\(\8\9\A\F\N\S\P\O\q[l\n\bNv\y\\\\Y\\\\\\\\\\\\\]\ ]]]\]]]]]"]]]]L]R]N]K]l]s]v]]]]]]]]]]]]]]]]]]]]] ^^^^^6^7^D^C^@^N^W^T^_^b^d^G^u^v^z^^^^^^^^^^^^^^^^^^^^^^^^_ _]_\_ ___)_-_8_A_H_L_N_/_Q_V_W_Y_a_m_s_w_____________________`_!`````)``1```+`&``:`Z`A`j`w`_`J`F`M`c`C`d`B`l`k`Y``````````````````_````Maaa``a``a!a`` aaGa>a(a'aJa?acMcdOcccccvcccccckciccccccccccd4ddd&d6ded(ddgdodvdNd*eddddddddddddddd ddbdd,eddddedeee$e#e+e4e5e7e6e8eKuHeVeUeMeXe^e]erexeeeeeeeeeeeeeeeeeerg ffesg5f6f4ffOfDfIfAf^f]fdfgfhf_fbfpffffffffffffffffff?ffffffggg&g'g8.g?g6gAg8g7gFg^g`gYgcgdggpgg|gjggggggggggggggggggggggjhFh)h@hMh2hNhh+hYhchwhhhhhhhhhjhthhhhih~hihih"i&ih ihhhh6iiihh%ihhh(i*ii#i!ihyiwi\ixikiTi~ini9iti=iYi0iai^i]iijiiiiiiiii[iiiii.jiiiiiiijji kiiijijiji jjj#jjDj jrj6jxjGjbjYjfjHj8j"jjjjjjjjjjjjjjjjjjjjjkjkk1k8k7kv9kGkCkIkPkYkTk[k_kakxkykkkkkkkkkkkkkkkkkkkkkkkkkkllll$l#l^lUlbljllllll~lhlsllllllllllllllllllmM6m+m=m8mm5m3mm mcmmdmZmymYmmmommn nmmmmmmmmmmmmmmmmm-nnn.nnrn_n>n#nkn+nvnMnnCn:nNn$nnn8nnnnnnnnnnnnnnnnnAooLpnnn?on1on2on>oonozoxooooo[oomoo|oXoooofoooooooooooooooo p popppopptoppp0p>p2pQpcppppppppppppp qpqqeqUqqfqbqLqVqlqqqqqqqqqqqqqqqqqqqqq rrr(r-r,r0r2r;rsNsOs؞Wsjshspsxsus{szsssssssssttot%ts2t:tUt?t_tYtAt\titptctjtvt~tttttttsttttttttttuuu uu uuuu&u,uz7zCzWzIzazbzizpzyz}zzzzzzzzzzzzzzzzzzzzzzzzzzz{{ {{3{{{{5{({6{P{z{{M{ {L{E{u{e{t{g{p{q{l{n{{{{{{{{{{]{{{{{{{{{{||{{`||||{{| |{#|'|*||7|+|=|L|C|T|O|@|P|X|_|d|V|e|l|u||||||||||||||||||||||;|||||}}}} }E}K}.}2}?}5}F}s}V}N}r}h}n}O}c}}}[}}}}}}}}}}}}=~}}}}}}}}}}}}}~ ~#~!~~1~~ ~ ~"~F~f~;~5~9~C~7~2~:~g~]~V~^~Y~Z~y~j~i~|~{~~}}~~~~~~~~~~~~~8:ELMNPQUTX_`higxqܘ !(?;JFRXZ_bhsrpvy}Qۀـ݀Āڀր )#/KF>SQqneft_Ɂ́сف؁ȁځ߁ )+83@YX]Z_dbhjk.qwx~߂҂ނ܂ ق5421@9PE/+#|su΃؃  " 8m*(ALONIV[Zk_lot}:A?HLNPUblxz|bȌڌ  N͌gmqsύڍ֍̍ۍˍߍ B504JGILPHYd`*cUvr|ƎŎȎˎێ  &3;9EB>LIFNW\bcdڏ!  '659OPQRI>VX^hovr}Hbې20JVXceisrɑˑБ֑ߑۑ,^WEIdH?KPZϒD."#:5;\`|nV֓דؓÓݓГȓ6+5!:ARD[`b^j)puw}Z|~ʕoÕ͕̕Օԕ֕ܕ!(./BLOKw\^]_frlΖ˖ɖ͖Mܖ Ֆ$*09=>DFHBI\`dfhRkqy|z×Ɨȗ˗ܗOz 8$!7=FOKkopqtsĘØƘ !$ ,.=>BIEPKQRLUߙۙݙؙљ+7EB@C>UM[W_bedikjϚњӚԚޚߚ"#%'()*./2DCOMNQXtʛƛϛћқԛ:   .%$!0G2F>Z`gvx *&#DA?>FH]^dQPYrozĝƝϝٝӝuy}a̞ΞϞОԞܞޞݞv!,>JRTc_`afgljwrv/XiYdtQq`!~!~0zn!s!v!X0!q!@!~!~!~F!~!~!~z!~6!~!~!~j!~&!~!~!~Z!~!~!~!~J!~ !~ !~~ !~: !~ !~ !~n !~*!~!~!~^!~!~!S<!~!~!~p!~,!~!~!~`!~!~!~!~P!~ !~!~!~@!~!~!~t!~0 !~ !~!!~d"!~ #!~#!~$!~T%!~&!~&!~'!~D(!~)!~)!~x*!~4+!~+!~,!&~"!!    RSTUVWXYZ[\^_&2A?JRf'138B@IKSg  " $0*.(469=;CGEPLTXVZ\`^dblpjrnhtxvy}{   !%+/)57:><DHFQMUYW[]a_ecmqksoiuwz~|NNN NNN#N$N(N+N.N/N0N5N@NANDNGNQNZN\NcNhNiNtNuNyNNNNNNNNNNNNNNNNNNNNNNNOOOO O OOOOOO.O1O`O3O5O7O9O;O>O@OBOHOIOKOLOROTOVOXO_OcOjOlOnOqOwOxOyOzO}O~OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPP P PPPPPPPPPP"P'P.P0P2P3P5P@PAPBPEPFPJPLPNPQPRPSPWPYP_P`PbPcPfPgPjPmPpPqP;PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQ Q Q QQPQQQQQQQ#Q'Q(Q,Q-Q/Q1Q3Q4Q5Q8Q9QBQJQOQSQUQWQXQ_QdQfQ~QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRR"R(R1R2R5RSBSLSKSYS[SaScSeSlSmSrSyS~SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTT!T'T(T*T/T1T4T5TCTDTGTMTOT^TbTdTfTgTiTkTmTnTtTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUU U U UUU*U+U2U5U6U;UW?WEWFWLWMWRWbWeWgWhWkWmWnWoWpWqWsWtWuWwWyWzW{W|W~WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXX XW X XXXX X&X'X-X2X9X?XIXLXMXOXPXUX_XaXdXgXhXxX|XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXYY Y YYYYAY!Y#Y$Y(Y/Y0Y3Y5Y6Y?YCYFYRYSYYY[Y]Y^Y_YaYcYkYmYoYrYuYvYyY{Y|YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYZZ Z ZZZZZ#Z$Z'Z(Z*Z-Z0ZDZEZGZHZLZPZUZ^ZcZeZgZmZwZzZ{Z~ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[[[[4[[[[![%[-[8[A[K[L[R[V[^[h[n[o[|[}[~[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ \\\\#\&\)\+\,\.\0\2\5\6\Y\Z\\\b\c\g\h\i\m\p\t\u\z\{\|\}\\\\\\\\\\\\\\\\\\\\\\\\\\]] ]]+]#]$]&]']1]4]9]=]?]B]C]F]H]U]Q]Y]J]_]`]a]b]d]j]m]p]y]z]~]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]^^ ^^^^^^ ^.^(^2^5^>^K^P^I^Q^V^X^[^\^^^h^j^k^l^m^n^p^^^^^^^^^^^^^^^^^^^^^^^^^^^________!_"_#_$_(_+_,_._0_4_6_;_=_?_@_D_E_G_M_P_T_X_[_`_c_d_g_o_r_t_u_x_z_}_~_________________________________________` ` ```````$`-`3`5`@`G`H`I`L`Q`T`V`W`]`a`g`q`~```````````````````````````````````````````aa a aaaaaaaaaaa"a*a+a0a1a5a6a7a9aAaEaFaIa^a`alaraxa{a|aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbb b"b#b'b)b+b9b=bBbCbDbFbLbPbQbRbTbVbZb\bdbmbobsbzb}bbbbbbbbbbbbbbbbbbbbbbbcc c c ccccc)c*c-c5c6c9cgEgGgHgLgTgUg]gfglgngtgvg{gggggggggggggggggggggggggggggggggggRhhhhh(h'h,h-h/h0h1h3h;h?hDhEhJhLhUhWhXh[hkhnhohphqhrhuhyhzh{h|hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhi i iiiiii1i3i5i8i;iBiEiIiNiWi[icidieifihiiilipiqirizi{iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijjjjjjjj j$j(j0j2j4j7j;j>j?jEjFjIjJjNjPjQjRjUjVj[jdjgjjjqjsj~jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkkkk kkkkkkk$k(k+k,k/k5k6k;k?kFkJkMkRkVkXk]k`kgkkknkpkuk}k~kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkklll l llllll&l'l(l,l.l3l5l6l:l;l?lJlKlMlOlRlTlYl[l\lklmloltlvlxlyl{lllllllllllllllllllllllllllllllllmm mmmmmm&m'm(mgl.m/m1m9mu?u@uCuGuHuNuPuRuWu^u_uauouquyuzu{u|u}u~uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuvvvvvv v vvvvvvvvvvv#v%v&v)v-v2v3v5v8v9v:vwBwEwFwJwMwNwOwRwVwWw\w^w_w`wbwdwgwjwlwpwrwswtwzw}wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwxx x xxxx!x"x#x-x.x0x5x7xCxDxGxHxLxNxRx\x^x`xaxcxdxhxjxnxzx~xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyxxxxxy yyyyyy y%y'y)y-y1y4y5y;y=y?yDyEyFyJyKyOyQyTyXy[y\ygyiykyryyy{y|y~yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzzz z z zzzzz!z'z+z-z/z0z4z5z8z9z:zDzEzGzHzLzUzVzYz\z]z_z`zezgzjzmzuzxz~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz{{{#{'{){*{+{-{.{/{0{1{4{={?{@{A{G{N{U{`{d{f{i{j{m{o{r{s{w{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||| | | ||||| |%|&|(|,|1|3|4|6|9|:|F|J|U|Q|R|S|Y|Z|[|\|]|^|a|c|g|i|m|n|p|r|y|||}||||||||||||||||||||||||||||||||}}} }}}}}}}}#}&}*}-}1}<}=}>}@}A}G}H}M}Q}S}W}Y}Z}\}]}e}g}j}p}x}z}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}~~~~~~~ ~'~(~,~-~/~3~6~?~D~E~G~N~P~R~X~_~a~b~e~k~n~o~s~x~~~~~~~~~~~~~~<;=>?CDGORS[\]acdefmq}~  $&,.04579:<>@D`dfmquȀ̀πҀԀՀ׀؀  $',05:@CEMX]adeoqr{ȇɇʇ·Շևهڇ܇߇ (-.025:@BEFIORWZ[\abcknpsuz{|}ԉՉ։׉؉ "$&+,/57=>@CEGIMNSVWX\]aeguvwyz{~ÊƊȊɊʊъӊԊՊ׊݊ߊ  -07EGIKOQSTWX[]Ycdfhimsuv{~ŌƌɌˌό֌Ռٌ݌ eilnōƍǍȍʍ΍эԍՍ׍ٍ  !"#&'136789=@AKMNOT[\]^abilmopqyz{ÎĎǎώюԎ܎ !#%'(,-.4567:@ACGOQRSTUX]^eƏʏˏ͏ЏҏӏՏ ()/*,-347?CDL[]bfglpty̐ÐĐŐǐȐՐאِؐܐݐߐҐ  %"#')./14679:<=CGHOSWYZ[adgmtyz{‘Ñőӑԑבّڑޑ #$%&(./035689:<>@BCFGJMNOQXY\]`aeghinopuvwxy{|}’ÒŒƒǒȒ˒̒͒ΒВӒՒגْؒܒݒߒ !$%')*3467GHIPQRUWXZ^degijmopqstvz}ēœƓǓɓʓ˓͓̓ӓٓܓޓߓ ./1234;?=CEHJLUY\_achkmnoqrxy~ƕȕɕ˕Еѕҕӕٕڕݕޕߕ"$%&,13789:<=ARTVWXant{|~ʖҖ]ؖږݖޖߖ !"#(13ACJNOUWXZ[cgjnsvwx{}ėŗǗɗʗ̗͗ΗЗїԗחؗٗݗޗۗ   #&+./0235%>DGJQRSVWYZbcefjl˜ŘȘ̘"&'+123459:;<@AFGHMNTXY[\^_`Ùəәԙٙڙܙޙ  "#$'-.3568GADJKLNQTV]ÚƚȚΚКҚ՚֚ךۚܚ  &+-34579:=HKLUVW[^acefhjklmnsuwxyǛțΛЛכ؛ݛߛ "#&'()*1567=ACDEIJNOPSTVX[]^_cij\khnpruw{ /0234:5a|v5B~5!PP6!w6!w7!~h8!~$9!~9!~:!~X;!~<!~<!~=!~H>!~?!~?!~|@!~8A!~A!~B!~lC!~(D!~D!~E!~\F!~G!~G!~H!~LI!~J!~J!~K!~>$DGGEEFFDE&FHHIIGJJLLKK)I(HMMOONNJ+KWWVV-MYY[[ZZ\\]]__^^aa``/Olliiffkkhhjjqqttsuuwwvv&&CCUUggppmmoonn90/265389abcdgilv!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&ejqrst{A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&xR&S&T&U&V&W&X&uzwy|''BCDEFGHIJKLMN!'"'#'$'%'&'(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'Q'R'S'T'U'V'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'W'rstuvwxyz{|}~>!=!B!F!G!H!I!w"x"E!D!s"l!m!("n!qor"+","*"-"M"N"O"_"P"`":";"]!e"g"g!\"J"K"A"@"i"j"h!h"f"b"b!a"e!f!c"d">"?"<"="]"^"!(,("(-(#(.($(/(&(1(%(0('(<(7(2()(>(9(4(((8(=(3(*(:(?(5(+(;(@(6(#"""%"$"'"&"!"~!{!}!|!~"z!y!j!i!v"u"t"!!"!#!7!9!:!;!R!S!T!U!V!W!X!Y!Z![!)"."L!M!A!!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$+!,!5!6!!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%&!0;e><2$TI?M"P/1%n3#P$@BRV5:Jg>&>N'(BJ)$P*fC+,-%Pz6.&P]40Cg<'P(P/0)P5G1W527GcFC83K3Ii*Ph>+P5245e6p8iL&V678pM}F9:;%4<55,P-P;N=MhA/Pv;sF=2P>1_8^8f0>?KOJO3:!0@3P4P5P4K6Pr8g0rK|5}5~5bDPCB?PUIg@EF8!@PBPGHIeBaNJ0JAP>2KD6LgCMNo7CP$GOPQRk4STUDPK0VW`8l4zI2HY5XYZ[\q2gPAE]lGFP^`MEPGPn:HP$Up_qPPrstSPQPuB2;JKPvwxyOPs8z{H;|}&4~!TPLP"#cN$x;%MP&RP'()UP*NP+,!6M0-."6A2%UyKnIt8//?7N012345XJ6787%Bd289:;S=<=>YP?^P\P@WP/BZP]P[PA]JXPB.?CsK_P`P$=mPDEPG6IhPpJ62FGlPHIJKfPoPLRAMD8N\GOG`PnP]EQcPv8RSu8aPTUVWZ?)Q@'QANABC(Q*QDEQ,QF+QGHJH75.Q/QI/2JKL-QMNOPRt<2Q1Q0QSVPT3QUVWX~=4QYZ[%M\]^_YL`ab6Qcd5Q8Q7Q9Q:Qt0e58;7<={C$6h@w8fn9Qm~Fn4A@QAQ,Hx8;OBQ&6tL'B?o:nQoQ0AlQqQ@6KABCd9DpQEFGu7^:mGHtQrQI{Ij>{Qd3uQsQOAJKLwQvQMND3O`7|Q-NPQxQ}QzQRyQSTUVWONXy8C2tNYZ[\u=XEe9"R#R]^eN+O%R_`az8bc$Rd/3e&RVKf)RgJ-Rp*@*RP6q+R+4rstuvw.7.Rx/Ryz0R1R[<{8^L{hLwF|qJ2R3R}~!5R7R6R"#8R=2LK$|:9R%&YA'(">)6:R)*+,[H-./;R0R$Ih6e0345?F?R==6i@AR@R#>a8CR>H87DR\H4BnB(6nF1C9nG:NKFRj@;<=57GR>?HR,1u0m4@(BQ5qMKR72AJRB*6LRCqLDEFGHMRRNI|8J68NRKLPROR_?91MN^1QRORRP78QRSRSTUn5VW2;TRXtK5:Z5'MPA?H}\RZRD2fB8L!9yMGE~8ef/7gRc6JKg]HhifRj^4aRbRdRklmneR[5a?-JcR_Rc8`R$OoprJqhDb8p9rhRs]FtlRuvwx~S3i:134yR567%Sv0$S8%0JI"S|R9wR}RH::;<&S=w0/S'S(S%>iK>?-S,S@/EA.SB+SCDEF41G6:0?HIJKL)SbE*SM"0NO4S#M'>P:SQR9S0SSTUCB1SVoB6S&>WXY3SZdL[\<77S8S]^_5S;S`ab2ScdASFSBSe=SfgGS1AhISi"9?S}CjklmnopCS313WS^24bS5|>^S6\S7]S8_S9:;<=>?=1@ABCD9AEYSFZSGz3HIJKLaSMo4NdS`ScSOPQR.JSUF8HfSTUeSE3VgSWXjSiSYZ[\]^hS9GkS_`abcdelSfgnSmShpSisSqSoSrSjtSklmpquSnovSwSxSEQr|?,T/TA:#9@3TA%:B3CCD0TZDEFGHIJKLMNOPQRS4TTb?U2T5T?7V6TW`XYZ[\]^7T_$9@39Tabc:Td;T8Tef1Tj?T@T>TkBT8Glmh0VI~CTnopqrs}>tu9HE+f:NT,=J]N-t2JT./01:AMTcE2IEdE9HMDI:34IT567v16EKTGTP?8OT9N=:;<-6PT=>?@ABCDhJEF}AFDGRTHIJKOKLSTXTMN/JWTQTTTVTP&:IJQOYTECRu2m>STU[TVZTWh9X\T^T]TY`TZUTbT[\aT_T]N;Q?TAcT<@m0dG^[DeTdTfTgThTiT_`QJjTabF2kTcde~T%C}}T~3J!"w=[E#$!U%&'%9"U!G^HQL%G()+U*+85,EM-/L,V#U.&U/EB08KJE1234'U56eK7J:8*>9:;(U90H8?+@Q0,U-U*U@ABCD81/4E)UEL1IFGHIJ(0Ky0Q;LR0#0M2UNOP0UQR4U,O[\LG]^6U_`a':b9UcdXIe:U5Ufghij;Lkl^Gmno;U2Ipqrstuvwxyz{|}Uy7$LUEUBU%&'dCAU(CUDU)*+,FUGU-./0r4IUHUJU13456n>7MU\D8E1KU2NU9OURU:PUQU;z;8BUUVUZ;'9?RL(5I8WUX3@XU9BABYU#VZU[U\U^UCDEF_UG`UHpBI'1iH2XbUFMYZI=[\drUsUS0:BR?itU3F.>/>uUm@j0>klvUwUm`LnxUopqF6rs"=tuvyUzU\<,?tFT?xH"GI6{Uo5|U~6OF02S;}U"V!V}6~U8Ewxy0BKEHwJvJ?@AgE8VT=7VBCr?VGVFVEVAV@VDVGHIJxJFKLMNOPQRSWKVHVJVrMUIVTV?VXYZ[\s?]LV^7:_MVNV`abcdQVePVOVfghE:VWVhijklmSVnoRVpqTVUVrtsXVtufNYVVVvwZVx`4[Vzy]V\V^V{|_Vn@#=}d=cA~)98:*9p5!`V9:J8aV&LCGbV+9"#,4'CR6$T;[IAH%cVu4&fV'()!D*eVdVgVkD+,c?.U;J@-SB"5/"D0hViVo>9K1lVkVjV}IsV42ZKmV35oVkK6nV789:pV(HqV>JrV;<=>?@A34?J/GtVuV,944vV88DM)Mv4xVB#D-91>_H2>CDx=lDyJ9E.9\IyVEFGYEB:HIK8JmDKLC0n=/9GMMNOzV{VQGP|VwN-ORQS~V}VTUG3VW!W$W%WX#WY@I3>'W&W"WZ(W)W[*W-W+W,W.Wd1nD/Wz7v26G0W{F[J\1W.O]^_2W@J5W!P1P`0Ww@WvExAWBWyCWz4W3W{DWA7|}'I~L:7I&DKIEW!4>F1"FW#$GW%rL&`H'(JW}1,@IWHWB7TBNWLW)KW'Ne8*+y=MWLE>=,@FQWPW-.OWRWf8/20SW|I[=13TWyH456AF'D70EUW+54?8,I9:;?@AVWV;:K;K~1[WBiCCDXWEFGw2HIJK-XZWLM0GNYWOWWPz9]WQRScWiWaW\ETUfW]IVW`WXeWgNW;YUB^WZ^5hW-@e1bWx2gW[16dW\]jW^lWvWtWqW_`apWxNbrW26c19dz=efyWkWgoW_Whz2sWuWQCi(:82mWxWwW36)Bf3jC7nWklzWm}W!Xno=/XWF%&'()*GO+X+,1X-{9.K@/0T0*X(X1ZA2|W4;FB=X3[A8X45X6X5f<9XX?XU0<=>?@3XABCr6&0DE64;XFCXBXGHGXIJHXKLMNFXIXAXEXOJXKXPQ@X|;RDXVB292X5?XXiJNXOXPXWXSVXT}K74TXE743QXU8NSXV0UXVLXRXYXD7MXWXY]MZ[\+M]^\X`X_`~AyNaXab^X[XcdZX_Xefgh0Ji4FjF7kbX]XlcX{712mnkXo84pqriXjX):hXfXeXlXdXnXst{2uvwxyz{pX~oX|}!"#(DsXqXgX|7rXvXuXwXtXxX$%&'yXzXjJ|X{X?=.@f2|2(}X)?0L@~X*Cl!Ya7+"Y,-o@./#Y0$Y:5%Y&Y'YWBM81aL2*Y-Y+Y?.Y@1JA70B^IcHC/YD2Y5>;50Y7Y6>1YDGEFGH^M3Y4Y8YjE5Y39^@FY4HrBIJdH-ZzJKqDLMuKN;Y!2jCOPDYQ4C>YEY@YGYCYBYoGRAYRGr5H3Vg3!?IYNYJYW}7XOY";i9YZ&==Y};LY[\X;MYD0]^HY_`)Dabcs546KY'0deC:f6?ghirDjTHQY^Aklmno*Bpq+;RYrTYPYstuaJ=Dvw\Axy{JN<`Y_Yz{x?|~7}~YY9>!hF1G"#$WY%]A&'x<\Y(8>VY[Y)SG*+UY!7,-]3.]Y+NN:5CZY/\@059d?f1.0eY?bY@Ax4BCg1DhYEFIMlYGH;BsYIJmYKjYqYLSYMNOPQnYrYRSBHkETUkYVoYH7Wq:X]@YwYZ[\]^&E_`abcdeftY`KguYhivYNL"@jkb7lm}Ynop5;zYyYqr2Gst5Fuvw1E{Yxy|YoIzEG#;q@PK{I3%Z~Y|}~JM'Z!#Z$Z"#$%`A&'("Z?Y)*&Z!Z+Z,Z'E.Z+,$;)Z-.<5//Z0(Z3Z2Z11Z24Z36Zq>45Z569Z789:;<=7Z>?8ZpY@AB;Z:ZCDxYZ@Z?ZAZ~2G69HI|J/@JN8KCZLFZRIM_5NOEZDZTGGZ56IZHZPQ:46;XFRSI7t?JZ0@(E_IKZTUVLZMZW8J]UF@XLIX:eHCHYZME[ANOZP<\PZ]60^T6M@_`IQZB;GC`[;7?abcRZ}Jw1\;dUZeSZVZ9NTZfg{@WZh2BiXZjkz4lZZYZm[Z\Z{4|F6Cl5];aA\=00n]Zopqr"2aZstu79`Zv+::>wx_Z;>y@L*:z{W0N@|}fZ~!1@G1"#$%U=&fKr:'()*<>+'@,-.eZcZdZ0/kC&[1jZ~;89hZ23iZ48?57gZ6/;89:;qZmZ"3nZoZUH@ABaIJ7rZD2@E=>GHIRCJLCFKG6sZwZK2tZvZMNOuZPk=QHCE0xZRSTUyZVW*DXqNC;YkJZ[=K\"[{Z]~Z}Z^_zZ`a![^Fb|Zcdef#[l=$[gKMxGh%['[i([jkl)[J6H199*[+[q=bAm?XR>A=AXBG:rPnon7-M~J~Ip,[qs:?D-[/Or>Ks+D.[|4tu/[0[ZL$LvK\K%;2[k;[NE~9[+B:[r>]L<[=[hM!B[":9#UG?[lE^ZbZ$O5%GG&A[>>DH'(G[zH>[D[C[)*O@+,mK-SN./gK0L2^;HOF[u?E[@[O8123L[J[4M2H[N[T[5679HB:;AJ"IU[pG?K;4?w@@=@SDA.MBQ[P[CR[O[DW[M[K[S[I[ElCFxLFtumTh8|Mvwh[xtD#3-:y`[p[a3n[r[znE~4{2\|ILw[}4}~[~!"@K#!\#\$'\y[%*C&'oE+\|[(\("\)*+,-9?,\./3@01*\=4234POv[&\X05x[67:L}["?GDs[89%\:;NF?$\@;\A=\XDBCDLMEvI8\JBF>\?AG5\B\A\oF@\jFHIJKLMD\7\NH6:\]=OPQ`G<\K64\6\3\RS0OZ39\TUC\53g:V]1T\W1OW\XY:?V\U\Z[\R\]^_F\`c\E\X\abcP\dK\H\I\Q\e"tfN\=9HDdAL\G\gJ\hiMMjKO\Y\jka\Z\g\e\lmn`\op_\PDeAq]\rs[\tb\h\uHn\uvi\l\f\wtC8Ix\\yd\@>zOLx\k\{|"8#2_3S\}~!A>p\"w\yX[?@A{\}\~\B,]C(]m[DEF']G&]#]HIJj\%]$]KMLNO*]&OPQR-]{6ST)]+]UV'H.]WXYZ2]/][\]^sM0]_`a^\bcd3]4]ef51g6]g7!4p=]q<]>]rN2s7C?]t?4A]uv@]B]wC]xD]_;5@!:pIybJDOz{u;|P:rN}E]F]`;~!G]H]"J]I]#XK^=l_]?^]@ABCDEa]FGHa;I1LJb]c]$5Kd]Lf]e]MNOPQRe?ST9IJ1UVEHWuDA=a5XYZFH[.<\]h]@4^x1_`rFg]>9SCi]6q]j]abcABb5r]defgh7h%5p]n]k]`Mijk@DlYFl]t]s]#7mn-2op;:m]o]qrWKtBwK|]s}]tO2u(J}L!^#x]~]h176vu]z]wt@qGgHxyz{|w]}!K~y]$^!"^"{]#"KHGc5%E$mC%%^&'(#^YBv])K1*+,-NM0^./0/^1v@,^2lM6F&^ED345L1?9)^789'=.^-^(^+^:h3;*^IG<.Nt>u@=6^4^MI>?@1^3^A:1B@92O=3bICDaM$3;?5^EF:^GC>0M7^HI2^J8^KLM^NsEBFNO63U1P>^QA^RCNSTdMUH^B^?^VWTNE^XYJ=G^L^ZqEJ^[\D^]^8C_K^`@^F^aM^|0C^N^bc=^B=L7<^R^m=:8a^i[^t5OEjV^_^/021k92X^,BO^Q^A9lmb^n]^opU^\^qrst+LuZ^^^vwxyzP8{E>9C|}~T^!"/M#W^P^rES^$Y^%&QO><~Kc^.H'o^;8(`=e^)/NB9r^*n0p^+d^,-j^.l^/OMg^.E0i^123q^4k^GL56f^7"<~^89:j3h^m^n^lBZB;v^<=|^z^)E#_w^>?@x^`^y5:IA?_<_?_!B_";_j9(G9^#$tM=_A_uB%@_+_&io'E_()I_*G_+,-C_D_.H_F_NI/N_K_J_M_TFO_01uCmB%@2P_R_3456Q_789:;gF?@T_BCP2DEtE%3FGd5^lmnop3AqF>rstu{Nvwj_y@xyf_k_zl1{|}~i_aGe_h_H>!QHl_Q<"z@#o_$%g_'7&m_'PMp_&t()O=*+q_r_,-.G./t_0u_1233G4uEw_56y_UNv_7x_m18s_9:;[Sz_gA8;|_{_$?YR}_zG?@A#`$`BCD%`EFG&`^DH(`'`I)`*`J_59`:`l$8mnHHo<`pu>;`qr86=`?`>`stu@`Q8A`vwi6x@A}9yC`D`B`zm?@AC=BCW`DV`EFGHX`IM3Z`JY`K\`[`LMNO<8PQ(NL6&2RSTUj6VWXYZ[\]^a4_`ahN^`bcd``efga`Q2hi]`j9;klAD_`mnopqrd`n7IHc`~`xyzi`{|}~=8!"#e5$f`}M%0N&'()vB*h`+,-./012345j`VNW6|HJG6k`m`7p`89:;<=>?l`@o`j8M1q`Ap?n`\NBt`$tCDEr`u`FGHg`s`IJ<:v`w`KL~MMNOPx`QRSTUVWXy`YZ[e`\]z`^_`abcD4defgh%aVHAaBa;[0GaDamFCa=>?@AB&5CJaDEaFaIaHa%IBAAAE?5FGKaHILaJMaKOaLNaV1WahHQaMSaUa>?NVaTa@YaTXaUVZa&?@ABCDEFGiH.b/bis0b1b2bH.;I3bVGJ_KN1KW1LM4bN6bO5bpEP9@9]7bALQ8bF4WH9bR:bS;bT\LUVUL>DWjAX=bYb=ZJ>@b[?b>b}H\G4)8]^_`abcFbdCb??2LeBbDbEbfAbghijklGbHbm/Dc4noeCpqrIbstuvwxyJbMbz{|}g?~DF!NbSK"Kb#Lb$%&'(Qb)*PbOb+,Sb-.RbTb/012Vb3Ub4MJ56V=FN78Wb97F:XbYb]b[b\b;Zb<^b=_b>?@`bAab7LbbBCDpLcbENCFjGk6GH;Cdb:6IJP@KLMeb=:NOPfbQRSgb&8U:TibUVWVEV:N5XYZ$KKG[\WE\9]^kb_`abcdK>efghijk2NE9l'8#Hmbmobnk8nbvDoqb73lbpjH01ql:ROrpbtuvsrbwKJxY@tbyzub{|}~sbN3!{b"zb#'<|bwb$%&}bxb'(XHvb)*yb+,"c./01-2!caK3~bk045$c789:#c;6L><%c=CA>'c&c(c?@ABCDhbEFjb*c)cGHIJ(Yc{kH|}~EA!Ac"BciG#A??caC$%@c&N>'(\0))5*+,Cc-.xD/DcG@0-L1#IEcFcUC2GN3HcGc4567o<89Jcp0:;Mc<=>KcT2N7LcF9r9fJNc?@TKABPcCQ@O1:2,0DEOcFGHIJQcRcw>KLScMO3NUcj7Of5PVcu6WcQ|@RMFS`@u:TUXcVWXYbCkAZZc\cYc[c["7\]]c&7^g5RM_c_``ca.1bcccv3bcacdec^cefc)NfgcghchtTjcickclci5NmcopO>ncocW=8Fpcjk(Clmqctxcyc+Ezcu^3vZ?dIw|cxyzhB{|}~!wc"{c}c{:#$%&&d.I'&HyEZ6%d#d(5H~c^C{EzE)v:8d*+(d,*d-.-d/.d0+d,d12)d'd3!d4OJU255d2d67d786dsG'L9;;0d9d4d:3d/d;1d}@?@"HA>dBC$HDEFGa@;dHOHI?dSJJ[CK:djdhdfdnd3mdldkd45od678pd:@9qdsd:rd;<=R8>8A?ud@AB|ECtdDEvdF5JlAG9wdGHNHIydzd{dJ|de;}dO7j5*5!eKsLH9~dLMN$efL0:[\])e^_*=>8HA%e+e`a&eP7b.e2ek7cd-eefg6ehiJ9mM<03ejk5k0el1em}E/e,e(3d@n(8op8eqrstuvw5exyz7e{4e|}Q73B9enA~!FeBeC?e=0JL)*+,->e[6lH./0mAPNo=ne1He2~@DeIeKeyDNe4Je56TJK478KL9^0:Me}N;<=>Le3o1lFOe?VePeWe@ASeBC{GDEJf;fHf?Ife4@ABM4CJfKfD]KcMEFGTM7OM9NfTO)HlkfS>*IlfjfmN4nT8h;nHop*8CKqofmfN9O9i0h:rsYG_0tf@CtXGu[Bvwxyvfz{rfufpfsf&K|U8}0qf}~xf!yf"#9F$;6%&&g=G'i;(<6H@FO.LwfT@)*+,S5zf-./|f01{f2}f3&C>G41D56#g7"g89~f:U?eI%g;$gP9SO<5g=>)g*g?@ApgVW22Eg@gXUAgYZBg!B[\DgCgFg]^_GgHg`C?ai2IgWN+?@)320ABCDkgngNGED?FV2G'KHI]7\6JmgKj2LM#4NOq1rgjN]BPDI~gQW2|gzgqgRogSpgTccz{|qA}:h;hY2~.28h!"#$%.h&6h=h7h'5h(vg)*3h+,/h-./P41hh20h|G3LiM9hOh456Gh{?78F5]6Bh9:;[2EhZ:=QEJh?nJ@AhZ2V8)IKh?hAHhBCRhDChEDh:FFIhGFh(KLh`0HI@hJKNhMhkGTh_hM~3bhPhNUhnMO^hPQUMRS*NTUVWxCXYZk3[\rIdh!F]^10_]h`YhrASh[h`ha,Gbc*0dXheahxIfgh\hWhiU>/=jk,ehujhsAvwfhxmhy_Cnhz{VMch83|ih}lh,L~ohhhkh!"#)K!O$%&'sh(*+zh,rhC<-.Qh/012NJ"Lyhxhthuh6134whqh5678UD9:;vh~0<)=>"B?CJ@{h!iYHA~hV>I<#i>6BCDEF$iGyI}hHVhIJKLMNO|hPOO"FsIQ+iR1iSTUV2iW%iXvGYZ/i'i[)i\]^3i(i_,ir1`eF-i0iabcd&ie&Af*i';E?07tLtyLr=ghij7i5iklmnNOop4iqruMs6i8i9iuvi@i%&'()?i1]"]*+Ei,-.Di/0vMu5:N?s6Ki@ABCDLiEnCFGMiHIJzFK:0mc2RiSiLMNi=;NOPQROiBGSTUPiQi[iVUiXiWXYZTi[\]^_`aVibWiX?@;MABCDEFG&jH%jIJ.jKLM(jN0jOfM3j*jPQ+jR/j2j1jSTU)jV,j=jWXYZ[\6j]^_`ab4jc5jd:j;je*3fB59jghi$jjklm8jjpqr@j?jsotuvwxBjAjZiFjyz{|Cj}~DjEj!Gj"l7#Ij$Hj%0=&'()T9'^*+JjQ=,-93.Kj/R10W>Lj12U9Mja03=I4Njj?5UjRjoC67SjPj^68OjVj67^B\jXj5BWj9Zj:;[j]j?@oHYj^j`jS8TjA0ABC_jD[:vNajbjuAEFGHI"NJKLcj5MdjejMdJfjN@:#NOkjPQRljX>jjSTgMgjij=@~?UhjmjV#JojnjWXYl3+KpjZ[\]^_|jrj`sjabctjujdefgyjzjhixjjkvjlqjwjmno{j7ppq(2rstu~j_6}jvwx"k!k$ky#kz%k{1=|&k}'k~!"#(k>@WM)k$JFG*k$+k+8%,5&,k'(k;AG-kP3)*+,.k-0kwM/kF?1k2k.3kQ4/0124k35k6k7kQ3456788k9k:kr29(?;k:;<=>kCDEW7V?Ak$FF@kGH17IJ?kwB-5BkCkKY>LMm7NDkO,KPQ_@Rv5uLJASEkTG?pCZ>UVWFkXYIkZJk[\]>:BBHk^[>>I_`aGkbcl;S1dNkX7en;fm;MOMkLk'AM5CO:3\>ghijklKkmnoPkpQkOkqX8@Mro;'GstTku@@BCvw6MxWkl8y?@SkXkm8UkVkzRk{b@IF|}/C]2~!"pH#C5$4D[k%Yk&LC'()A@R4Zk[?*JN+,-@O.\kgk5D/fk0ckkkdk`k|D_k]k1!Mp;2ak^k345ekt=A86zB7EKZ1b0%F89ik?:hkfFmk;bklknk,8jkV9okXMrkuksk5I@ApkB`6CtkvkDEFGHIzkwkNykxkJKL{k1$lRn8STU%lV&lW>;XYNZZ'l[(l\2=)l*l]^+l,l-l_`a+Cbc.lde0l/lf&Fg1lh-Ki2l3lj4lklm5lnorZFpq]>6lstuvwk9.P7lxyz{8l?I9l|Al}:ll?l#$%@lBl&'(-3gDiIb:W9)OI_2NHElS4U@DlIlyCcLGlHl.5JlcG_B*+qH=EFlGKl2Ll(OBDEO,-q;Kl.1B/\l(A0xFPI213Ol?;r;4^>eG5-8NlMljI6A<7RE89:;<=QlRlX9Pl>?@ASlTlVl#BBUlf4XlWlYlC[l]l^lDEV@FO<_lGR3H`lIvAalblkI/5JclKL6DM[1NOPQdlRSTq?@.m/mAB2m1m0mC4m3mvLD6mE5m7mF8mGHIJ:mKLM9mH?;mNOm6mPQRS?mTUVW@m=mXAmVEDm]Gmd^_`a4?VJ@imAkmBCjm`2DvFlmwG3EEmmR=FomGHBL~mqmrmIIDJ`BwAK(FLpmU5MymNvm%n)F`Csm~DSEtmxm`?OgGLDPB@wm.B$Bum)0"OzmQRTUVaBS5=J?WX|m{mYo0}m/I'nZ[Fk?[\YCx6&n7M?1]WJa2!n"n#n$n;F#Cc0(n)n#t^=B_*ns1LA`/8ZMab+n,EcxAW<,nd/nee=-n+A*Afd0KN1nrH3n2n0ndcT4gnmh5n4nijk6nl8MmnopqrstaFu.K7nY<8nv9nwxy:nz!E{}j0~!"#$Y9|:O-%&'(>n)*+47;n?An@ABCEFDGH"EIJCnKBnLMNOPQRSTUSFDn6=`<[GqCVrqrRnPnstuQnvwxyTnSnzz>Un{|}~VnWn!"#PHS:a?@_FC3AgnBCdnfnDEFGbnHIJKLOoenMNOPkNQRZ8STUVWonXYZ4Ejn[\mnkn]pn^_`qnainbcvnt1dehnfg-Hlnh`>ijklmn[9opqrstuvHKwd6F=/K?@ABCDEFGHI{=JKLzn_JMT1NOFIrCx5P|nQ]9RST,;UV{nm?WXYn?!o#oZ[\]{>^"o$o_`S6aEIbcb<#O~nx:?Ode&ofg%o'o}nhijiFUEklmWDn,oopqCC(or)ostuvw-7x+oyz{|}08~!*o"a>#$%&'()y3*+,0o-?:yA.JD/01234;35;6.o/oCD-o7891o:<7o=>?@:oABCDE9o-EF2o3o6oGH8oIJ@6K;o5oLM4oOPNQRSTU?oV@oWXYZ[Ao>o=o\]^b>*F?@AqosoBroClIDEtoFGHIuoe:JvowoKIKLMNOPKAQR$0KBSxomI{oyo_9zoB8TUVWXEJ}o!p~o"pY!1X?|=Y4#pfG%pZ"1$pDD[MN+F|o&N18\][M^_`abcy64N(7dbB!g&p,3o?eV3(pf)p'pd7g]:c>hi#1YNjkl+p.nm*pno.p,p-pp/p0plN1p2pqI@;H}?g4:Mm28=[85pr4ps;6p3p(;s:p-juVRvw?8pwxy%NqF+1zc@6<{7J|@1mNkM;p}EE{<~!p#nN9p@pBpAp?pCpDp$%zA&b2'()Ep8L*FpGp+*O,1[HpIpJp-Np.KpLpMpOp/01D@2wL34E@56PpsHQpSsLL7RpSp8TpW39VpY?:Wp;$7<=>Xp\p?Zp@AB[ps3Yp]pC^pH0_p`pDEFd>GHapIJG5KdpcpbpqkL\JMNOepfpPQRSTUVWXgpYZhp[ip\]jp^_`abZ4cdefjkpghikllp#Gmnnp;2oqppppqr$1A6GJ:D":`9g=s\?tspvwrpBMh4RH\Fxy|?NNu[7z{|vp}up(~!KK,F"#$%&P1'wptpQIjMxp)*yp+,{pjB[3\3zp-./i42801j423?E`N4567\88|p9}p~p!q#q"qwI$q:;<%q=&q>'q?@ABCD)q(qE*qFGtHLf)?H25IJKL+qM,q,R;]SH{0N;0Ot;0K~>P-q_LQR.q\MB1A;S/qn20qTUV1qWXY3q4qZ6q2q[5q\][4^7q8q_`abcdefg9q:qhi;q=qjklq@qAqoCqB6pqrstuvs3OGGqHq{|}ZCkF~!"Iq#$}G%LBX1n6o6&sCNqp6'(o2Mq)*Kq+Lq,JqXq-./0OqPq1QqRq23Tq4Sq56Y=Uq789Wq:;35Vq<={A38>Yq?@ABCDMBZqEF-FGHI[qJ`q^qL]q_qM\qKNOPbqQRSaqTdqC6cqUeqfqhqgqiqkqjq|9VWlqXYmqZ[\]<3^_nq`aoqbcq?defpqgqqhrqsqijkb9lmtquqnvqwqopxqqr1Hzqs&I{qyq}qtu|qv~qwx!ryz{|}~!""r#$%&'()*+#r,$r-.%r/&r'r(r0)r*r+r,r12-r.r5]/r345678xd459!32:1r0r%L:;<3r4r2r5rbK=>?6r{5@ABCDEFGHIJK%OL7rMNOPQR9rSTUVWXYZ>0[\:r+J8r];rrab?rcnK-;dz:/Aefg@rhiCrjklmArnDropq8BrqErrFrGrKr*;stdBuvLrIrHrJrwx_7yz{PrOrNr|30}~!"#$%&ZrVrWrSrYr'Urb3(LO)XrTrRrQr*+,-\r./_r01^r]r23456II[rs0`r7br89:o3Mr71;dr<=>?crar-C@ABCDpKEFGZNHerIPJKLfrMgrRNOQSTUVhrWirX;DYjr7HorkrlrZ1KDLPF[\^prqr>Fnrmr]*2_yrxr`au1bcdvrursr{3rr2<)2efghijc9km|r{rzrnowrl}rp~rq%s$srs&s-1!s"stt99Lvu#swxyz2K+s{'s|},s~!"#$%)s(s&'(\7)*+,-.-s/.s/s0*s12tr30saD44s55s3s672s8s81s6s9:;7s:s<=>?9s@ABCDsIIOJK;skBm:?sLNOMPQRSTUV@sAsWXBsCs48DsYZ[Es/<\Fs]^_`aGsHsIsbcLsJs?@ABCDns7cZlmposEpsFGHIJKLrssstspNqsusvsMNxswsOPQRSzsTU{sysVW6NXYZ[\|s]^}sTc_~s`abc*!t!p!s!u!J!K!v!\!$!%!?!0#1#2#3#4#5#6#7#8#9#'!(!c!a!d!)!w!A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#N!O!0!2!.!a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#P!C!Q!1!o!m\Hn4pbpp_q;rstuvowy{}pppdXXXXPPLH.    "67rpljjjjfnwN  6<^%"\& %      00;=[]0 0 0 0 0 00000 `"f"g""4"B&@&2 3 ! &&%%%%%%%%%%%; 0!!!!0" """""*")"'"("`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$`!a!b!c!d!e!f!g!h!i!I33"3M33'3363Q3W3 3&3#3+3J3;33333333{300!3!!22222122292~3}3|3R"a"+"."""" """5")"*"~H܄Op1fhfE_(NNNOO9OVOOOOOO@P"POPFPpPBPPPPJQdQQQQRRRRRSS$SrSSSSTTTTUYWeWWWWXX YSY[Y]YcYYYV[[/u[[\\\\']S]B]m]]]]!_4_g___]````` a`a7a0aabbc`dddNeff;f f.ff$fefWfYfsffffffg)fggRhghDhhhiii0jkjFjsj~jjjk?l\llollmmommmmmmm9n\n'nz-~z ~304050;0<000"""" ""##"""%"&"))0000b"C"E"H"v"w"!n&k&l&i&%%%%!!!!!!!!!4)5))%=0FE%" "5!!3!'!0 ))K0M0O0Q0S000000000000d&`&b&f&a&e&g&c&$$$$$$$$$$&& 0&&&&&h&%1111111111111111###############0000""S!T!U!'##$#Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2222222222222222%%%%< G H I >? *jL+kMA=Z`^dy}{B>[a_ez~|T9 CGPXnpbU: DHQYoqc$4\l %5]mq~lnyVs}{m_raKp'fSW`SRhXuY\^PodTQReUzgZpqrsa?  %,9 =)/$0<4*:;v'w'x'y'z'{'|'}'~''$$$$$$$$$$p!q!r!s!t!u!v!w!x!y!z!{!$$$$$$$$$$$$$$$$$$$$$$$$$$2222222222222222222222222Q B `$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$`!a!b!c!d!e!f!g!h!i!j!I33"3M33'3363Q3W3 3&3#3+3J3;33333333k!{300!3!!22222122292~3}3|3."""V'&O4(N/N0NNNNNO O`OHOIOVO_OjOlO~OOOO0OOPPPP'P.P@P;PAPPPPPP1QQ QQ5QJQ2UQWQ4QQQQQQR4RRIRWRaRRR3RRRR4RRSSS5aScS}SSSST'TMTTkTtTTTTTTTTU+U5UPU^UUUU6UU7VV;VIVvVfV8oVqVrVVVVVVVV W!W/W3W4WpWwW|WWWWWWWWWWW XaXdX9|XXX:XXXXXXX YA]YmYYYYYYYZ#ZgZmZwZ~ZZZZZ[%[]RA[V[}[[[[\\#\+\7b\;a?aa@"b>bCbVbZbobbbbb cc9cCcec|ccccdd"dydQd`dmddddddddd"e)eAgeeBf fff:f"f$f+f0f1f3ffHfLfYfZfafefsfwfxffCfffff";fffg)3gfgGgHg{gggggggggghRhh,h1h[hrhuhDhhhhhhhhhh iIi5iBiWicidihiiiii;;iiiiijj;j>jEjPjVj[jkjsjjjjjjjj<kk,k5kFkVk`kekgkwkkkkpkkkkll3lYl\lltlvlllllllllllmm.m1m9m?mXmemEmmmmmmmmmmmmmF4nDn\n^nnnnnnooG*o/o3oQoYo^oaobo~oooooooooooooopp(pJp]p^pNpdpuppppppppq+qq q.q0qFqGqQqHRq\q`qhqqqqqqqqrrUrVr?>rrrrr's(sPsfs|ssssssssssssst tttJ&t(t*t+t,t.t/t0tDtFtGtKtWtbtktmttttttttttttttttttuu/uouyuur?uuvvvvvvv-v5vCvKvdvevmvovqvvvvvvvvvvvvvvv ww4w6wFwMwNw\w_wbwzwwwww-xCxNxOxQxhxnxKxxxxyxy.y1y4yLMEyFyNOP\yQyyRSyyyyyyyyyzT9z]zmzUzzzzzzz{-{;{G{N{`{m{o{r{{V{{|1|| |3|6|dBY|m|y||||||||}}}}#}1}A}H}S}\}z}}}}}}}}}W(~~~~YG~R~a~~~GZ[&57<ʀ׀J`ghmʁρׁ\SD[D`tƂՂb"-:CGQU}ǃσу _H_ps„2#/Ydz˅΅)8W[6bElu qEև ʈΈ`'029@aԉ"7GN]auyЊߊ"bcFTYiIhde΍э׍ #=p{DH-6T-gĐŐǐאݐސ&"#'/14=H[ב89:<@COx’˒̒Ӓ!%HIJdejpƓޓߓ3Jckqr˕ЕӕIڕޕXҖޖh3;MNOZnsɗޗۗi +0jRSVWYZelȘX$-.8JNRÚΚ֚ L-^yfruΛ#AOPScewCGRcp|ם|Þў9WY[\w^&vk~H/}!~+v:+Hv9~B~|A|!~!~l!~(!~!~!~\!~U~l'~!~؎!~!~P!} !~Ƒ!~!~>!~!~!~NNN)N+N.N@NGNHNQN4ZNiNN,4.4NNNNNNNNNNOOdO7O>OTOXOwOxOzO}OOOOOOOOOOOOj4OPPPPP"Ph4BPFPNPSPWPcPfPjPpPPPPPPPPPPPPPPPPPPPP4QQQ`QsQQQ4QQQ4QQQRRRUR\RlRwRRRRRRRRRR5RR S S$S5S>SBSgSlSzSSSSS]5^5SSc5SSUT$T(Tn5CTbTfTlTTTTTTTTTTTTTTTTUU U^I^\8V^a8k^l^m^n^^^^^^^^^^____G_c_r_~______8__________9`"`$`9L``````````````aaaaa:ao9AaFa`a|aaaaaaaaaaaab#b)bFbLbQbRbabdb{bmbsbbbbbc cc2c5c;chDhEhIhLhUhWhw;khnhzh|hhhhm;hhhhhhhhhhhhhhhhhhhii;;;i;Fiiiliriziii;iiiiiiiiii0jiiii;iijjj2j3j4j?jFjIjzjNjRjdj~jjj;jjjjjjjjjjjjjjj kkkkk&I+r4r8r9r,NBrSrWrcrnrorxrrrrrrrr`>rf>h>rrssss>9s,s1s3s=sRs>kslsnsosqswsssssssssssssssssssstst$t1t9tSt@tCtMtRt]tqttttttttttttttttttttt u$u*uW?=u>u@uHuNuPuRuluruquzu}u~uuuu?uw?uuuuuuuuuuuuuuuvvvv?vvv%v(v}@}G}BY}Z}j}p}B}}}}}}}}}}}}}}}}CX~~~ ~'~,~E~s~u~~~~~+C~~~CC<;>CDO4Racdm}~{Q $,0Cfqu{ŀՀ؀ C5C$',=DiDD"DÁցہ!"24QS^ab{}Džʅ؅م߅!$'9<@ SVowz!ÆцՆ׆憸E!#1:>@CQXder|E·߇ (.2<FJX_dio҈шӈۈAF7BEIeFb։؉뉡FF!5>EMX׊  -C GQ^v9=EGOTWimsdG֌Ռٌ lƍȍٍ G!"'H69KTblmoюԎNH+@JXfƏ$ʏ͏ӏՏ 7CD]HÐȐܐߐ79:FGWYadtyÑđڑ 3BGJNQVY`aegh|}ƒΒВגْ ')GQWZkqsǓܓ 24;Emoxyȕ,34)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)z):*I*!*,*<*K*Y*_*=*L*@*O*P*x)})>*M*?*N*Z*`*[*a*}*v){)\*b*;*J*$*/*#*.*A*Q*B*R*z*y)~)C*S*++*+9*H*D*T*%*0*]*c*'*3*&*2*G*W*(*4*w)|)^*d*E*U*F*V*)*5*+*8***7*)+$+o(p(q(v(w(x(y(z({(|(t(u(E+3+9+:+%+?+n*&+.+1+2+u*(+y*6+<+"+B+,+j*t*k*4+{*e*v*o*/+l*A+s*p*g*|*q*h*'+m*-+5+f*;+x*r*@+i*!+~*#+w*>+=+1*S+T+U+V+"*X*-*6*q+a+b+c+\+Z+_+}+[+W+m+Y+^+]+x+y+~+j+v+w+k+l+r+g+o+z+h+p+s+u+i+{+|+t+n+R+Y&r(s(F+G+P+Q+|#@#k(X+~,l(m(n(},!)]#_#b-d-`#\#x'y'z'5-6-7-8-9-:-;-<-=->-?-W-5,6,7,8,9,:,;,<,=,>,?,@,q"'#%#&#(#)#+#,#*#-#G"F"[#x-T"U"s-l"m"n"k"o"p"B"C"D"E"Q"R"S"y-v'w'H"I"|'B'C'D'E'F'G'H'I'J'K'L'M'N'O'P'~'}'!-"-#-$-%-&-'-(-)-*-+-,---.-/-0-1-2-3-4-A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,+,,,-,.,/,0,1,2,3,4,Z&[&\&]&^&_&`&a&b&c&m&"#!#$###;#g(h(i(j(?#h&i&j&k&g&d&e&~-:&=&;&@&9&>&<&?&l&}"{"|"z"{'}-!,",#,$,%,&,',(,),*,.#/#V"W":#}#~#Z"["X"Y"`-a-f&3"4"5"6"7"<#t$u$v$9"{#r's't'u'8"n&o&p&q&r&s&t&v&w&y&z&{&|&}&~&j-k-l-A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(e-f-g-h-i-P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^([,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,q,p,s,r,o,F-J-A-D-B-L-K-E-M-G-O-@-N-C-H-I-_-o-n-m-S-T-P-Q-R-V-U-^#c-#.-23^V~S.+h/[.H]^ag#&/8BJy?CAW#%)(,_O>oOVY\^oqty{;FJ`[_q6|.24Iume(),4~u!vH]:vw;Bq~@Tpw(fw?ABIP4MxFH\gl"-9dtw}37GKHSWmy+6;N]a>BHJLOYzZzlnw524YTmnQ{Ol`{$:CNSk)?IK|\'X}jpux7U&(*1>~?*-K`"#$$.%&.'%.&.()*,/0'.145789:<(.;=>).*.?+.,.@BC../.D0.E1.-.A2.3.GHIJ4.KL5.M6.7.NPQR9.STU:.O!.WX;.<.=.YZ>.[\]?.@.B.A.C._`abcdefgijkD.lmnhoqrstuE.xG.z{|H.}F.vK.J.!L.#$M.N.O.Q.R.&(t)*,T.-.0U.V.W.X.Y.34Z.56\.].7^.9_.:~/`.;<>=a.@BCDEFb.Gd.e.If.g.i.Kj.k.l.LMm.NOPQo.p.TUVq.r.s.Wt.XZ[_`bcu.~Oev.fhw.dijy.kz.{.|.lmn}.x.o~.p!/qrstuv"/xyz{#/|}~$/%/&/!"$%'/(/'()+)/,*/-+/.-/345./6079;>0/1/?<@A2/CDEF3/'tGH5/I7/8/9/4/KLM:/NO;/P/S?/@/TUVWXA/ZC/[]D/E/F/_`abdeG/fghH/iI/mJ/noplM/N/O/sP/qvQ/wR/xS/T/z{|U/}V/~!"#$&'X/Y/([/\/)*+,-./]/_/0134b/a/c/d/e/5f/6789:g/;<=@BEi/Fj/HIJk/l/Km/LMn/NOo/p/PQRSTz~XYq/Zr/[\]^s/t/u/_v/w/`ax/bcdy/efghiz/jklmonpqrs|/}/utUOvwVOxyzWO{|}XO!"$&'YOZO*+-[O\O]O.^O/{~1`O23456dO9<=eOfOABgOCDhOFGiOIjOkOlOmOLpOMOPQRqONSTUsOtOvOuOWXwOZxO]_`abyOzO{Ocde|Og}Ohijk(tmnpr)ts*tuvwxz+t,t|}~!|~#$%&-t'(/t)*0t,1t2t3t-./4t15t6t7t8t9t:t2;tt4?t5@t6At78BtCtDtEt9:?@GtHtAItBCDEJtKtGLtHIMtNtOtKLMNQtRtOQRSTStTtUtUVVtWXYWtZ[\]Xt^YtZt[t_abcd]tfghijkl`t_tnopqsbttuctdtvwxyetftz{}gt~|ht!"it#jtkt%<'(mt+,nt-./ot013pt6qt7:8;=>?@rtABstCttu%&'(?u@uAu)*Bu+,-Du/0Eu1Fu3GuHuJuKu5Lu7u789Mu;OuQuRu>?@APuEFSuTuHUuVuWuLMXuZuNOP[uQRSTYu\u]uKX_uY`uZau\]^_`ab^ucdbufgcuduhijklnopqfugurshutuz{iu|}ju~!"#ku$lumunu%vou&'pusu+tu-quuuvuwuxu./012yu356{u7|u89:;<}u=>"vD#v$vEFGI%v&vJ'vK(vLMAOPQ*v+vR,vSTV-vW.v/vX0v1vUZ[3v\^4v5v6v_`7vbcdfegh8v9vklmnoqrstvvx?v@vyAvzBvCvDv{|Ev}~Fv!GvHv"$%&'(JvKvLv)*+,-Mv.Nv/0OvPv12356Qv7RvO8TvUv9VvWv:<=>XvYvSv?@[vA\vCDE]vF^vGH_vZvJavKbvLMNcvPdveevQfvgvRSThvUVWjvkvlvXYZmv[nvaovbcpvdqvfghirvsvtvuvjklvv]noprxvmsyvtuvwxyz{|zv{v}!"|v}v#$~v%!w&"w')*+,-#w.$w/&w'w(w(01)w34*w5+w6,w-w79.w/w0w1w:2w;8=3w>4w?A5w6w<7wBC8wDEF:w;w9wHIwNOPQR?wSBwU@wAwCwVWXYDwZ[\Ew]^_bFwGwcHw`fghIwJwiKwejklmnoLwNwOwMwPwqQwrRwSwtsTwVwuWwvXwYwy[w\w]wxz{|}~!_w^w`w#$%&awbw'cw*+,-/0dwew124567gw8hw:;<=iwjw>@CDkwEFGHmwnwKLMJNpwOqwQRTUVWrwXYZ[sw\]^twuwvw_ww`xwabcdefywgzw{w|wh}wi~wjlm!x"xk#x$xn&x'x(x)x*x+x,x-xoprs.x/x0x1xtuq2xv3x4x5xwxy6x7xz8x=x|}9x~:x;x!"x?x@x$%Ax&('BxCxDx)*Ex+-,/FxGxHx123Ix6789:;<=Jx?>Kx@ABCELxGIJKLMNxNOPQROxSTUVWPxQxXZRx[^SxTxYUx_`Vxb}~cWxeXxdhYxjZxk[x\x]xm^x_x`xnaxobxcxqpdxrsextfxgxvhxixjxkxxylxmxnx{ox|}px~qxrxsxtx%uxvx&wx')xx*+yxzx./012{x34|x5678:;<>?@ABCD}x!yE"y#y$yF%yG&yIJLMNK*y(yOPQRSTU+yV,y.yWXYZ-y\]/y_0y^1y2y`5y6yabc:yef>yghiByjklCymDynopEyFyqrHysIyJyKyLyxyz{|~!Ny"#$%&Oy'()*Py+,-Ry./Sy01Uy4Vy568Wy9:;Xy?'z@AC(z)zDEFGH*z+z,zIJ-zKLM0zQ1z2zRSTU/zVW4z5z6z~~XYZ[\7z8z^_`cbdef9zgjlmnopqs;zvz{?z@z|}AzBz~!Cz"$#%&Ez'(Fz)*GzHzIz+,-./012346Jz7Kz8Lz9Mz<=;@NzACDE?GOzPzQzRzISzKMNPQTzRSUzVzTWzUWY[\^`abdefighkmoq[zr\zvxyz{^z|_z`zaz}~bzcz!"dz#$ezfzgzhz%&'izjzkzlz()*,-nzoz.pz/qz0rzsz+tz1mzJuz3vz6wz78xz9:yzzz{z|z}z;~z"{?#{@${%{&{ABCEF({GHIJKLM){O*{+{PQRS,{V-{W.{/{0{X1{2{Z[\U^_`abcdef5{6{ghi7{4{jokpq8{rst9{l<{vwxyz={>{{|}?{;{@{#$%&A{B{'()*+C{,E{-F{G{H{.D{J{/012K{L{457h/9:M{N{P{R{;S{<=>?@AT{BCDFGU{HIJKLMNV{W{X{PQY{RSTUVWXYZ[\]^_`aZ{bc[{\{ghijf]{^{_{mopa{rtuvwxb{yqz{c{d{|e{}f{g{~!"#%&'(+-h{.i{/012j{k{536789m{;p{q{r{n{s{t{u{=v{w{?@ADEFGx{HIJz{KL{{MOP|{QRT}{U~{W!|X"|YZ#|[$|\%|&|'|(|^)|]_`*|a+|,|-|bedfghij1|l2|3|m4|nopqrst5|uvx{|6|}~!7|"#$'&(*+-,.9|01:|;|<|34>|?|5678@|:;A|B|C|<=@A>CDD|EFE|GJKF|LMNOPQG|H|RSTUVWXJ|Z[]L|_`aM|bN|O|cdP|egR|hS|jlmopqrsT|U|V|tuvwW|xX|y{|}"Z|#$[|\|]|^|&_|(`|)a|*b|c|d|+e|-f|g|.3h|1i|045267k|l|m|89:n|o|p|q|r|s|;<=t|>?u|@Av|BCDEw|FGx|Hy|Iz|JK{|LM||N~|!}Q"}R#}}|S$}T%}UVX&}'}(})}*}Y+}Z[\,}]^_`abcd-}ghi.}jklmnopstu/}v0}1}wx2}yz3}{|"#$4}%5}&}'()6}7}8}*+.9}:};}/01<}=}>}2?}3489:@};5A}B}@C}ABD}E}CD?&~?@ACD'~EFGHI(~JKMNO)~PQRSTWXZ[\^_`abcdefgh*~ijk+~lmnopqrstuwxy,~-~z{|}~.~/~0~!"1~#2~$3~4~%'5~)+6~7~-8~./09~2345:~;~6<~789:;=~@@~ABB~CDC~ED~FGA~E~F~G~H~HI~IJMNOJ~PK~RSL~TUVXWQ\M~ZN~O~^_`abcP~defhijQ~knoR~S~T~qrsltuU~V~vwxyz{|}W~~!"$#&'(X~Y~,.Z~[~/\~01]~34^~678_~9:`~;a~<=c~?@d~A>b~BCDEe~FGHIg~JMh~LNi~OPQRj~TUVk~l~Wm~n~o~p~Yq~r~[\]^_as~bcdet~fghijklu~moqstuv~w~x~y~;v.tNuO{Iv$~]}K/W/rOyzuZwow#=#0"/"1"p~tpP*>?.ps6j b#nd>41VLaon W9lJp6x \2;vwXT:"z fH0    zF  "$&(* ,~.x0B2 (4679;=?A CExGnIBK,MO@P;QS UWY~[ f]b_Da.c,eg8h9i kmoqsuzwrXxx&yz|n~XH@& JʌjEF =n 415?7c7%~0ll"r$}¤#xn*u#`2d"{.z6!v2}z"y*5sD~!sī)zh%~!~ح!qz"v$,p%v".!+.6Fpyw"%'128?AJRSY\TOw*:21=YB/\c^kjrL/tu%2`/>GcOUV{/~078;:E@?HJKnO[fl"S+0Pemr$2)*549V$}:u#:B==@R]^nystwu}{"$'/.54=BOikry5:FVXZ]_cjps]zDDN3{]u!"~I{36edkns*),l{4<>BVcwyz%/29BHI|Y^Q|fkz~!,/POWefqr~!-,67>=NOWZ\]aegiq"#8BLVY]v,KYL][gpm%+)52f~XZnprvX +.JJ0 ̼((μOOм6|z|Ed __"pmntvGRBVV-:34>{{[F$rJ4Z 8G* $=FHH>~~@B:<)68:MM<VoprtpJU"Ln.qKd.p#" pLL~~Qz)@e0 9VIR8w24 UkFH~2P"$rr&(770K00M00O00Q00S0000000000000000001TTYYZZw{w~4xx8Df\)D+T8+TH+TI+Y0+YL+YM+ZC+ZN+ZO+7+J+K+`+f+d+e+K0+$0K0w$M0-$0M0x$O0/$0O0y$Q01$0Q0z$S03$0S0{$0+%00w%0-%00x%0/%00y%01%00z%03%00{%0;%00|%0D%00}%0H%00~%1u&01x&,expHpX`P DH|(c80@( `000`0cshift_jisx0213euc_jisx0213euc_jis_2004shift_jis_2004euc_jpcp932shift_jiscp932extjisx0213_pairjisx0213_empjisx0213_2_empjisx0213_1_empjisx0213_bmpjisx0213_2_bmpjisx0213_1_bmpjisxcommonjisx0212jisx0208000% & 0 %"<<"    000 0 0 0 0 00000`"d"e""4"2 3 !+!B&@& ""#""a"R"; &&%%%%%%%%%%%!!!!!0j"k""=""5"+","" """""*")"'"("!!""^.""" !0 %%%%d&`&a&e&g&c&"%%%%%%%%%%%h&&&&& ! !!!!!m&i&j&l&22!3"!33!!   !"#$%&'()*+,-./0123456789:;=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~11111111111111111p!q!r!s!t!u!v!w!x!y!`!a!b!c!d!e!f!g!h!i!%% %%%%%,%$%4%<%%%%%%%#%3%+%;%K% %/%(%7%?%%0%%%8%B%%%%%%%% %%%!%"%&%'%)%*%-%.%1%2%5%6%9%:%=%>%@%A%C%D%E%F%G%H%I%J%333!3333333333333333333333333333333333333333333333333333&!3333333333333333333333&2?ARfJ`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2$$$$$$$$$$$$$$$$$$$$$$$$$$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$S!T![!\!]!^!'138@BSgKI222222222 2 2 2 2 222222222222222$$$$$$$$$$$$$$$$$$$$$$$$$$t$u$v$w$x$y$z${$|$}$~$$$$$t  A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO  $,-/0189<@KMTX\pqtwxzĬȬ̬լ׬  ),-458DEGIMOPTXaclĻȻлӻ $%')-0148@ACDEILMP]ļͼϼмѼռؼܼ $,@HILPXYdhԽսؽܽ DEHLNTUWYZ[`adhjpqstu{|}оѾԾ׾ؾ @ADHPQUſ̿ͿпԿܿ߿DEHLTUWXY`dfhpų̴̵̸̘̙̜̠̩̫̬̭̼ $(,9\`dlmoqx͈͔͕ͤͥͧͩ͘͜Ͱ  !$(0135XY\_`ahikmtux|΄΅·ΉΐΑΔΘΠΡΣΤΥάέ $,-/018TUX\degipqtxπυόϡϨϰ-458aha9eiouvv{˄U[QW|(PSE\]bncdd np[yݍ}E~NNeP]^aWiqTGu+^NPpg@h QRRjwԞR/`HPacdkLp/tt{PŃܕ(.R]`bOIQ!SX^f8mprsP{[fSckVNPJXX*`'abiA[}_NPTU []]*eNe!hKjrvw^}N߆NʐUNEN]NNOwQR@SSSTVuWW[]^abQeggiPkkkBlnxprstwwvz}  ߂b3dҙEם W@\ʃTzو͎XH\cz[_yzz&P8RRwSWbrc km7wSWshvՕ:gjpom̎Kwfxk<S-WNYcisExzz|us5RGWGu`{̃XjKQKRRbhuiPRRae9hi~tK{냲9яI NYdfj4tyy~_ & OS%`qbrl}f}NbQwOOvQQUhV;WWWYGYY[\]]~^_beegg^ghh_j:k#l}llms&t*tttxuuxxAyGyHyzy{}}-OHw!$Qe}vO TbThёU:Q Za bbfVq OczcWS!g`isn"7u#$% }&'rVZ()*+,CN-gQHYg.sYt^dy_l`b{c[[R/tY)_`012Yt345678љ9:;<=>?@ABCoDE`FGfHI?\JKLMNOPQZ%{g}RSTUVWXY<\l?SnY69NNFOUWXV_eejkMnwz|}ˆ2[dozsuTVUMWadfm[nmoouCANJZlSuT{]UXXXb^bdhvu|NWnW'Y \\6^_4bds۞[_`PR0RW5XWX\`\\]^_`ccdChhjm!nnoqvywy;zHSMvܗkpXrrhscwy{~X`feeflqqZmNzNQQR TaqgPhhm|ouwzc\Qe\gguzsZF-o\Ao _]Yjq{vI{'0Ua[iv?\mpsa}=]j^NuSkk>pr-LRP]d,ekoC|~ͅdb؁^gjmrtotސO ]_ QceuNPiQQhj|||oҊϑO7QRBT^na>bejo*y܅#bjΞRfwkp+ybBab#e#oIqt}o&#JQRR mpˆ^eko>|usN6OV_\]`s-{F4HaOoyR`ddj^oprv\2ouxy}Ƀ֊X_'g'pt`|~!Q(pbrxŒڌNP[^eqBvwJ|'XAZb\jmo;v/}7~8KRegiAmnp t`tYu$vkx,^mQ.bxO+P]m}*_DahaRQQ^iz}uO)RSTUe\`Nghlmrrttbul|yψ̑БɛT~oqtWgm3t,xz {|idjtuxxT[U^ oNMS)Z]N_ba=ciffn+ocpw,;E;Ub+gl jzNY__g}T+WYZ['fghkdqu㌁EL@_[lsvv QMQQRhlw w}}bnQ T}Tff'invw„iOQRY=^Uaxdydfg!jkk_rarAt8ww((glgrvfwFzkl"Y&goSXY^c4fsg:n+szׂ(R]aa bbdeYifkk!qs]uF~j'aX؞PR;TOUevl } }^RlirsTZ>\K]L__*ghcieee fginx!}+*2 POcW_bcogCnqv̀ڀ)Mj/OpO^g"h}v~vDa^ jiqqjudA~CܘOO{pQ^h>lNllr{l:tPRXdjtVvx9e^S_%RwINPuQ[\w^f:fghpuuyz' O!X1X[nfekmzn}os+u܈\OPS\S[_ gyy/9;,gvNOIY\\\gchpq+t+~"Ғ NNOPVRoR&TTW+YfZZ[u[[^fvbweenmn6r&{?|6PQ@tܑDٙSR)TtVXTYnY_anbf~lqv||}g[O__b)] gh|xC~lNPS*SQSYbZ^`aIbybegikkkklh5tuxxyy|}>船l^ۘ;V*[l_ejk\mop]rsӌ;a7lXMNNNN:Oy@y`yy{}r} фdž߈P^܌fߙJRigjP*Rq\ceUls#uu{x0wNdk^q NkIghnkco NPPQFUUV@[\\8^^^^`QhajXn=r@rrvey{saތ^XtUlaz"}rrru%um{XX]^^_U`bcMefffhhr^tn{n}}r͞ YmY-^`fsfgPlm_owxƄˑ+NPHQU [[Gb~ee2n}qtDtttlvy}U~z9ux%MhSQ\Til)m+n ;-gaRfk~ ]emqnWY['``bf_f)ssvwl{VreNRrkmz9{0}oS/VQX[\\]@bcd-fhlmnppq&uuuv{{+| }9},m4 a7Ol\_gm|~k[] d\ᘇs[`~gm 7RpQpxpבOSUVWXZ[\\%^a bKbcd6exe9jk4lm1oqrxstt&vawyWzz|}}a~)1ڄꅖ8Bl֖ӚS~XYp[[mZoq!tt]__B`ehoiSjk5mmsvwM{}#@cbĊ bSe]']i]_thob6rNXNPRGSbfi~^OS6VYZ8\N\M\^_C`e/fBfggsw:ÿ́fiUzW[_o`b ik\nq{UXߘ8OOO{T Z[T3TUbXXgYZ[`aVeedfhZlopqRs}{2K\lDss:netviz~ @QXdtupv͖T&ntzzنxIZ[[hicmst,tx}UL.f_egjls-PZjkwYl]]%sOuPQ/X-YYY[]bdddfHjqdtzzG~^~p YR~a2ktm~%OPQRWX[^Baimgnnqbt(u,us8Ʉ ޓNQOvP*QSSS[[$\aae[rs@tvPyyy}Յ^GꑅRg_e1f/h\q6z NRjkoqSK1NqĖCQSTWWWZZ[(`?acl9mrnn0r?sWtтE`bXg^MOIPPqS WYZ \paf-n2rKt}Àf?_[U˗OsNOQjQ/UUz[[|^}^^``a ac8e gggaibil'm8no6s7s\t1uRv}8Ոۊ0BJ>zIɑn XkAQkY9\dosbph}Wi`GakYNTm-pclQaOPQ[aadikuwdcpNN O7YY]_[_!`>rspuuy 3Q 7pvNNRpSTVY[__nnj}5mwNZO~OXen8NXYYA`zOÌeQDSNiRU[N:RTYYP[W[\[c`Hanpnqstux+}(Ʌnj̖\ORVe(f|pp5r}Lrq[hkzov\f[o{*|6ܖNN S4XXXlY\3^^5_cfVgjj k?oFrPstz|x߁灊l#υ݈wQT(W[MbPg=hh=nn}p!~ KN-r{͊GONO2QTY^bugnijlnr*su{5}W[Ζ_R TZ[XduenrvMz{M|>~{+ʌd_iѓCOzOPhQxQMRjRaX|X`Y\U\^`0bhkloNq t0u8uQurvL{{{{~n>I?"+ZkR*bbYmdvz{v}`S\^8op|ޞczdvNNN\PuPHTY[@^^^_`:c?eteevfxfghijck@lmmn^nppss:u[wxy z}z|}Gꊞ-Jؑf̒ V\6RR|U$X^_`chomy,{́Dd=LJOFQQR2V_k_cdeAfffghhionogqq*rt:wVyZyy zz||D}p~T m;Ֆe|ÓX[ \RSbs'P[_`kahm.t.zB}}1~k*5~POPW]^+cj;NOOOZPYĀjThTUOY[]^]f1gg*hl2mJnopsuL|},}}ۆ;p31NRDЙz|OQQW[\Yf=jZmno qouz"!u˖-NNF͑}SjkiAlzXafbpuuR~IKNST0W@W_ccod/eezfggbk`ll,ow%xIyWy}󁝂rvz7zT~wUUuX/c"dIfKfmhik%mnshtt[uuvwwy ~~/:ь뎰2csOSYZ^Nhtuyz̍폟egWWo}/Ɩ_aoNOPSUo]]!kdkx{IʎnIc>d@wz/jdoqttz|~|~ }L9R[d-g.}PSyXXaYaaez P!PuR1UUXY`Sbb6gUi5@ݙ,PSSDU|WXbdkfgoo"t8t8QTVfWH_aNkXpp}jY+cw=TX-di[^oniLQS*Y `Kakpll{΀ԂƍdodeNQTW_avhuR{q}Xi*9xPWYYb*]ayr֕aWFZ]bddwgl>m,r6t4xwۍ$RBWgHrt*kQSLciOU`WelmLrrzm_opaOOPAbGr{}MjWs^g U T[c^^ _e=[HOS SSTTW^`bbUclfmu2xހ/ނa E^ffprO}Rj_SaSgjothyhyǘĘCTzSiJ|_buvB9S<__lsbuuF{ON< NUOSY^0flUtwfPXx[P[h``eWl"oopUPӗrRDQ+TTcUUjm}fwyTTv䆤ԕ\N OYZ]R`bmgAhl/n8* NUPTWZYi[[awiwm#pr犂홸R8hPx^OgGLNTVs WSVX[1aj{sҎGkWUYrkiO\&_a[flpsss)wMwC}b}#~7R IoQ[tz@ZOTS>Y\>cymrϒ0NDQRWb_lnpPppqsitJanQW_`gafYJNNN|TXX}Y\'_6bHb fgfkimmVnnooo]pr%tZttv\y|~ဦkN_twje`bwZZfm>n?tB_`{T_^ll*mp}y ;ST[:jkpuuyyqAt d+exxkz8NUPY[{^`cakefShneqt}i%;mn>sAʕQL^_M``0aLaCfDfil_nnboLqtv{'|RWQÞ/SV^_b``affgjmoppjsj~4ԆČRrs[kjTV][Heefhmm;ruMOPST!~`?!~@!~@!~A!~PB!~ C!~C!~D!~@E!~E!~F!~tG!~0H!~H!~I!~dJ!~ K!~K!~L!~TM!~N!~N!~O!~DP!~Q!~Q!~ !"#%&'()*+.234567:;=>?ABCDEFGHIJLNOPQRSUVWYZ[]^_`abcdefghijklmnorsuvy{|}~¬ìŬƬǬɬʬˬͬάϬЬѬҬӬԬ֬ج٬ڬ۬ܬݬެ߬ !"#$%&'(*+./0123679:;=>?@ABCFHJKLMNOQRSUVWYZ[\]^_`bdefghijknoqrwxyz~­íŭƭǭɭʭ˭̭ͭέϭҭԭխ֭׭ح٭ڭۭݭޭ߭  !"#$%&'()*+,-./23569;<=>?BDGHIKOQRSUWXYZ[^bcdfgjkmnoqrstuvwz~®îŮƮǮȮɮʮˮήҮӮԮծ֮׮ڮۮݮޮ߮  !"#$%&'()*+./1356789:;>@DEFGJKLMNOQRSTUVWXYZ[^_`abcfghijklmnopqrstuvwxz{|}~¯ïįůƯʯ̯ϯЯѯүӯկ֯ׯدٯگۯݯޯ߯  !"#$%&')*+,-./0123456789:;<=>?@ABCFGIKMOPQRVXZ[\^_`abcdefghijklmnopqrstuvwxyz{~°ðưʰ˰̰ͰΰϰҰӰհְװٰڰ۰ܰݰް߰  !"&')*+-./01236:;<=>?BCEFGIJKLMNORSVWYZ[]^_abcdefghijklmnopqrstuvwz{}~±ñıűƱDZȱɱʱ˱ͱαϱѱұӱձֱױرٱڱ۱ޱ !"#$%&'()*+,-./012356789:;=>?@ABCDEFGHIJKLMNOPQRSTUVWYZ[]^_abcdefgjklmnopqrsvwxyz{}~²òIJŲƲDzʲ˲ͲβϲѲӲԲղֲײڲܲ޲߲  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSWYZ]`abcfhjlmorsuvwyz{|}~³óƳdzɳʳͳϳѳҳӳֳسڳܳ޳߳ !"#$%&'*,-./012356789:;<=>?@ABCDEFGHIJKLMNORSUVWYZ[\]^_bdfghijkmnopqrstuvwxyz{|}~´ôŴƴǴɴʴ˴̴ʹδϴѴҴӴԴִ״شٴڴ۴޴ߴ  !"#&+,-./235679:;<=>?BFGHIJNOQRSUVWXYZ[^bcdefghijklmnopqrstuvwxyz{|}~µõŵƵǵȵɵʵ˵εҵӵԵյֵ׵ٵڵ۵ܵݵ޵ߵ  !"#$&'()*+-./012356789:;<=>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`abcefgijklmnopqrstuvwxyz{|}~¶öĶŶƶǶȶɶʶ˶̶Ͷζ϶жѶҶӶնֶ׶ضٶڶ۶ܶݶ޶߶  !"#$%&'*+-.1234567:<=>?@ABCEFGIJKMNOPQRSVWXYZ[\]^_abcefgijklmnortvwxyz{~·÷ķŷƷȷʷ˷̷ͷηϷзѷҷӷԷշַ׷طٷڷ۷ܷݷ޷߷  !"#&')*+-./01236:;<=>?ABCEFGHIJKLMNOPRTUVWXYZ[^_abcefghijknprstuvwyz{}~¸ĸƸǸȸɸʸ˸͸θϸѸҸӸոָ׸ظٸڸ۸ܸ޸ !"#$%&'()*+,-./0123456789:;>?ABCEFGHIJKMNPRSTUVWZ[]^_abcdefgjlnopqrsvwyz{}~¹ùĹŹƹǹʹ˹͹ӹԹչֹ׹ڹܹ߹  !"#$%&'()*+,-./01234567:;=>?ACDEFGJLOPQRVWYZ[]^_`abcfjklmnorsuvwyz{|}~ºúźƺǺɺʺ˺̺ͺκϺкѺҺӺԺպֺ׺ںۺܺݺ޺ߺ !"#$%&'(*,-./012379:?@ABCFHJKLNQRSUVWYZ[\]^_`bdefghijkmnopqrstuvwxyz{|}~»ûŻƻǻɻʻ˻̻ͻλϻѻһԻջֻ׻ػٻڻۻܻݻ޻߻  !"#&(*+,./235679:;<=>?BFGHJKNOQRSTUVWXYZ[\^_`abcdefghijklmnopqrstuvwxyz{|}~¼üżƼǼȼɼʼ˼̼μҼӼԼּ׼ټڼۼݼ޼߼  !"#%&'()*+-./0123456789:;<=>?ABCDEFGJKMNOQRSTUVWZ[\]^_`abcefgijklmnopqrstuvwxyz{|}~½ýĽŽƽǽȽɽʽ˽̽ͽνϽнѽҽӽֽ׽ٽڽ۽ݽ޽߽  !"#$%&'()*+,-./0123456789:;<=>?@ABCFGIJKMOPQRSVX\]^_bcefgiklmnorvwxyz~¾þľžƾǾȾɾʾ˾̾;ξϾҾӾվ־پھ۾ܾݾ޾߾  !"#$%&'()*+,-./0123456789:;<=>?BCEFGIJKLMNORSTVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~¿ÿĿƿǿȿɿʿ˿οϿѿҿӿտֿ׿ؿٿڿۿݿ޿  !"#$%&'()*+,-./0123456789:;=>?@ABCDEFGHIJKLMNOPRSTUVWYZ[]^_abcdefgjklmnopqrstuvwxyz{|}~ !"%()*+.23457:;=>?ABCDEFGJNOPQRSVWYZ[]^_`abcfjklmnoqrsuvwyz{|}~ !"#$%&'*,.0356789:;<=>?@ABCDEFGIJKLMNORSUVWYZ[\]^_abcdfghijknoqrsuvwxyz{~€‚ƒ„…†‡Š‹ŒŽ‘’“”•–—™šœžŸ ¡¢£¦§©ª«®¯°±²³¶¸º»¼½¾¿  !"#&'*+,-./0123456789:;<=>?@ABCDFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgjkmnoqstuvwz{~ÀÁÂÃÅÆÇÉÊËÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ  !"#%&'()*+-./12356789:;>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`abcfgijkmnopqrsvwxz{|}~āĂ㥹ĆćĈĉĊċČčĎďĐđĒēĕĖėĘęĚěĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıIJijĴĵĶķĹĺĻĽľĿ  !"#$%&'*+-./1234567:<>?@ABCFGKOPQRVZ[\_bcefgijklmnorvwxyz{~ŁłŃŅņňʼnŊŋŎŐŒœŔŖřŚśŝŞşšŢţŤťŦŧŨŪūŬŭŮůŰűŲųŶźſ  !"#&')*+/1268:<=>?BCEFGIJKLMNORVWXYZ[^_abcdefghijkmnprstuvwz{}~ƁƂƃƄƅƆƇƊƌƎƏƐƑƒƓƖƗƙƚƛƝƞƟƠơƢƣƦƨƪƫƬƭƮƯƲƳƵƶƷƻƼƽƾƿ "#%&')*+,-./24689:;>?ABCEFGHIKNPYZ[]^_abcdefgijlmnopqrsvwyz{ǀǁǂdžNjnjǍǏǒǓǕǙǛǜǝǞǟǢǧǨǩǪǫǮǯDZDzdzǵǶǷǸǹǺǻǾ !"#%&'()*+.02345679:;=>?ABCDEFGJKNOPQRSUVWXYZ[\]^_`abcdefghijklmnorsuvwy{|}~ȂȄȈȉȊȎȏȐȑȒȓȕȖȗȘșȚțȜȞȠȢȣȤȥȦȧȩȪȫȬȭȮȯȰȱȲȳȴȵȶȷȸȹȺȻȾȿ  !"#$%&'()*+-./012356789:;<=>?@ABCDEFGHIJKLMNORSUVWYZ[\]^_bdefghijkmnoqrsuvwxyz{}~ɀɁɂɃɄɅɆɇɊɋɍɎɏɒɓɔɕɖɗɚɜɞɟɠɡɢɣɤɥɦɧɨɩɪɫɬɭɮɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿ  !"#$%&'(*+,-./0123456789:;<=>?@ABCDEFGHIJKNOQRSUVWXYZ[^bcdefgijklmnopqrstuvwxyz{|~ʀʁʂʃʅʆʈʉʊʋʌʍʎʏʐʑʒʓʔʕʖʗʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧʨʩʪʫʬʭʮʯʰʱʲʳʴʵʶʷʸʹʺʻʾʿ "#$%&'()*+,-./0123456789:;<=>?@BCDEFGJKMNOQRSTUVWZ[\^_`abcefghijklmnopqrstuvwz{|}~ˀˁ˂˃˄˅ˆˇˈˊˋˌˍˎˏːˑ˒˓˔˕˖˗˘˙˚˛˝˞˟ˠˡˢˣ˥˦˧˨˩˪˫ˬ˭ˮ˯˰˱˲˳˴˵˶˷˹˺˻˼˽˾˿  #$%&*+-/1234567:?@ABCFGIJKMNOPQRSVZ[\]^_abcegijklmnoqrstvwxyz{|}~̶̷̡̢̧̛̖̗̝̞̟̣̤̥̦̪̮̯̰̱̲̳̹̻̀́̂̃̄̅̆̇̈̉̊̋̌̍̎̏̐̑̒̓̔̽̾̿̕̚  !"#%&')*+-./012345678:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_abcefghijknprstuvwyz{|}~͇͉͍͎̀͂̓̈́͆͊͋͌ͅ͏͓͖͙͚͐͑͒͗͛ͣͦͨͪͫͬͭͮͯ͟͢͝͞͡ͱͲͳʹ͵Ͷͷ͸͹ͺͻͼͽ;Ϳ "#%&')*+,-./246789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWZ[]^bcdefgjlnopqrsvwyz{}~΀΁΂΃ΆΈΊ΋Ό΍ΎΏΒΓΕΖΗΙΚΛΜΝΞΟ΢ΦΧΨΩΪΫήίΰαβγδεζηθικμνξο !"#%&'()*+.2345679:;<=>?@ABCDEFGHIJKLMNOPQRSVWYZ[]^_`abcfhjklmnorsuvwyz{|}~ρςστφχψωϊϋύϏϐϑϒϓϔϕϖϗϘϙϚϛϜϝϞϟϠϢϣϤϥϦϧϩϫϬϭϮϯϱϲϳϴϵ϶ϷϸϹϺϻϼϽϾϿ  !"#$%&'()*+,./0123679:;=>?@ABCFHJKLMNOQRSUVWYZ[\]^_abcdefghijknoqrsuvwxyz{~ЀЂЃЄЅІЇЈЉЊЋЌЍЎЏАБВГДЕЖЗИЙКЛМНОПРСТУЦЧЩЪЫЭЮЯабвжиклмноп  !"#$%&'()*+,-./235679;<=>?BFGHIJKNOQRSUVWXYZ[^`bcdefgijkmnopqrstuvwxyz{}~рстухцчщъьэюяѐёђѓєѕіїјљњћќѝўџѢѣѥѦѧѪѫѬѭѮѯѲѴѶѷѸѹѻѽѾѿ  !"#$%&'()*+./12356789:;>@BCDEFGIJKLMNOPQRSTUVWXYZ[]^_`abcefghijklmnopqrstuvwxyz{|}~҂҃҅҆҇҉ҊҋҌҍҎҏҒғҔҖҗҘҙҚқҝҞҟҡҢңҥҦҧҨҩҪҫҭүҰҲҳҴҵҶҷҺһҽҾ "#$&'*+-./1234567:>?@ABCFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{~ӁӂӃӅӆӇӉӊӋӎӒӓӔӕӖӗӚӛӝӞӟӡӢӣӤӥӦӧӪӬӮӰӱӲӳӵӶӷӹӺӻӽӾӿ  !"#$%&'()*+,-./0123456789:;<=>?ABCEFGHIJKLMNOPQRSTUVWXYZ[]^_abcefghijklnpqrstuvwz{}~ԁԃԄԅԆԇԊԌԎԏԐԑԒԓԕԖԗԘԙԚԛԜԝԞԟԠԡԢԣԤԥԦԧԨԪԫԬԭԮԯ԰ԱԲԳԴԵԶԷԸԺԻԼԽԾԿ  !"#$%&'()*+,-./0123456789:;>?ABCEFGHIJKNPRSTUVWZ[]^_abcdfgjlnopqrsvwyz{}~ՀՁՂՃՆՊՋՍՎՏՑՒՓՔՕՖ՗՘ՙ՚՛՜՝՞՟ՠաբգդզէթժիլխծկհձղճմյնշոչպջռսվտ !"#%&'()*+,./01234567:;=>?ABCDFGJLNOPRSVWYZ[]^_`abcdefhjklmnorsuvwxyz{|}~րւքֆևֈ։֊֋֎֏ֱֲֳִֵֶַָֺּֽ֑֖֛֢֣֤֥֦֧֪֚֭֮֒֓֕֗֘֙֜֞֠֩֫֯־ֿ !"#$%&'*,./0123679:;=>?@ABCEFHJKLMNORSUZ[\]^_bdfghjkmnoqrsuvwxyz{~׀ׂ׃ׅׄ׆ׇ׊׋׍׎׏בגדהוזחךלמןנסעףxZA[Ap]A^Ah`AaA`cAdAXfAgAPiAjAHlAmA@oApA8rAsA0uAvA(xAyA {A|A~AAAAAAA|AAAxA8AAAxA8AAAxA8AAAxA8AAAxA8AAAxA8AAAxA8AAAxA8AAAxA8AAAR."4"W!'!#()!g"F!>!w)x)%"R"$!,"v),(y(v(z(/"!("(?!*(-(,)!)#)@!*)-)")$($)%)&(&)')((())())0)/(/)+(+).(.)'"0"("+"*"-")"A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%',!,",#,$,%,&,(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,Q,R,S,T,U,V,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,W,*!.!/!0!1!S"T"%!&!6"G!H!X!y)z){)|)})~)f"I!5"$'`"e"b"Y'J!w(x({(|(}(~(0%1%2%3%4%5%6%7%8%9%!%"%#%$%%%&%'%(%)%*%g!h!f!i!j!U"X"V"Y"W"!"""#"S!$"T!t!u!3"2"n!p!D!P!+!|!}!{!z!r!s!1"E!q!-!o!V!A!U!B!C!l!m!x!y!v!w!A"Q!R!g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(!&,&"&-&#&H&G&.&$&B&A&/&&&F&E&1&%&D&C&0&'&<&I&J&7&K&L&2&)&>&M&N&9&O&P&4&(&Q&R&8&=&S&T&3&*&U&V&:&?&W&X&5&+&Y&Z&;&[&\&@&]&^&_&`&a&b&c&d&6&F"a!`!C"G"H"K"J"I"L"c!b!:"9"e!d!8"7"_!^!B"[!]!\!D"E"Z!Y!O"N"P"Q"O!N!<"="@";">"?"M"["\"]"Z"!!"!#!(!4!5!6!7!8!9!:!;!*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~$1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)_"1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L(^"I'J'K'L'M':';'\']'^'6'7'8'T'U'V'W'X'!'"'#'%'+','-'.'/'0'1'2'3'4'''(')'*'='>'e'f'g'h'a'b'c'?'@'A'B'C'D'E'F'G'H'N'O'P'Q'R'S'Z'['c"l'&'`'o'a"<'m'5'9'j'k'_'d"d'n'i'ilKoRv2X[m2_>_;yt\du&s`]&axN0\*ciqzM/|!S+qQg,RyN}q?^:{9yRN+c`kzNwK%eaJLTajc\-_kK/UuVxe@^#lMi'jvi;{igLofPA^,dLXqy_N$z2f{z=zHLMoUU"SQl'dRl1v{NQP?K$m(mB^bv\mu\9`NT5t[S5V$lfdjqlK@KrljPry%l_PjgkPQ\i[L}W[aZ6V_cC^D^!Jln#S7nOxHj8n,q%qNiNpS$plagOKs)m>JotNv{^;P7Uqn(tx\'KNZf`%mrny\\y\srxytq|p=R$L6zMLzZOv8iuXNLMWQTmikJbY2}-cLV4Y'aSnCP3}dUhOCm2P~N(ZPxV}QxRxS\b]y{A]5c]mDN!Kc]]|/y{R!O(d6t~l.cmgA}bZ3Xd]opqvpzuQOZT\&\?oONY`VYTlKj?J0UiOmqOLxdmdXW'}+j2vpO=ytf[KQsQi)s`PRicZRb"vtadZUg?u"O/M#O0M~q#P/a#x&J;wjrH^SiI^^}@JjyNQTnRT#Y(}YWNw>zVOpWakExz\C]_yoge}#v|Y)}ngeUPo1M"w2q1q2M+Z'Jbc<{$Y:nSxz{$O{\cv*m!raN&z`yVlnd!yo{ky#n,j(JztVMv|ItTx&xJ^FrZWPSEXfj]sZddvrvB_}YvL:S/day&pSK<`JtzT*}by7tB}0|l}bJ=}gjC_RQbN$S+}`_GrpgnP*sK^8vua3q#w)J%OD_0a?p$v6cFzoPm}D]w|?f-^?zqeDm%Rn}6uvaL^^|Wl]M7V3MUxXejOPOLj.j-jqS%SOw$n$P"rpP#rxw3P)[;SlJ&qUKgw^M$w@x]SPL&Osvwa\S~z'zYk'O/jod9iXqXXr`4f|\qsPc{rF[qPrP\OQS1LXw(Kd\tB\'p@fmJkhheC\^mrSwLTN+gCK1a2wsSRS@u]_snqg4}HrRstnSbQLj_:iWYMurqGzxYBTevE]rg_mKJz[5h&S5}Iybd={$WENUNfV=eM^sl`mll>{k_xa>ysP*`bhTb}R(eSY^S8te-mjznM&m.mmp!]/mx|kXyL5M)z]aUbOm"]JyhjmekSTizaLddaGh[NU\5ws|sp/N5qRoHhqkTK>`xcij2|t``O%n*zCf2a+Jdc;iVbrsVn2jvPYlKZ(O#][XNyUiQcZMd9V@o|a9vG_1dg\h\VzvSZqrz}bOUxP_MKupd+KDW~bZ].ZnJ9U!cch+s)OwSqTdNrhue.g:Vl_@ddh5X\d9t6q^b5aoM'qeN]KcY,syP+lS^iwuy^anKcH|pMvyp_?e?Na|0mQ};vOyZkAJ8RqMScf}mfzc*pPyb|'xeaynvgmj4|Bu\Wuph]mS|u?Z{LzS$tWoCTc{m{-`nj3{Bdgv]RL_I|)ev`3v~apKojpj@Z4xrkCdWiqdoJWNJ|asDKecEK4j=iIW[k1mCL>wK|tx7YSsTsdwQw7X1NBJ4{FKvpgUPjTL/K*t/iCuXii]sq{U;^{ts}r}&wI]ST(LAZULdYJzce},J;}G}2gQjt_lQ^dCe&YS{|rdu_xhmxGNv}XhXMVgZLcJv_GpFp:XtqptLue|Ejsj[]W\}^yrGUPXHp!Q"QTYhVJY1ZGXb\Nstu9qSZjvuO.}RJ4_]W:z'n=uuxhmaT#QVaxyJ[yKTT\Y>nmwnRfaywm][h3[wQ0`bTWvyW]X}M+r=MBx,r-J.J.OBc7\Z[;YsJSvxfujvjyv/OSJ/J0R:q3WCc}sZ^[^^ocb{nw_JWhN[[;qqi7zFP+L(nzKyy}L~SPdnrUTM_8|PQMrRwTJYU^XYM)nP\]VTVSPm!M5_x_!T2NJhukUcPu!u'Y+eKfquEe#y[`kvqKjY"uQWxQxjyj3Z_ooqve?ndb?P,zQu3g>iNr4[N|n]4g4W4w>MiZ0OYwfsYN*NHK'PKpGPEd`[ZU'W@nvxRuimko]p]q]r]>YF{3O}n+dEZlX(Q)b<^5gp[bopq4Oq[1`%_Ry}g#fq{0K.rgM\hWg@wcP!Z=L)QL]~c*Q*h6jzyLfXvGTKYRYKSwX)Zxu^^/r)xHXAnAys]zj=v;a?MTtMfO|"{\`;tUZ2yr{v[_^r[\xnwhkzRv2`~|+QzWH{Wb#Txp(Wga?SdoEWbkg|"dhbPfh{htteh^`4vRj{yB`dJ7g}j]Y4Z*ni{K[5Z>q,SI{O_@SWcfoP|@iSu\l7w8jyQH\9j^q6W5O(Ynl*]"M.h=aQrAi|R5[gs~XQ|2m/t#{A|+n%TrtYnJ{cM;X[ewxTv)WIKQfLp.XSy~UL|rkZXbVmQV3`R|HkASMpwORmXTI\qW;_%sMt?q1xziK{UJTyJwHVh|=s~n~gBS6S-Lzv2VXRXg%c9g-pL{!k&TM{=U_q{v4^kUHe${9Ta^#d7Wnx5^RVUy:gUkwUgo>a.ziVnV;gKl3U4N%{na(wN{=X}{i|6OGm,n]L'vzf$u\}3mINho?a[zcK)w&{9\@qHmCo-VN}!ht{'UvqSf^L2xk\6}je`qL[M]HTmY%u{fTfH}!V?}S|!os,b7up`8}hc'T|hRzoxSV4UPppw3n:jSjIm+],e!}P_3lQ_mm8xzw+x`t:T3dZi6^?Y@YoVLY*Ze_ew2Ly_`W;Tz}3Ls[R_JNZnddO{7OCnjN-baWuzIU,xYgismXDcqpehz`Dn^Y"k#kB|;j+hb^om#hqOgr|4V.b7SLz\z5mca,h]hio=t8O[i,QGZIkLh7^X-\kb|VyJZTWt!L:O8uCYhPEcxk1r;O-SahlN4`c^w]2rvs[v~W_xrw)PZf&uT3bg^<\6RUu!N)uy]z]Up_vZrkdqr9l|}*aYJoo*uyl-xBrCvRW"yVpzp`vsiCr+T3J&MCMZMOYDv]nDg4bb_[g1h.|MekztMT8s!irrksWpWO_O@hAhcO"i*PAs+PdTUCq_nkVYtfW7Z{]O]#XYZXpDoXaTqrm[U\UDsWK6bqoU{XSP]Yp3K]U'M,P:QDq3eu{ai`}<|"Z#Z!RoRmbi^\N5rdPQ]Ha7[c_9mEqOs+W,akcGnIazJ{pazZpgLtZ?LmN)UbzePVk_l|_Vwj^4K>o5L=Oro7bhL|p`VFq8b+k5KQXNtwsFW;Q*wJmSWzXEvLQ|]}_eyJ`}r0SstIZ^f:xPh{XUj#VFv[r|d2hZZ\rV{2i-nczn\ju`f}p,WEu`ne[^]pY#iyqDrK`$i9b1ck|(M6L[p:f)MCsYa+oEgi`Es@T?U.]|y@L"e8NRXVy*qQNGvk[~_aXswgW~TV:bXOL`yk}}hWXKbi:hGcMlNl?V'cV_h}an(v}];xQhWynNOl%iUVEM:m=Q>O;l1RiLDY|i>Ql4eHMHnHgIM7yhqrYu[5JFYIX+Ybo\%Vqb~V!Y@X[\=m8_%j-WysxmGuJack^rLxYjFSf[/upN~i6{rbrO9wsYKa]Z9Z{k9Kym``@t<}1_oc#`9}1pKM>m@UpczmdimU]gvT7eg[?bKntW]p+N^gVVLa3hne"\P`5U!U[{KysK%tHzWVei\{P}v{%Z=[blwM^pIvo^1Sn|ChHqqNmytr6d9up\qc%h;r$^LZiJZcY|ZjDy$c]{JoDhLUWk-Y+{YS"U^vvZQ`(iyu/z|kj`2cEUcqnULMYmAXlzkqj1Y7JgSex2S@b_reM,yMM.n.VjW`g.kYOM\{mp^kW%^W_P[Q[#U2p\\hJfxN\\jR[3i[w(c.Wa`:KQe\PAUJX)c$`)iGS]\.x8L.PrXJc/L-TQvLPFJBU:NGJ0zX_:uketo5]*Mrcw{Pw:}a}~v@QEh8dhaALmR>[b`IzMa8J`rIqq^_pDxLnr^IgsbagKcLcxO,o~}%|1zY_R`ZtJq#Nr!vKk|qGsk`|m[aenu^SzKq/P9]CQ1uFjap,vYukp:]?rEw"[vr:JuweKfnS`%NXV/TIiNSBtfK!q2k"q3k4ptK0T2s7{lugn2tmusObpNnLq8euWsceOFO3sXdyOZOMzcfbrnu;J\crNYV0netBXP\nL`UJvJ}VXOt&V>\T[GW~rMqCb^\_\-o+f]y?j.oPtsN,f^NyUtcPM8U}w)\v^*\cr4i\RfivcJgNPwZuw^{JFwHOPaPntitNMU[O;],Nhi4TGd[uAz)^xTwo3S7kxo\uLmU[OqPq2u.Y,UFb#}e{+_ub-v3u5p%a]u"l}m4u8{#[JVYKTezs8k7`lWlq/eaUmWQQrayo<]\vepDtii{soT"L~w<_Mk7PBV-h/o%KiKhzFLgfGj$[IO|bzo^kHu^TU`0oGb/YgyegJOQaHb{oyzr\'`hxjK]0WhX=KZyNxpym`3c3tBjfr6pV[dkgrUW6ThyAWUejiLWiSIb[|-M0L"jvd@P7p!nvWJbKbOz_kKV4tMmRd)j:d"sRMKvfqAmWb{SM5oiz&y=_Gw}x|x+^h[]cbaFQPvfkyZGlx^ix^cuNCzWeHlIs;d.f6o?\=NCXOPzOJsW`GQ.i=hDzObEz8y`\0{)X_e'ynvLvxbql`ZRqLRKO=J?]ovy^4z-Ugq>^@\HQIQ>xvKyTbuSaiX~xLO$}vNPzsL>f.vpUJQ>|qUiM5zPbwtTM#g%[Qb"Wcw&j!PZNk{&[^[eX`j*X`e[VFojxUdwNX`oWmtfMtLcuJda\Hy?|'hDX>K.\wWhp@]MOs\0Yif0fgh?0ijklmnopqr@0sA0tuvwxyB0zC0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0Áb0c0ād0e0f0ŁƁǁg0ȁɁh0ʁˁ́i0́΁ρj0ЁсҁӁԁՁցׁk0؁l0فځہ܁݁ށ߁m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~0!1"1#1$1ABCD%1EFG&1HIJ'1KLMNOPQR(1ST)1*1UVWXYZ+1,1ab-1cde.1fghijkl/101m11n21opqrst31uvw41xyz5161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1‚ÂĂłƂǂȂL1ɂʂ˂̂͂΂ςЂM1N1т҂O1ӂԂՂP1ւׂ؂قڂۂ܂Q1R1݂S1ނ߂T1U1V1W1X1ABY1CDZ1[1\1EFGHIJ]1^1K_1L`1MNOPQRa1STUVWXYZabcdefghijklmnopqrsb1c1tud1vwe1f1xg1yzh1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1!2"2#2$2%2&2'2ƒÃăŃƃǃȃɃʃ˃̃̓΃σЃу҃ӃԃՃփ׃؃كڃۃ܃݃ރ߃(2)2*2+2,2-2.2/20212223242AB52CD62E72FGHIJK82LMN92OPQ:2RSTUVWXYZa;2<2bcde=2fg>2hijklmnopqrstuvwxyz?2@2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2„ÄQ2ĄńƄDŽȄɄR2ʄ˄̄S2̈́΄τT2Єф҄ӄԄՄքU2V2ׄ؄لW2ڄۄ܄݄ބ߄X2Y2Z2[2A\2BCDEFG]2^2_2H`2Ia2b2JKLMNc2OPQRSTUd2VWXYZabcdefe2f2ghijklg2h2mni2opqj2rstuvwxk2l2yzm2n2o2p2q2r2s2t2u2v2w2x2y2…z2{2|2Å}2ą~2ŅƅDž!3ȅɅʅ˅̅ͅ΅υЅх҅ӅԅՅօׅ؅مڅۅ܅݅ޅ߅"3#3$3%3&3'3(3)3*3+3,3-3.3/30313ABC2333D4353637383E93F:3;3<3GH=3IJK>3LMNOPQR?3@3SA3B3C3TUVWXYD3E3ZaF3bcdG3efghijkH3lmnoI3pqrstuvwxyzJ3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3†ÆĆņd3e3Ɔdžf3g3ȆɆh3ʆˆ̆i3͆Άφj3Іц҆ӆԆՆֆ׆؆نچۆ܆݆ކ߆k3l3m3n3o3p3q3r3s3t3u3v3w3x3ABCDEFGHIJy3KLMNOPQRSTUVWXYZabcdefghijklmnopqrsz3tuv{3wxy|3z}3~3!4"4#4$4%4&4'4(4)4*4+4,4-4.4/4041424‡ÇćŇƇLJȇɇʇ34ˇ͇̇·χЇч44҇ӇԇՇևׇ؇هڇۇ܇݇އ߇5464748494ABCDE:4;4FGHIJK<4LMNOPQR=4>4STU?4VWXYZa@4A4bcB4defC4D4E4ghijkF4G4lH4mI4J4nopK4qL4rstM4uvwN4xyzO4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4ˆÈĈňƈLjȈɈʈˈ͈̈ΈψЈш҈ӈԈՈֈ׈؈وڈۈ܈݈ވ߈u4v4w4x4y4z4{4|4}4~4A!5B"5C#5DE$5F%5&5GH'5IJK(5LMNOPQR)5*5S+5,5-5TUVWXY.5Zab/5cde05fghijklmnop1525qrstuv35wxy45z5565758595:5;5<5=5>5?5@5A5B5C5D5E5‰ÉĉʼnƉljȉɉʉˉ͉̉ΉωЉщF5҉ӉԉՉ։׉؉G5ىډۉH5܉݉މI5߉J5K5L5M5ABCDEFGHIJKN5O5LMP5NOPQ5QRSTUVWR5S5XT5YU5ZabcdeV5fghijklmnopqrstuvwxW5yzX5Y5Z5[5\5]5^5_5`5a5b5Šc5ÊĊŊƊd5NJȊɊʊˊ̊e5f5͊Ίg5ϊЊh5i5ъj5ҊӊԊՊ֊k5l5׊m5؊n5يڊۊ܊݊ފo5ߊp5q5r5s5t5ABCDEFu5v5Gw5x5y5z5HIJKL{5|5MN}5OPQ~5RSTUVWX!6"6Y#6$6%6Zabcd&6'6(6ef)6ghi*6jklmnop+6,6q-6.6/6rstuvwxyz06162636465666768696:6‹Ëċŋ;6<6=6ƋNj>6ȋɋʋ?6ˋ̋͋΋ϋЋы@6A6ҋB6C6D6ӋԋՋ֋׋؋E6ًڋۋ܋݋ދߋF6ABCDEFGHIJKLMNOPG6H6QRI6STUJ6VWXYZabcdefgK6hijklmL6nopqrstM6uvwxyzN6O6P6ŒÌČŌƌnjȌɌʌˌ̌͌ΌόЌьҌӌԌՌ֌׌،ٌڌی܌݌ތQ6R6ߌS6T6U6V6W6ABCDEFGHIJKLMNOPQX6RSTUVWXYZabcdefghijklmnopqrY6stuZ6vwx[6yz\6]6^6_6`6a6b6c6d6e6f6g6h6Íči6ōƍǍȍɍʍˍj6k6͍̍΍ύЍэҍӍԍՍl6֍׍؍m6ٍڍۍn6܍ݍލߍo6p6q6r6s6t6u6v6w6x6y6z6{6|6}6~6!7"7#7A$7BCDEFGH%7&7I'7(7)7JKLMNO*7+7PQ,7RSTUVWXYZabcde-7f.7ghijklmnopqrstuvwxyz/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7ŽÎĎŎƎǎJ7ȎɎʎK7ˎ͎̎ΎώЎюҎӎԎՎ֎L7׎M7؎َڎێ܎ݎގߎN7O7P7Q7R7S7T7U7V7W7ABCDEFGHX7IJKLMNOPQRSTUVWXYZabcdefghY7ijklmnoZ7pqr[7stu\7vwxyz]7^7_7`7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7ÏďŏƏǏp7ȏɏʏˏ̏͏Ώq7ϏЏяҏӏԏՏ֏׏؏ُڏۏ܏ݏޏߏr7s7t7u7v7w7x7y7z7AB{7CDE|7FGHIJKL}7~7M!8N"8OPQRST#8$8UV%8WXY&8Zabcdef'8(8g)8h*8+8ij,8-8klmnopqrstuvwxyz.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8ÐĐŐƐQ8ǐȐɐʐː̐͐ΐϐАѐҐR8ӐԐՐ֐אِؐڐېܐݐސߐS8T8U8V8W8AX8Y8BZ8C[8\8DEFG]8^8_8HI`8JKLa8MNOPQRSb8c8Td8e8f8UVWXYZg8h8abi8cdej8fghijklmnok8l8m8pn8qrsto8uvwxyzp8q8r8s8t8u8v8w8x8y8z8{8|8}8‘ÑđőƑǑȑɑʑˑ̑͑ΑϑБёґӑԑՑ֑בّؑڑۑ~8ܑݑޑ!9ߑ"9#9$9%9&9'9(9A)9B*9CDEFGHIJ+9,9-9K.9LM/9091929NOPQR3949S59T69UVW79X8999YZa:9bcd;9efghijkl<9m=9nopqrstu>9vwxyz?9@9A9B9C9D9E9F9’ÒĒŒƒG9ǒȒɒH9ʒ˒̒I9͒ΒϒВђҒӒJ9ԒՒK9֒גْؒڒےܒݒޒߒL9M9N9O9P9Q9ABCDER9S9FT9U9V9GW9HX9IJY9Z9[9\9]9KL^9_9`9a9b9MNOPc9d9Qe9Rf9STUg9VWh9i9XYj9Zabk9cdefghil9m9jn9o9p9klmq9nor9s9pqt9rstuvwxyzu9v9w9x9y9z9{9|9}9~9!:":#:$:%:&:':“Óēœ(:):Ɠ*:+:,:Ǔȓɓʓ˓̓-:.:͓Γ/:ϓГѓ0:ғӓԓՓ֓דؓٓ1:ړ2:3:4:ۓܓݓ5:ޓߓ6:7:8:9:::;:<:ABCDEF=:>:G?:H@:IJKLMNA:OPQB:RSTUVWXYZabcdefC:ghijklmD:nopqrstuvwxyzE:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:”ÔĔŔƔU:V:ǔW:ȔX:ɔʔ˔Y:Z:̔[:͔ΔϔДєҔӔ\:ԔՔ֔הؔٔڔ۔ܔݔޔ]:ߔ^:AB_:`:CDa:EFGb:HIJKLMNOPQRSc:TUVWXYd:Zabe:cdef:fghijklg:mnh:oi:pqrstuj:k:vwl:xyzm:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~:•!;Õ";ĕŕƕǕȕ#;$;ɕ%;&;';ʕ˕͕̕Ε(;);*;ϕЕ+;ѕҕӕ,;ԕՕ֕וٕؕڕ-;.;ە/;0;1;ܕݕޕߕ2;3;4;ABCDEFGHIJKLMNOPQRSTUVWX5;6;YZ7;ab8;9;cdefghi:;jk;;<;=;lmnopq>;rstuvwxyz?;@;A;B;C;D;E;F;–G;H;ÖĖI;ŖƖǖJ;Ȗɖʖ˖̖͖ΖK;L;ϖЖіM;ҖӖԖՖ֖זٖؖږۖܖݖޖߖABCDEFGHIJKLMNOPQN;RSTUVWXYZabcdefghijklmnopqrO;stuvwxyzP;Q;R;S;T;U;V;W;—×ėŗƗǗȗɗʗ˗̗͗ΗϗЗїҗӗԗ՗֗חؗٗڗۗܗݗޗߗX;ABCDEFGHIJKLMNOPQY;RSTUVWZ;XYZ[;abc\;defghij];^;klmnopqrstuvwxyz_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;˜ØĘy;z;Ř{;|;};ƘǘȘɘʘ˘~;!<̘͘"<ΘϘИ#<јҘӘԘ՘֘ט$<%<ؘ&<٘'<ژۘܘݘޘߘ(<)<*<+<,<-<.=?=@=A=B=šÚĚŚƚǚȚɚʚ˚͚̚ΚϚКњҚӚԚ՚֚ךؚٚښۚܚݚޚC=D=ߚE=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=ABCW=X=Y=DEZ=FGH[=IJKLMNO\=]=PQ^=_=RSTUVWXYZabcdefghijklmnopqr`=stuvwxyza=b=c=d=e=f=g=h=i=j=k=l=›ÛěśƛǛțɛʛ˛̛͛ΛϛЛћқӛԛ՛֛כ؛ٛڛۛܛݛޛߛm=n=o=Ap=BCq=r=Ds=EFGHIt=u=JKLv=MNOPQRw=x=STy=UVWXYZabcdefghiz=jklmnop{=qrstuvwxyz|=}=~=!>">#>$>œ%>&>ÜĜ'>ŜƜǜ(>Ȝɜʜ˜̜͜Μ)>*>ϜМќ+>ҜӜԜ՜֜ל,>؜ٜڜۜܜݜޜߜ->.>ABCDEFGHIJKLMN/>OPQ0>RSTUVWXYZabcdefghijklmnopqrstuvwxyz1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>ÝĝŝƝǝB>C>ȝD>ɝE>ʝ˝̝͝ΝϝF>G>НѝH>I>J>ҝK>L>M>ӝԝ՝֝N>O>P>םQ>R>S>؝ٝڝT>U>۝V>W>ܝݝX>ޝߝY>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>Ai>j>BCDk>EFGl>HIJKLMNOm>PQRSTUVWXYn>o>Zap>q>br>s>t>u>cdefgv>w>x>y>z>{>|>h}>i~>j!?"?kl#?mno$?pqrstuv%?&?w'?x(?yz)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;????@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?žÞĞŞƞǞV?W?ȞɞX?ʞ˞̞͞ΞϞОўҞӞԞY?՞֞Z?מ[?؞ٞڞ۞ܞݞ\?]?ޞߞ^?_?`?a?b?c?d?e?f?g?h?i?j?Ak?BCDEFGl?m?HIn?JKLo?p?q?MNOPQr?s?Rt?Su?TUVWXYv?w?Zax?bcdy?efghijkz?{?lm|?}?nopqrs~?!@tu"@vwx#@yz$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@Ÿ@@A@B@C@D@E@F@G@ßğşH@ƟǟȟI@ɟʟ˟̟͟ΟϟJ@ПџK@ҟӟԟ՟֟ן؟ٟL@M@ڟ۟N@ܟݟޟO@P@Q@ߟR@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@ABCDk@l@Em@n@o@FGHIJKp@q@LMr@Ns@Ot@PQRSTUVu@WXYZv@abcdefw@ghix@jkly@mnopqrstuvwxyzz@{@|@}@~@!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A àĠŠƠǠȠɠʠˠ̠͠ΠϠРѠҠӠԠՠ֠נؠ٠ڠ۠6A7Aܠݠ8Aޠߠ9A:A;AA?A@AAABACADAEAFAGAABCHADEFGHIJKLMNOPQRSTUVIAJAWXYZabKAcdeLAfghMAijklmnoNAOApPAqQArstuvwRASAxyTAzUAVAWAXAYAZA[A\A]A^AA_ABCDEFG`AHIJKLMNOPQRSTUVWXYZaAabcdefgbAhijklmnopqrstuvwxyzcAdAeAfAgAhAiAjAkAABClADEFGHIJmAKLMNOPQRSTUnAoAVWpAXYZqAabcdefgrAsAhtAiuAjklmnopqrstuvwxyzvAwAxAyAzA{A|A}A~A!B"B#B$B%B&BAB'BC(BD)BEF*BGHIJ+B,BK-B.B/BLMNOPQ0B1BRS2BTUV3BWXYZabc4B5Bd6B7B8Befghij9Bklm:Bnopqrstuvwxyz;BABCDEBHIJ?BKLMNOPQ@BABRBBCBDBSTUVWXEBYZabcdefghijklmnopqrFBstuvwxGByzHBABCDEFGHIJKLMNOPQRSTIBJBUVKBWXYLBZabcdefMBNBgOBhPBiQBjklmRBSBnopqrsTBtuvwxyzUBVBWBABCDEXBFGHYBIJKZBLMNOPQR[B\BSTUVWXYZabcdefghijklmnopqrstuvw]Bxyz^B_B`BaBbBcBdBeBABCDEFGHIJKfBgBLMNOPQRSTUVWXYZabcdefghijklmnopqrshBtuvwxyziBABCDEFGHIJKLMNOjBPQRSTUVWXYZabcdkBeflBgmBhijklmnopqrstuvwxyznBoBpBqBrBsBtBuBABvBwBxBCDyBEzBF{BGHIJKLM|B}BN~B!C"C#COPQRS$C%CTU&CVWX'CYZabcde(C)Cf*C+C,Cghijkl-Cmno.Cp/Cq0Crstuvwx1Cyz2CABCD3C4CEF5CGHI6CJKLMNOP7C8CQ9C:C;CRSTUVWCZab?Ccdefghi@CACjBCkCClmnopqDCrstECuvwxyzFCGCHCABCICDEFGHIJCKCJKLCLMNMCOPQRSTUNCOCVPCWQCXYZabcRCdefSCghiTCjklmnopqrstuUCvwxyzVCWCABCXCDEFGHIJYCZCK[CL\CMNOPQR]CSTUVWXYZabcdefg^Chijklmnopqr_C`CstaCuvwbCxyzcCdCeCfCgChCABCDEFiCGHIjCJKLMNOPQRSTUVWXYZabcdefkCghilCjklmCmnopqrsnCoCtpCuqCvwxyzrCsCtCuCvCwCxCyCzCABCD{C|CE}CF~CGHIJKLMNOPQRSTUVWXYZabcdefghijklmn!D"Dop#Dqr$D%D&Dstuvwx'D(Dy)Dz*D+D,D-D.D/D0D1D2D3D4D5D6DABCDEF7D8DG9D:D;DHIJKLMDghijklmnopqrstuvwxyz?D@DADBDCDDDEDFDGDHDIDJDABKDCDELDFGHIJKLMDNDMODNPDOPQRSTQDUVWRDXYZSDabcdefgTDUDhVDWDXDijklmnYDopqrstuvwxyzZD[D\D]D^D_D`DaDABCbDcDDEdDFGHeDIJKLMNOfDPQRSgDTUVWXYhDZabcdefghijklmnopqrsiDtuvwxyjDzkDlDABCDEFGHIJKLMNOPQRSTmDnDUVoDWXYpDZabcdefqDrDgsDhtDijklmnuDopqvDrstwDuvwxyzxDyDzDABCDEF{D|DGH}DIJK~DLMNOPQR!E"ES#ET$EUVWXYZ%Eabc&Edef'Eghijklm(Enopqrstuvwx)E*Eyz+E,E-E.E/EABCDEFGHIJKLMNO0E1EPQ2ERST3EUVWXYZa4E5Eb6Ec7Edefghi8E9Ejk:Elmn;EEu?E@EAEvwxyzBECEDEEEFEGEHEIEJEKEABCDEFGHLEIJKLMNOPQRSTUVWXYZabcdefghijklmnopMENEqrOEstuPEvQEwxyzRESETEUEVEWEXEYEZE[E\E]E^E_E`EABCDEFGHIJKLMNaEOPQRSTUbEVWXcEYZabcdefghijklmnopqrstudEeEvwfExyzgEhEiEjEkElEmEnEABCDEFGHoEIJKLMNOPQRSTUVWXYZabcdefghipEjklqEmnopqrstuvwxyzrEsEtEABuEvECDwEEFGxEHIJKLMNyEzEO{EP|EQRSTUV}EWXYZabcdefghijklmno~Epqrstuv!Fwxyz"F#F$F%FABC&F'FDEF(FGHIJKL)FMNO*FPQR+FSTUVWXY,FZabc-Fdefghi.F/Fjk0Flm1F2Fn3Fopqrs4F5Ft6Fuvwxyz7F8F9F:F;FF?FABCDE@FAFFBFGCFHIJKLMDFEFFFNGFOPQHFRIFSTUVWJFKFXLFMFNFYZaOFbcPFQFdeRFfghSFijklmnoTFUFpVFWFXFqrstuvYFZFwxyzABCDEFGHIJKLMNOPQR[F\FST]FUVW^FXYZabcd_F`FeaFbFcFfghijkdFeFlmfFnopgFqrstuvwhFiFxjFykFzlFmFnFoFpFqFrFsFAtFBCDEFGHIuFJvFKLMNOPQRwFxFSTyFUVWzFXYZabcd{F|Fe}Ff~Fghijkl!Gmnopqrstuvwxyz"GABCDEFGH#GIJK$GLMNOPQRSTUVWXYZabcdefgh%Gijk&Glmn'Gopqrstuv(Gw)Gxyz*G+G,G-G.G/G0G1G2G3G4GABCDEFGHIJK5GLMNOPQRSTUVWXYZabcdefghijklmnopqrs6Gtuv7Gwxy8Gz9G:G;GG?G@GABCDEFAGGHIBGJKLCGMNOPQRSDGEGTFGUVWXYZabcdefghijklmnopqrstuvwxyzGGHGIGJGKGLGMGNGOGPGQGRGASGBCTGUGDVGEWGFGHIJKXGYGLMZGNOP[GQRSTUVW\G]GX^G_G`GYZabcdaGefghijklmnopqrstuvwxbGyzcGdGABeGCDEfGFgGGHIJKhGiGLjGMkGNOPQRSlGmGTUnGVWXoGYZabcdepGqGfrGgsGhijklmtGuGnovGpqrwGstuvwxyxGyGzzG{G|G‚ƒ„…†}Gˆ‰~G‹Œ!HŽ‘’“”"H–—˜™š›œž#H$H %HABC&HDEFG'HHI(H)HJ*HK+HLMN,HOP-H.HQR/HSTU0HVWXYZabcde1Hf2Hghijkl3H4Hmn5HopqrstuvwxyzÁÂ6H7HÅÆÇÈÉ8H9HË:HÍÎ;HÐÑÒÓÔÕÖHÚÛÜÝÞ?HàA@HBCDAHEFGHIJKLBHMCHNOPQRSTUDHEHVWFHXYZGHabcdHHefIHghJHiKHjklmnoLHpqrMHstuNHvwxyzāĂOHĄąĆPHĈĉĊċČQHRHĎSHĐđTHēĔĕĖėĘęĚěĜĝUHğĠABCVHWHDEXHFGHYHIJKLMNOZH[HP\HQ]HRSTUVW^H_HXY`HZabaHcdefghibHjkcHldHmnopqreHfHstgHuhHiHjHkHvwxyzŁlHmHnHoHŅņpHňqHŊŋrHōŎsHŐőŒœŔŕtHuHŗŘvHŚśŜŝŞwHxHŠyHABCzHDEFGHIJ{H|HK}HL~HMNOPQRPKVKgKOMhM-N{O"P8PPP]PTQUQXQ[Q\Q]Q^Q_Q`QbQcQdQeQfQhQiQjQkQmQoQpQrQvQzQ|Q}Q~Q"R#R'R(R)R*R+R-R2R>RBRCRDRFRGRHRIRJRKRMRNRORPRQRRRSRTRURVRWRYRZR^R_RaRbRdReRfRgRhRiRjRkRpRqRrRsRtRuRwRxRfT|T%U+U.U8VMVKWdWE[d[%\%]U]t]|^~^3_a_h_q`-amauc!d)d.e1e2e9e;e#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#,!]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#&"K!L!~!~#M!\#gJxQ``µfm8&1jZP:.* ~~l PPDB fb\TP :(   6B>8 ,"&$&')+-/1274h6 R8H:D<,> @ABwCEGIzKVMN P RbTUWY[]_acegikmoqsuwy{}֮֬    AADAFGAAAJKLMNOPAAATAAAAAAAAAAaAaAaAa   124789ABCEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc12345679:;<=>?@ABDEFGHJKLMN,xR$c  $ cjohabeuc_krcp949extcp949ksx10010 00" 0& % PdRTUVW\ 1 3t%4O 56[]78009:00;< 0 0=>0 0?@ 0 0AB00CDYZ[\]^    005 2  ; 0%%%%%&&%%%%%%2!> ?IJMNKL_`a "f"g"`""R"a"bcdef<")"*"" """33+"."5"4"@&B&A& &!!!!!!!!%"#"<<0 ! !ijk333333333YQ[Q^Q]QaQcQUt|%%%%%%%%%%%%%%%<%4%,%$%%%%%% %%%%m%n%p%o%P%^%j%a%%%%%q%r%s%`!a!b!c!d!e!f!g!h!i!!0"0#0$0%0&0'0(0)0ASDSES!"#$%&'()*+,-./0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZ1111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)1NYNNNCN]NNNN?QeQkQQRRRSAS\SS N NN N+N8NQENHN_N^NNN@QRRCSSSWXY'YsYP[Q[S[[\"\8\q\]]]]]]r^^ __MbNN N-N0N9NKN9\NNNNNNNNNNNNNNNCQAQgQmQnQlQQQRRRRRRS9SHSGSES^SSSSSX)Y+Y*Y-YT[\$\:\o\]{^^___b6bKbNb/eeeeeefg(g kbkykkkkl4lkp*r6r;rGrYr[rrsNNNNN;NMNONNNNNNNNNNNNNEQDQQQQQQQ RRRSSSSNJSISaS`SoSnSSSSSSSSSSSSSSSSSSSSSVVY.Y1YtYvYU[[<\]]]^^s^|^____ bSbTbRbQbee.g,g*g+g-gckkll8lAl@l>lrssttuu(u)u0u1u2u3uu}vvvvwww:yytzzNNRNSNiNNNNNN OO OO OOOONNNNNNO OIQGQFQHQhQqQQQRRRRRRS!S SpSqS TT T TTT TTT TTTTTTVVV3W0W(W-W,W/W)WYY7Y8YYxYY}YyYYYW[X[[[[[[\y\]^v^t^____b b bbcb[bXb6eeeeeff g=g4g1g5g!kdk{kl]lWlYl_l`lPlUlal[lMlNlpp_r]r~vzs||6 3 nr~k@Lc!2NNMOOOGOWO^O4O[OUO0OPOQO=O:O8OCOTOT&TNT'TFTCT3THTBTT)TJT9T;T8T.T5T6T TWPWOW;WX>YYYYYYYYYYYYY][\[Z[[[[[[,\@\A\?\>\\\\\] ^^^^^__d_b_w_y_________bbbbbbvbbmbb|b~bybsbbobbnbbbbb9e;e8eef_gNgOgPgQg\gVg^gIgFg`gSgWgekkBl^llllllljlzllpllhlll}llrl~ltllvlllllvp|p}pxpbrar`rrrs,u+u7u8uvvwyyyvz|Uo҉7FUdpʎƏŏď]IƑ̑2.1*,&NVNsNNNNNNoOOOsOOlOOOOOpOuOOiO{OO~OOOzOTQRQUQiQwQvQxQQQ;R8R7R:R0R.R6RARRRRSTSSSQSfSwSxSySSSSsTuTTxTTT{TwTTTT|TTqTvTTTbThTT}TTVWwWjWiWaWfWdW|WYIYGYHYDYTYYYYYYYYYYYYYYYYY_[d[c[[[[[[[\H\E\F\\\\\\\\^^^^^^x^^^^^^^&_'_)____|______``/`5``*``!`'`)`+``bb?b>b@bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb>eeeeff fffffff ff g gmgggqggsgwggggogpggg~gguggg|gjgrg#kfkgkkllllllllllllllllllllllllllllllllllppppp,r-r8rHrgrirrrrrrsssss=uuuuvvvvww>y@yAyyyzzyzz|T NqRhˎΏԏяǑёw@?;DBR^NNNOOOOOOOOOOOOOOOOOOOOOOWQQQQNRCRJRMRLRKRGRRRRR SWS{SSSTTTTTTTTTTTTTTTTTTTTTTVWWWWWWWWUYQYOYNYPYYYYYYZYYYYZYi[[[[[[\N\O\M\K\\\]^%^^}^^^^_-_e________`` `%``(`M`p`h`b`F`C`l`k`j`d`Abbc cbbcbbcbbbbbbcc?eEeeee%f-f f'f/ff(f1f$ffgggggggggggggggggggggggggjkkkkkkll m2m*mAm%m m1mmm;m=m>m6mml9m'm8m)m.m5mm+mppppppppp0rrrortrrrrsssssssu-uOuLuNuKuuuuuuxvvvvvvvvwvv w wvvwwxx x xFyIyHyGyyyyyyzzzz}|}}} }}}}8 6րڀÀĀ̀ۀ΀ހ݀"ۂ ҂ׂ܂Ԃтނӂ߂Py{zMkԉts͎̎ʐΐÐKJ͑PKLMbi˗ۘߘXNN P P#PO&P%PO)PPPc/cUcBcFcOcIc:cPc=c*c+c(cMcLcHeIeeeeBfIfOfCfRfLfEfAffggg!h8hHhFhSh9hBhTh)hhhLhQh=hgPh@hSSfFUjUfUDU^UaUCUJU1UVUOUUU/UdU8U.U\U,UcU3UAUWUW W WWX XXWWWX5XWW YbY6ZAZIZfZjZ@ZwUUUUUU~UUUU W/X*X4X$X0X1X!XX XXX`YwZZZZZZs[q[[[[[ \ \1\L]P]4]G]]E^=^@^C^~^^^^^<_m____`````a#a`a```ha`a` aaabIbcccccccccccccccvccccRdcc^efebeceeeenfpftfvfoffzf~fwfffgghhhhhihhhhhhhhhh iiihhnih>k:k=kkkkk.l/l,l/n8nTn!n2ngnJn n%n#nn[nXn$nVnnn-n&non4nMn:n,nCnn>nnnnNncnDnrnin_nqq&q0q!q6qnqqLrrr6s%s4s)s:t*t3t"t%t5t6t4t/tt&t(t%u&ukujuuuuuuuu{v|vvvvvOww]xlxox zz zzzzzzzzI{V{F{P{R{T{M{K{O{Q{||^}P}h}U}+}n}r}a}f}b}p}s}U RUTKQN9F>LSt Ń W ̃ʃ8܃ԃ߃[߆نԆۆІކWˆ;`U^a4a'a aa7a!b"bd>dd*d-d=d,dddd d6ddddleeeffffffffgimiZiwi`iTiui0iiJihiki^iSiyii]ici[iGkrkkkkknnnnnnnnnnnnnnnnnnnnnnNqYqiqdqIqgq\qlqfqLqeq^qFqhqVq:rRr7sEs?s>sotZtUt_t^tAt?tYt[t\tvuxuvuvuuuuuuvv[wkwfw^wcwywjwlw\wewhwbwwxxxxxx|xxxxzyyy,yzz zzzzzzw{{`{n{g{|||}y}}}}[}nijrVXqpxenskyzfGw=1ufkIl[<5acimF^\_ Y߈Ԉو܈؈݈ʈՈ҈krsfip|cqmbnly{>hbʌnjȌČ̌Ōߍ捲 KJSBTAljiɑ7W8=@>[KdQ4IME9?Z͖˖ɖʖVtv  霂 PPPPPPPPPPPPbQQRR1SSUVVVUVV V VVUVVVVUWWuX~XXXXyXX}XX%Y"Y$YjYiYZZZZZZZu[[[[[[[[[[ \b\]][^c^U^W^T^^^ _F_p__Ga?aKawabaca_aZaXaua*bdXdTddxd_dzdQdgd4dmd{dreeeefffiiiiiiiiiiiiiiiiiiiIkLk3l3oonon)o>o o,ooo"onno1o8o2o#oo+o/oo*ononnnqq}qqqq>rrrDsPsdtctjtptmtuu'v v v vvvvw}wwawxxxxxxyyy.z1zzzzz{{{u{{{{{{{{|||}}}}}}}}}}}}}}}}}}}p^ZPKɄƄĄ˄ӄфʄ?;"%4U7)jӌьҌk`X\cY^b][uxwtx{|̖Җ| AB󜼞;JQQPPPQQ QQQRRRRRRS.V;V9V2V?V4V)VSVNVWVtV6V/V0VXXXXXXXXmY [Z [Z [[[[[[d\e\]]b^_^a^^^^^^^H_q___vagana]aUaa|apaka~aaaaaaaaaa.bidodyddddddddddddddddddduewexeffff#jjijjji!jj jijjijPkNkkkk?o|ooQofoToomo[oxonoozopodooXonoo`o_oqqqqVrrNsWsittt~ttu v)vv$v&v!v"vvvvwwwwwxxxxxxxx?z~F~7~2~C~+~=~1~E~A~4~9~H~5~?~/~DqrposƁÁɁ q~gч҇Ƈȇˇ;6D8= A?sIKHJD>BE?}9M(uJeK~l[pZTʕ˕̕ȕƕ֖ӗF5;?Ϟޞܞݞ۞>KSVVXX8[]_a3bdddedddef&gjjjjjjjj_kxkk p popoppqqqqwsusttuVvXvRvwwwwyyazbz`zzz+|'|*||#|!||T~U~^~Z~a~R~Y~Hwv́ρ υͅЅɅ(9,+PYcfd_UIMБԕ֕ЕՕܖٖۖޖ$MOLNS>?=.ONMʛɛțQ]`,3QVXXX[^aaaaeeffjjjjpp(pppppr rXrrxszstttuu_vavwyykziz>|?|8|=|7|@|k~m~y~i~j~s~؁݅Յ `_V^A\XIZNOFY |rvlztTNѓߓÓȓܓݓ͓֓ؓדܕ*'aܗ^X[EI ֛ۛarjlRVVVVVX@[C[}[[]aaeeef'gj>p0p2pr{stbvev&y*y,y+yzzL|C|M|||}~|~~Lځf  dplfo_k ˑ0ĘRQ+075 y/_ca7Q8QVVVYl\]aaeeefjkjkLprrttivwP|~~-#"!jltw}_.35:82+892geWEC@>ϚTQ-%\fg×kUUMҚI1>;ӝם4ljV]b#e+e*efktzd|c|e|~~~8?1c`dho\Z[WӚԚњTWV坟VX,e^pqvrvwP69bwjBHDƗp_"X_|}wr^kcpl|n|;rpq^֚#̞dpwwɗbe~ő}~|wxT(rj1r|0000A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO`$a$b$c$d$e$f$g$h$i$t$u$v$w$x$y$z${$|$}$BN\NQSSN NGNNV n\s_NQN.NNNNNQRlSS WY,Y\]ekkl?r1Ng9g8g;g:g?gOgORO_OAOXO-O3O?OaOQQRR!RRR ScSrSSS0T7T*TTTETTT%TT=TOTAT(T$TGTVVVAWEWLWIWKWRWY@YYYYYYYYYYY[[(\*\\\\\\\\\\\] ^^^^^^^__x_v_______________`_:bbbbbbbqb{bzbpbbbwb}brbtb7eeeeeeEgGgYgUgLgHg]gMgZgKgkllxlglkllllqlolillmllllflslel{lltpzpcrrrrrrrrsssss:u9uuuv=y4xɏ0(/-3NO|OO}OOOvOtOOOwOLOOjOOyOOxOOOOOOOOkOnOQQQ5R2R3RFR1RR S SuuuvvvvvwwwwwwBy?yyxz{zzu||5 ‚ÂpomnVҏˏӏ͏֏Տ׏9=<:COOOOOOOOOOOOOOOOOOODRIRRR=S|SSSSSTTTTTT TTTTTTTpTTTTrTTTWWWWWWWWWWWWWWWX YSYYYYZYYYYYYYYYYYYYYYYY[L\\\\\\\\\\\\\\\\\\\\\]!^"^#^ ^$^^^^^^^_._V__7`9`T`r`^`E`S`G`I`[`L`@`B`_`$`D`X`f`n`BbCbb c cbccbbc cbbcccbcbbAeCeee6f!f2f5ff&f"f3f+f:ff4f9f.fgggggggggggggggggggggggggggggggggggggggggg(kkkkkkk l!l(m4m-mm9/%3-DQ%V?A&"BN*ZMZ9ZLZpZiZGZQZVZBZ\Zr[n[[[Y\] ]]] ] ](] ]&]%]]0]]#]].]>^4^^^^^^6_8____`````````````````````2ceccc}ccccccccocccnccuccmcc|cc;ccxcccccpcSeeefaf[fYf\fbfgyhhhhmhnhhhViohhhhuhthhhwhh|hkhrhhhqh~hhhhhhhxh{hhhh}h6k3k7k8kkkkkk*lmmmmtnmmmmmmnmmmmmmmmmmmmmmmmmmmmmmmmmmmp qpqp qpqpqppqqqpp qqq~r{r|rrsssss ssrssssssttsttsss t tstducuuuuuuuuvvv9w/w-w1w2w4w3w=w%w;w5wHxRxIxMxJxLx&xExPxdygyiyjycykyayyyyyyzzz5{G{4{%{0{"{${3{{*{{1{+{-{/{2{8{{#{||||5}=}8}6}:}E},})}A}G}>}?}J};}(}cGCH%-,!'"83:42tzstu}~vYV†ņȆ̆ÆR։ىՉ0',9;\]}}{y؎ގݎ܎׎$  !ԐVXZSUz|mkqoj嘗PPPPPPPPPPhPPPPP_QQSSSSUUUUwUEVUUUUUUUUU}UUUUUUU W)X7XXX'X#X(XWHX%XXX3X?X6X.X9X8X-X,X;XaYZZZzZZZxZZ|ZZZZZ7ZZZZZZZ{Z}ZZZZZZ[[[[[[[ \0\7]C]k]A]K]?]5]Q]N]U]3]:]R]=]1]Y]B]9]I]8]<]2]6]@]E]D^A^X____``````a` aaa`a````aaaa`a aJbccccccccdcccccccadccccccccccccccc2egejede\eheeeeeeeee|flf{ffqfyfjfrfg ihih*ihhhihhhhhiihhihipihihhihhhhh i iihhhhhhhihhi%ih9k;k?k?efQOPԀCJROG=M:<=?u;σ#ƃȃヿ݃؃˃΃փɃ ރƒՃǃуÃă׃ۃ؆ӆچ݆܆׆цHVU׈Ɉ݉ډۉNM9Y@WXDERHQJLO_؍Ӎ͍Ǎ֍܍ύՍٍȍ׍ō-4/,ad_b` %& '${~–ȖÖlpnNNNPPPPPPPPPPPPPPPPPQzRxR{R|RUUUUUUUUUUUUUUUUUUUUUUUWSXhXdXOXMXIXoXUXNX]XYXeX[X=XcXqXXZZZZZZZZZZZZZZZZZZZZ[[[\3\q]c]J]e]r]l]^]h]g]b]]O^N^J^M^K^^^^^^@___`IaJa+aEa6a2a.aFa/aOa)a@a bh#b%b$bcccdd d d$d3dCdddd9d7d"d#d d&d0d(dAd5d/d dd@d%d'd dcd.d!ddoeeeffffffffxf gfi_i8iNibiqi?iEiji9iBiWiYiziHiIi5ili3i=ieihxi4iii@ioiDiviXiAitiLi;iKi7i\iOiQi2iRi/i{iF 2*-<:15B&'8$0눝艫=hiՌό׌   # "$!zrysvzy}~-X}z~{Η͗ٙǙ>?`a_PQ0QPQQPP Q QP QRRRRHVBVLV5VAVJVIVFVXVZV@V3V=V,V>V8V*V:VWXXXXXXXXXXZZZZZ[Z[Z[[[[g\]]]]]]]]]]]]i^]^`^\^}^^^I__aayaaaaaaaaaaaaaafaa-bndpddddddddddddhdddvezeye{eeefffffffjjjiijii jiiijji'jiijii@jjii jii jjj%jji&jjijQkkkkkllklAo&o~oooooooboOooZoovolooUoroRoPoWooo]ooaoko}ogooSooiooocowojo{oqqqqqqqqqqqqqqqqqrrXsRs^s_s`s]s[sasZsYsbsttttt}ttt|tytuu~u%vvvvv#vv(vvvvvvwwwwxxxxxxxxxxxyyyyyyvk9zzzz{{{{{{{{{||||}}}}}}~}}}}}}}vdgOSRPNQ$;)  '+ *(.1& 0 /bVcdwsXT[RaZQ^mjPN_]olzn\eO{ubgiZ   ϊƊӊъԊՊ׊Ŋ؊Êي>Mߌٌڌ݌猠 #%$.&',$ #spogk/+)*2&.ВÒĒْϒߒؒגݒ̒’ʒȒΒ͒ՒɒޒђӒƒ|ӖZЗϗ&)( 'ܙ͙ϙәԙΙəؙ֙˙י̙FCgtqfvuphdlӞQQQQQQ4SSpV`VnVsVfVcVmVrV^VwVWWXXXXXXXX[[[![[[[[([[ [[[]]]]]]]]]]]]]g^h^f^o^^^^^^K__aaaaaaaaaaaaddddddddddd3ee|eeffffffffff#g4jfjIjgj2jhj>j]jmjvj[jQj(jZj;j?jAjjjdjPjOjTjojij`j[qNnuUg`f]Telcedy&0-.'1")#/,݊ߊȊފln3>8@E6<=A0?6.52974vy{356'z8<#F- ˒%4$)95* ͕Ԗ 5/2$')癹3|~{z}% )"՞֞=&Q%Q"Q$Q Q)QRVVVVVV~VVVVXXXX-[%[2[#[,['[&[/[.[{[[[]l^j^__aaaaaaaaaddddddeeeefjjjjjjjjjjjjjjjjjjjjjjj[kk looooooooooooooqqqqqqqssnsostttttttttuuuuuCvHvIvGvvvwwwwwwwwwxxyxxxyxxyyy\z[zVzXzTzZzzzz||{|{{|{ |{| |||{{|{{| ||-~<~B~3~H8~*~I~@~G~)~L~0~;~6~D~:~E~},ā́ʁŁǁ[Z\{w|zxWyvhŇɇLJ̇ćʇއ53<>AR7B " OprqooNMSPLGC@~8dVG|X\vIPQ`mLjyWUROqw{a^cgNYǕɕÕŕ ՗ԗADJIEC%+,*32/-10H3Ag6./180EBC>7@=-Ȟڞ$#"T1Q-Q.QVVVVVVpY<[i\j\]m^n^aaaaaaaaaadeddeedeefffjjjjjjjjjjj^kk lp p pppppopo&poo prqqrqvsttttttttuu\vdvYvPvSvWvZvvvvwwx yyy yyyyyy_z|)|| ||-||&|(|"|%|0|\~P~V~c~X~b~_~Q~`~W~S~uсҁЁ_^ƅŅDžą˅΅ȅŅ҅$iۇ߇ԇ܇Ӈ؇㇤ׇه݇SKOLFPQI*'#305G/<>1%7&6.$;=:Bu\b`WV^eg[Za]iTFGHK(:;>ҕӕѕזږ]ߖؖݖ#"%חٗ֗ؗPQRA<:  ܚ)5JLKǛƛÛӛě\SOJ[KYVLWRT_XZߞ%+*)(LU4Q5QRRSVVVVVVXXXY=[>[?[]p^_aee e e eeeeefjjjjjjjjjjjjj`kk lp'p pp+p!p"p#p)pp$pp*p r rrrrrrrrrttttu`vwwwwyy!yyyyygzhz3|<|9|,|;|||v~u~x~p~w~o~z~r~t~h~KJxׁՁdacمڅׅ؅߅܅хޅ  bZ[Wa\X]YPHJ@SVTKUQBRWCwv mxsjo{ŽRQOPS@?ޓǓϓ“ړГ̓ٓʓԓՓēΓғ}ڕە)+,(&ݗޗߗ\Y]WHGC%$" '#š  7ޛԛכܛٛ՛ڛwqx}ktupis{oyh-@AMVWX7SVVVXE[]]^^__aeeeeefffjjjjjjjj02.3vtsEdcbU]W^ėŗVY RXPJMKUYLNžО876COqpnoVVN[m\-effk_pap]p`p#rttw8yyyj|~mC875K‘khiFCGǗ^՚Ycgfb^` FtuvV.eekkkkbp&rrww9yi|k||~~~~FGHyz|{nmoqsIr_hnm  Gx{zyWfpo|<Ñtxvu`tsqu hpep|j>=?ɎKst̘adfg$Hbk'rLih.)rKyuvkzipjp~I8@@4@4@@0@@,@@(@@$@@ @@@@@@@@@@ @@@@@@@~@@z@@v@@r@@n@@f@@b@@^@@Z@@V@@R@@N@ @J @ @F@@B@@>@@:@@6@@2@@. @!@*#@$@&&@'@")@*@,@-@/@0@2@3@5@6@8@9@ ;@<@FGDXӡPѡҡšDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsDzǴǵǶǷǸǹǺǼǽǾǿVXELK¡JK¢ԡۡܡڡݡء١wxz{|}utsrq~Zbcdefghiponmlkjvy@BCqrmnuvyzijEefâĢŢƢǢȢɢʢˢƦƧƨƩƪƫƬƭƮƯưƱƲƳƴƵƶƷƸƹƺƻƼƽƾƿƣ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ǡǢǣǤǥǦǧǨǩǪǫǬǭǮǯǰtuvwxyz{|}~UVPQRTWSO@BCEVTWUFɣOMɢBA@CèXPcꦱYDd@D[G\EGFĨAAE^]ŨKöܲFƨGH_QɭǨȨE`ɨʨFGHRɱTSɵJKLMIPjfiQahNOHegɮ饱ɶɸɯfBgD[`hdG]Cb^ZeEH@FcAi\_aبШ˨ըΨ֨˼ި٨˵ۨϨԨ˴ӨרҨͨܨݨڨ˲Ѩ̨VJIQ]KYPXT[NWMURZO\SLH׭ѭ֭ĭͭڭέǭܭӭп̭˭ϭ[ƭխԭʭɭҭí­Эŭ٭ۭحȭcW\bԲUԶYRԴVԹgQfXԱSO]PNZ`aԷ[^M_dLTeԼȳ^Wų_UXijYdz]SRɳʳƳ˳Q\ZTóVʶĶͶƶǶŶ˶̶ɶܼȶζܹಹஹହ෹హ൹觾詾訾vwux_lkIaSRJIKߨ^YZ°\[`]^JK@LݭNTUAj`_ðUaޭ߭VBMNkha@LZİͳBɿYWXMNb¤ZkFDEGClmnPOSQRchdgfebѳŰikjlưγϳгжѶ϶ABỹZ@ABDCO\[HUVTWoplkijǰnʰmɰȰԳӳҳҶնֶԶӶCDEyUcäVĤŤ]^Iqm̰˰cbPƤ_ͰCl`KJXo׶EἹǤаΰϰQd͢ʤɤȤcbmnճRˤedrWgfLMsYZoD̤tuppdֳeFόFXhѰSeΤͤϤqOfjytonuslzmixwvkrq{pSYU[XNQTPWZORV\~{g|[]up}_ahxtv\mvsdnowljkq^rfczbei`yOPIKMLEADIRCFHQMSJGB@NHKxt}rCΣOΥyEBwͦJ|LΩs~{@ΡFGzvuDND@BCACFB@GѡEDAw䰧߰|۰v{zᰥsְٰ~ӰڰtԤݰux}ްܰװұذyణհ԰qrj׳ڳuxسq޳䳽n۳v{ofsmyݳ߳ܳzlrthwٳgip޶ܶ߶ڶݶض۶_ٶ͹ȹUQK¹TΌNPSĹ˹ŹIƹǹL̹JOùHɹMRʹGMGDGSTJBLRFIHHCEKAkONP䲾@EB鶾AC輾軾D@QF鷾{}~z|P`VQAY@XWZmonŦI}|_^]ywzxTHIEF밫|ϹιIHGkgYnobfdcea`}{ʬ~|Y[Z@XWV\AUTZX^UY[]WVQRέS\PSRWNQPTXGJOUIJVMHLԯԽԴԼԾԹԲԦذԵԳﰻԶKةإ}رخKѫ~ذد]йcչ_fW׹ѹ\U[dҹֹZ`eVԹ^bhXaӹgYYKWVMRNQ\[JPZOLXMOJLNþP¾IKSRabcB[hФ_عiSZB`YLi~pgh]ڹ۹ٹjѤӤҤ[ԤqijaC_`^ZabMNOݹܹj]ľklonqpmkʹʸʳʮʻʷʭʺʫgoOHpSDKfEdLPcQJMriTRnlIkGFjhqmeNoθgcsblξpοVvdfmqurknhëjitκe«\b[`PU_\aQ[TRcSWXZY]^d@CDBA@ؽBGCضADغطؼEصB@CD@FAABEnzpvkyx|u޹tm߹{orwqlsUaXWZ\_VT][Y_^c^`b`WVUXQRZSž\[TYƾT\]ClmnդrssUutVī]eEGF}Ǿ^prsvtuwʻWXvxzw{yȫūǫɫƫfwhgc_`bdafeJIHGKFIKHJHIJ~칡fged]Ⱦd_oxʫigNMLLMɾp\֤ty|KqפNLrؤuɧY~Z}Ϋxͫ˫̫jhkij^PQOhiaĨK٤swvzħ§çhb]̣ec\ilg`̥f̦ad[_ķ^j̢ΤΪΣΥ}{ΩyЫΨ|zϫ~έonlknposqpѮrmlmqrSRTXAZV^[UCWB\]YD@QROOPSVNPUTCRDMQegkhcbljjmdikfaf`e^hdic_gjbrDE`rqt{ʵ_uŧtWvwxڤѫSy]ɫx|Ƨn̬m̩o̪ҫԫΰαβδӫtsvubFac`UEVWTZ\E[YXqompnlmklnnz~}FۤիXyzȧɧǧβ֫ιζκ׫yuwwxxvGJKHgfdeIhZ[\]_aHGY`^psrtqtuossqprofFGUʧث{ܤ˧٫|I}ݤޤɢ̧qrsp̸ګzzyiLjM]buvʾtstkJUΧͧ۫{mCnl^vLϧЧwv̻uݫܫޫ߫}|{OorpNuqPtsa_`KdLcwxwu@HIߤ{ҧԧɤӧѧxyا֧էק̢~̮̩©̭㫬éȩƩ|̥ͩ䫦ɩ{ʩ˩ǩ̩z̫ĩ}̡̤ũΡΤ~}|쫡򫢮~뫦﫥ΧvѦѨSլѣxQRѯѭѧywzU^d|e`ժVբ~TbeIcء]a{dYbWXէ[ի_դ\fcZ}ko@QmDqeFSilGHNsTJOC^UrAP]pNMtEjBKMRgLPh\phlnk[j_Z@qXimOfgAWYVo}GF|ECDzn᣼{HyBz~y~ξx娼̾嬼xv}w;姼孼|{˾zо~Ѿ|y{ӾҾ}ϾVgjihaJbAt|ɳڧ٧ϩΩѭur`atvuI宼ԾW¹ѩЩҩѰvQ~}ɷɪɩߧөާۧݧܧ᩾̷ܩ侀̴̺̼̿詸٩⩶שة֩ԩߩթ䩵کݩީ۩A@ѱCBEβDѿfѺѼ}սѾѿѸѵѶѹѻѻî®ѷg˱ʱyurզպwը̱ɱ{jȱiսs±hxqDZtդƱRoոñxnl~հıw|յpűmzvTSkdzjYgw}kn|\ml~Uyi_٥phq٭fec]٤VW{yXox`[٩a^p|ݱݶݪliz{bknoݸjd}ݺݨݩ~ݴݫݵݭehfݰݬSmgcݮQLKObR导T尼NPUJ嵼Zٲ¼M峼üؾپ߾־ݾ۾վܾ׾޾ھY­X^\]Zk[BEFDGlCNdMLKceuũrٯFGĮŮӱϱֱձαѱԱбvͱuxٰswtqVļżƼHyƮرױz{rW礸Hٱ|ٵs_IǮȮ۱ܱݱڱ}~پYXJIO^J餹@PMSKNQLORЮɮ̮Ϯʮήˮͮ߱խޱծ౩٨ݦټ١yvwu{ݻxtz\Z[ȼǼʼɼ澻辳徶`nKmQRfPŪTѮҰ̳|뤳BAҮӮԮ´zagɵɴCGBE@AA@FDWCMNFXHSIVQOJPDRUELTGK[\iVLbJ[EeRADQa`FX_`cZKSfYamVXCjc]@lgIkPHd\T^bGZYO_UWh]NMB^WU߮ծݮ֮ڮۮخ׮ٮܮյչսհղճ鱺շջޮִѴҴδĴǴƴ״ɴŴд̴ٰٵٯ˴ݱϴʴٴʹôٴ٬ȴټپ٪ӴմٹԴݦݨݬݡݯݣݰݪ~شݿݥݢݭJH^FX}_B]GUd][@ZoQamI^KYgDkaMCWh`eSfEPLN`_nObTcljAVibR\ͼؼռѼμּ׼ԼټӼмϼ̼Ҽ˼EAHIDJ@GCFBchibfegdQNWVTOrPqSpXRMoLVUUhYZTXSWvVYd۴ܴڴݲpceqdۼڼKjYwBZ[nk\eofp޴ݴfghܼLlZ_qgߴijݼ޼`CHrhsijBAC@@AAB@ݷkM[¥]a~ɻIJ^tklDBråƥťĥD@ŦƦ¦ĦɼEæ[YLQSLMUROQVZXZKM\TWEG^UNJYVHICOP[]PNS\WR]FTKXDjzqKbeBmovhfguGpnsJuycIMO@lk}rux|AF~wi_d`N{taL|ϡwϪϬtv{Iҭϭ{sd~xzϥ}}pϨzmϪxoϫ^H|wvnϬϩyϡqϢrϦy~LCU[WJMFGJV_E@NBOYDhHHEfZgaSb\ecITAG`FQCiPKKX]eRPG[UGDgdXcNOIE@QYBD^F\SHFJhb_]faR`AEWVTLKCMAZIMDJCUVHDBSKQWAGEBCOLT@FGFEPNR@a`F޽_IJǷh·^CȷRHKc޸jbW̷˷ŷi޹ULYeͷTMķ÷PZdGQ޼[ɷN޿ESgVlXfƷO޺ʷD]\⭺}⢺n⯺wmⱺqsuS殺}o⣺u~||vtzwxz~pyx{t⪺⤺sr⥺{y߼vDNMYKOFRTC^W[`UILH_aV\JE嫺AZB@XQP]GI@AHCOBDFEDJGFEB@ANCQSYWZRVU[TXPqopmnsrx_ey\vsgwt^abcf]udh`]j`kh_\^bedg[icfiaxyŭWeƣlǦA^_b_`aXZURTVͣSP͡WQͥYϱϵϵwxyPLnv{QlrkuqMOzjmst|pNmNPLXJWiH[RlSVZOTjkYMI[QUKHIeOYbXL`^_Jc\ZK]aMdpwyޡڷkҷz׷η}m~lܷxϷԷqٷ|ovrnѷطַӷ۷зuշN{st⵺gdpjlfnmkqhocebriJQUSKILMHUVGVQOLPNRRMNOPKTSWXT\b`^a]_wtuvlmzkji{ljkyRݷnb}ϹfP޷|gɦBȦedc`[Ϻϻҡ~S]^o\_RpQkjhilڦޥީާ޹⺺stYZr}qpnolǥCDfbaˬegcfgd_;]deab\ͯ^ͮc`ϽϿϼҥXWUҩTVg֣Ҫbfenyhcmtsadurq`ipwTvsVuoqtrUxS߷ެުᷮ⻺ޯvu~}{zwxy|_\]W[a`^decyx~mnmzȥYvjɥEljkhhimkgjf͵ilh¬ŬϿĬìҫҶҹҺҬҸҵҳҷ_]һҲ^Z\xmklstp{uroynwzqy[xwv|~`ڢZڥ[abX}{ڣz_|ڤڪY^\]W鷷跻޳޺޸޹޵޴⾺@bAifegfZcX\[dhYmzjhknlgBEu@oFD{ACGvtsnŲʥnͼҽ}]{ų˥o`ҿ~ºi^_ropqIH|w̥ƬͥңcdΥϥFjiǬϬХѥҥӥklnmrpqˬɬʬȬ`dcba{z֤feڧBjså|ԥsúopt͸ϬЬͬά̬hinlkjemfg֢֭|~֤֣}kjhlmgiگǺƺźȺECHIFGĺDlksmro`qabpntwuvMN}O~LPJxoKp~}ѬnoեʦGqmҬӬԬoqpJxQqp֥uprKtRrץ׬ج֬լqrs֯ڱsɺʺLducySsإnxwͼvͽy۬ڬ߬ެ٬ܬݬuvwtֲֳִֵַ֭֮֬ھںڻڽtCκFDEAB@̺ͺ˺NQOMP}~vzywfgex{|h@{A|z~}U¥¢T{yztwuvf٥ڥoxuGB|xۥz|~}{Ϳ|zҢyҥ}~{ֵֶַֺvڸwxNQMLHOPJKкԺѺӺIҺTXVϺSURYWjlikFECDVGZW[]\XY~}z}yq{|~rtsܥrªҧҦҬֻּּֿRSTA׺պֺCB@mHI_^áVݥrqpĪêҲ־}|z{yAZX@W\[YIHDغGFٺ^_[]Z\pErqnoJ`¨©ãޥHsƪŪ@ҷ~D]^CBJۺںKLa`sK¬uߥAҸڣEܺMݺvĥ˦ǪBC@BӹDGEFCҺHAƲòDzŲ²IJȲڧڥڬګڭaPSGLFcJHbONKMIR_Q]XNPUTWRQߺSY[VOi޺\bce`hdfgvjtxQyw{zONLPMucagedjkhib­«flðêîïóxwyŢXYm~̦EFDGHIIOMӻKLNJɲ˲ʲگVdTeUfa^`_ka|}WSXTVRUz{A@ͦtȪLJKZǯSYïRXV¯įUӽTȯůɯƯQPWϲֲӲٲزԲвѲҲײͲղ̲ڲڴlڳڶڻβh]_ae[Yj`d\XWbZ^kifgcrjxtxeubwfvpcqshgdlimynokpyurvltswqnzrm{o~꨿ꣿꦿꤿ_Yia]dg\e`Zhc^b[fntwµovq·msurpøô÷õ~}ĭBŹ@BAlΦoʯڲjCIɪuM`[_]˯^\@ijnohkgm@pz|}üDźϦ˪ʪONb̯aܲ۲BCAsmlnrq~꪿yxýüðЦPeίdcͯݲ޲߲Dop~CAB{|}桽歿꫿kz{lѦҦ̪ϯQӦARS@BԦTѯfӯЯүA@qզs˪CUhԯgկCBDFGEtuEDpomnq|¾Ť֦wµvFצئ٦vwwtvyu{zxxѪϪΪӪժҪ֪ͬЪ|Ԫͪ[GH]WZcaIgLd\YIbDeV_FK`OMXJ^NEfگد֯jޯۯlݯkinHomׯٯܯ߯NEGHPLJMQFOKIȵQOʵJۡɵNKŵ˵PǵMGƵL̵ĵõwu{sߢxr{}v~|~yxy}͵|tzLHMJKIAD稽C秽@榽B걿꯿txzwvusry¡}~ôijECDڦתRN{ۦSܦPTUVOݦتhpWۤP|µަ٪RεQEߦϵR঱iQrqWTVSUXYZۦߨSJFIKHG괿F}}X[AJKMNLˣ{ˡ|zy}~~jܪͷ۪ߪͿݪڪ͸ઽ쯻ުb\daqt]kV`cewUYWRo~svХf}^xФuy|mУ{lp_ZSXTgnХ[zAv}~x|ӵӤtsr\ۦz{ӡuӯӶӰӧӢwy^`ey]houbi@wrnj\aYfcsdzlkZ_pvA[gmxqtl`׵}۪ۧյhۣiwsߵt]赡u۬pnzԵrۭkdocaеjۨصݵٵ~ڵvfҵ^ۢ۫e൰qmѵ|xֵܵ޵ӵyg{bۦ_Uߵߩ߱߿߲߰߶߶߱۵߸߯߾߲߫ߴߺߪߧ߭߮`X[YZ]aU^WVTc\b_stgfb紽vu_c]pawZXdni綽Om[RU{\SQNe篽`h穽x|竽WkoTy粽L絽rVjP^Y筽l}zqMI@CEAG븿LFUOF귿JT뿿QDHBVSP빿W뽿MKNS@ERDAMOQIPBRJGUHTKLVCN~³°ĩĦĬīļJKIGHLEFGOhӷ@B|{굸~XZYWЧikjӿAFӽCӻHӾӹGDӺEBLK׫HF~שקפ׬׭ׯװ}Eס׮GIDMJ߽۱쵶ﵺ۸۵ۼ۷۹ۻߺ¸øĸ㻸jeghmilfd߲½k翽绽缽羽繽纽罽da븽kge`oĿ\hi_^lb]cn[mj¿ÿfY]Zag\pj_kfm^`nXldch[bieo¥įBEACDQON@PFMžZn妪GlNŸýĽſЭmIJNMKLPUTRS׻׽׷׾O׵״Q͸ϸǸθʸȸɸ˸Ƹ̸tBAv@nprqsoƽʽŽǽȽɽup|ʿwyȿquxƿɿ{stzrvǿrqwstuxvIKHJRHIKJPnWVиCFED̿˿y{zTS[oCA@BѸDIGH}|}LULqrpTRQXPYVSWUO_Y^`Z[X]\DFEICB@GAH߸ڸոָҸ޸׸ܸӸԸPMEJQٸGOKNLݸFظLx{NM}ϽOK䦻y۸|z~wJֽҽٽڽ˽սԽνͽӽнؽ̽׽۽ҿ~ͿӿϿٿԿпڿۿؿѽοܿտѿֿ׿~AO@BCĴij@NMPQAV[XWZYCB@A@MNgmRPDDZaTSܽݽvƨbHVUWQR䨻ݿ޽޿FE\[IYZX߿Gst]^hfcgedJLQSRUOKMTPN[TSU߽併࿴HIJRBS\ŬEBji\]꽺vu_XWV_b`ae^fcd఻VLNKMTowlk`[^Yl]\_Zhonpmrikgjqs[aYbX]c`_^W\ZAC@EBFDEA@CBDROSQPTľCEVDUa`^]bcF_\QPOpnƭ`UyxcabmnCAEFLHJBIKDGb@acuwv{xtyz|gfde䳻MNIJKLH@GFGHIXYWVZXYWFdeHGd@|GŰdA[д|У~{}zjgnilhekmfpzv~w|roq}uxty{sMeOgiNfjhGO~PEJCBMLKIN}DFHRCASDBQPOEŶUoRSQT˧ˬ˨˷˹мйп׺qprע׷lVWTܣnSYXk\R[PZUmQRnqim»ljpkhoYHJVWUQGZTFIXKLM]\[\ZfŻut@Asפ_a]`o^psUTSsuƻûŻĻtra^_M`[\JK]LOPNR_Q^]HIC]qoƼVĽqBxvzDywCԨBث@תCצAmljbqeovnyuciwhxzkrswutfrvtsdgpaWYeZ\f[db^c`Xg]_xǻz̻лȻɻ~ѻͻ|˻ʻyλ{wvϻ}RZUgPOVeTqcdNXtysowuhb}W~xmkfn{jzSv|rlQpYiDACB@@CEEBAD`YTc[eU_aWX]bjgk^Zhj\dfiSVscqalhrbetmpid`okugnBf@DACafOhIdjNJK`gMeL_cb^implnoijgkhųKMLNJDSRT_U^VruthsrpqwDxܥv{EFج}zyܣ|{~{hһջ׻ֻӻԻ[\MKIJFFNHLGnlmwxEGFPmlkXVYW¨˿˭@ЮЭEԢF~|}IصHKرJثGا}ܬ|~ܡܤjkiػڻٻGHOIoAGLضܦܯnomۻlܻPJptqusyBܧܳsprqݻ]^_`QNKPSLROMwvx~}z{|HISnQRoŵqEGFWCtQRDañSŲMuv޻߻cbdVUTTA@}{~|y@zJKpOPHiCBäqrWDXAçLMTQNصܷz|wx{yge[fYZU[YXVZWEJFIHGDBECèF@ĨAħQNOPrVUtsI`X仾hGíBĬuRStsuHO~}i\kjla_^]`\K^]_NLMRKQTSPOJHICDXWUTYvwWvVwaYPUﻭ`WVLòहࣹnqsrtpmocfdcihgbbaedZ^[]\Y_b`a@XcMïEFĴ`^]ca\Z[_bx~y[šZ}|Y{Xz}~{x|yzRSJvjkƴzluejmfdkNfde\ŤżbIhvwnqpoghfegOüPGgihTUVKcƶxiJ{ƬrzyiSRQ^Ũ]ũL|{}xvwsytru|j{z~jmltosqpnkCBDAuXWUTJKIHloVmsqkvjrnut`_ŴűŬpZ\_[`YW]X^MZ\[yxwzst}~okplmnz{~|vy}EF¦wYZ[MxOPNL}{|x~zwyabŽdſcŻindgkreosjcmlqphbfNOa]^`_ba|{x|}PQGQSRecT³tdHu¶rqLJKI\fvwd}uܶxRe~쪹]gy^ĸ|{zM}fN~hŽĻijTSgjihseÿtJJWY[_`cdghklopstwx{|ơǡʡˡȡɡ\MOQRST}~̡͡ΡޡߡLMNICH]^ϡAСDAGFաס֡HIϢТѢҢӢԢբ֢עآ٢ڢۢܢݢޢߢBġ@ABCaUbNáEdFFFQG>G$IpJ`}JxLBLN)OOQSUWY[]_acegikmoqsuwy{|}xxxPHBB6222220000.($D6رֳֵԷԹһҽп 7wJJHHD>444~ 0k' Q^"""h xψXR`|ZT%f%W%`%l%c%Z%i%]%R%d%U%^%j%a%X%g%[%S%e%V%_%k%b%Y%h%\%Q%P%m%n%p%o%%EAG,.¡EANB@FGD'Q "RR$&(*,Qh\=c`ccp950cp950extbig5lookup_errorregister_errormbcs_decodembcs_encodecharbuffer_encodereadbuffer_encodecharmap_buildcharmap_decodecharmap_encodeascii_decodeascii_encodelatin_1_decodelatin_1_encoderaw_unicode_escape_decoderaw_unicode_escape_encodeunicode_internal_decodeunicode_internal_encodeunicode_escape_decodeunicode_escape_encodeutf_16_ex_decodeutf_16_be_decodeutf_16_le_decodeutf_16_decodeutf_16_be_encodeutf_16_le_encodeutf_16_encodeutf_7_decodeutf_7_encodeutf_8_decodeutf_8_encodeescape_decodeescape_encodedecodeencodelookupregisters:lookupO|ss:encodeO|ss:decodeOns#|z:escape_decodeO!|z:escape_encodeO|z:unicode_internal_decodet#|z:utf_7_decodenegative argumentt#|zi:utf_8_decodet#|zi:utf_16_decodet#|zi:utf_16_le_decodet#|zi:utf_16_be_decodeOnit#|zii:utf_16_ex_decodet#|z:unicode_escape_decodet#|z:raw_unicode_escape_decodet#|z:latin_1_decodet#|z:ascii_decodet#|zO:charmap_decodet#|zi:mbcs_decodes#|z:readbuffer_encodet#|z:charbuffer_encodeO|z:unicode_internal_encodeO|z:utf_7_encodeO|z:utf_8_encodeO|zi:utf_16_encodeO|z:utf_16_le_encodeO|z:utf_16_be_encodeO|z:unicode_escape_encodeO|z:raw_unicode_escape_encodeO|z:latin_1_encodeO|z:ascii_encodeO|zO:charmap_encodeU:charmap_buildO|z:mbcs_encodesO:register_errors:lookup_error_codecsfield_size_limitget_dialectunregister_dialectregister_dialectlist_dialectswriterreader_csv.writerwriterowswriterow_csv.readerline_num_csv.DialectdialectquotingquotecharlineterminatorescapecharstrictdoublequoteskipinitialspacedelimiterQUOTE_NONEQUOTE_NONNUMERICQUOTE_ALLQUOTE_MINIMALunknown dialect"%s" must be an integer"%s" must be an 1-character string"%s" must be an stringbad "quoting" valuelineterminator must be setquotechar must be set if quoting enableddelimiter must be set |OOOOOOOOO()(O)field larger than field limit (%ld)new-line character seen in unquoted field - do you need to open the file in universal-newline mode?'%c' expected after '%c'line contains NULL bytenewline inside stringargument 1 must be an iteratorneed to escape, but no escapechar setsingle empty field record must be quoted(s#)sequence expectedwriterows() argument must be iterableargument 1 must have a "write" methodwritedialect name must be a string or unicodelimit must be an integerError_csv.ErrorDialect_dialects_csvfunctools.partial__dict__dictionary of keyword arguments to future partial callskeywordstuple of arguments to future partial callsargsfunction object to use in future partial callsfuncthe first argument must be callabletype 'partial' takes at least one argumentsetting partial object's dictionary to a non-dicta partial object's dictionary may not be deleted_functoolsnsmallestnlargestheapifyheapreplaceheappopheappushindex out of rangeheap argument must be a listnO:nlargestnO:nsmallest__about___heapqresolutionlogreaderprofilercoverage$Revision: 51218 $_hotshot.LogReaderTypeTrue if the logreader's input file has already been closed.Dictionary mapping informational keys to lists of values.info_hotshot.ProfilerTypeTrue if the profiler's output file has already been closed.closedlinetimingslineeventsframetimingsstopstartruncoderuncallfilenocloseaddinfologreader's file object already closedend of file with incomplete profile recordunknown record type in log filecannot iterate over closed LogReader objectno more events in logprofiler already closedprofiler already activeprofiler's file object already closedprofiler not activeunexpected errorrbs:logreaderiiWHAT_LINE_TIMESWHAT_DEFINE_FUNCWHAT_DEFINE_FILEWHAT_ADD_INFOWHAT_OTHERWHAT_LINENOWHAT_EXITWHAT_ENTERProfilerErrorhotshot.ProfilerErrorProfilerTypeLogReaderType_hotshotiNss:addinfolocals must be a dictionary or NoneO!O!|O:runcodesys.path must be a listsys-path-entrypathcurrent-directoryreported-performance-frequency%I64dexecutable-versionexecutableplatformrequested-line-timingsrequested-line-eventsrequested-frame-timingsnoyeshotshot-versionwbs|ii:profilers:coverage_getdefaultlocalestrxfrmstrcolllocaleconvsetlocaleletterslowercaseuppercasestropstringlocale query failedunsupported locale settingi|z:setlocalen_sign_posnp_sign_posnn_sep_by_spacen_cs_precedesp_sep_by_spacep_cs_precedesfrac_digitsint_frac_digitsnegative_signpositive_signmon_groupingmon_thousands_sepmon_decimal_pointcurrency_symbolint_curr_symbolgroupingthousands_sepdecimal_pointstrcoll arguments must be stringss:strxfrmOssscp%d__doc__locale.ErrorCHAR_MAXLC_ALLLC_NUMERICLC_MONETARYLC_COLLATELC_TIMELC_CTYPE_locale_lsprof.Profilercleardisableenablegetstatstimeunittimerbuiltinssubcalls_lsprof.profiler_subentry_lsprof.profiler_entryinline time (not in further subcalls)total time spent in this callhow many times this is called recursivelyhow many times this is calledcalled code object or built-in function namedetails of the callscallsinline time in this entry (not in subcalls)inlinetimetotal time in this entrytotaltimehow many times called recursivelyreccallcounthow many times this was calledcallcountcode object or built-in function namecodeư>?A<%s><%s.%s>__builtin__memory was exhausted while profiling((Olldd))((OllddO))=|ii:enable|Odii:Profilerprofiler_subentryprofiler_entryProfiler_lsprofFast profiler_random.Randomgetrandbits(k) -> x. Generates a long int with k random bits.getrandbitsjumpahead(int) -> None. Create new state from existing state and integer.jumpaheadsetstate(state) -> None. Restores generator state.setstategetstate() -> tuple containing the current state.getstateseed([n]) -> None. Defaults to current time.seedrandom() -> x in the interval [0, 1).random<Astate vector is the wrong sizestate vector must be a tuplejumpahead requires an integer, not '%s'number of bits must be greater than zeroi:getrandbitsRandom()Random_randomgetlowergetcodesizecompile_sre.SRE_Scanner_sre.SRE_Matchexpandgroupdictgroupsspanendgroupdefault_sre.SRE_Pattern__deepcopy____copy__scannerfinditerfindallsplitsubnsubsearchmatchcountreplmaxsplitsourceendpospospatternliexpected string or bufferbuffer size mismatchbuffer has negative sizemaximum recursion limit exceededinternal error in regular expression enginejoinO|nn:findallO|n:splitcannot copy this pattern objectcannot deepcopy this pattern objectgroupindexflagsregular expression code size limit exceededOiO!|nOOno such groupre_expand|O:groupskeys|O:groupdictcannot copy this match objectcannot deepcopy this match objectregslastgrouplastindexO|nn:scannercopyrightCODESIZEMAGIC_sreO|nn:matchO|nn:searchNi_subxOO|n:subOO|n:subnStructstruct size in bytessizestruct format stringunpack_fromunpackpack_intopackz#|n:unpack_fromoffsetbufferformatcannot convert argument to longinteger argument expected, got floatrequired argument is not an integerunsigned argument is < 0struct integer overflow masking is deprecated'%c' format requires %zd <= number <= %zd'%c' format requires 0 <= number <= %zubyte format requires -128 <= number <= 127ubyte format requires 0 <= number <= 255char format require string of length 1short format requires SHRT_MIN <= number <= SHRT_MAXshort format requires 0 <= number <= USHRT_MAXrequired argument is not a floatbad char in struct formattotal struct size too longoverflow in item countS:Structunpack requires a string argument of length %zds#:unpackunpack_from requires a buffer of at least %zd bytesunpack_from requires a buffer argumentlong too large to convert to intargument for 'p' must be a stringargument for 's' must be a stringpack requires exactly %zd argumentspack_into requires a buffer of at least %zd bytespack_into requires exactly %zd arguments_PY_STRUCT_FLOAT_COERCE_PY_STRUCT_OVERFLOW_MASKING_PY_STRUCT_RANGE_CHECKINGstruct.errorFFFFFFFF_structGetModuleFileNameGetVersionWaitForSingleObjectGetExitCodeProcessTerminateProcessCreateProcessCreatePipeDuplicateHandleGetCurrentProcessGetStdHandle_subprocess_handleCloseDetach:Detach:Closei:GetStdHandle:GetCurrentProcesslllii|i:DuplicateHandleNNOi:CreatePipeenvironment can only contain stringsvaluesenvironment must be dictionary or NoneNNiihStdErrorhStdOutputhStdInputwShowWindowdwFlagszzOOiiOzO:CreateProcessli:TerminateProcessl:GetExitCodeProcessli:WaitForSingleObject:GetVersionl:GetModuleFileNameCREATE_NEW_CONSOLEWAIT_OBJECT_0INFINITESW_HIDESTARTF_USESHOWWINDOWSTARTF_USESTDHANDLESDUPLICATE_SAME_ACCESSSTD_ERROR_HANDLESTD_OUTPUT_HANDLESTD_INPUT_HANDLE_subprocess_types.HelperA getset descriptorgetterA member descriptormemberHelper_typesA types module helperproxygetweakrefsgetweakrefcountCallableProxyTypeProxyTypeReferenceTyperef_weakrefWeak-reference support module.SetValueExSetValueSaveKeyQueryInfoKeyQueryValueExQueryValueOpenKeyExOpenKeyLoadKeyFlushKeyEnumValueEnumKeyDeleteValueDeleteKeyCreateKeyConnectRegistryCloseKeyhandlePyHKEYbad operand typeThe object is not a PyHKEY objectNone is not a valid HKEY in this contextA handle must be a HKEY object or an integerObjects of type '%s' can not be used as binary registry valuesmbcss#registry string is too long for a Python stringO:CloseKeyzO:ConnectRegistryOz:CreateKeyOs:DeleteKeyOz:DeleteValueOi:EnumKeysOiOi:EnumValueO:FlushKeyOss:LoadKeyOz|ii:OpenKeyiiOO:QueryInfoKeyOz:QueryValueOiOz:QueryValueExOs:SaveKeyType must be _winreg.REG_SZOOiO:SetValueCould not convert the data to the specified type.OzOiO:SetValueExREG_RESOURCE_REQUIREMENTS_LISTREG_FULL_RESOURCE_DESCRIPTORREG_RESOURCE_LISTREG_MULTI_SZREG_LINKREG_DWORD_BIG_ENDIANREG_DWORD_LITTLE_ENDIANREG_DWORDREG_BINARYREG_EXPAND_SZREG_SZREG_NONEREG_LEGAL_CHANGE_FILTERREG_NOTIFY_CHANGE_SECURITYREG_NOTIFY_CHANGE_LAST_SETREG_NOTIFY_CHANGE_ATTRIBUTESREG_NOTIFY_CHANGE_NAMEREG_NO_LAZY_FLUSHREG_REFRESH_HIVEREG_WHOLE_HIVE_VOLATILEREG_OPENED_EXISTING_KEYREG_CREATED_NEW_KEYREG_LEGAL_OPTIONREG_OPTION_OPEN_LINKREG_OPTION_BACKUP_RESTOREREG_OPTION_CREATE_LINKREG_OPTION_VOLATILEREG_OPTION_NON_VOLATILEREG_OPTION_RESERVEDKEY_ALL_ACCESSKEY_EXECUTEKEY_WRITEKEY_READKEY_CREATE_LINKKEY_NOTIFYKEY_ENUMERATE_SUB_KEYSKEY_CREATE_SUB_KEYKEY_SET_VALUEKEY_QUERY_VALUEHKEY_DYN_DATAHKEY_CURRENT_CONFIGHKEY_PERFORMANCE_DATAHKEY_USERSHKEY_LOCAL_MACHINEHKEY_CURRENT_USERHKEY_CLASSES_ROOTHKEYType_winregnull argument to internal routineexpected a character buffer objectexpected a single-segment buffer objectexpected a readable buffer objectexpected a writeable buffer objectunsupported operand type(s) for %.100s: '%.100s' and '%.100s'unsupported operand type(s) for pow(): '%.100s', '%.100s', '%.100s'unsupported operand type(s) for ** or pow(): '%.100s' and '%.100s'|^&<<>>-/divmod()+//%|=^=&=<<=>>=-=/=//=+=%=bad operand type for unary -: '%.200s'bad operand type for unary +: '%.200s'bad operand type for unary ~: '%.200s'bad operand type for abs(): '%.200s'null byte in argument for int()'%.200s' object cannot be interpreted as an index__index__ returned non-(int,long) (type %.200s)cannot fit '%.200s' into an index-sized integerint() argument must be a string or a number, not '%.200s'__int__ returned non-int (type %.200s)null byte in argument for long()long() argument must be a string or a number, not '%.200s'__long__ returned non-long (type %.200s)__float__ returned non-float (type %.200s)object of type '%.200s' has no len()'%.200s' object is unindexable'%.200s' object is unsliceable'%.200s' object does not support item assignment'%.200s' object doesn't support item deletion'%.200s' object doesn't support slice assignment'%.200s' object doesn't support slice deletion__getitem__'%.200s' object is not callableNULL result without error in PyObject_Callattribute of type '%.200s' is not callable__bases__nest level of tuple too deepisinstance() arg 2 must be a class, type, or tuple of classes and types__class__issubclass() arg 2 must be a class or tuple of classesissubclass() arg 1 must be a class__length_hint__'%.200s' object is unsubscriptablesequence index must be integer, not '%.200s''%.200s' object does not support item deletioncan't multiply sequence by non-int of type '%.200s'**='%.200s' object can't be concatenated'%.200s' object can't be repeatediter() returned non-iterator of type '%.100s''%.200s' object is not iterablecount exceeds C integer sizeindex exceeds C integer sizesequence.index(x): x not in sequenceargument of type '%.200s' is not iterableno mem to add parser accelerators XXX ambiguity! XXX too high nonterminal number! XXX too many states! no mem to build parser accelerators arrayiteratorarray.arraytounicodetostringtolisttofilereverseremove__reduce__readpopindexfromunicodefromstringfromlistfromfileextendbyteswapbuffer_infoappendthe size, in bytes, of one array itemitemsizethe typecode character used to create the arraytypecodec;array item must be charsigned char is greater than maximumsigned char is less than minimumh;array item must be integerb;array item must be integerarray item must be unicode characteru#;array item must be unicode characterunsigned short is greater than maximumunsigned short is less than minimumi;array item must be integerunsigned int is greater than maximumunsigned int is less than minimuml;array item must be integerunsigned long is greater than maximumunsigned long is less than minimumf;array item must be floatd;array item must be float\loewis\25\python\Modules\arraymodule.carray index out of rangecan only append array (not "%.200s") to arraycan only assign array (not "%.200s") to array slicearray assignment index out of rangecan only extend with array of same kindcan only extend array with array (not "%.200s")array.index(x): x not in listarray.remove(x): x not in listpop index out of rangepop from empty array|n:popnO:insertdon't know how to byteswap this array typeO(c)OO(cs#)Onot enough items in filearg1 must be open fileOn:fromfilearg must be open filearg must be liststring length not a multiple of item sizes#:fromstringfromunicode() may only be called on type 'u' arraysu#:fromunicodetounicode() may only be called on type 'u' arrays)array('%c', array('%c')list indices must be integersattempt to assign array of size %ld to extended slice of size %ldmust assign array (not "%.200s") to sliceAccessing non-existent array segmentbad typecode (must be c, b, B, u, h, H, i, I, l, L, f or d)c|O:arrayarray.array()ArrayTypearrayzi(zlOO)Non-statement found: %d %d unexpected expression in assignment %d (line %d)can't %s %sdeleteassign toconditional expressionreprcomparisonliterallist comprehensionyield expressiongenerator expressionoperatorfunction calllambdacan't assign to ()assignment to NoneNoneinvalid augassign: %sinvalid comp_op: has %d childreninvalid comp_op: %s %sinvalid comp_op: %sisinlogic error in count_list_forslogic error in count_gen_forsmust use 'as' in importasunexpected import name: %dunknown import statement: starts with command '%s''import *' not allowed with 'from .'trailing comma not allowed without surrounding parenthesesUnexpected node-type in from-import\u%02x%02xutf-16-beu005ciso-8859-1utf-8string to parse is too long\loewis\25\python\Python\ast.cGenerator expression must be parenthesized if not sole argumentkeyword can't be an expressionlambda cannot contain assignmentnon-keyword arg after keyword argmore than 255 argumentsunhandled atom %dunhandled factor: %dunhandled expr: %dandassignment to yield expression not possibleillegal expression for augmented assignmentaugmented assignment to yield expression not possibleaugmented assignment to generator expression not possibleunexpected flow_stmt: %dpoorly formed 'exec' statement: %d parts to statementimproper number of parts to 'assert' statement: %dunexpected token in 'if' statement: %swrong number of tokens for 'while' statement: %dwrong number of children for 'except' clause: %dmalformed 'try' statementfinallyexpected "with [expr] as [var]"non-default argument follows default argumentunexpected node in varargslist: %d @ %dunhandled small_stmt: TYPE=%d NCH=%d encoding declaration in Unicode stringratecvgetsampletostereotomonolin2adpcmadpcm2linlin2linlin2alawalaw2linlin2ulawulaw2linbiasaddmulcrossfindfactorfindmaxfindfitrmsavgppmaxppavgminmaxmaxIndex out of rangeSize should be 1, 2 or 4s#ii:getsamples#i:max(ii)s#i:minmaxs#i:avgs#i:rmsStrings should be even-sized(if)First sample should be longers#s#:findfitSamples should be same sizes#s#:findfactorInput sample should be longers#i:findmaxs#i:avgpps#i:maxpps#i:crossA@_@s#id:muls#idd:tomononot enough memory for output buffers#idd:tostereoLengths should be the sames#s#i:adds#ii:biass#i:reverses#ii:lin2linweightA should be >= 1, weightB should be >= 0sampling rate not > 0(O(iO))ii:ratecvillegal state argumentiO!;audioop.ratecv: illegal state argumentnot a whole number of frameswidth * nchannels too big for a C int# of channels should be >= 1s#iiiiO|ii:ratecvs#i:lin2ulaws#i:ulaw2lins#i:lin2alaws#i:alaw2lin(O(ii))s#iO:lin2adpcms#iO:adpcm2linaudioop.erroraudioopb2a_qpa2b_qpcrc_hqxrledecode_hqxrlecode_hqxunhexlifyhexlifya2b_hexb2a_hexb2a_hqxa2b_hqxb2a_base64a2b_base64b2a_uua2b_uuistextquotetabsheaderdataTrailing garbageIllegal chart#:a2b_uuAt most 45 bytes at onces#:b2a_uuIncorrect paddingt#:a2b_base64Too much data for base64 lines#:b2a_base64String has incomplete number of bytest#:a2b_hqxs#:rlecode_hqxs#:b2a_hqxOrphaned RLE code at starts#:rledecode_hqxs#i:crc_hqxs#|l:crc32s#:b2a_hexNon-hexadecimal digit foundOdd-length strings#:a2b_hexs#|i0123456789ABCDEFs#|iiiIncompletebinascii.Incompletebinascii.Errorbinasciino mem for bitsetzipvarsunichrsumsortedsetattrroundreloadreduceraw_inputrangepowordopenoctminmapleniterissubclassisinstanceinterninputidhexhashhasattrgetattrfilterexecfileevaldivmoddirdelattrcoercechrcallableapplyanyallabs__import__keycmpiterablendigitsnumberlevellocalsglobalsnames|OOOi:__import__apply() arg 3 expected dictionary, found %sapply() arg 2 expected sequence, found %schr() arg not in range(256)l:chrl:unichrcompile() arg 3 must be 'exec' or 'eval' or 'single'compile(): unrecognised flagssingleexeccompile() expected string without null bytesOss|ii:compileeval must be given globals and locals when called without a frameeval() arg 1 must be a string or code objectcode object passed to eval() may not contain free variables__builtins__globals must be a dictglobals must be a real dict; try eval(expr, {}, mapping)locals must be a mappings|O!O:execfilegetattr(): attribute name must be stringhasattr(): attribute name must be stringmap() requires at least two argshex() argument can't be converted to hex__hex__ returned non-string (type %.200s)can't intern subclass of stringS:interniter(v, w): v must be callable%s() arg is an empty sequence%s() got an unexpected keyword argumentoct() argument can't be converted to oct__oct__ returned non-string (type %.200s)ord() expected a character, but string of length %zd foundord() expected string of length 1, but %.200s foundrange() result has too many itemsrange() step argument must not be zerorange() integer step argument expected, got %s.range() integer end argument expected, got %s.range() integer start argument expected, got %s.ll|l;range() requires 1-3 int argumentsl;range() requires 1-3 int arguments[raw_]input: input too long [raw_]input: lost sys.stdout[raw_]input: lost sys.stdin[raw_]inputstdoutstdinreduce() of empty sequence with no initial valuereduce() arg 2 must support iteration?$@d|i:roundsortO|OOi:sortedvars() argument must have __dict__ attributevars(): no locals!?sum() can't sum strings [use ''.join(seq) instead]zip argument #%zd must support iteration__debug__unicodexrangetypetuplesuperstrstaticmethodslicesetreversedobjectlonglistintpropertyfrozensetfloatfileenumeratedictcomplexclassmethodboolbasestringTrueFalseNotImplementedEllipsisfilter(): unsubscriptable tuplecan't filter str to str: __getitem__ returned different typecan't filter unicode to unicode: __getitem__ returned different types;embedded '\0' in input line|O:bool%s buffer type not availablecharPy_TPFLAGS_HAVE_GETCHARBUFFER neededsingle-segment buffer object expectedoffset must be zero or positivesize must be zero or positivebuffer object expectedO|nn:bufferbuffer()<%s buffer for %p, size %zd, offset %zd at %p><%s buffer ptr %p, size %zd at %p>read-writeread-onlywritable buffers are not hashablebuffer index out of rangebuffer assignment index out of rangeright operand must be a single bytebuffer is read-onlyright operand length must match slice lengthaccessing non-existent buffer segmentcellcell_contentsGC object already tracked\loewis\25\python\Objects\cellobject.cCell is emptyPyEval_AcquireThread: non-NULL old thread statePyEval_AcquireThread: NULL new thread statePyEval_ReleaseThread: wrong thread statePyEval_ReleaseThread: NULL thread statePyEval_SaveThread: NULL tstatePyEval_RestoreThread: NULL tstatemaximum recursion depth exceeded%sStack overflowexc_tracebackexc_valueexc_typeinstance exception may not have a separate valueexceptions must be classes, instances, or strings (deprecated), not %sraising a string exception is deprecatedraise: arg 3 must be a traceback or Nonetoo many values to unpackneed more than %d value%s to unpacks keyword list must be a dictionaryargument list must be a tuple object instance constructor%.200s() takes exactly one argument (%d given)%.200s() takes no arguments (%d given)%.200s%s got multiple values for keyword argument '%.200s'%s%s argument after * must be a sequence%s%s argument after ** must be a dictionaryslice indices must be integers or None or have an __index__ methodcannot import name %.230sfrom-import-* object has no __dict__ and no __all____all__strings are too large to concatError when calling the metaclass bases %s__metaclass__error return without exception setunknown opcodeXXX lineno: %d, opcode: %d no locals found during 'import *'__import__ not foundfree variable '%.200s' referenced before assignment in enclosing scopeno locals when loading %sglobal name '%.200s' is not definedno locals when deleting %sname '%.200s' is not definedno locals found when storing %s'finally' pops bad exceptionno localsbad RAISE_VARARGS oparglost sys.stdoutlost sys.displayhookdisplayhookinvalid argument to DUP_TOPX (bytecode corruption?)local variable '%.200s' referenced before assignmentceval: orphan tstateceval: tstate mix-up%.200s() takes %s %d %sargument%s (%d given)at least%.200s() keywords must be strings%.200s() got multiple values for keyword argument '%.400s'%.200s() got an unexpected keyword argument '%.400s'exactlyat mostnon-keyword PyEval_EvalCodeEx: NULL globalscode object passed to exec may not contain free variablesexec: arg 3 must be a mapping or Noneexec: arg 2 must be a dictionary or Noneexec: arg 1 must be a string, file, or code objectglobals and locals cannot be NULLinstancemethodthe instance to which a method is bound; None for unbound methodsim_selfthe function (or other callable) implementing a methodim_functhe class associated with a methodim_classinstanceclassobjbases\loewis\25\python\Objects\classobject.cclass %.50s has no attribute '%.400s'__name__class.__dict__ not accessible in restricted mode__dict__ must be a dictionary object__name__ must be a string object__name__ must not contain null bytes?__module__instance() second arg must be dictionary or NoneO!|O:instance%.50s instance has no attribute '%.400s'__class__ must be set to a class__class__ not accessible in restricted mode__dict__ must be set to a dictionary__dict__ not accessible in restricted mode after coercioncoercion should return None or 2-tuple__coerce____ror____or____rand____and____rxor____xor____rlshift____lshift____rrshift____rshift____radd____add____rsub____sub____rmul____mul____rdiv____div____rmod____mod____rdivmod____divmod____rfloordiv____floordiv____rtruediv____truediv____ior____ixor____iand____ilshift____irshift____iadd____isub____imul____idiv____imod____ifloordiv____itruediv__comparison did not return an int__cmp____rpow____pow____ipow____ge____gt____ne____eq____le____lt__ in __call__%.200s instance has no __call__ method__call__unbound methods must have non-NULL im_classfirst argument must be callablenothingunbound method %s%s must be called with %s instance as first argument (got %s%s instead)PyClass_New: name must be a stringPyClass_New: dict must be a dictionaryPyClass_New: base must be a class__delattr____setattr____getattr__PyClass_New: bases must be a tupleSOO__bases__ must be a tuple objecta __bases__ item causes an inheritance cycle__bases__ items must be classesclasses are read-only in restricted mode__init__() should return Nonethis constructor takes no arguments__init____del__instance.__dict__ not accessible in restricted mode<%s.%s instance at %p>__repr____str____hash__() should return an intunhashable instance__hash____len__() should return >= 0__len__() should return an int__len____setitem____delitem__n(nn)(N)__getslice__(nO)(nnO)(NO)__setslice____delslice____contains____neg____pos____abs____nonzero__ should return >= 0__nonzero__ should return an int__nonzero__object cannot be interpreted as an index__index____invert____int____long____float____oct____hex__iteration over non-sequence__iter__ returned non-iterator of type '%.100s'__iter__instance has no next() methodnexttanhtansqrtsinhsinlog10logexpcoshcosatanhatanasinhasinacoshacosmath range errormath domain errorDepi@cmathD|DPyCObjectPyCObject_FromVoidPtrAndDesc called with null descriptionPyCObject_AsVoidPtr called with null pointerPyCObject_AsVoidPtr with non-C-objectPyCObject_GetDesc called with null pointerPyCObject_GetDesc with non-C-objectInvalid call to PyCObject_SetVoidPtrbackslashreplace_errorsbackslashreplacexmlcharrefreplace_errorsxmlcharrefreplacereplace_errorsreplaceignore_errorsignorestrict_errorsstring is too largehandler must be callabledon't know how to handle %.400s in error callbackcodec must pass exception instance(u#n)(On)encodingscan't initialize codec registrycan't initialize codec error registryargument must be callablecodec search functions must return 4-tuplesunknown encoding: %sno codec search functions registered: can't find encodingOincrementalencoderincrementaldecoderencoder must return a tuple (object,integer)decoder must return a tuple (object,integer)unknown error handler name '%.400s'co_lnotabco_firstlinenoco_nameco_filenameco_cellvarsco_freevarsco_varnamesco_namesco_constsco_codeco_flagsco_stacksizeco_nlocalsco_argcount0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyznon-string found in code slot\loewis\25\python\Objects\codeobject.cname tuples must contain only strings, not '%.500s'code: nlocals must not be negativecode: argcount must not be negativeiiiiSO!O!O!SSiS|O!O!:code???collections.defaultdictFactory for default value called by __missing__().default_factorycopy__missing__deque_reverse_iteratordeque_iteratorcollections.dequerotate__reversed__popleftextendleftappendleftcannot add more blocks to the dequedeque()pop from an empty deque|i:rotatedeque mutated during remove().deque.remove(x): x not in dequedeque index out of rangedeque objects are unhashableO()ONdeque(%r)[...]]), deque([dequedeque mutated during iterationiteritemsdefaultdict(defaultdict(%s, %s)...defaultdictcollections'continue' not properly in loop'continue' not supported inside 'finally' clauseunexpected binary operation %d on a constantunexpected unary operation %d on a constantcompiler_exit_scope()_[%d]opcode_stack_effect()opcode = %d unknown scope for %.100s in %.100s(%s) in %s symbols: %s locals: %s globals: %s inplace binary op %d should not be possibletoo many statically nested blocks(zO)(ziOO)invalid %s kind %d in subscript compiler_make_closure()lookup %s in %s %d %d freevars of %s: %s param invalid for name variableparam invalid for global variableparam invalid for local variableparam invalid for deref variablecan not delete variable '%s' referenced in nested scopecan not assign to __debug__.%dfrom __future__ imports must occur at the beginning of the file__future__param invalid in subscript expressionparam invalid in attribute expression'yield' outside functioninvalid node type (%d) for augmented assignmentparam invalid in simple sliceextended slice invalid in nested sliceinvalid subscript kind %dextended sliceellipsisdefault 'except:' must be lastAssertionError'break' outside loop'return' outside function__exit____enter__module kind %d should not be possiblesuite should not be possibleno symtablethe imaginary part of a complex numberimagthe real part of a complex numberreal__getnewargs__conjugate(%s%sj)%%+.%igj%%.%igcomplex divisionclassic complex divisioncomplex remaindercomplex divmod(), // and % are deprecatedcomplex divmod()complex exponentiation0.0 to a negative or complex powercomplex modulono ordering relation is defined for complex numberscan't convert complex to int; use int(abs(z))can't convert complex to long; use long(abs(z))can't convert complex to float; use abs(z)(D)complex() arg is a malformed stringfloat() out of range: %.150scomplex() arg contains a null bytecomplex() arg is an empty stringcomplex() literal too large to convertcomplex() arg is not a stringcomplex() can't take second arg if first is a stringcomplex() argument must be a string or a numberfloat(r) didn't return a float__complex__complex() second arg can't be a string|OO:complexexceptionssys__main__impmarshalzipimportxxsubtypedatetimeparsermmap_symtableitertoolsmsvcrtcPicklecStringIOthreadtime_sha512_sha256_shasignalrgbimgnt_md5mathimageopgcerrno_astUnpickler(file) -- Create an unpickler.UnpicklerPickler(file, protocol=0) -- Create a pickler. This takes a file-like object for writing a pickle data stream. The optional proto argument tells the pickler to use the given protocol; supported protocols are 0, 1, 2. The default protocol is 0, to be backwards compatible. (Protocol 0 is the only protocol that can be written to a file opened in text mode and read back successfully. When using a protocol higher than 0, make sure the file is opened in binary mode, both when pickling and unpickling.) Protocol 1 is more efficient than protocol 0; protocol 2 is more efficient than protocol 1. Specifying a negative protocol version selects the highest protocol version supported. The higher the protocol used, the more recent the version of Python needed to read the pickle produced. The file parameter must have a write() method that accepts a single string argument. It can thus be an open file object, a StringIO object, or any other custom object that meets this interface. Picklerloads(string) -- Load a pickle from the given stringloadsload(file) -- Load a pickle from the given filedumps(obj, protocol=0) -- Return a string containing an object in pickle format. See the Pickler docstring for the meaning of optional argument proto.dumpsdump(obj, file, protocol=0) -- Write an object in pickle format to the given file. See the Pickler docstring for the meaning of optional argument proto.cPickle.Unpicklerobjnoload() -- not load a pickle, but go through most of the motions This function can be used to read past a pickle without instantiating any objects or importing any modules. It can also be used to find all persistent references without instantiating any objects or importing any modules. noloadload() -- Load a pickleloadcPickle.PicklerPicklingErrormemoinst_persistent_idpersistent_idfastbinaryprotocolgetvalue() -- Finish picking a list-based picklegetvalueclear_memo() -- Clear the picklers memoclear_memodump(object) -- Write an object in pickle format to the object's pickle streamdumpI01 I00 cPickle.Pdataunpickling stack underflow%ld no int where int expected in memo%d modulesfast mode: can't pickle cyclic objects including object type %s at %plong too large to pickle%.17gdict items iterator must return 2-tuplespersistent id must be stringUnexpected data in internal listInvalid get dataAttempt to getvalue() a non-list-based pickler|i:getvalueI/O operation on closed fileargument must have 'write' attributepickle protocol %d asked for; the highest available protocol is %dO|i:Pickler|i:Picklerattribute deletion is not supportedmemo must be a dictionaryGlobal and instance pickles are not supported.could not find MARKpickle data was truncatedcould not convert string to intLONG pickle has negative byte countcould not convert string to floatinsecure string pickleBINSTRING pickle has negative byte countBINUNICODE pickle has negative byte countbad pickle dataNEWOBJ class argument has NULL tp_newNEWOBJ class argument isn't a type objectNEWOBJ expected an arg tuple.A load persistent id instruction was encountered, but no persistent_load function was specified._inverted_registry[%ld] isn't a 2-tuple of stringsunregistered extension code %ldEXT specifies code <= 0slot state is not a dictionarystate is not a dictionaryunsupported pickle protocol: %dinvalid load key, '%s'.cargument must have 'read' and 'readline' attributesUnpicklingErrorfind_globalpersistent_loadS:loadscStringIO_CAPIBadPickleGetUnpickleableErrorPickleErrorcPickle.BadPickleGetcPickle.UnpicklingErrorcPickle.UnpickleableErrordef __str__(self): a=self.args a=a and type(a[0]) or '(what)' return 'Cannot pickle %s objects' % a cPickle.PicklingErrorcPickle.PickleErrordef __str__(self): return self.args and ('%s' % self.args[0]) or '(what)' _extension_cache_inverted_registry_extension_registrydispatch_tablecopy_regreadline__reduce_ex____setstate____getstate____getinitargs__compatible_formatsformat_version[sssss]1.11.21.32.0HIGHEST_PROTOCOL1.71class has no nameCan't pickle %s: extension code %ld is out of rangeOlCan't pickle %s: extension code %s isn't an integerOOCan't pickle %s: it's not the same object as %s.%sCan't pickle %s: attribute lookup %s.%s failedOSSCan't pickle %s: import of module %s failedOSargs[0] from __newobj__ args has the wrong classargs[0] from __newobj__ args has no __new____new____newobj__ arglist is empty__newobj__args from reduce() should be a tuplesave_reducetuple returned by %s must contain 2 through 5 elementsSecond element of tuple returned by %s must be a tupleValue returned by %s must be string or tuplemaximum recursion depth exceededO|i:dumpOO|iO|i:dumpsStringIOcStringIO.StringIcStringIO.StringOflag indicating that a space needs to be printed; used by printsoftspacewritelinesseektruncatetellresetreadlinesisattyTrue if the file is closedgetval|n:read|i:readline|i:readlines|n:truncaten|i:seekout of memoryt#:writeexpected read buffer, %.200s foundOutputTypeInputTypedatetime.datetimetz -> convert to local time in new timezone tz astimezoneReturn datetime with new specified fields.[sep] -> string in ISO 8601 format, YYYY-MM-DDTHH:MM:SS[.mmmmmm][+HH:MM]. sep is used to separate the year from the time, and defaults to 'T'.Return UTC time tuple, compatible with time.localtime().utctimetupleReturn time object with same time and tzinfo.timetzReturn time object with same time but with tzinfo=None.Return date object with same year, month and day.date, time -> datetime with same date and time fieldscombinestring, format -> new datetime parsed from a string (like time.strptime()).strptimetimestamp -> UTC datetime from a POSIX timestamp (like time.time()).utcfromtimestamptimestamp[, tz] -> tz's local time from POSIX timestamp.Return a new datetime representing UTC day and time.utcnow[tz] -> new datetime with tz's local day and time.nowsepdatetimestamptzdatetime.timeReturn time with new specified fields.Return self.tzinfo.dst(self).Return self.tzinfo.tzname(self).Return self.tzinfo.utcoffset(self).Return string in ISO 8601 format, HH:MM:SS[.mmmmmm][+HH:MM].tzinfomicrosecondsecondminutehourdatetime.tzinfo-> (cls, state)datetime in UTC -> datetime in local time.fromutcdatetime -> DST offset in minutes east of UTC.dstdatetime -> minutes east of UTC (negative for west of UTC).utcoffsetdatetime -> string name of time zone.tznamedatetime.dateReturn date with new specified fields.Return the day of the week represented by the date. Monday == 0 ... Sunday == 6weekdayReturn proleptic Gregorian ordinal. January 1 of year 1 is day 1.toordinalReturn the day of the week represented by the date. Monday == 1 ... Sunday == 7isoweekdayReturn string in ISO 8601 format, YYYY-MM-DD.isoformatReturn a 3-tuple containing ISO year, week number, and weekday.isocalendarReturn time tuple, compatible with time.localtime().timetupleformat -> strftime() style string.strftimeReturn ctime() style string.ctimeCurrent date or datetime: same as self.__class__.fromtimestamp(time.time()).todayint -> date corresponding to a proleptic Gregorian ordinal.fromordinaltimestamp -> local date from a POSIX timestamp (like time.time()).fromtimestampdaymonthyeardatetime.timedelta__reduce__() -> (cls, state)Number of microseconds (>= 0 and less than 1 second).Number of seconds (>= 0 and less than 1 day).Number of days.weekshoursminutesmillisecondsmicrosecondssecondsdaysDecNovOctSepAugJulJunMayAprMarFebJanSunSatFriThuWedTueMondays=%d; must have magnitude <= %dyear is out of rangemonth must be in 1..12day is out of range for monthhour must be in 0..23minute must be in 0..59second must be in 0..59microsecond must be in 0..999999date value out of rangetzinfo argument must be None or of a tzinfo subclass, not type '%s'tzinfo.%s() returned %d; must be in -1439 .. 1439tzinfo.%s() must return a whole number of minutestzinfo.%s() must return None or timedelta, not '%s'tzinfo.tzname() must return None or a string, not '%s', tzinfo=%s %s %2d %02d:%02d:%02d %04d%c%02d%s%02dstrftime format ends with raw %tzname.replace() did not return a string%%year=%ld is before 1900; the datetime strftime() methods require year >= 1900%04d-%02d-%02d.%06d%02d:%02d:%02dstruct_time((iiiiiiiii))can't compare %s to %sunsupported type for timedelta %s component: %s|OOOOOOO:__new__%s(%d)%s(%d, %d)%s(%d, %d, %d)goofy result from PyOS_snprintf%d:%02d:%02d%d day%s, iiiONtimestamp out of range for platform localtime() functiond:fromtimestampordinal must be >= 1i:fromordinalO!:strftime|iii:replace(ON)a tzinfo subclass must implement %s()fromutc: dt.tzinfo is not selffromutc: tz.dst() gaveinconsistent results; cannot convertfromutc: non-None dst() result requiredfromutc: non-None utcoffset() result requiredfromutc: argument must be a datetime(ONN)|iiiiObad tzinfo state arg%s(%d, %d, %d, %d):iiiiiiiiican't compare offset-naive and offset-aware timesiiiiiiiiO|iiiiO:replaceiii|iiiiOtimestamp out of range for platform localtime()/gmtime() functioniiiiiiiO.A|O:nowd|O:fromtimestampd:utcfromtimestampunexpected value from time.strptimeiiiiiiss:strptimeO!O!:combinecan't subtract offset-naive and offset-aware datetimes%s(%d, %d, %d, %d, %d)%s(%d, %d, %d, %d, %d, %d)%s(%d, %d, %d, %d, %d, %d, %d)(s)|c:isoformatcan't compare offset-naive and offset-aware datetimes|iiiiiiiO:replaceastimezone() cannot be applied to a naive datetimeO!:astimezonetaB`4BtAdatetime_CAPItimedeltaMAXYEARMINYEARFast implementation of the datetime type.docfdelfsetfgetmethod-wrapper__self__dictproxyD.copy() -> a shallow copy of DD.iteritems() -> an iterator over the (key, value) items of DD.itervalues() -> an iterator over the values of DitervaluesD.iterkeys() -> an iterator over the keys of DiterkeysD.items() -> list of D's (key, value) pairs, as 2-tuplesitemsD.values() -> list of D's valuesD.keys() -> list of D's keysD.get(k[,d]) -> D[k] if D.has_key(k), else d. d defaults to None.getD.has_key(k) -> True if D has a key k, else Falsehas_keywrapper_descriptorgetset_descriptormember_descriptorclassmethod_descriptormethod_descriptor__objclass__descriptor '%s' for '%s' objects doesn't apply to '%s' objectdescriptor '%s' for type '%s' doesn't apply to type '%s'descriptor '%s' for type '%s' needs a type, not a '%s' as arg 2descriptor '%s' for type '%s' needs either an object or a typeattribute '%.300s' of '%.100s' objects is not readabledescriptor '%.200s' for '%.100s' objects doesn't apply to '%.100s' objectattribute '%.300s' of '%.100s' objects is not writabledescriptor '%.200s' requires a '%.100s' object but received a '%.100s'descriptor '%.300s' of '%.100s' object needs an argument(OO)wrapper %s doesn't take keyword argumentsunreadable attributecan't set attributecan't delete attribute|OOOO:propertydictionary-itemiteratordictionary-valueiteratordictionary-keyiteratorfromkeysupdatepopitemsetdefault\loewis\25\python\Objects\dictobject.c}{{...}{}dictionary update sequence element #%zd has length %zd; 2 is requiredcannot convert dictionary update sequence element #%zd to a sequencepop(): dictionary is emptypopitem(): dictionary is emptydict objects are unhashabledictionary changed size during iteration.pydpythonPEModule use of %.150s conflicts with this version of Python.python%d%d.dllDLL load failed: DLL load failed with error code %dinit%.200ssequenceO:enumerateenumerate() is limited to LONG_MAX itemsargument to reversed() must be a sequenceWSAENETRESETWSAECONNREFUSEDWSAEDESTADDRREQWSAESOCKTNOSUPPORTWSAEINPROGRESSWSAEINVALWSAEREMOTEWSAENOTCONNWSAEDQUOTWSAEISCONNWSAEOPNOTSUPPWSAEPFNOSUPPORTWSAEWOULDBLOCKWSASYSNOTREADYWSAEPROTONOSUPPORTWSAEALREADYWSAEADDRNOTAVAILWSAEADDRINUSEWSAEPROTOTYPEWSAEINTRWSAEDISCONWSAENOBUFSWSAETIMEDOUTWSAECONNRESETWSAEBADFWSAEMSGSIZEWSABASEERRWSAEACCESWSAETOOMANYREFSWSAEAFNOSUPPORTWSAESHUTDOWNWSAENOTEMPTYWSAENAMETOOLONGWSAECONNABORTEDWSAENOPROTOOPTWSAEUSERSWSANOTINITIALISEDWSAEFAULTWSAEPROCLIMWSAENETUNREACHWSAVERNOTSUPPORTEDWSAESTALEWSAEMFILEWSAELOOPWSAEHOSTUNREACHWSAENOTSOCKWSAENETDOWNWSAEHOSTDOWNENXIOEINPROGRESSEMFILEETOOMANYREFSEDEADLOCKESOCKTNOSUPPORTENOTTYENAMETOOLONGEAGAINEOPNOTSUPPEADDRINUSEECONNRESETERANGEEMLINKENOTSOCKENOMEMESTALEENETUNREACHECONNABORTEDENOLCKEDESTADDRREQENOTCONNEDEADLKEFBIGEFAULTEDQUOTEEXISTENOENTETIMEDOUTENETRESETESPIPEENFILEEADDRNOTAVAILEROFSEPROTONOSUPPORTEISDIRECONNREFUSEDEDOMEPERMENOTDIREILSEQEACCESENETDOWNEALREADYENOEXECENOSPCEPROTOTYPEEIOEBADFESHUTDOWNEISCONNEWOULDBLOCKEBUSYENOPROTOOPTEPFNOSUPPORTEHOSTDOWNEAFNOSUPPORTEMSGSIZEESRCHE2BIGEXDEVELOOPECHILDEREMOTEENOBUFSENOTEMPTYEUSERSEINTREINVALEPIPEENOSYSEHOSTUNREACHENODEVerrorcodebad argument type for built-in operation(is)(isO)Windows Error 0x%XsOOPyErr_NewException: name must be module.class ignored in .Exception stderrsOnwarning: %s warnsOsizOwarn_explicitwarnings%s:%d: bad argument to internal functionbad argument to internal functionprint_file_and_linemsgtextfilenamelinenoBase class for warnings about Unicode related problems, mostly related to conversion problems.exceptions.UnicodeWarningBase class for warnings about probable mistakes in module importsexceptions.ImportWarningBase class for warnings about constructs that will change semantically in the future.exceptions.FutureWarningBase class for warnings about dubious runtime behavior.exceptions.RuntimeWarningBase class for warnings about dubious syntax.exceptions.SyntaxWarningBase class for warnings about features which will be deprecated in the future.exceptions.PendingDeprecationWarningBase class for warnings about deprecated features.exceptions.DeprecationWarningBase class for warnings generated by user code.exceptions.UserWarningBase class for warning categories.exceptions.WarningOut of memory.exceptions.MemoryErrorWeak ref proxy used after referent went away.exceptions.ReferenceErrorInternal error in the Python interpreter. Please report this to the Python maintainer, along with the traceback, the Python version, and the hardware/OS platform and version.exceptions.SystemErrorSecond argument to a division or modulo operation was zero.exceptions.ZeroDivisionErrorResult too large to be represented.exceptions.OverflowErrorFloating point operation failed.exceptions.FloatingPointErrorBase class for arithmetic errors.exceptions.ArithmeticErrorAssertion failed.exceptions.AssertionErrorUnicode translation error.exceptions.UnicodeTranslateErrorUnicode decoding error.exceptions.UnicodeDecodeErrorUnicode encoding error.exceptions.UnicodeEncodeErrorexception reasonreasonexception endexception startexception objectexception encodingencodingUnicode related error.exceptions.UnicodeErrorInappropriate argument value (of correct type).exceptions.ValueErrorMapping key not found.exceptions.KeyErrorSequence index out of range.exceptions.IndexErrorBase class for lookup errors.exceptions.LookupErrorImproper mixture of spaces and tabs.exceptions.TabErrorImproper indentation.exceptions.IndentationErrorInvalid syntax.exceptions.SyntaxErrorexception print_file_and_lineexception textexception offsetexception linenoexception msgAttribute not found.exceptions.AttributeErrorLocal name referenced but not bound to a value.exceptions.UnboundLocalErrorName not found globally.exceptions.NameErrorMethod or function hasn't been implemented yet.exceptions.NotImplementedErrorUnspecified run-time error.exceptions.RuntimeErrorRead beyond end of file.exceptions.EOFErrorMS-Windows OS system call failed.exceptions.WindowsErrorWin32 exception codewinerrorPOSIX exception codeOS system call failed.exceptions.OSErrorI/O operation failed.exceptions.IOErrorBase class for I/O related errors.exceptions.EnvironmentErrorexception filenameexception strerrorstrerrorexception errnoImport can't find module, or can't find name in module.exceptions.ImportErrorProgram interrupted by user.exceptions.KeyboardInterruptRequest to exit from the interpreter.exceptions.SystemExitexception codeRequest that a generator exit.exceptions.GeneratorExitSignal the end from iterator.next().exceptions.StopIterationInappropriate argument type.exceptions.TypeErrorBase class for all standard Python exceptions that do not represent interpreter exiting.exceptions.StandardErrorCommon base class for all non-exit exceptions.exceptions.ExceptionCommon base class for all exceptionsexceptions.BaseExceptionexception messagemessage__dict__ must be a dictionary__dict__ may not be deletedargs may not be deletedEnvironmentError[Errno %s] %s[Errno %s] %s: %s[Error %s] %s[Error %s] %s: %stuple index out of range%s (line %ld)%s (%s)%s (%s, line %ld)%.200s attribute must be int%.200s attribute not set%.200s attribute must be str%.200s attribute must be unicodeO!O!O!O!O!'%.400s' codec can't encode characters in position %zd-%zd: %.400s'%.400s' codec can't encode character u'\%s' in position %zd: %.400sU%08xu%04xx%02xsu#nns'%.400s' codec can't decode bytes in position %zd-%zd: %.400s'%.400s' codec can't decode byte 0x%s in position %zd: %.400s%02xss#nnsO!O!O!O!can't translate characters in position %zd-%zd: %.400scan't translate character u'\%s' in position %zd: %.400su#nnsCannot pre-allocate MemoryError instance UnicodeWarningImportWarningFutureWarningRuntimeWarningSyntaxWarningPendingDeprecationWarningDeprecationWarningUserWarningWarningMemoryErrorReferenceErrorSystemErrorZeroDivisionErrorOverflowErrorFloatingPointErrorArithmeticErrorUnicodeTranslateErrorUnicodeDecodeErrorUnicodeEncodeErrorUnicodeErrorValueErrorKeyErrorIndexErrorLookupErrorTabErrorIndentationErrorSyntaxErrorAttributeErrorUnboundLocalErrorNameErrorNotImplementedErrorRuntimeErrorEOFErrorWindowsErrorOSErrorIOErrorImportErrorKeyboardInterruptSystemExitGeneratorExitStopIterationTypeErrorStandardErrorExceptionModule dictionary insertion problem.BaseExceptionexceptions bootstrapping error.bufferingend-of-line convention used in this filenewlinesfile encodingfile namefile mode ('r', 'U', 'w', 'a', possibly with 'b' or '+' added)modexreadlinesreadintomode string must begin with one of 'r', 'w', 'a' or 'U', not '%.200s'universal newline mode can only be used with modes starting with 'r'empty mode stringinvalid mode: %sfile() constructor not accessible in restricted modeMixing iteration and read methods would lose data<%s file u'%s', mode '%s' at %p><%s file '%s', mode '%s' at %p>line is longer than a Python string can holdEOF when reading a lineobject.readline() returned non-string(i)\loewis\25\python\Objects\fileobject.ct#writelines() argument must be a sequence of stringswritelines() requires an iterable argumentUnknown newlines value 0x%x (sss)(ss) O|si:fileet|si:fileU|si:filerwriteobject with NULL filenull file for PyFile_WriteStringfile descriptor cannot be a negative integer (%i)argument must be an int, or have a fileno() method.fileno() returned a non-integerclose failed: [Errno %d] %s O|i:seekrequested number of bytes is more than a Python string can hold|l:readw#|l:readlines } %sFIRST set for '%s': {Left-recursion below '%s' no mem to resize sym in calcfirstsetno mem for new sym in calcfirstsetRe-calculating FIRST set for '%s' ??? Left-recursion for '%s' Calculate FIRST set for '%s' Adding FIRST sets ... __setformat____getformat__null byte in argument for float()invalid literal for float(): %.200sempty string for float()Unicode float() literal too long to convertfloat() argument must be a string or a numbera float is requirednb_float should return float object@float divisionclassic float divisionfloat modulo(dd)float divmod()negative number cannot be raised to a fractional power0.0 cannot be raised to a negative powerpow() 3rd argument not allowed unless all arguments are integers|O:float(d)__getformat__() argument 1 must be 'double' or 'float'unknownIEEE, big-endianIEEE, little-endianinsane float_format or double_formatdouble__getformat__() argument must be string, not %.500s__setformat__() argument 1 must be 'double' or 'float'__setformat__() argument 2 must be 'unknown', 'IEEE, little-endian' or 'IEEE, big-endian'can only set %s format to 'unknown' or the detected platform valuess:__setformat__KK?CC??C# : %d unfreed float%s in %d out of %d block%s # cleanup floatsfrexp() result out of rangefloat too large to pack with f format`Afloat too large to pack with d formatpAA>can't unpack IEEE 754 special value on non-IEEE platform0>p>framef_restrictedf_tracef_linenof_localsf_exc_tracebackf_exc_valuef_exc_typef_lastif_globalsf_builtinsf_codef_backcan't jump to 'except' line as there's no exceptioncan't jump into the middle of a blockcan't jump into or out of a 'finally' blockline %d comes after the current code blockline %d comes before the current code blockf_lineno can only be set by a trace functionlineno must be an integerXXX block stack overflowXXX block stack underflow__phello__.spam__phello____hello__functionclosureargdefsfunc_namefunc_dictfunc_defaultsfunc_codefunc_globalsfunc_docfunc_closure\loewis\25\python\Objects\funcobject.cnon-tuple default argsexpected tuple for closure, got '%.100s'function attributes not accessible in restricted modesetting function's dictionary to a non-dictfunction's dictionary may not be deletedfunc_code must be set to a code object%s() requires a code object with %zd free vars, not %zdfunc_name must be set to a string objectfunc_defaults must be set to a tuple objectarg 5 (closure) expected cell, found %s%s requires closure of length %zd, not %zdarg 5 (closure) must be None or tuplearg 5 (closure) must be tuplearg 4 (defaults) must be None or tuplearg 3 (name) must be None or stringO!O!|OOO:functionuninitialized classmethod object'%s' object is not callableuninitialized staticmethod objectfuture feature %.100s is not definednot a chancebraceswith_statementabsolute_importdivisiongeneratorsnested_scopesget_referentsget_referrersget_objectscollectget_thresholdset_thresholdget_countget_debugset_debugisenabledgenerationgc: %.100s <%.100s instance at %p> gc: %.100s <%.100s %p> gc couldn't create gc.garbage listunexpected exception during garbage collectiongarbage collectiongc: done, %d unreachable, %d uncollectable. gc: done. uncollectablegc: %.4fs elapsed. collectable %dgc: objects in each generation:gc: collecting generation %d... gc couldn't allocate "__del__"invalid generation|ii:set_debugi|ii:set_threshold(iii)DEBUG_LEAKDEBUG_SAVEALLDEBUG_OBJECTSDEBUG_INSTANCESDEBUG_UNCOLLECTABLEDEBUG_COLLECTABLEDEBUG_STATSgarbagegeneratorthrowsendgi_runninggi_framecan't send non-None value to a just-started generatorgenerator already executinggenerator ignored GeneratorExitraising string exceptions is deprecatedthrow() third argument must be a traceback objectexceptions must be classes, or instances, not %s %.256sargument, item %dargument %d%.200s() must be %d-item sequence, not %.50sexpected %d arguments, not %.50sis not retrievablemust be sequence of length %d, not %dexpected %d arguments, not %dmust be %.50s, not %.50sstring or read-only buffer(unspecified)string or single-segment read-only bufferimpossibleat most unpacked tuple should have %s%zd elements, but has %zd%s expected %s%zd arguments, got %zdat least PyArg_UnpackTuple() argument list is not a tuple%s does not take keyword arguments\loewis\25\python\Python\getargs.cstring or read-only character bufferinvalid use of 't' format characterread-write buffersingle-segment read-write buffercannot convert raw buffers(unknown parser marker combination)(cleanup problem)(encoded string without NULL bytes)(buffer overflow)(memory error)(buffer_len is NULL)(encoder failed to return a string)(encoding failed)string or unicode or text buffer(buffer is NULL)string without null bytes or None(unicode conversion error)string or Nonestring without null bytescomplexfloatfloatintegerlongintegerintegerintegersigned integer is less than minimumsigned integer is greater than maximumintegerintegersigned short integer is greater than maximumsigned short integer is less than minimumintegerintegerunsigned byte integer is greater than maximumunsigned byte integer is less than minimuminteger%.200s%s takes %s %d argument%s (%d given)keywords must be strings'%s' is an invalid keyword argument for this functionkeyword parameter '%s' was given by position and by nametuple found in format when using keyword argumentsmore argument specifiers than keyword list entriesmore keyword list entries than argument specifiers%.150s%s takes %s %d argument%s (%ld given)bad format string: %.200snew style getargs format but argument is not a tupleold style getargs format uses new features%.200s%s takes at least one argument%.200s%s takes no argumentsmissing ')' in getargs formatexcess ')' in getargs formattoo many tuple nesting levels in argument format string[MSC v.1310 32 bit (Intel)]Argument expected for the -%c option Unknown option: -%c --version--help--Software\Python\PythonCore\\PythonPathobuffer overflow in getpathp.c's joinpath()PATHUsing default static path. .\DLLs;.\lib;.\lib\plat-win;.\lib\lib-tkUsing environment $PYTHONPATH. Can't malloc dynamic PYTHONPATH. lib\os.pyPYTHONPATHwin32%.80s (%.80s) %.80s2.5.2yieldclassnotorexceptwithtryforwhileelseelififassertglobalfromimportraisereturncontinuebreakpassdelprintdefEMPTYyield_exprencoding_decltestlist1gen_ifgen_forgen_iterlist_iflist_forlist_iter 0arglistclassdefdictmakertestlistexprlist sliceopsubscript (subscriptlist trailerlambdeftestlist_gexplistmakeratom powerfactortermarith_exprshift_exprand_exprxor_exprexprcomp_op not_testand_test or_testtestold_lambdefold_testtestlist_safe <suite except_clause@with_varwith_stmttry_stmtfor_stmt@while_stmtif_stmt compound_stmtassert_stmtexec_stmtglobal_stmtdotted_namedotted_as_namesimport_as_namesdotted_as_nameimport_as_nameimport_fromimport_nameimport_stmt raise_stmtyield_stmtreturn_stmtcontinue_stmtbreak_stmt<flow_stmtpass_stmtdel_stmtprint_stmtaugassignexpr_stmtsmall_stmt <simple_stmt( < stmtfplist fpdef 0varargslist parametersfuncdefdecoratorsdecorator eval_input( < file_input( < single_inputno mem for new grammarno mem to resize dfa in adddfano mem to resize state in addstateno mem to resize arc list in addarcLabel @ %8p, %d: %s no mem to resize labellist in addlabelgrammar.c:findlabel()Label %d/'%s' not found Can't translate label '%s' Can't alloc dest '%s' Label %s is a keyword Can't translate STRING label %s Unknown OP label %s Label %s is terminal %d. Can't translate NAME label '%s' Label %s is non-terminal %d. Translating label %s ... %.32s(%.32s)NT%dgrey2rgbrgb2greyrgb82rgbrgb2rgb8tovideogrey42greygrey22greymono2greydither2grey2dither2monogrey2grey4grey2grey2grey2monoscalecropbackward_compatibleString has incorrect lengths#iiiiiiis#iiiiiSize should be 1 or 4s#iiis#iis#iiii??333333?zG?)\(?imageop.errorNull importer objectimp.NullImporterAlways return Noneload_sourceload_packageload_dynamicload_compiledis_frozenis_builtininit_frozeninit_builtinget_frozen_objectrelease_lockacquire_locklock_heldnew_moduleload_moduleget_suffixesget_magicfind_module__stderr____stdout____stdin__meta_pathpath_importer_cachepath_hookslast_tracebacklast_valuelast_typeexitfuncps2ps1argv     .pyc.pywU.py.pyoCan't initialize import file table.not holding the import lockPyImport_GetModuleDict: no module dictionary!# cleanup __builtin__ # cleanup sys # cleanup[2] %s # cleanup[1] %s # cleanup __main__ # restore sys.%s # clear sys.%s _# clear __builtin__._ _PyImport_FixupExtension: module %.200s not loadedimport: deleting existing key insys.modules failedLoaded module %.200s not found in sys.modules__file__# %s matches %s # %s has bad mtime # %s has bad magic Non-code object in %.200simport %s # precompiled from %s Bad magic number in %.200s# can't write %s # wrote %s # can't create %s import %s # from %s unable to get modification time from '%s'Can't find file for module %.100s (filename %.300s)PYTHONCASEOK__init__.pyExcluded frozen object named %.200sNo such frozen object named %.200s__path__frozen object %.200s is not a code objectimport %s # frozen%s packageAttempted relative import beyond toplevel packageParent module '%.200s' not loadedAttempted relative import in non-packageModule name too longssis:init_frozens:get_frozen_objects:is_builtins:is_frozenbad/closed file objectss|O!:load_compiledss|O!:load_dynamicss|O!:load_sources:new_moduleexisting directoryempty pathnames:NullImporterNullImporter()NullImporterIMP_HOOKPY_CODERESOURCEPY_FROZENC_BUILTINPKG_DIRECTORYPY_RESOURCEC_EXTENSIONPY_COMPILEDPY_SOURCESEARCH_ERRORimport %s # previously loaded (%s) sys.path must be a list of directory namessys.path_hooks must be a list of import hookssys.path_importer_cache must be a dictNo module named %.200s# trying %s Not importing directory '%.*s': missing __init__.pyNo frozen submodule named %.200ssys.meta_path must be a list of import hooksfull frozen module name too longsOmodule name is too longimport %s # builtin Cannot re-init internal module %.200sOs(ssi)s|O:find_modules:init_builtinDon't know how to import %.200s (type code %d)import hook without loader%s module %.200s not properly initializedPurported %s module %.200s not foundfrozenbuiltinfile object required for import (type code %d)reload() argument must be modulereload(): parent %.200s not in sys.modulesreload(): module %.200s not in sys.modulesPyImport_ReloadModule: no modules_reloading dictionary!load_module arg#2 should be a file or Noneinvalid file open mode %.200ssOs(ssi):load_module[O]import %s # directory %s Empty module nameItem in ``from list'' not a stringss:load_package{OO}[s]# installed zipimport hook # can't import zipimport.zipimporter # can't import zipimport initializing sys.meta_path, sys.path_hooks, path_importer_cache, or NullImporter failedzipimporter# installing zipimport hook Software\Python\PythonCore\%s\Modules\%s%simport %s # dynamically loaded from %s dynamic module not initialized properlydynamic module does not define init function (init%.200s)basean integer is requirednb_int should return int objectinvalid literal for int() with base %d: %sint() base must be >= 2 and <= 36%ld@@integer division or modulo by zeroclassic int division(ll)pow() 3rd argument cannot be 0pow() 2nd argument cannot be negative when 3rd argument specifiednegative shift count0%lo-0%lo0x%lx-0x%lxint() can't convert non-string with explicit base|Oi:int(l)# : %d unfreed int%s in %d out of %d block%s # cleanup intscallable-iteratoriterator\loewis\25\python\Objects\iterobject.cteeitertools.repeatitertools.izipitertools.countitertools.ifilterfalseitertools.ifilteritertools.chainitertools.imapitertools.starmapitertools.isliceitertools.takewhileitertools.dropwhileitertools.cycleitertools.teeitertools.tee_dataobjectitertools._grouperitertools.groupbyO|O:groupbyn must be >= 0O|ncyclecycle()dropwhiledropwhile()takewhiletakewhile()Indices for islice() must be non-negative integers or None.Step for islice() must be a positive integer or None.Stop argument for islice() must be a non-negative integer or None.isliceislice()starmapstarmap()iterator must return a tupleimap() must have at least two arguments.imap()chain argument #%zd must support iterationchain()ifilterifilter()ifilterfalseifilterfalse()|n:countcount()cannot count beyond PY_SSIZE_T_MAXcount(%zd)izip argument #%zd must support iterationizip()O|n:repeatrepeat()repeat(%s, %zd)repeat(%s)len() of unsized object%s %s listreverseiteratorlistiteratorcmpwrappersortwrapper\loewis\25\python\Objects\listobject.clist index out of rangelist assignment index out of rangecannot add more objects to list][[]can only concatenate list (not "%.200s") to listcan only assign an iterableargument must be iterablepop from empty listcomparison function must return intexpected a sortwrapperobjectlist modified during sort|OOi:sortlist.index(x): x not in listO|O&O&:indexlist.remove(x): x not in list|O:listlist objects are unhashableattempt to assign sequence of size %zd to extended slice of size %zdmust assign iterable to extended slicecannot convert float infinity to long\loewis\25\python\Objects\longobject.clong int too large to convert to intlong int too large to convertcan't convert negative value to unsigned longlong has too many bits to express in a platform size_tlong too big to convertcan't convert negative long to unsigned@long int too large to convert to floatinteger conversion failedlong is too large to formatlong string too large to convertinvalid literal for long() with base %d: %slong() arg 2 must be >= 2 and <= 36long/long too large for a floatlong division or modulo by zerolong() can't convert non-string with explicit base|Oi:longclassic long divisionarg ...: arguments passed to program in sys.argv[1:] Other environment variables: PYTHONSTARTUP: file executed on interactive startup (no default) PYTHONPATH : '%c'-separated list of directories prefixed to the default module search path. The result is sys.path. PYTHONHOME : alternate directory (or %c). The default module search path uses %s. PYTHONCASEOK : ignore case in 'import' statements (Windows). see man page for details on internal buffering relating to '-u' -v : verbose (trace import statements) (also PYTHONVERBOSE=x) -V : print the Python version number and exit (also --version) -W arg : warning control (arg is action:message:category:module:lineno) -x : skip first line of source, allowing use of non-Unix forms of #!cmd file : program read from script file - : program read from stdin (default; interactive mode if a tty) -m mod : run library module as a script (terminates option list) -O : optimize generated bytecode (a tad; also PYTHONOPTIMIZE=x) -OO : remove doc-strings in addition to the -O optimizations -Q arg : division options: -Qold (default), -Qwarn, -Qwarnall, -Qnew -S : don't imply 'import site' on initialization -t : issue warnings about inconsistent tab usage (-tt: issue errors) -u : unbuffered binary stdout and stderr (also PYTHONUNBUFFERED=x) Options and arguments (and corresponding environment variables): -c cmd : program passed in as string (terminates option list) -d : debug output from parser (also PYTHONDEBUG=x) -E : ignore environment variables (such as PYTHONPATH) -h : print this help message and exit (also --help) -i : inspect interactively after running script, (also PYTHONINSPECT=x) and force prompts, even if stdin does not appear to be a terminal usage: %s [option] ... [-c cmd | -m mod | file | -] [arg] ... \libTry `python -h' for more information. PYTHONSTARTUPCould not create arguments for runpy.run_module sOsOCould not access runpy.run_module run_moduleCould not import runpy module runpy_shutdownthreading-c%s Type "help", "copyright", "credits" or "license" for more information.Python %s on %s %s: '%s' is a directory, cannot continue %s: can't open file '%s': [Errno %d] %s PYTHONUNBUFFEREDPYTHONINSPECTPython %s -Q option should be `-Qold', `-Qwarn', `-Qwarnall', or `-Qnew' only not enough memory to copy -m argumentnot enough memory to copy -c argumentnewwarnalloldc:dEhim:OQ:StuUvVW:xX?cannot unmarshal code objects in restricted execution modeNULL object in marshal dataEOF read where object expectedbad marshal datarecursion limit exceededXXX readobject called with exception set object too deeply nested to marshalunmarshallable objecttoo much marshall data for a stringmarshal.dump() 2nd arg must be fileOO|i:dumpmarshal.load() arg must be files#:loadsversionradiansmodfldexphypotfrexpfmodfloorfabsdegreesceilatan29RFߑ?d:acosd:asind:atandd:atan2d:ceild:cosd:coshd:expd:fabsd:floordd:fmoddd:hypotdd:powd:sind:sinhd:sqrtd:tand:tanh(di)d:frexpdi:ldexpd:modf.@d:logd:log10cܥL@d:degreesd:radians_md5.md5digestsizeblock_sizedigest_sizehexdigestdigests#:updateMD5|s#:newMD5Type ATOMITEMALT RHS RULE8MSTARTbuiltin_function_or_method\loewis\25\python\Objects\methodobject.c%.200s() takes no keyword arguments%.200s() takes exactly one argument (%zd given)%.200s() takes no arguments (%zd given)method.__self__ not accessible in restricted mode__methods__accesstagnamelengthmmap.mmapwrite_byteresizeread_bytemovefindread byte out of rangemmap closed or invalidn:reads#|n:findmmap can't modify a readonly memory map.mmap can't resize a readonly or copy-on-write memory map.data out of ranges#:writec:write_byten:resizeflush values out of range|nn:flushseek out of rangeunknown seek typesource or destination out of rangekkk:moveAccessing non-existent mmap segmentmmap index out of rangemmaps don't support concatenationmmaps don't support repeat operationmmap slice assignment is wrong sizemmap slice assignment must be a stringmmap object doesn't support slice deletionmmap assignment must be single-character stringmmap object doesn't support item deletionmap size must be an integral valuememory mapped size must be positivemmap invalid access parameter.iO|ziACCESS_COPYACCESS_WRITEACCESS_READPAGESIZEmodule functions cannot set METH_CLASS or METH_STATICInterpreter not initialized (version mismatch?)unmatched paren in formatUnmatched paren in formatNULL object passed to Py_BuildValuestring too long for Python stringbad format char passed to Py_BuildValuemodule '%s' has no __dict__PyModule_AddObject() needs non-NULL valuePyModule_AddObject() needs module as first argmodule\loewis\25\python\Objects\moduleobject.cnameless modulemodule filename missing# clear[2] %s # clear[1] %s S|O:module.__init__ungetchputchgetchegetchkbhitget_osfhandleopen_osfhandlesetmodelockingheapmin:heapminiil:lockingii:setmodeli:open_osfhandlei:get_osfhandle:kbhit:getch:getchec:putchc:ungetchLK_UNLCKLK_RLCKLK_NBRLCKLK_NBLCKLK_LOCKMultibyteStreamWriterMultibyteStreamReaderMultibyteIncrementalDecoderMultibyteIncrementalEncoderMultibyteCodechow to treat errorsstreamfinalerrorserrors must be a stringinternal codec errorencoding error handler must return (unicode, int) tupleposition %zd from error handler out of boundsincomplete multibyte sequenceunknown runtime errorillegal multibyte sequencedecoding error handler must return (unicode, int) tuplecouldn't convert the object to unicode.O|z:encodes#|z:decodepending buffer overflowO|i:encodecodec is unexpected typecodec|s:IncrementalEncodert#|i:decode|s:IncrementalDecoderstream function returned a non-string objectarg 1 must be an integerO|s:StreamReaderarg must be a sequence objectO|s:StreamWriterargument type invalidcan't initialize the _multibytecodec moduleinput line too longcan't re-enter readlineNotImplementedTypeNoneType__repr__ returned non-string (type %.200s)<%s object at %p>stack overflow__str__ returned non-string (type %.200s)tp_compare didn't return -1, 0 or 1tp_compare didn't return -1 or -2 for exceptionunhashable type: '%.200s''%.50s' object has no attribute '%.400s'attribute name must be string, not '%.200s''%.100s' object has only read-only attributes (%s .%.100s)'%.100s' object has no attributes (%s .%.100s)'%.50s' object attribute '%.400s' is read-only'%.100s' object has no attribute '%.200s'number coercion faileddeallocating NoneCan't initialize type(NotImplemented)Can't initialize type(None)Can't initialize 'list'Can't initialize 'str'Can't initialize 'bool'Can't initialize 'weakref'Can't initialize 'type'Py_Reprprint recursion type : %s refcount: %ld address : %p NULLobject : NULL __unicode__\loewis\25\python\Objects\object.c in cmpA,APmodule.__dict__ is not a dictionaryExpected keys() to be a list, not '%.200s'__members__operator.attrgetteroperator.itemgetterge(a, b) -- Same as a>=b.gegt(a, b) -- Same as a>b.gtne(a, b) -- Same as a!=b.neeq(a, b) -- Same as a==b.eqle(a, b) -- Same as a<=b.lelt(a, b) -- Same as a>= b.irshiftilshift(a, b) -- Same as a <<= b.ilshiftimod(a, b) -- Same as a %= b.imoditruediv(a, b) -- Same as a /= b when __future__.division is in effect.itruedivifloordiv(a, b) -- Same as a //= b.ifloordividiv(a, b) -- Same as a /= b when __future__.division is not in effect.idivimul(a, b) -- Same as a *= b.imulisub(a, b) -- Same as a -= b.isubiadd(a, b) -- Same as a += b.iaddor_(a, b) -- Same as a | b.or_xor(a, b) -- Same as a ^ b.xorand_(a, b) -- Same as a & b.and___not__not_(a) -- Same as not a.not_rshift(a, b) -- Same as a >> b.rshiftlshift(a, b) -- Same as a << b.lshiftinvert(a) -- Same as ~a.invert__inv__inv(a) -- Same as ~a.invabs(a) -- Same as abs(a).pos(a) -- Same as +a.neg(a) -- Same as -a.negmod(a, b) -- Same as a % b.modtruediv(a, b) -- Same as a / b when __future__.division is in effect.truedivfloordiv(a, b) -- Same as a // b.floordivdiv(a, b) -- Same as a / b when __future__.division is not in effect.divmul(a, b) -- Same as a * b.sub(a, b) -- Same as a - b.add(a, b) -- Same as a + b.index(a) -- Same as a.__index__()is_not(a, b) -- Same as a is not b.is_notis_(a, b) -- Same as a is b.is_isMappingType(a) -- Return True if a has a mapping type, False otherwise.isMappingTypecountOf(a, b) -- Return the number of times b occurs in a.countOfindexOf(a, b) -- Return the first index of b in a.indexOfsequenceIncludes(a, b) -- Same as b in a (note reversed operands; deprecated).sequenceIncludescontains(a, b) -- Same as b in a (note reversed operands).containstruth(a) -- Return True if a is true, False otherwise.truthisSequenceType(a) -- Return True if a has a sequence type, False otherwise.isSequenceTypeisNumberType(a) -- Return True if a has a numeric type, False otherwise.isNumberTypeisCallable(a) -- Same as callable(a).isCallableop_addop_subop_mulop_divop_floordivop_truedivop_modop_lshiftop_rshiftop_and_op_xorop_or_op_iaddop_isubop_imulop_idivop_ifloordivop_itruedivop_imodop_ilshiftop_irshiftop_iandop_ixorop_iorop_concatOi:op_repeatop_iconcatOi:op_irepeatop_containsop_getitemop_delitemop_setitemop_ltop_leop_eqop_neop_gtop_geOnn:getsliceOnnO:setsliceOnn:delsliceitemgetteritemgetter()attrgetterattrgetter()s_push: parser stack overflow Returns the pickle magic to allow ST objects to be pickled._picklertuple2sttuple2astst2listst2tuplesequence2stCreates an ST object from a tree representation.sequence2astCreates an ST object from a suite.Determines if an ST object was created from a suite.Determines if an ST object was created from an expression.Creates an ST object from an expression.compilestCompiles an ST object into a code object.compileastCreates a list-tree representation of an ST.ast2listCreates a tuple-tree representation of an ST.ast2tupleCreates a tuple-tree representation of this ST.totupleCreates a list-tree representation of this ST.Determines if this ST object was created from a suite.issuiteDetermines if this ST object was created from an expression.isexprCompile this ST object into a code object.line_infoastIntermediate representation of a Python parse tree.parser.st|O:totupleO!|O:st2tuple|O:tolistO!|O:st2list|s:compileO!|s:compilest:isexprO!:isexpr:issuiteO!:issuites:exprs:suiteunsupported number of child nodesthird item in terminal node must be an integer, found %ssecond item in terminal node must be a string, found %sterminal nodes must have 2 or 3 entriesosIllegal node construct.Illegal syntax-tree; cannot start with terminal symbol.Expected node type %d, got %d.Illegal number of children for %s node.Illegal terminal: expected "%s",illegal variable argument trailer for varargslist**expected variable argument trailer for varargslistIllegal compound statement type: %d.illegal number of children for dotted_as_name(illegal import_stmt child typeillegal global statementunknown comparison operatorillegal comparison operator typeillegal operator '%s'O(O)O!:_picklerpickle__copyright__STTypeASTTypeParserErrorparser.ParserErrorinvalid number of arguments for subscript nodeillegal formation for varargslist=varargslist missing child nodesillegal trailing nodes for listmakermissing child nodes of listmakerillegal trailing nodes for testlist_gexpmissing child nodes of testlist_gexpillegal list display atomillegal arglist specificationillegal use of '**' in arglistillegal use of '*' in arglistillegal arglist specification (extra stuff on end)need '(', ')' for generator expressionillegal number of nodes for 'power'@illegal augmmented assignment operator**=illegal exec statementillegal assert statementcould not validate expression tupletry/exceptillegal trailing triple in try statementtry/finallyIllegal number of children for try/%s node.unrecognized node typeillegal flow_stmt typeillegal small_stmt child type;VALIDATION FAILURE: report this to the maintainer!Error Parsing encoding_declparse tree does not use a valid start symbolunspecified ST error occurredsequence2st() requires a single sequence argumentO:sequence2stno mem for next token no mem for new parser urandom_getfullpathnameaborttmpnamtempnamtmpfilefsyncputenvpipefdopenfstatlseekdup2dupwaitpidstartfilepopen4popen3popen2popengetpidspawnvespawnvexecveexecv_exittimesutimeunlinkumasksystemstat_float_timesstatrmdirrenamemkdirlstatlistdirgetcwdugetcwdchmodchdirstatvfs_resultf_namemaxf_flagf_favailf_ffreef_filesf_bavailf_bfreef_blocksf_frsizef_bsizestat_resulttime of last changest_ctimetime of last modificationst_mtimetime of last accessst_atimeinteger time of last changeinteger time of last modificationinteger time of last accesstotal size, in bytesst_sizegroup ID of ownerst_giduser ID of ownerst_uidnumber of hard linksst_nlinkdevicest_devinodest_inoprotection bitsst_mode\\//\\=x:GetFileAttributesExWGetFileAttributesExAKERNEL32.com.exe.cmd.bat.com.exe.cmd.bat|i:stat_float_times& .>eti:accessUi:accesss:chdirU:chdireti:chmodUi|:chmod..et#:listdir...*.*U:listdiret#:_getfullpathnameU|:_getfullpathnameet|i:mkdirU|i:mkdirss:renameO&O&:renames:rmdirU:rmdiret:statU:stats:systemi:umasks:removeU:removeutime() arg 2 must be a tuple (atime, mtime)etO:utimeUO|:utimei:_exitexecv() arg 2 must contain only stringsetexecv() arg 2 must be a tuple or listetO:execv%s=%ss;execve() arg 3 contains a non-string values;execve() arg 3 contains a non-string keyexecve(): env.keys() or env.values() is not a listet;execve() arg 2 must contain only stringsexecve() arg 3 must be a mapping objectexecve() arg 2 must be a tuple or listetOO:execvespawnv() arg 2 must contain only stringsspawnv() arg 2 must be a tuple or listietO:spawnvs;spawnve() arg 3 contains a non-string values;spawnve() arg 3 contains a non-string keyspawnve(): env.keys() or env.values() is not a listet;spawnve() arg 2 must contain only stringsspawnve() arg 3 must be a mapping objectspawnve() arg 2 must be a tuple or listietOO:spawnveCannot locate a COMSPEC environment variable to use as the shell"%s" %s%s%sCan not locate '%s' which is needed for popen to work with your shell or platform.\w9xpopen.exe%s%s%s /c command.comCOMSPECii:waitpidet:lstatU:lstatdddddHz@Hz>eti|iUi|i:mkdiri:closei:dupii:dup2iOi:lseekii:readis#:writei:fstati|sii:isattyss:putenvstrerror() argument out of rangei:strerrortempnam is a potential security risk to your program|zz:tempnamw+bunexpected NULL from tmpnamtmpnam is a potential security risk to your programet|s:startfileU|s:startfileCryptGenRandom not foundCryptGenRandomCryptAcquireContextA not foundCryptAcquireContextAadvapi32.dllnegative argument not allowedi:urandomP_DETACHP_NOWAITOP_OVERLAYP_NOWAITP_WAITO_SEQUENTIALO_RANDOMO_TEMPORARYO_SHORT_LIVEDO_NOINHERITO_TEXTO_BINARYO_TRUNCO_EXCLO_CREATO_APPENDO_RDWRO_WRONLYO_RDONLYTMP_MAXX_OKW_OKR_OKF_OKnt.statvfs_resultnt.stat_resultenvironwpopen() arg 3 must be -1popen() arg 2 must be 'r' or 'w's|si:popenpopen2() arg 3 must be -1popen2() arg 2 must be 't' or 'b'ts|si:popen2popen3() arg 3 must be -1popen3() arg 2 must be 't' or 'b's|si:popen3popen4() arg 3 must be -1popen4() arg 2 must be 't' or 'b's|si:popen4Can't initialize threads for interpreterPyThreadState_Clear: warning: thread still has a frame PyThreadState_Delete: invalid tstatePyThreadState_Delete: NULL interpPyThreadState_Delete: NULL tstatePyThreadState_Delete: tstate is still currentPyThreadState_DeleteCurrent: no current tstatePyThreadState_Get: no current threadCouldn't create autoTLSkey mappingThis thread state must be current when releasingauto-releasing thread-state, but no thread-state for this threadPyInterpreterState_Delete: remaining threadsPyInterpreterState_Delete: invalid interpCouldn't create thread-state for new thread'l%asnameargdefaultskwargvarargifsdimsstepupperlowereltsctxattrkwargsstarargscomparatorsopseltoperandrightleftnamesfinalbodyhandlerstbackinstoptional_varscontext_exprorelsenldestoptargettargetsvaluecol_offsetbodys(O){sOss}_fields_attributesaliaskeywordargumentsexcepthandlercomprehensionNotInInIsNotIsGtEGtLtELtNotEqEqcmpopUSubUAddNotInvertunaryopFloorDivBitAndBitXorBitOrRShiftLShiftPowModDivMultSubAddOrAndboolopIndexExtSliceSliceParamAugStoreAugLoadDelStoreLoadexpr_contextTupleListNameSubscriptAttributeStrNumReprCallCompareYieldGeneratorExpListCompDictIfExpLambdaUnaryOpBinOpBoolOpContinueBreakPassExprGlobalExecImportFromImportAssertTryFinallyTryExceptRaiseWithIfWhileForPrintAugAssignAssignDeleteReturnClassDefFunctionDefSuiteExpressionInteractiveModuleASTfield body is required for Expressionfield args is required for FunctionDeffield name is required for FunctionDeffield name is required for ClassDeffield value is required for Assignfield value is required for AugAssignfield op is required for AugAssignfield target is required for AugAssignfield iter is required for Forfield target is required for Forfield test is required for Whilefield test is required for Iffield context_expr is required for Withfield test is required for Assertfield module is required for ImportFromfield body is required for Execfield value is required for Exprfield op is required for BoolOpfield right is required for BinOpfield op is required for BinOpfield left is required for BinOpfield operand is required for UnaryOpfield op is required for UnaryOpfield body is required for Lambdafield args is required for Lambdafield orelse is required for IfExpfield body is required for IfExpfield test is required for IfExpfield elt is required for ListCompfield elt is required for GeneratorExpfield left is required for Comparefield func is required for Callfield value is required for Reprfield n is required for Numfield s is required for Strfield ctx is required for Attributefield attr is required for Attributefield value is required for Attributefield ctx is required for Subscriptfield slice is required for Subscriptfield value is required for Subscriptfield ctx is required for Namefield id is required for Namefield ctx is required for Listfield ctx is required for Tuplefield value is required for Indexfield iter is required for comprehensionfield target is required for comprehensionfield value is required for keywordfield arg is required for keywordfield name is required for alias43614PyCF_ONLY_ASTPYTHONHOMEO(ziiz)^ %d", line File "lost sys.stderr Bad code object in .pyc fileBad magic number in .pyc file(sO)(ziiz)unknown parsing errorerror=%d unexpected character after line continuation characterunknown decode errortoo many levels of indentationunindent does not match any outer indentation levelexpression too longinconsistent use of tabs and spaces in indentationunexpected EOF while parsingEOL while scanning single-quoted stringEOF while scanning triple-quoted stringinvalid tokeninvalid syntaxunexpected unindentunexpected indentexpected an indented blockFatal Python error: Fatal Python error: %s Error in sys.exitfunc:  Py_EndInterpreter: not the last threadPy_EndInterpreter: thread still has a framePy_EndInterpreter: thread is not currentcan't add __builtins__ to __main__can't create __main__ modulesys.excepthook is missing Original exception was: Error in sys.excepthook: excepthook'import site' failed; use -v for traceback 'import site' failed; traceback: sitepython: Can't reopen .pyc file Py_Initialize: can't initialize sys dictPy_Initialize: can't initialize sysPy_Initialize: can't initialize builtins dictPy_Initialize: can't initialize __builtin__Py_Initialize: can't make modules_reloading dictionaryPy_Initialize: can't make modules dictionaryPy_Initialize: can't init intsPy_Initialize: can't init framesPy_Initialize: can't make first threadPy_Initialize: can't make first interpreterPYTHONOPTIMIZEPYTHONVERBOSEPYTHONDEBUGPy_NewInterpreter: call Py_Initialize first... >>> rangeiteratorxrange() result has too many itemsxrange() arg 3 must not be zeroll|l;xrange() requires 1-3 int argumentsl;xrange() requires 1-3 int argumentsxrange()xrange object index out of rangexrange(%ld, %ld, %ld)xrange(%ld, %ld)xrange(%ld)\loewis\25\python\Objects\rangeobject.cttoblongstoimagelongimagedatasizeofimageno namebad magic number in image filecan't open image files:sizeofimagei:ttobrgbimg.errorthe rgbimg module is deprecatedrlebuf is too small?image must have 1 byte per pix chans:longimagedatanot enough space for imagecan't open output files#iiis:longstoimageunionsymmetric_difference_updatesymmetric_differenceissupersetissubsetintersection_updateintersectiondifference_updatedifferencediscardsetiterator%s([%s(...)%s(%s)pop from an empty setset objects are unhashableSet changed size during iterationfrozenset()set()can only compare to a setcannot compare sets using cmp()\loewis\25\python\Objects\setobject.csha224sha256_sha256.sha256_sha256.sha224SHA224SHA256sha384sha512_sha512.sha512_sha512.sha384SHA384SHA512_sha.shaSHA1blocksizedefault_int_handlergetsignalsignal number out of rangei:getsignal(iO)signal handler must be signal.SIG_IGN, signal.SIG_DFL, or a callable objectsignal only works in main threadiO:signalSIGTERMSIGSEGVSIGFPESIGABRTSIGILLSIGBREAKSIGINTNSIGSIG_IGNSIG_DFLindicesslice step cannot be zeroslice()slice((nnn)unhashable typesplitlinesexpandtabszfillcenterrjustljusttitletranslateswapcasestripstartswithrpartitionrstriprindexrfindlstrippartitionendswithcapitalizeisalnumisalphaistitleisdigitisspaceisupperislowerrsplit|O:strip|O:rstrip|O:lstripdecoder did not return a string object (type=%.400s)encoder did not return a string object (type=%.400s)deletion of interned string failedInconsistent interned string state.Immortal interned string died.expected string without null bytesexpected string or Unicode object, %.200s found\loewis\25\python\Objects\stringobject.c\%c\x%02x\r\n\tcannot concatenate 'str' and '%.200s' objectsrepeated string is too long'in ' requires string as left operandaccessing non-existent string segmentCannot use string as modifiable bufferO|O&O&:find/rfind/index/rindexsubstring not foundO|O&O&:countO|O&O&:startswithO|O&O&:endswithencoder did not return a string/unicode object (type=%.400s)|ss:encodedecoder did not return a string/unicode object (type=%.400s)|ss:decodeThe basestring type cannot be instantiatednot enough arguments for format stringformatted float is too long (precision too large?)%%%s.%d%c#(,* E}:float argument requiredformatted integer is too long (precision too large?)%s%%%s.%dl%c%s0%c%%.%dl%cint argument requiredc;%c requires int or charb;%c requires int or charPyString_InternInPlace: strings only please!releasing interned strings string is too long for a Python stringempty separatorstring is too large to make reprstring index out of rangestring indices must be integers|On:split|On:rsplitjoin() result is too long for a Python stringsequence item %zd: expected string, %.80s found%s arg must be None, str or unicodetranslation table must be 256 characters longdeletions are implemented differently for unicodereplace string is too longOO|n:replacenew string is too long|i:expandtabsn|c:ljustn|c:rjustn|c:centern:zfill|i:splitlines|O:strstring too large in _PyString_FormatLongunsupported format character '%c' (0x%x) at index %zdnot all arguments converted during string formatting%s argument has non-string str()prec too bigwidth too big* wants intincomplete format keyformat requires a mappingincomplete format%p%x%i%u%luinvalid \x escapeTrailing \ in stringdecoding error; unknown error handling code: %.400ssplitfieldsmaketransjoinfieldsatolatoiatoft#|z#n:splitstrop functions are obsolete; use string methodsfirst argument must be a sequencefirst argument must be sequence of stringsO|t#:joint#t#|nn:findt#t#|nn:rfindtabsize must be at least 1s#|i:expandtabst#t#|nn:countinvalid literal for atoi(): %.200satoi() literal too large: %.200sinvalid base for atoi()s|i:atoiinvalid literal for atol(): %.200sempty string for atol()invalid base for atol()s|i:atolinvalid literal for atof(): %.200satof() literal too large: %.200sempty string for atof()s:atofmaketrans arguments must have same lengtht#t#:maketransSt#|t#:translateempty pattern stringt#t#t#|n:replacewhitespacebad memberdescr typerestricted attributereadonly attributebad memberdescr type for %scan't delete numeric/char attributeunnamed field%.500s() takes a %zd-sequence (%zd-sequence given)%.500s() takes an at most %zd-sequence (%zd-sequence given)%.500s() takes an at least %zd-sequence (%zd-sequence given)%.500s() takes a dict as second arg, if anyconstructor requires a sequenceO|O:structseq(O(OO))symtable entrychildrenvarnamessymbolsunknown symbol table entryname '%s' is local and globalfunction '%.100s' uses import * and bare exec, which are illegal because it %sunqualified exec is not allowed in function '%.100s' it %simport * is not allowed in function '%.100s' because it is %sis a nested functioncontains a nested function with free variablestopduplicate argument '%s' in function definitionimport * only allowed at module levelinvalid expression in parameter list'return' with argument inside generatorgenexprname '%.400s' is used prior to global declarationname '%.400s' is assigned to before global declarationthis compiler does not handle SuitesReturn symbol and scope dictionaries used internally by compiler.symtablesymtable() arg 3 must be 'exec' or 'eval' or 'single'sss:symtableCELLFREEGLOBAL_IMPLICITGLOBAL_EXPLICITLOCALOPT_BARE_EXECOPT_EXECOPT_IMPORT_STARTYPE_MODULETYPE_CLASSTYPE_FUNCTIONDEF_BOUNDDEF_IMPORTDEF_FREE_CLASSDEF_FREE_GLOBALDEF_FREEDEF_INTUPLEDEF_DOUBLESTARDEF_STARDEF_PARAMDEF_LOCALDEF_GLOBALUSE$Revision: 60911 $$HeadURL: svn+ssh://pythondev@svn.python.org/python/tags/r252/Python/sysmodule.c $call_tracingsettracesetrecursionlimitsetprofilegetcheckintervalsetcheckintervalsetdefaultencodinggetwindowsversion_getframegetrecursionlimitgetrefcountgetfilesystemencodinggetdefaultencodingexitexc_clearexc_info_current_framescallstatsc_returnc_exceptionc_calllineexceptioncalllost __builtin__(OOO)s:setdefaultencodingi:setcheckintervalrecursion limit must be positivei:setrecursionlimitHHHHscall stack is not deep enough|i:_getframeexportedbad HeadURLbranchestrunktagssubversion keywords missing/python/can't assign sys.pathcan't create sys.pathsys.path.insert(0) failedno mem for sys.path insertioncan't assign sys.argvno mem for sys.argv... truncatedwarnoptionswinverdllhandlebyteorderlittlebuiltin_module_namesmaxunicodemaxintexec_prefixprefixapi_versionversion_infoiiisisubversion(ssz)CPythonhexversion__excepthook____displayhook__Python error: is a directory, cannot continue InterlockedCompareExchangekernel32.dllstack_sizeget_identinterrupt_mainexit_threadallocateallocate_lockstart_newstart_new_threadThread-local datathread._localLocal-data dictionarythread.locklockedlocked_lockreleaseacquire|i:acquirerelease unlocked lockcan't allocate lockCouldn't get thread-state dictionarythread.local.%pInitialization arguments are not supportedUnhandled exception in thread started by can't start new threadoptional 3rd arg must be a dictionary2nd arg must be a tuplefirst arg must be callableno current thread identsetting stack size not supportedsize not valid: %zd bytessize must be 0 or a positive value|n:stack_size_localLockTypethread.errormktimeasctimelocaltimegmtimesleepclocktime.struct_timetm_isdsttm_ydaytm_wdaytm_sectm_mintm_hourtm_mdaytm_montm_yeartimestamp out of range for platform time_tMbP?year >= 1900 requiredyear out of rangeaccept2dyear(iiiiiiiii)month out of rangeday of month out of rangehour out of rangeminute out of rangeseconds out of rangeday of year out of rangedaylight savings flag out of rangeday of week out of ranges|O:strftime_strptimeunconvertible timemktime argument out of range(zz)daylightaltzonetimezonePYTHONY2Ksleep length is too largeA@@d:sleep|O:gmtime|O:localtimeset tabsize=:ts=:tabstop=tab-width:OPATDOUBLESLASHEQUALDOUBLESLASHDOUBLESTAREQUALRIGHTSHIFTEQUALLEFTSHIFTEQUALCIRCUMFLEXEQUALVBAREQUALAMPEREQUALPERCENTEQUALSLASHEQUALSTAREQUALMINEQUALPLUSEQUALDOUBLESTARRIGHTSHIFTLEFTSHIFTCIRCUMFLEXTILDEGREATEREQUALLESSEQUALNOTEQUALEQEQUALRBRACELBRACEBACKQUOTEPERCENTDOTEQUALGREATERLESSAMPERVBARSLASHSTARMINUSPLUSSEMICOMMACOLONRSQBLSQBRPARLPARDEDENTINDENTNEWLINESTRINGNUMBERNAMEENDMARKERiso-latin-1-iso-8859-1-latin-1-iso-latin-1latin-1utf-8-codingencoding problem: %swith BOMNon-ASCII character '\x%.2x' in file %.200s on line %i, but no encoding declared; see http://www.python.org/peps/pep-0263.html for detailstok_backup: begin of buffer%s: inconsistent use of tabs and spaces in indentation Tab size set to %d tracebacktb_linenotb_lastitb_frametb_next\loewis\25\python\Python\traceback.c File "%.500s", line %d, in %.500s Traceback (most recent call last): tracebacklimittupleiterator\loewis\25\python\Objects\tupleobject.ctuple assignment index out of range,)can only concatenate tuple (not "%.200s") to tuple|O:tupletuple indices must be integersthe type of the instance invoking super(); may be None__self_class__the instance invoking super(); may be Nonethe class invoking super()__thisclass__x.__init__(...) initializes x; see x.__class__.__doc__ for signaturedescr.__delete__(obj)__delete__descr.__set__(obj, value)__set__descr.__get__(obj[, type]) -> value__get__x.next() -> the next value, or raise StopIterationx.__iter__() <==> iter(x)x.__ge__(y) <==> x>=yx.__gt__(y) <==> x>yx.__ne__(y) <==> x!=yx.__eq__(y) <==> x==yx.__le__(y) <==> x<=yx.__lt__(y) <==> x del x.namex.__setattr__('name', value) <==> x.name = valuex.__getattribute__('name') <==> x.name__getattribute__x.__call__(...) <==> x(...)x.__hash__() <==> hash(x)x.__cmp__(y) <==> cmp(x,y)x.__repr__() <==> repr(x)x.__str__() <==> str(x)x.__itruediv__(y) <==> x/yx.__ifloordiv__(y) <==> x//yx.__rtruediv__(y) <==> y/xx.__truediv__(y) <==> x/yx.__rfloordiv__(y) <==> y//xx.__floordiv__(y) <==> x//yx.__ior__(y) <==> x|yx.__ixor__(y) <==> x^yx.__iand__(y) <==> x&yx.__irshift__(y) <==> x>>yx.__ilshift__(y) <==> x< x**yx.__imod__(y) <==> x%yx.__idiv__(y) <==> x/yx.__imul__(y) <==> x*yx.__isub__(y) <==> x-yx.__iadd__(y) <==> x+yx[y:z] <==> x[y.__index__():z.__index__()]x.__hex__() <==> hex(x)x.__oct__() <==> oct(x)x.__float__() <==> float(x)x.__long__() <==> long(x)x.__int__() <==> int(x)x.__coerce__(y) <==> coerce(x, y)x.__ror__(y) <==> y|xx.__or__(y) <==> x|yx.__rxor__(y) <==> y^xx.__xor__(y) <==> x^yx.__rand__(y) <==> y&xx.__and__(y) <==> x&yx.__rrshift__(y) <==> y>>xx.__rshift__(y) <==> x>>yx.__rlshift__(y) <==> y< x< ~xx.__nonzero__() <==> x != 0x.__abs__() <==> abs(x)x.__pos__() <==> +xx.__neg__() <==> -xy.__rpow__(x[, z]) <==> pow(x, y[, z])x.__pow__(y[, z]) <==> pow(x, y[, z])x.__rdivmod__(y) <==> divmod(y, x)x.__divmod__(y) <==> divmod(x, y)x.__rmod__(y) <==> y%xx.__mod__(y) <==> x%yx.__rdiv__(y) <==> y/xx.__div__(y) <==> x/yx.__rmul__(y) <==> y*xx.__mul__(y) <==> x*yx.__rsub__(y) <==> y-xx.__sub__(y) <==> x-yx.__radd__(y) <==> y+xx.__imul__(y) <==> x*=yx.__iadd__(y) <==> x+=yx.__contains__(y) <==> y in xx.__delslice__(i, j) <==> del x[i:j] Use of negative indices is not supported.x.__setslice__(i, j, y) <==> x[i:j]=y Use of negative indices is not supported.x.__delitem__(y) <==> del x[y]x.__setitem__(i, y) <==> x[i]=yx.__getslice__(i, j) <==> x[i:j] Use of negative indices is not supported.x.__getitem__(y) <==> x[y]x.__rmul__(n) <==> n*xx.__mul__(n) <==> x*nx.__add__(y) <==> x+yx.__len__() <==> len(x)T.__new__(S, ...) -> a new object with type S, a subtype of TThe most base typehelper for picklethe object's class__subclasses__() -> list of immediate subclasses__subclasses__mro() -> list return a type's method resolution ordermrolist of weak references to the object (if defined)__weakref__dictionary for instance variables (if defined)__mro____dictoffset____base____weakrefoffset____flags____itemsize____basicsize__can't delete %s.__module__can't set %s.__module__duplicate base class %sCannot create a consistent method resolution order (MRO) for basesthis __dict__ descriptor does not support '%.200s' objectsThis object has no __weakref____slots__ must be identifiers__slots__ items must be strings, not '%.200s'default __new__ takes no parameters<%s.%s object at %p>%s assignment: '%s' deallocator differs from '%s'%s assignment: '%s' object layout differs from '%s'__class__ assignment: only for heap types__class__ must be set to new-style class, not '%s' objectcan't delete __class__ attributecopy_reg._slotnames didn't return a list or None_slotnames__slotnames____getnewargs__ should return a tuple, not '%.200s'_reduce_ex(Oi)|i:__reduce__|i:__reduce_ex__method cannot be both class and staticexpected %d arguments, got %zdnnnnO%s.__cmp__(x,y) requires y to be a '%s', not a '%s'can't apply this %s to %s object__get__(None, None) is invalid%s.__new__(%s) is not safe, use %s.__new__()%s.__new__(%s): %s is not a subtype of %s%s.__new__(X): X is not a type object (%s)%s.__new__(): not enough arguments__new__() called with non-type 'self'Out of memory interning slotdef names, NULL>, <%s object>>super(type, obj): obj must be an instance or subtype of typeO!|O:supercan only assign string to %s.__name__, not '%s'can't delete %s.__name__can't set %s.__name__<%s '%s'><%s '%s.%s'>cannot create '%.100s' instancesmro() returned base with unsuitable layout ('%.500s')mro() returned a non-class ('%.500s')This object has no __dict____dict__ must be set to a dictionary, not a '%.200s'type '%.100s' participates in gc and is a base type but has inappropriate tp_free slot(n)__nonzero__ should return bool or int, returned %s__coerce__ didn't return a 2-tuple__init__() should return None, not '%.200s'multiple bases have instance lay-out conflictbases must be typesa new-style class can't have only classic bases__weakref__ slot disallowed: either we already got one, or __itemsize__ != 0__dict__ slot disallowed: we already got onenonempty __slots__ not supported for subtype of '%s'__slots__type '%.100s' is not an acceptable base typemetaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its basesSO!O!:typetype() takes 1 or 3 argumentstype object '%.50s' has no attribute '%.400s'can't set attributes of built-in/extension type '%s'%s.__bases__ must be tuple of old- or new-style classes, not '%s'can only assign non-empty tuple to %s.__bases__, not ()can only assign tuple to %s.__bases__, not %scan't delete %s.__bases__can't set %s.__bases__ 0   yy  9 Oaa 88 A ~]S.. 22 33 66 55 11 // -- ++ ** && '' %% TT&%@?  P0 `   JJ VV dd pp ~~ A A A ( @@@I@@H@H@G@G@F@F@E@E@D@C@C@B@B@A@A@@@?@>@@=@<@;@:@9@8@7@6@5@4@2@1@0@,@*@(@&@?@@@???@Y@?UUUUUU??333333???UUUUUU?UUUUUU?"@3@V@T@Q@N@D@@ @@!@@@@???isnumericisdecimalO!n;translating error handler must return (unicode, int) tupleEncodingMapReturn the size (in bytes) of this objectO!n;encoding error handler must return (unicode, int) tuple0123456789abcdefO!n;decoding error handler must return (unicode, int) tuplecan't resize shared unicode objects\loewis\25\python\Objects\unicodeobject.cunichr() arg not in range(0x10000) (narrow Python build)unexpected special characternon-zero padding bits in shift sequencepartial character in shift sequencecode pairs are not supportedutf7unterminated shift sequenceABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/utf8unsupported Unicode code rangeillegal encodinginvalid datainternal errorunexpected code byteunexpected end of datautf16illegal UTF-16 surrogatetruncated data\N escapes not supported (can't load unicodedata module)\ at end of stringillegal Unicode characterunknown Unicode character nameucnhash_CAPIunicodedatamalformed \N character escapeunicodeescapeend of string in escape sequencetruncated \UXXXXXXXX escapetruncated \uXXXX escapetruncated \xXX escapetruncated \uXXXXrawunicodeescape\Uxxxxxxxx out of rangeunicode_internalillegal code point (> 0x10FFFF)truncated input&#%d;ordinal not in range(128)asciiordinal not in range(256)character mapping must be in range(65536)character mapping must return integer, None or unicodecharmapcharacter maps to character mapping must be in range(256)character mapping must return integer, None or strcharacter mapping must be in range(0x%lx)invalid decimal Unicode stringdecimal(u#)accessing non-existent unicode segmentcannot use unicode as modifiable buffer%c requires int or char%c arg not in range(0x10000) (narrow Python build)Can't initialize 'unicode'decoder did not return an unicode object (type=%.400s)decoding Unicode is not supportedcoercing to Unicode: need string or buffer, %.80s found|Oss:unicodesequence item %zd: expected string or Unicode, %.80s foundThe fill character must be exactly one character longThe fill character cannot be converted to Unicoden|O&:centerUnicode unequal comparison failed to convert both arguments to Unicode - interpreting them as being unequalUnicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequalO|O&O&:findn|O&:ljust%s arg must be None, unicode or strO|O&O&:rfindO|O&O&:rindexn|O&:rjustweakcallableproxyweakproxyweakref:__call__weak object has gone awaycannot create weak reference to '%s' objectweakly-referenced object no longer exists\loewis\25\python\Objects\weakrefobject.cbenchxxsubtype.spamdictxxsubtype.spamlistan int variable for demonstration purposesstatestaticmeth(*args, **kw)staticmethclassmeth(*args, **kw)classmethsetstate(state)getstate() -> state:getstatei:setstateOS|ispamdictspamlistzipimport.zipimporter_filesarchiveis_packageget_sourceget_codeget_datapath too longs|O:zipimporter.find_modulecan't find module '%.200s's:zipimporter.is_package# zipimport: found %ld names in %s siiiiiiinot a Zip file: '%.200s'can't read Zip file: '%.200s'can't open Zip file: '%.200s'Zip path name is too long# zipimport: zlib %s UNAVAILABLEavailablezipimport: can't read datacan't decompress data; zlib not availablebad local file header in %szipimport: can not open file %sslllllllcompiled module %.200s is not a code objectbad pyc datazipimport: no memory to allocate source buffer# trying %s%c%s _zip_directory_cacheZipImportErrorzipimport.ZipImportErrornot a Zip filearchive path too longarchive path is emptys:zipimporterzipimporter()import %s # loaded from Zip %s %s%c%s%s__loader__s:zipimporter.load_modules:zipimporter.get_datas:zipimporter.get_codes:zipimporter.get_source37#'gkHh/RSDSI+`Cfc:\loewis\25\python\PCbuild\python25.pdbDP\HDtdRB2*>JZfx,D^n2HXh|&6DRl~*BVj* @pbP<,T^fpz *4>HTblv  (2<DNVblv",8@HPX`fnt|*4@JT^hrz&2<HVfnz$0<ZdnvF(8QueryPerformanceCounterQueryPerformanceFrequencylGetLocaleInfoAGetACP.CloseHandleiGetLastErrorGetStdHandle:GetCurrentProcessDuplicateHandle_CreatePipe`CreateProcessAOTerminateProcessRGetExitCodeProcessWaitForSingleObjectGetVersionuGetModuleFileNameAGetProcAddressFreeLibraryFormatMessageAILoadLibraryExAaGetFullPathNameARLocalFreeSetEndOfFileFindCloseFindFirstFileAGetSystemInfocUnmapViewOfFile[GetFileSize^MapViewOfFileNCreateFileMappingASetFilePointerFlushViewOfFileGSleepSetEnvironmentVariableA8GetCurrentDirectoryASetCurrentDirectoryASetEnvironmentVariableWSetLastError9GetCurrentDirectoryWSetCurrentDirectoryWwGetModuleHandleAFindFirstFileWVGetFileAttributesAYGetFileAttributesWZGetFileInformationByHandle^GetFileType SetFileAttributesA SetFileAttributesWFindNextFileAFindNextFileWbGetFullPathNameWECreateDirectoryAHCreateDirectoryWdMoveFileAgMoveFileWRemoveDirectoryARemoveDirectoryW|DeleteFileA}DeleteFileWSetFileTimeLSystemTimeToFileTimeGetSystemTimeMCreateFileAPCreateFileWPGetEnvironmentVariableAGetProcessTimesOutputDebugStringAGetVersionExA-GetConsoleOutputCPGetConsoleCPInterlockedExchangeICreateEventA>GetCurrentThreadId"InterlockedIncrement SetEventInterlockedDecrementReleaseSemaphoreeCreateSemaphoreASetConsoleCtrlHandlerResetEvent-IsDBCSLeadBytekMultiByteToWideCharWideCharToMultiByteKERNEL32.dllwsprintfALoadStringA-CharPrevAUSER32.dllRegCloseKeyRegConnectRegistryARegCreateKeyARegDeleteKeyARegDeleteValueARegEnumKeyExARegEnumValueARegQueryInfoKeyARegFlushKeyRegLoadKeyARegOpenKeyExARegQueryValueARegQueryValueExARegSaveKeyARegSetValueARegSetValueExAADVAPI32.dllShellExecuteA ShellExecuteWSHELL32.dllfwritefread_errnofclosefree%_vsnprintffflushfseekfputcmalloc strerrorclearerrftellfprintf_fdopenfopensprintfmemmovestrchrfgetc%ungetcisdigitisalphaislowerisuppersetlocalelocaleconvstrcoll0wcscollstrxfrmtime!tolowerisalnumreallocisspacefputs_mbstrlenprintfexitC_iobmemchrceilfloorstrncpy?_CIsinh8_CIcosh<_hypotI_HUGE=_CIpow strncatgetcstrtolmodflocaltimegmtimestrncmp _sys_errlist _sys_nerr4wcslenstrrchrN_wfopensetvbuffsetposfgetposv_lseeki64"_get_osfhandlefgetsfrexp _finite:_CIfmodldexpgetenvc_isnan_setmodeputcacosasinatanatan2coscoshexpfabsfmodpowsinsinhsqrttantanhloglog108_heapmino_locking_open_osfhandlei_kbhit$_getch%_getche_putch_ungetch__p__environ6wcsncmp/_wcsicmp9wcsrchr_commit/wcscmp1wcscpysystem_exit_spawnv_spawnve_stricmp_cwait[_wopen_tempnamtmpfile tmpnamabortstrtodstrpbrkatoirewind_except_handler3signal"toupperisxdigitstrstr'vfprintf_endthread_beginthreadclock strftimeasctimectimemktimeqsortMSVCR71.dll__security_error_handler?_initterm_adjust_fdivL__CppXcptFilterk__dllonexit_onexitExitProcessGetTickCount;GetCurrentProcessIdGetSystemTimeAsFileTime_fileno&_getcwd_statD_isatty_fstatu_lseek_strdup_open_unlink_strnicmp_umask_execv_execve._getpid_close_dup_dup2_readb_write_putenv_tzname_daylight_timezone_tzset_ftimejGx P`? > 0? P> nnkpGnm0p/`{mp~ P0p @pPCpBB`CCD} ge 0Аq"@r@__UPPKSRRQFPR0RTpNpEpGpRR`F@I p @!10JP0KP/KB`A><O2 0@KAHPAepr 0e` depjcje`pc Pobihg@igPg fgii j bb`crpnmnl @ 00p@@О`Pp0`М(@HpXpXx078Php 8`(`8@xЩ p0`` `@0px  P8 '7PH E E A@ `0  @ $[Ppt`@`pfE F C ? C C p!F &` PpF+PE`_ WbXdeY`UT@ansPUb`e{|`|f{0f@ P Y Y Y ` @ P Xv   p P   xG  I pG YS`Q[JPX W R@S` TWV W@WVw@VX`XVWpWpVZ\Yp^Q`vXP0Y@UT RRTQ 0 p D D XpL PK H E G E pE H@ IIfg@khjfHGa tug l 0:88R 0U O d r|P @e O pI I 0oppPW qk W \ pn @J b c R P e spL G ]  P  8@ ` 0 p p C pgx`xPcdp@aayz 0apeybc`} `  P     `  0$`@  `   s   ^ s n P @ m   !  0 @  ` p @ 0@ A @B B B 0G C C B  p P    , 0 X@ 2 7 0 3 p2 1 D PE I  @00p `З0P&@ccP @ 0@ w{ zpm@g@pe d h$@00Pp pnЍil 0 ` P p0Ј x uPol@+0   0 0X$0 p p lXPI |X p H@ tX@oPo}P}}p}} д `}dX@I  P hXP @ pX5Y Z p xX@I `XHplnPnmokNJ 3PrЮpPP  `0`/\^X0TxZbbS`Z@Z X hpi\ 9999R pqI I @K  ` 0  0\ 8  FFC ` DDZ [ > PT d0 @ 0 p p ` U!X  qq c pO vDDI  qn n0Pp".:Kgy *GTbs "?Qbw'4E\gs/@Vl $;Jas+8DQfq} (6MYf!Hu 8\1FZl~ ,?Qbw*DZo(6H\s1Qfy  6 O h {       !!&!8!G!S!e!x!!!!!!!!!"%"2"C"V"k"x""""""""##2#A#W#n#~######## $$4$E$]$w$$$$$$%%.%I%Z%p%%%%%%%%%&&1&B&T&a&l&&&&&&'''-'9'H'X'f'q'''''''''' (#(A([(l(~((((((())*)B)S)j){))))))*6*P*l**********++&+4+B+Z+m+++++++++,, ,2,?,L,_,n,~,,,,,,,,-/-F-_-r------...-.;.K.].o.{........//%/9/H/_/m////////// 0#0=0S0j0x00000011+1<1M1d1q11111111 22/2@2W2e2s222222222 33,3E3W3h333333333 4!464P4r44444455#515A5V5i5t555555566'6?6R6j6w666666666 7727B7U7i7w777777788%868@8L8[8i8t8~8888888889989Q9j9|99999999:#:8:L:g:::::::: ;;';7;I;];k;{;;;;;;;; <'<9<O<a<t<<<<<<<=%=8=O=f=======>>'>8>J>[>h>x>>>>>>>>>???8?Y?u????? @*@F@g@@@@@@A8AWAvAAAAAB=BYBwBBBBBC.CFCjCCCCCCCD$D?DdD~DDDDDE+EGEcE~EEEEE F F@FYFsFFFFFFGG8GMGcGxGGGGGGH/HFHaHvHHHHHHHII-I;IMIWIeIvIIIIIIIIIJJ,JAJNJ\JlJ{JJJJJJJJJKK8KBKQK_KoKKKKKKKKKK LL1LGL`LrLLLLLLLLM*MOMdMtMMMMMMMMMNN$N5NFNTNhNNNNNNNNOO"O6OMO_OlOOOOOOOOO P'PBPQPePvPPPPPPPP Q!Q-Q>QLQaQnQQQQQQQQ R"R:RRRiRyRRRRRRS0SISdSSSSSSTT:TLTiT}TTTTTTTU)U8UHUSUbU{UUUUUUUUVVV#V.V9VCV  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~python25.dllPyAST_CompilePyAST_FromNodePyArena_AddPyObjectPyArena_FreePyArena_MallocPyArena_NewPyArg_ParsePyArg_ParseTuplePyArg_ParseTupleAndKeywordsPyArg_UnpackTuplePyArg_VaParsePyArg_VaParseTupleAndKeywordsPyBaseObject_TypePyBaseString_TypePyBool_FromLongPyBool_TypePyBuffer_FromMemoryPyBuffer_FromObjectPyBuffer_FromReadWriteMemoryPyBuffer_FromReadWriteObjectPyBuffer_NewPyBuffer_TypePyCFunction_CallPyCFunction_FiniPyCFunction_GetFlagsPyCFunction_GetFunctionPyCFunction_GetSelfPyCFunction_NewPyCFunction_NewExPyCFunction_TypePyCObject_AsVoidPtrPyCObject_FromVoidPtrPyCObject_FromVoidPtrAndDescPyCObject_GetDescPyCObject_ImportPyCObject_SetVoidPtrPyCObject_TypePyCallIter_NewPyCallIter_TypePyCallable_CheckPyCell_GetPyCell_NewPyCell_SetPyCell_TypePyClassMethod_NewPyClassMethod_TypePyClass_IsSubclassPyClass_NewPyClass_TypePyCode_Addr2LinePyCode_CheckLineNumberPyCode_NewPyCode_TypePyCodec_BackslashReplaceErrorsPyCodec_DecodePyCodec_DecoderPyCodec_EncodePyCodec_EncoderPyCodec_IgnoreErrorsPyCodec_IncrementalDecoderPyCodec_IncrementalEncoderPyCodec_LookupErrorPyCodec_RegisterPyCodec_RegisterErrorPyCodec_ReplaceErrorsPyCodec_StreamReaderPyCodec_StreamWriterPyCodec_StrictErrorsPyCodec_XMLCharRefReplaceErrorsPyComplex_AsCComplexPyComplex_FromCComplexPyComplex_FromDoublesPyComplex_ImagAsDoublePyComplex_RealAsDoublePyComplex_TypePyDescr_NewClassMethodPyDescr_NewGetSetPyDescr_NewMemberPyDescr_NewMethodPyDescr_NewWrapperPyDictProxy_NewPyDict_ClearPyDict_ContainsPyDict_CopyPyDict_DelItemPyDict_DelItemStringPyDict_GetItemPyDict_GetItemStringPyDict_ItemsPyDict_KeysPyDict_MergePyDict_MergeFromSeq2PyDict_NewPyDict_NextPyDict_SetItemPyDict_SetItemStringPyDict_SizePyDict_TypePyDict_UpdatePyDict_ValuesPyEnum_TypePyErr_BadArgumentPyErr_BadInternalCallPyErr_CheckSignalsPyErr_ClearPyErr_DisplayPyErr_ExceptionMatchesPyErr_FetchPyErr_FormatPyErr_GivenExceptionMatchesPyErr_NewExceptionPyErr_NoMemoryPyErr_NormalizeExceptionPyErr_OccurredPyErr_PrintPyErr_PrintExPyErr_ProgramTextPyErr_RestorePyErr_SetExcFromWindowsErrPyErr_SetExcFromWindowsErrWithFilenamePyErr_SetExcFromWindowsErrWithFilenameObjectPyErr_SetExcFromWindowsErrWithUnicodeFilenamePyErr_SetFromErrnoPyErr_SetFromErrnoWithFilenamePyErr_SetFromErrnoWithFilenameObjectPyErr_SetFromErrnoWithUnicodeFilenamePyErr_SetFromWindowsErrPyErr_SetFromWindowsErrWithFilenamePyErr_SetFromWindowsErrWithUnicodeFilenamePyErr_SetInterruptPyErr_SetNonePyErr_SetObjectPyErr_SetStringPyErr_SyntaxLocationPyErr_WarnPyErr_WarnExPyErr_WarnExplicitPyErr_WriteUnraisablePyEval_AcquireLockPyEval_AcquireThreadPyEval_CallFunctionPyEval_CallMethodPyEval_CallObjectPyEval_CallObjectWithKeywordsPyEval_EvalCodePyEval_EvalCodeExPyEval_EvalFramePyEval_EvalFrameExPyEval_GetBuiltinsPyEval_GetCallStatsPyEval_GetFramePyEval_GetFuncDescPyEval_GetFuncNamePyEval_GetGlobalsPyEval_GetLocalsPyEval_GetRestrictedPyEval_InitThreadsPyEval_MergeCompilerFlagsPyEval_ReInitThreadsPyEval_ReleaseLockPyEval_ReleaseThreadPyEval_RestoreThreadPyEval_SaveThreadPyEval_SetProfilePyEval_SetTracePyEval_ThreadsInitializedPyExc_ArithmeticErrorPyExc_AssertionErrorPyExc_AttributeErrorPyExc_BaseExceptionPyExc_DeprecationWarningPyExc_EOFErrorPyExc_EnvironmentErrorPyExc_ExceptionPyExc_FloatingPointErrorPyExc_FutureWarningPyExc_GeneratorExitPyExc_IOErrorPyExc_ImportErrorPyExc_ImportWarningPyExc_IndentationErrorPyExc_IndexErrorPyExc_KeyErrorPyExc_KeyboardInterruptPyExc_LookupErrorPyExc_MemoryErrorPyExc_MemoryErrorInstPyExc_NameErrorPyExc_NotImplementedErrorPyExc_OSErrorPyExc_OverflowErrorPyExc_PendingDeprecationWarningPyExc_ReferenceErrorPyExc_RuntimeErrorPyExc_RuntimeWarningPyExc_StandardErrorPyExc_StopIterationPyExc_SyntaxErrorPyExc_SyntaxWarningPyExc_SystemErrorPyExc_SystemExitPyExc_TabErrorPyExc_TypeErrorPyExc_UnboundLocalErrorPyExc_UnicodeDecodeErrorPyExc_UnicodeEncodeErrorPyExc_UnicodeErrorPyExc_UnicodeTranslateErrorPyExc_UnicodeWarningPyExc_UserWarningPyExc_ValueErrorPyExc_WarningPyExc_WindowsErrorPyExc_ZeroDivisionErrorPyFile_AsFilePyFile_FromFilePyFile_FromStringPyFile_GetLinePyFile_NamePyFile_SetBufSizePyFile_SetEncodingPyFile_SoftSpacePyFile_TypePyFile_WriteObjectPyFile_WriteStringPyFloat_AsDoublePyFloat_AsReprStringPyFloat_AsStringPyFloat_FiniPyFloat_FromDoublePyFloat_FromStringPyFloat_TypePyFrame_BlockPopPyFrame_BlockSetupPyFrame_FastToLocalsPyFrame_FiniPyFrame_LocalsToFastPyFrame_NewPyFrame_TypePyFrozenSet_NewPyFrozenSet_TypePyFunction_GetClosurePyFunction_GetCodePyFunction_GetDefaultsPyFunction_GetGlobalsPyFunction_GetModulePyFunction_NewPyFunction_SetClosurePyFunction_SetDefaultsPyFunction_TypePyFuture_FromASTPyGC_CollectPyGILState_EnsurePyGILState_GetThisThreadStatePyGILState_ReleasePyGen_NeedsFinalizingPyGen_NewPyGen_TypePyImport_AddModulePyImport_AppendInittabPyImport_CleanupPyImport_ExecCodeModulePyImport_ExecCodeModuleExPyImport_ExtendInittabPyImport_FrozenModulesPyImport_GetMagicNumberPyImport_GetModuleDictPyImport_ImportPyImport_ImportFrozenModulePyImport_ImportModulePyImport_ImportModuleExPyImport_ImportModuleLevelPyImport_InittabPyImport_ReloadModulePyInstance_NewPyInstance_NewRawPyInstance_TypePyInt_AsLongPyInt_AsSsize_tPyInt_AsUnsignedLongLongMaskPyInt_AsUnsignedLongMaskPyInt_FiniPyInt_FromLongPyInt_FromSize_tPyInt_FromSsize_tPyInt_FromStringPyInt_FromUnicodePyInt_GetMaxPyInt_TypePyInterpreterState_ClearPyInterpreterState_DeletePyInterpreterState_HeadPyInterpreterState_NewPyInterpreterState_NextPyInterpreterState_ThreadHeadPyIter_NextPyList_AppendPyList_AsTuplePyList_FiniPyList_GetItemPyList_GetSlicePyList_InsertPyList_NewPyList_ReversePyList_SetItemPyList_SetSlicePyList_SizePyList_SortPyList_TypePyLong_AsDoublePyLong_AsLongPyLong_AsLongLongPyLong_AsUnsignedLongPyLong_AsUnsignedLongLongPyLong_AsUnsignedLongLongMaskPyLong_AsUnsignedLongMaskPyLong_AsVoidPtrPyLong_FromDoublePyLong_FromLongPyLong_FromLongLongPyLong_FromStringPyLong_FromUnicodePyLong_FromUnsignedLongPyLong_FromUnsignedLongLongPyLong_FromVoidPtrPyLong_TypePyMapping_CheckPyMapping_GetItemStringPyMapping_HasKeyPyMapping_HasKeyStringPyMapping_LengthPyMapping_SetItemStringPyMapping_SizePyMarshal_ReadLastObjectFromFilePyMarshal_ReadLongFromFilePyMarshal_ReadObjectFromFilePyMarshal_ReadObjectFromStringPyMarshal_ReadShortFromFilePyMarshal_WriteLongToFilePyMarshal_WriteObjectToFilePyMarshal_WriteObjectToStringPyMem_FreePyMem_MallocPyMem_ReallocPyMember_GetPyMember_GetOnePyMember_SetPyMember_SetOnePyMethod_ClassPyMethod_FiniPyMethod_FunctionPyMethod_NewPyMethod_SelfPyMethod_TypePyModule_AddIntConstantPyModule_AddObjectPyModule_AddStringConstantPyModule_GetDictPyModule_GetFilenamePyModule_GetNamePyModule_NewPyModule_TypePyNode_AddChildPyNode_CompilePyNode_FreePyNode_ListTreePyNode_NewPyNumber_AbsolutePyNumber_AddPyNumber_AndPyNumber_AsSsize_tPyNumber_CheckPyNumber_CoercePyNumber_CoerceExPyNumber_DividePyNumber_DivmodPyNumber_FloatPyNumber_FloorDividePyNumber_InPlaceAddPyNumber_InPlaceAndPyNumber_InPlaceDividePyNumber_InPlaceFloorDividePyNumber_InPlaceLshiftPyNumber_InPlaceMultiplyPyNumber_InPlaceOrPyNumber_InPlacePowerPyNumber_InPlaceRemainderPyNumber_InPlaceRshiftPyNumber_InPlaceSubtractPyNumber_InPlaceTrueDividePyNumber_InPlaceXorPyNumber_IndexPyNumber_IntPyNumber_InvertPyNumber_LongPyNumber_LshiftPyNumber_MultiplyPyNumber_NegativePyNumber_OrPyNumber_PositivePyNumber_PowerPyNumber_RemainderPyNumber_RshiftPyNumber_SubtractPyNumber_TrueDividePyNumber_XorPyOS_AfterForkPyOS_CheckStackPyOS_FiniInterruptsPyOS_InitInterruptsPyOS_InputHookPyOS_InterruptOccurredPyOS_ReadlinePyOS_ReadlineFunctionPointerPyOS_ascii_atofPyOS_ascii_formatdPyOS_ascii_strtodPyOS_getsigPyOS_setsigPyOS_snprintfPyOS_strtolPyOS_strtoulPyOS_vsnprintfPyObject_AsCharBufferPyObject_AsFileDescriptorPyObject_AsReadBufferPyObject_AsWriteBufferPyObject_CallPyObject_CallFunctionPyObject_CallFunctionObjArgsPyObject_CallMethodPyObject_CallMethodObjArgsPyObject_CallObjectPyObject_CheckReadBufferPyObject_ClearWeakRefsPyObject_CmpPyObject_ComparePyObject_DelItemPyObject_DelItemStringPyObject_DirPyObject_FreePyObject_GC_DelPyObject_GC_TrackPyObject_GC_UnTrackPyObject_GenericGetAttrPyObject_GenericSetAttrPyObject_GetAttrPyObject_GetAttrStringPyObject_GetItemPyObject_GetIterPyObject_HasAttrPyObject_HasAttrStringPyObject_HashPyObject_InitPyObject_InitVarPyObject_IsInstancePyObject_IsSubclassPyObject_IsTruePyObject_LengthPyObject_MallocPyObject_NotPyObject_PrintPyObject_ReallocPyObject_ReprPyObject_RichComparePyObject_RichCompareBoolPyObject_SelfIterPyObject_SetAttrPyObject_SetAttrStringPyObject_SetItemPyObject_SizePyObject_StrPyObject_TypePyObject_UnicodePyParser_ASTFromFilePyParser_ASTFromStringPyParser_ParseFilePyParser_ParseFileFlagsPyParser_ParseStringPyParser_ParseStringFlagsPyParser_ParseStringFlagsFilenamePyParser_SetErrorPyParser_SimpleParseFilePyParser_SimpleParseFileFlagsPyParser_SimpleParseStringPyParser_SimpleParseStringFlagsPyProperty_TypePyRange_TypePyReversed_TypePyRun_AnyFilePyRun_AnyFileExPyRun_AnyFileExFlagsPyRun_AnyFileFlagsPyRun_FilePyRun_FileExPyRun_FileExFlagsPyRun_FileFlagsPyRun_InteractiveLoopPyRun_InteractiveLoopFlagsPyRun_InteractiveOnePyRun_InteractiveOneFlagsPyRun_SimpleFilePyRun_SimpleFileExPyRun_SimpleFileExFlagsPyRun_SimpleStringPyRun_SimpleStringFlagsPyRun_StringPyRun_StringFlagsPySTEntry_TypePyST_GetScopePySeqIter_NewPySeqIter_TypePySequence_CheckPySequence_ConcatPySequence_ContainsPySequence_CountPySequence_DelItemPySequence_DelSlicePySequence_FastPySequence_GetItemPySequence_GetSlicePySequence_InPySequence_InPlaceConcatPySequence_InPlaceRepeatPySequence_IndexPySequence_LengthPySequence_ListPySequence_RepeatPySequence_SetItemPySequence_SetSlicePySequence_SizePySequence_TuplePySet_AddPySet_ClearPySet_ContainsPySet_DiscardPySet_FiniPySet_NewPySet_PopPySet_SizePySet_TypePySlice_GetIndicesPySlice_GetIndicesExPySlice_NewPySlice_TypePyStaticMethod_NewPyStaticMethod_TypePyString_AsDecodedObjectPyString_AsDecodedStringPyString_AsEncodedObjectPyString_AsEncodedStringPyString_AsStringPyString_AsStringAndSizePyString_ConcatPyString_ConcatAndDelPyString_DecodePyString_DecodeEscapePyString_EncodePyString_FiniPyString_FormatPyString_FromFormatPyString_FromFormatVPyString_FromStringPyString_FromStringAndSizePyString_InternFromStringPyString_InternImmortalPyString_InternInPlacePyString_ReprPyString_SizePyString_TypePyStructSequence_InitTypePyStructSequence_NewPySuper_TypePySymtable_BuildPySymtable_FreePySymtable_LookupPySys_AddWarnOptionPySys_GetFilePySys_GetObjectPySys_ResetWarnOptionsPySys_SetArgvPySys_SetObjectPySys_SetPathPySys_WriteStderrPySys_WriteStdoutPyThreadState_ClearPyThreadState_DeletePyThreadState_DeleteCurrentPyThreadState_GetPyThreadState_GetDictPyThreadState_NewPyThreadState_NextPyThreadState_SetAsyncExcPyThreadState_SwapPyThread_acquire_lockPyThread_allocate_lockPyThread_create_keyPyThread_delete_keyPyThread_delete_key_valuePyThread_exit_threadPyThread_free_lockPyThread_get_key_valuePyThread_get_stacksizePyThread_get_thread_identPyThread_init_threadPyThread_release_lockPyThread_set_key_valuePyThread_set_stacksizePyThread_start_new_threadPyToken_OneCharPyToken_ThreeCharsPyToken_TwoCharsPyTraceBack_HerePyTraceBack_PrintPyTraceBack_TypePyTuple_FiniPyTuple_GetItemPyTuple_GetSlicePyTuple_NewPyTuple_PackPyTuple_SetItemPyTuple_SizePyTuple_TypePyType_GenericAllocPyType_GenericNewPyType_IsSubtypePyType_ReadyPyType_TypePyUnicodeDecodeError_CreatePyUnicodeDecodeError_GetEncodingPyUnicodeDecodeError_GetEndPyUnicodeDecodeError_GetObjectPyUnicodeDecodeError_GetReasonPyUnicodeDecodeError_GetStartPyUnicodeDecodeError_SetEndPyUnicodeDecodeError_SetReasonPyUnicodeDecodeError_SetStartPyUnicodeEncodeError_CreatePyUnicodeEncodeError_GetEncodingPyUnicodeEncodeError_GetEndPyUnicodeEncodeError_GetObjectPyUnicodeEncodeError_GetReasonPyUnicodeEncodeError_GetStartPyUnicodeEncodeError_SetEndPyUnicodeEncodeError_SetReasonPyUnicodeEncodeError_SetStartPyUnicodeTranslateError_CreatePyUnicodeTranslateError_GetEndPyUnicodeTranslateError_GetObjectPyUnicodeTranslateError_GetReasonPyUnicodeTranslateError_GetStartPyUnicodeTranslateError_SetEndPyUnicodeTranslateError_SetReasonPyUnicodeTranslateError_SetStartPyUnicodeUCS2_AsASCIIStringPyUnicodeUCS2_AsCharmapStringPyUnicodeUCS2_AsEncodedObjectPyUnicodeUCS2_AsEncodedStringPyUnicodeUCS2_AsLatin1StringPyUnicodeUCS2_AsRawUnicodeEscapeStringPyUnicodeUCS2_AsUTF16StringPyUnicodeUCS2_AsUTF8StringPyUnicodeUCS2_AsUnicodePyUnicodeUCS2_AsUnicodeEscapeStringPyUnicodeUCS2_AsWideCharPyUnicodeUCS2_ComparePyUnicodeUCS2_ConcatPyUnicodeUCS2_ContainsPyUnicodeUCS2_CountPyUnicodeUCS2_DecodePyUnicodeUCS2_DecodeASCIIPyUnicodeUCS2_DecodeCharmapPyUnicodeUCS2_DecodeLatin1PyUnicodeUCS2_DecodeRawUnicodeEscapePyUnicodeUCS2_DecodeUTF16PyUnicodeUCS2_DecodeUTF16StatefulPyUnicodeUCS2_DecodeUTF8PyUnicodeUCS2_DecodeUTF8StatefulPyUnicodeUCS2_DecodeUnicodeEscapePyUnicodeUCS2_EncodePyUnicodeUCS2_EncodeASCIIPyUnicodeUCS2_EncodeCharmapPyUnicodeUCS2_EncodeDecimalPyUnicodeUCS2_EncodeLatin1PyUnicodeUCS2_EncodeRawUnicodeEscapePyUnicodeUCS2_EncodeUTF16PyUnicodeUCS2_EncodeUTF8PyUnicodeUCS2_EncodeUnicodeEscapePyUnicodeUCS2_FindPyUnicodeUCS2_FormatPyUnicodeUCS2_FromEncodedObjectPyUnicodeUCS2_FromObjectPyUnicodeUCS2_FromOrdinalPyUnicodeUCS2_FromUnicodePyUnicodeUCS2_FromWideCharPyUnicodeUCS2_GetDefaultEncodingPyUnicodeUCS2_GetMaxPyUnicodeUCS2_GetSizePyUnicodeUCS2_JoinPyUnicodeUCS2_PartitionPyUnicodeUCS2_RPartitionPyUnicodeUCS2_RSplitPyUnicodeUCS2_ReplacePyUnicodeUCS2_ResizePyUnicodeUCS2_RichComparePyUnicodeUCS2_SetDefaultEncodingPyUnicodeUCS2_SplitPyUnicodeUCS2_SplitlinesPyUnicodeUCS2_TailmatchPyUnicodeUCS2_TranslatePyUnicodeUCS2_TranslateCharmapPyUnicode_AsMBCSStringPyUnicode_BuildEncodingMapPyUnicode_DecodeMBCSPyUnicode_DecodeMBCSStatefulPyUnicode_DecodeUTF7PyUnicode_EncodeMBCSPyUnicode_EncodeUTF7PyUnicode_TypePyWeakref_GetObjectPyWeakref_NewProxyPyWeakref_NewRefPyWrapperDescr_TypePyWrapper_NewPy_AddPendingCallPy_AtExitPy_BuildValuePy_CompileStringPy_CompileStringFlagsPy_DebugFlagPy_DecRefPy_DivisionWarningFlagPy_EndInterpreterPy_ExitPy_FatalErrorPy_FdIsInteractivePy_FileSystemDefaultEncodingPy_FinalizePy_FindMethodPy_FindMethodInChainPy_FlushLinePy_FrozenFlagPy_GetBuildInfoPy_GetCompilerPy_GetCopyrightPy_GetExecPrefixPy_GetPathPy_GetPlatformPy_GetPrefixPy_GetProgramFullPathPy_GetProgramNamePy_GetPythonHomePy_GetRecursionLimitPy_GetVersionPy_IgnoreEnvironmentFlagPy_IncRefPy_InitModule4Py_InitializePy_InitializeExPy_InteractiveFlagPy_IsInitializedPy_MainPy_MakePendingCallsPy_NewInterpreterPy_NoSiteFlagPy_OptimizeFlagPy_ReprEnterPy_ReprLeavePy_SetProgramNamePy_SetPythonHomePy_SetRecursionLimitPy_SubversionRevisionPy_SubversionShortBranchPy_SymtableStringPy_TabcheckFlagPy_UnicodeFlagPy_UseClassExceptionsFlagPy_VaBuildValuePy_VerboseFlag_PyArg_NoKeywords_PyArg_ParseTupleAndKeywords_SizeT_PyArg_ParseTuple_SizeT_PyArg_Parse_SizeT_PyArg_VaParseTupleAndKeywords_SizeT_PyArg_VaParse_SizeT_PyBuiltin_Init_PyCodec_Lookup_PyDict_Contains_PyDict_Next_PyErr_BadInternalCall_PyEval_CallTracing_PyEval_SliceIndex_PyExc_Fini_PyExc_Init_PyFloat_Init_PyFloat_Pack4_PyFloat_Pack8_PyFloat_Unpack4_PyFloat_Unpack8_PyFrame_Init_PyImportHooks_Init_PyImport_FindExtension_PyImport_FindModule_PyImport_Fini_PyImport_FixupExtension_PyImport_Init_PyImport_IsScript_PyImport_ReInitLock_PyInstance_Lookup_PyInt_Init_PyList_Extend_PyLong_AsByteArray_PyLong_AsScaledDouble_PyLong_AsSsize_t_PyLong_Copy_PyLong_DigitValue_PyLong_FromByteArray_PyLong_FromSize_t_PyLong_FromSsize_t_PyLong_New_PyLong_NumBits_PyLong_Sign_PyModule_Clear_PyOS_ReadlineTState_PyObject_CallFunction_SizeT_PyObject_CallMethod_SizeT_PyObject_Dump_PyObject_GC_Malloc_PyObject_GC_New_PyObject_GC_NewVar_PyObject_GC_Resize_PyObject_GetDictPtr_PyObject_LengthHint_PyObject_New_PyObject_NewVar_PyObject_Str_PyParser_TokenNames_PySequence_IterSearch_PySet_Next_PySet_NextEntry_PySet_Update_PySlice_FromIndices_PyString_Eq_PyString_FormatLong_PyString_Join_PyString_Resize_PySys_Init_PyThreadState_Current_PyThreadState_GetFrame_PyThread_CurrentFrames_PyTime_DoubleToTimet_PyTrash_delete_later_PyTrash_delete_nesting_PyTrash_deposit_object_PyTrash_destroy_chain_PyTuple_Resize_PyType_Lookup_PyUnicodeUCS2_AsDefaultEncodedString_PyUnicodeUCS2_IsAlpha_PyUnicodeUCS2_IsDecimalDigit_PyUnicodeUCS2_IsDigit_PyUnicodeUCS2_IsLinebreak_PyUnicodeUCS2_IsLowercase_PyUnicodeUCS2_IsNumeric_PyUnicodeUCS2_IsTitlecase_PyUnicodeUCS2_IsUppercase_PyUnicodeUCS2_IsWhitespace_PyUnicodeUCS2_ToDecimalDigit_PyUnicodeUCS2_ToDigit_PyUnicodeUCS2_ToLowercase_PyUnicodeUCS2_ToNumeric_PyUnicodeUCS2_ToTitlecase_PyUnicodeUCS2_ToUppercase_PyUnicode_XStrip_PyWeakref_CallableProxyType_PyWeakref_ClearRef_PyWeakref_GetWeakrefCount_PyWeakref_ProxyType_PyWeakref_RefType_Py_BuildValue_SizeT_Py_CheckInterval_Py_CheckRecursionLimit_Py_CheckRecursiveCall_Py_EllipsisObject_Py_HashDouble_Py_HashPointer_Py_Mangle_Py_NoneStruct_Py_NotImplementedStruct_Py_PackageContext_Py_QnewFlag_Py_ReleaseInternedStrings_Py_SwappedOp_Py_Ticker_Py_TrueStruct_Py_VaBuildValue_SizeT_Py_ZeroStruct_Py_c_diff_Py_c_neg_Py_c_pow_Py_c_prod_Py_c_quot_Py_c_sum_Py_svnversion:13:11:45Feb 21 2008%s%s%s, %.20s, %.9sexported+)/@**compressobj([level]) -- Return a compressor object. Optional arg level is the compression level, in 1-9.decompressobj([wbits]) -- Return a decompressor object. Optional arg wbits is the window buffer size.compress(string[, level]) -- Returned compressed string. Optional arg level is the compression level, in 1-9.decompress(string[, wbits[, bufsize]]) -- Return decompressed string. Optional arg wbits is the window buffer size. Optional arg bufsize is the initial output buffer size.compress(data) -- Return a string containing data compressed. After calling this function, some of the input data may still be stored in internal buffers for later processing. Call the flush() method to clear these buffers.decompress(data, max_length) -- Return a string containing the decompressed version of the data. After calling this function, some of the input data may still be stored in internal buffers for later processing. Call the flush() method to clear these buffers. If the max_length parameter is specified then the return value will be no longer than max_length. Unconsumed input data will be stored in the unconsumed_tail attribute.flush( [mode] ) -- Return a string containing any remaining compressed data. mode can be one of the constants Z_SYNC_FLUSH, Z_FULL_FLUSH, Z_FINISH; the default value used when mode is not specified is Z_FINISH. If mode == Z_FINISH, the compressor object can no longer be used after calling the flush() method. Otherwise, more data can still be compressed.flush( [length] ) -- Return a string containing any remaining decompressed data. length, if given, is the initial size of the output buffer. The decompressor object can no longer be used after this call.`4bX4(eL4pxcX4Эfadler32(string[, start]) -- Compute an Adler-32 checksum of string. An optional starting value can be specified. The returned checksum is an integer.crc32(string[, start]) -- Compute a CRC-32 checksum of string. An optional starting value can be specified. The returned checksum is an integer.D4@g`4pa84`04XhL4pa 4a4L p4LThe functions in this module allow compression and decompression using the zlib library, which is based on GNU zip. adler32(string[, start]) -- Compute an Adler-32 checksum. compress(string[, level]) -- Compress string, with compression level in 1-9. compressobj([level]) -- Return a compressor object. crc32(string[, start]) -- Compute a CRC-32 checksum. decompress(string,[wbits],[bufsize]) -- Decompresses a compressed string. decompressobj([wbits]) -- Return a decompressor object. 'wbits' is window buffer size. Compressor objects support compress() and flush() methods; decompressor objects support decompress() and flush().9999bisect_right(a, x[, lo[, hi]]) -> index Return the index where to insert item x in list a, assuming a is sorted. The return value i is such that all e in a[:i] have e <= x, and all e in a[i:] have e > x. So if x already appears in the list, i points just beyond the rightmost x already there Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. 9999insort_right(a, x[, lo[, hi]]) Insert item x in list a, and keep it sorted assuming a is sorted. If x is already in a, insert it to the right of the rightmost x. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. 9999bisect_left(a, x[, lo[, hi]]) -> index Return the index where to insert item x in list a, assuming a is sorted. The return value i is such that all e in a[:i] have e < x, and all e in a[i:] have e >= x. So if x already appears in the list, i points just before the leftmost x already there. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. 9999insort_left(a, x[, lo[, hi]]) Insert item x in list a, and keep it sorted assuming a is sorted. If x is already in a, insert it to the left of the leftmost x. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. Alias for bisect_right(). Alias for insort_right(). 9pxm9pr9o9r9(p9qBisection algorithms. This module provides support for maintaining a list in sorted order without having to sort the list after each insertion. For long lists of items with expensive comparison operations, this can be an improvement over the more common approach. Tc,hTc0`T`cTc8TcHxTc8register(search_function) Register a codec search function. Search functions are expected to take one argument, the encoding name in all lower case letters, and return a tuple of functions (encoder, decoder, stream_reader, stream_writer).lookup(encoding) -> (encoder, decoder, stream_reader, stream_writer) Looks up a codec tuple in the Python codec registry and returns a tuple of functions.encode(obj, [encoding[,errors]]) -> object Encodes obj using the codec registered for encoding. encoding defaults to the default encoding. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a ValueError. Other possible values are 'ignore', 'replace' and 'xmlcharrefreplace' as well as any other name registered with codecs.register_error that can handle ValueErrors.decode(obj, [encoding[,errors]]) -> object Decodes obj using the codec registered for encoding. encoding defaults to the default encoding. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a ValueError. Other possible values are 'ignore' and 'replace' as well as any other name registerd with codecs.register_error that is able to handle ValueErrors.register_error(errors, handler) Register the specified error handler under the name errors. handler must be a callable object, that will be called with an exception instance containing information about the location of the encoding/decoding error and must return a (replacement, new position) tuple.lookup_error(errors) -> handler Return the error handler for the specified error handling name or raise a LookupError, if no handler exists under this name.$ hu@Xvpv x *0 P)*p+t ,d P!<0"(",#`(-P$0.p$`.Pp%@/0& `0 `''0&@1Xz1{pdX D80$p2`222X8$D0CSV dialect The Dialect type records CSV parsing and generation options.  4~4CSV reader Reader objects are responsible for reading and parsing tabular data in CSV format.   (,@@E@AR >(0writerow(sequence) Construct and write a CSV record from a sequence of fields. Non-string elements will be converted to string.writerows(sequence of sequences) Construct and write a series of sequences to a csv file. Non-string elements will be converted to string.E@G CSV writer Writer objects are responsible for generating tabular data in CSV format from sequence input.  HEHH(XCSV parsing and writing. This module provides classes that assist in the reading and writing of Comma Separated Value (CSV) files, and implements the interface described by PEP 305. Although many CSV files are simple to parse, the format is not formally defined by a stable specification and is subtle enough that parsing lines of a CSV file with something like line.split(",") is bound to fail. The module supports three basic APIs: reading, writing, and registration of dialects. DIALECT REGISTRATION: Readers and writers support a dialect argument, which is a convenient handle on a group of settings. When the dialect argument is a string, it identifies one of the dialects previously registered with the module. If it is a class or instance, the attributes of the argument are used as the settings for the reader or writer: class excel: delimiter = ',' quotechar = '"' escapechar = None doublequote = True skipinitialspace = False lineterminator = '\r\n' quoting = QUOTE_MINIMAL SETTINGS: * quotechar - specifies a one-character string to use as the quoting character. It defaults to '"'. * delimiter - specifies a one-character string to use as the field separator. It defaults to ','. * skipinitialspace - specifies how to interpret whitespace which immediately follows a delimiter. It defaults to False, which means that whitespace immediately following a delimiter is part of the following field. * lineterminator - specifies the character sequence which should terminate rows. * quoting - controls when quotes should be generated by the writer. It can take on any of the following module constants: csv.QUOTE_MINIMAL means only when required, for example, when a field contains either the quotechar or the delimiter csv.QUOTE_ALL means that quotes are always placed around fields. csv.QUOTE_NONNUMERIC means that quotes are always placed around fields which do not parse as integers or floating point numbers. csv.QUOTE_NONE means that quotes are never placed around fields. * escapechar - specifies a one-character string used to escape the delimiter when quoting is set to QUOTE_NONE. * doublequote - controls the handling of quotes inside fields. When True, two consecutive quotes are interpreted as one during read, and when writing, each quote character embedded in the data is written as two quotes csv_reader = reader(iterable [, dialect='excel'] [optional keyword args]) for row in csv_reader: process(row) The "iterable" argument can be any object that returns a line of input for each iteration, such as a file object or a list. The optional "dialect" parameter is discussed below. The function also accepts optional keyword arguments which override settings provided by the dialect. The returned object is an iterator. Each iteration returns a row of the CSV file (which can span multiple input lines): csv_writer = csv.writer(fileobj [, dialect='excel'] [optional keyword args]) for row in sequence: csv_writer.writerow(row) [or] csv_writer = csv.writer(fileobj [, dialect='excel'] [optional keyword args]) csv_writer.writerows(rows) The "fileobj" argument can be any object that supports the file API. Return a list of all know dialect names. names = csv.list_dialects()Return the dialect instance associated with name. dialect = csv.get_dialect(name)Create a mapping from a string name to a dialect class. dialect = csv.register_dialect(name, dialect)Delete the name/dialect mapping associated with a string name. csv.unregister_dialect(name)Sets an upper limit on parsed fields. csv.field_size_limit([limit]) Returns old limit. If limit is not given, no new limit is set and the old limit is returnedpAȎIJxJ(dJX KВDpKpartial(func, *args, **keywords) - new function with partial application of the given arguments and keywords. `X , P@P NNR 0U E O0M0:Tools that operate on functions.Push item onto heap, maintaining the heap invariant.Pop the smallest item off the heap, maintaining the heap invariant.Pop and return the current smallest value, and add the new item. This is more efficient than heappop() followed by heappush(), and can be more appropriate when using a fixed-size heap. Note that the value returned may be larger than item! That constrains reasonable uses of this routine unless written as part of a conditional replacement: if item > heap[0]: item = heapreplace(heap, item) Transform list into a heap, in-place, in O(len(heap)) time.Find the n largest elements in a dataset. Equivalent to: sorted(iterable, reverse=True)[:n] Find the n smallest elements in a dataset. Equivalent to: sorted(iterable)[:n] `ST(|TptUhUP\YHeap queue algorithm (a.k.a. priority queue). Heaps are arrays for which a[k] <= a[2*k+1] and a[k] <= a[2*k+2] for all k, counting elements from 0. For the sake of comparison, non-existing elements are considered to be infinite. The interesting property of a heap is that a[0] is always its smallest element. Usage: heap = [] # creates an empty heap heappush(heap, item) # pushes a new item on the heap item = heappop(heap) # pops the smallest item from the heap item = heap[0] # smallest item on the heap without popping it heapify(x) # transforms list into a heap, in-place, in linear time item = heapreplace(heap, item) # pops and returns smallest item, and adds # new item; the heap size is unchanged Our API differs from textbook heap algorithms as follows: - We use 0-based indexing. This makes the relationship between the index for a node and the indexes for its children slightly less obvious, but is more suitable since Python uses 0-based indexing. - Our heappop() method returns the smallest item, not the largest. These two make it possible to view the heap as a regular Python list without surprises: heap[0] is the smallest item, and heap.sort() maintains the heap invariant! Heap queues [explanation by Franois Pinard] Heaps are arrays for which a[k] <= a[2*k+1] and a[k] <= a[2*k+2] for all k, counting elements from 0. For the sake of comparison, non-existing elements are considered to be infinite. The interesting property of a heap is that a[0] is always its smallest element. The strange invariant above is meant to be an efficient memory representation for a tournament. The numbers below are `k', not a[k]: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 In the tree above, each cell `k' is topping `2*k+1' and `2*k+2'. In an usual binary tournament we see in sports, each cell is the winner over the two cells it tops, and we can trace the winner down the tree to see all opponents s/he had. However, in many computer applications of such tournaments, we do not need to trace the history of a winner. To be more memory efficient, when a winner is promoted, we try to replace it by something else at a lower level, and the rule becomes that a cell and the two cells it tops contain three different items, but the top cell "wins" over the two topped cells. If this heap invariant is protected at all time, index 0 is clearly the overall winner. The simplest algorithmic way to remove it and find the "next" winner is to move some loser (let's say cell 30 in the diagram above) into the 0 position, and then percolate this new 0 down the tree, exchanging values, until the invariant is re-established. This is clearly logarithmic on the total number of items in the tree. By iterating over all items, you get an O(n ln n) sort. A nice feature of this sort is that you can efficiently insert new items while the sort is going on, provided that the inserted items are not "better" than the last 0'th element you extracted. This is especially useful in simulation contexts, where the tree holds all incoming events, and the "win" condition means the smallest scheduled time. When an event schedule other events for execution, they are scheduled into the future, so they can easily go into the heap. So, a heap is a good structure for implementing schedulers (this is what I used for my MIDI sequencer :-). Various structures for implementing schedulers have been extensively studied, and heaps are good for this, as they are reasonably speedy, the speed is almost constant, and the worst case is not much different than the average case. However, there are other representations which are more efficient overall, yet the worst cases might be terrible. Heaps are also very useful in big disk sorts. You most probably all know that a big sort implies producing "runs" (which are pre-sorted sequences, which size is usually related to the amount of CPU memory), followed by a merging passes for these runs, which merging is often very cleverly organised[1]. It is very important that the initial sort produces the longest runs possible. Tournaments are a good way to that. If, using all the memory available to hold a tournament, you replace and percolate items that happen to fit the current run, you'll produce runs which are twice the size of the memory for random input, and much better for input fuzzily ordered. Moreover, if you output the 0'th item on disk and get an input which may not fit in the current tournament (because the value "wins" over the last output value), it cannot fit in the heap, so the size of the heap decreases. The freed memory could be cleverly reused immediately for progressively building a second heap, which grows at exactly the same rate the first heap is melting. When the first heap completely vanishes, you switch heaps and start a new run. Clever and quite effective! In a word, heaps are useful memory structures to know. I use them in a few applications, and I think it is good to keep a `heap' module around. :-) -------------------- [1] The disk balancing algorithms which are current, nowadays, are more annoying than clever, and this is a consequence of the seeking capabilities of the disks. On devices which cannot seek, like big tape drives, the story was quite different, and one had to be very clever to ensure (far in advance) that each tape movement will be the most effective possible (that is, will best participate at "progressing" the merge). Some tapes were even able to read backwards, and this was also used to avoid the rewinding time. Believe me, real good tape sorts were quite spectacular to watch! From all times, sorting has always been a Great Art! :-) close() Close the log file, preventing additional records from being read.fileno() -> file descriptor Returns the file descriptor for the log file, if open. Raises ValueError if the log file is closed.addinfo(key, value) Insert an ADD_INFO record into the log.close() Shut down this profiler and close the log files, even if its active.runcall(callable[, args[, kw]]) -> callable() Profile a specific function call, returning the result of that call.runcode(code, globals[, locals]) Execute a code object while collecting profile data. If locals is omitted, globals is used for the locals as well.start() Install this profiler for the current thread.stop() Remove this profiler from the current thread.p@dd(x@q8pqhrH`eP(D(8(0fHigh-performance profiler object. Methods: close(): Stop the profiler and close the log files. fileno(): Returns the file descriptor of the log file. runcall(): Run a single function call with profiling enabled. runcode(): Execute a code object with profiling enabled. start(): Install the profiler and return. stop(): Remove the profiler. Attributes (read-only): closed: True if the profiler has already been closed. frametimings: True if ENTER/EXIT events collect timing information. lineevents: True if line events are reported to the profiler. linetimings: True if line events collect timing information.8(peR 8[ر[(logreader(filename) --> log-iterator Create a log-reader for the timing information file.a00f\DaR PR `^(Թ0profiler(logfilename[, lineevents[, linetimes]]) -> profiler Create a new profiler object.coverage(logfilename) -> profiler Returns a profiler that doesn't collect any timing information, which is useful in building a coverage analysis tool.resolution() -> (performance-counter-ticks, update-frequency) Return the resolution of the timer provided by the QueryPerformanceCounter() function. The first value is the smallest observed change, and the second is the result of QueryPerformanceFrequency().$v(uȺ PfPgSupport for POSIX locales.(integer,string=None) -> string. Activates/queries locale processing.() -> dict. Returns numeric and monetary locale-specific parameters.string,string -> int. Compares two strings according to the locale.string -> string. Returns a string that behaves for cmp locale-aware.T y8H z@ ~Ƚ8 @$ $$$$$p$d$H$<$$$#$#$#$t#d$T#<$,##"getstats() -> list of profiler_entry objects Return all information collected by the profiler. Each profiler_entry is a tuple-like object with the following attributes: code code object callcount how many times this was called reccallcount how many times called recursively totaltime total time in this entry inlinetime inline time in this entry (not in subcalls) calls details of the calls The calls attribute is either None or a list of profiler_subentry objects: code called code object callcount how many times this is called reccallcount how many times this is called recursively totaltime total time spent in this call inlinetime inline time (not in further subcalls) enable(subcalls=True, builtins=True) Start collecting profiling information. If 'subcalls' is True, also records for each function statistics separated according to its current caller. If 'builtins' is True, records the time spent in built-in functions separately from their caller. ""disable() Stop collecting profiling information. clear() Clear all profiling information collected so far. """""@" H"t"`Profiler(custom_timer=None, time_unit=None, subcalls=True, builtins=True) Builds a profiler object using the specified timer function. The default timer is a fast built-in one based on real time. For custom timer functions returning integers, time_unit can be a float specifying a scale (i.e. how long each integer unit is, in seconds). "(HЏD PE l ߰'p'h' 8','Ж&&P&&@`&T&p&Random() -> create a random number generator with its own internal state.& R xPl Module implements the Mersenne Twister random number generator. SRE 2.2.2 Copyright (c) 1997-2002 by Secret Labs AB   !"#$%&'()*+,-./0123456789:;<=>?@abcdefghijklmnopqrstuvwxyz[\]^_`abcdefghijklmnopqrstuvwxyz{|}~))))))x)))x)l)d) \)d) \)match(string[, pos[, endpos]]) --> match object or None. Matches zero or more characters at the beginning of the stringsearch(string[, pos[, endpos]]) --> match object or None. Scan through string looking for a match, and return a corresponding MatchObject instance. Return None if no position in the string matches.split(string[, maxsplit = 0]) --> list. Split string by the occurrences of pattern.findall(string[, pos[, endpos]]) --> list. Return a list of all non-overlapping matches of pattern in string.finditer(string[, pos[, endpos]]) --> iterator. Return an iterator over all non-overlapping matches for the RE pattern in string. For each match, the iterator returns a match object.sub(repl, string[, count = 0]) --> newstring Return the string obtained by replacing the leftmost non-overlapping occurrences of pattern in string by the replacement repl.subn(repl, string[, count = 0]) --> (newstring, number of subs) Return the tuple (new_string, number_of_subs_made) found by replacing the leftmost non-overlapping occurrences of pattern with the replacement repl.Compiled regular expression objectsT)PL)0PH)@)`x8) 0)0$))))(,P @\ (((@h(`(0((())(,T)L)(hP(|(0p(Pxb`Bcsph`Hi0I@0l`pLpqQ f`d PP xb B@ csphp H@ ip I@ lp L@ q  Q  f ` d@  xb`Bcsph@ `H i@ `I l@ `L q Q`f0d,S.unpack(str) -> (v1, v2, ...) Return tuple containing values unpacked according to this Struct's format. Requires len(str) == self.size. See struct.__doc__ for more on format strings.S.unpack_from(buffer[, offset]) -> (v1, v2, ...) Return tuple containing values unpacked according to this Struct's format. Unlike unpack, unpack_from can unpack values from any object supporting the buffer API, not just str. Requires len(buffer[offset:]) >= self.size. See struct.__doc__ for more on format strings.,,p,S.pack(v1, v2, ...) -> string Return a string containing values v1, v2, ... packed according to this Struct's format. See struct.__doc__ for more on format strings.S.pack_into(buffer, offset, v1, v2, ...) Pack the values v1, v2, ... according to this Struct's format, write the packed bytes into the writable buffer buf starting at offset. Note that the offset is not an optional argument. See struct.__doc__ for more on format strings.h,\, hT,pH,@pCompiled struct object,0,(,,,R 0U  D l 1@1p1 21111x1P#d1%P1@&<1&01 '1P'h4T4L4p*84(4 getweakrefcount(object) -- return the number of weak references to 'object'.getweakrefs(object) -- return a list of all weak reference objects that point to 'object'.proxy(object[, callback]) -- create a proxy object that weakly references 'object'. 'callback', if given, is called with a reference to the proxy when 'object' is about to be finalized.4*4 +4+HObject is not a handleThis module provides access to the Windows registry API. Functions: CloseKey() - Closes a registry key. ConnectRegistry() - Establishes a connection to a predefined registry handle on another computer. CreateKey() - Creates the specified key, or opens it if it already exists. DeleteKey() - Deletes the specified key. DeleteValue() - Removes a named value from the specified registry key. EnumKey() - Enumerates subkeys of the specified open registry key. EnumValue() - Enumerates values of the specified open registry key. FlushKey() - Writes all the attributes of the specified key to the registry. LoadKey() - Creates a subkey under HKEY_USER or HKEY_LOCAL_MACHINE and stores registration information from a specified file into that subkey. OpenKey() - Alias for OpenKeyEx() - Opens the specified key. QueryValue() - Retrieves the value associated with the unnamed value for a specified key in the registry. QueryValueEx() - Retrieves the type and data for a specified value name associated with an open registry key. QueryInfoKey() - Returns information about the specified key. SaveKey() - Saves the specified key, and all its subkeys a file. SetValue() - Associates a value with a specified key. SetValueEx() - Stores data in the value field of an open registry key. Special objects: HKEYType -- type object for HKEY objects error -- exception raised for Win32 errors Integer constants: Many constants are defined - see the documentation for each function to see what constants are used, and where.CloseKey(hkey) - Closes a previously opened registry key. The hkey argument specifies a previously opened key. Note that if the key is not closed using this method, it will be closed when the hkey object is destroyed by Python.key = ConnectRegistry(computer_name, key) - Establishes a connection to a predefined registry handle on another computer. computer_name is the name of the remote computer, of the form \\computername. If None, the local computer is used. key is the predefined handle to connect to. The return value is the handle of the opened key. If the function fails, an EnvironmentError exception is raised.key = CreateKey(key, sub_key) - Creates or opens the specified key. key is an already open key, or one of the predefined HKEY_* constants sub_key is a string that names the key this method opens or creates. If key is one of the predefined keys, sub_key may be None. In that case, the handle returned is the same key handle passed in to the function. If the key already exists, this function opens the existing key The return value is the handle of the opened key. If the function fails, an exception is raised.DeleteKey(key, sub_key) - Deletes the specified key. key is an already open key, or any one of the predefined HKEY_* constants. sub_key is a string that must be a subkey of the key identified by the key parameter. This value must not be None, and the key may not have subkeys. This method can not delete keys with subkeys. If the method succeeds, the entire key, including all of its values, is removed. If the method fails, an EnvironmentError exception is raised.DeleteValue(key, value) - Removes a named value from a registry key. key is an already open key, or any one of the predefined HKEY_* constants. value is a string that identifies the value to remove.string = EnumKey(key, index) - Enumerates subkeys of an open registry key. key is an already open key, or any one of the predefined HKEY_* constants. index is an integer that identifies the index of the key to retrieve. The function retrieves the name of one subkey each time it is called. It is typically called repeatedly until an EnvironmentError exception is raised, indicating no more values are available.tuple = EnumValue(key, index) - Enumerates values of an open registry key. key is an already open key, or any one of the predefined HKEY_* constants. index is an integer that identifies the index of the value to retrieve. The function retrieves the name of one subkey each time it is called. It is typically called repeatedly, until an EnvironmentError exception is raised, indicating no more values. The result is a tuple of 3 items: value_name is a string that identifies the value. value_data is an object that holds the value data, and whose type depends on the underlying registry type. data_type is an integer that identifies the type of the value data.FlushKey(key) - Writes all the attributes of a key to the registry. key is an already open key, or any one of the predefined HKEY_* constants. It is not necessary to call RegFlushKey to change a key. Registry changes are flushed to disk by the registry using its lazy flusher. Registry changes are also flushed to disk at system shutdown. Unlike CloseKey(), the FlushKey() method returns only when all the data has been written to the registry. An application should only call FlushKey() if it requires absolute certainty that registry changes are on disk. If you don't know whether a FlushKey() call is required, it probably isn't.LoadKey(key, sub_key, file_name) - Creates a subkey under the specified key and stores registration information from a specified file into that subkey. key is an already open key, or any one of the predefined HKEY_* constants. sub_key is a string that identifies the sub_key to load file_name is the name of the file to load registry data from. This file must have been created with the SaveKey() function. Under the file allocation table (FAT) file system, the filename may not have an extension. A call to LoadKey() fails if the calling process does not have the SE_RESTORE_PRIVILEGE privilege. If key is a handle returned by ConnectRegistry(), then the path specified in fileName is relative to the remote computer. The docs imply key must be in the HKEY_USER or HKEY_LOCAL_MACHINE treekey = OpenKey(key, sub_key, res = 0, sam = KEY_READ) - Opens the specified key. key is an already open key, or any one of the predefined HKEY_* constants. sub_key is a string that identifies the sub_key to open res is a reserved integer, and must be zero. Default is zero. sam is an integer that specifies an access mask that describes the desired security access for the key. Default is KEY_READ The result is a new handle to the specified key If the function fails, an EnvironmentError exception is raised.See OpenKey()tuple = QueryInfoKey(key) - Returns information about a key. key is an already open key, or any one of the predefined HKEY_* constants. The result is a tuple of 3 items:An integer that identifies the number of sub keys this key has. An integer that identifies the number of values this key has. A long integer that identifies when the key was last modified (if available) as 100's of nanoseconds since Jan 1, 1600.string = QueryValue(key, sub_key) - retrieves the unnamed value for a key. key is an already open key, or any one of the predefined HKEY_* constants. sub_key is a string that holds the name of the subkey with which the value is associated. If this parameter is None or empty, the function retrieves the value set by the SetValue() method for the key identified by key. Values in the registry have name, type, and data components. This method retrieves the data for a key's first value that has a NULL name. But the underlying API call doesn't return the type, Lame Lame Lame, DONT USE THIS!!!value,type_id = QueryValueEx(key, value_name) - Retrieves the type and data for a specified value name associated with an open registry key. key is an already open key, or any one of the predefined HKEY_* constants. value_name is a string indicating the value to querySaveKey(key, file_name) - Saves the specified key, and all its subkeys to the specified file. key is an already open key, or any one of the predefined HKEY_* constants. file_name is the name of the file to save registry data to. This file cannot already exist. If this filename includes an extension, it cannot be used on file allocation table (FAT) file systems by the LoadKey(), ReplaceKey() or RestoreKey() methods. If key represents a key on a remote computer, the path described by file_name is relative to the remote computer. The caller of this method must possess the SeBackupPrivilege security privilege. This function passes NULL for security_attributes to the API.SetValue(key, sub_key, type, value) - Associates a value with a specified key. key is an already open key, or any one of the predefined HKEY_* constants. sub_key is a string that names the subkey with which the value is associated. type is an integer that specifies the type of the data. Currently this must be REG_SZ, meaning only strings are supported. value is a string that specifies the new value. If the key specified by the sub_key parameter does not exist, the SetValue function creates it. Value lengths are limited by available memory. Long values (more than 2048 bytes) should be stored as files with the filenames stored in the configuration registry. This helps the registry perform efficiently. The key identified by the key parameter must have been opened with KEY_SET_VALUE access.SetValueEx(key, value_name, reserved, type, value) - Stores data in the value field of an open registry key. key is an already open key, or any one of the predefined HKEY_* constants. value_name is a string containing the name of the value to set, or None type is an integer that specifies the type of the data. This should be one of: REG_BINARY -- Binary data in any form. REG_DWORD -- A 32-bit number. REG_DWORD_LITTLE_ENDIAN -- A 32-bit number in little-endian format. REG_DWORD_BIG_ENDIAN -- A 32-bit number in big-endian format. REG_EXPAND_SZ -- A null-terminated string that contains unexpanded references to environment variables (for example, %PATH%). REG_LINK -- A Unicode symbolic link. REG_MULTI_SZ -- An sequence of null-terminated strings, terminated by two null characters. Note that Python handles this termination automatically. REG_NONE -- No defined value type. REG_RESOURCE_LIST -- A device-driver resource list. REG_SZ -- A null-terminated string. reserved can be anything - zero is always passed to the API. value is a string that specifies the new value. This method can also set additional value and type information for the specified key. The key identified by the key parameter must have been opened with KEY_SET_VALUE access. To open the key, use the CreateKeyEx() or OpenKeyEx() methods. Value lengths are limited by available memory. Long values (more than 2048 bytes) should be stored as files with the filenames stored in the configuration registry. This helps the registry perform efficiently.PyHKEY Object - A Python object, representing a win32 registry key. This object wraps a Windows HKEY object, automatically closing it when the object is destroyed. To guarantee cleanup, you can call either the Close() method on the PyHKEY, or the CloseKey() method. All functions which accept a handle object also accept an integer - however, use of the handle object is encouraged. Functions: Close() - Closes the underlying handle. Detach() - Returns the integer Win32 handle, detaching it from the object Properties: handle - The integer Win32 handle. Operations: __nonzero__ - Handles with an open object return true, otherwise false. __int__ - Converting a handle to an integer returns the Win32 handle. __cmp__ - Handle objects are compared using the handle value.key.Close() - Closes the underlying Windows handle. If the handle is already closed, no error is raised.int = key.Detach() - Detaches the Windows handle from the handle object. The result is the value of the handle before it is detached. If the handle is already detached, this will return zero. After calling this function, the handle is effectively invalidated, but the handle is not closed. You would call this function when you need the underlying win32 handle to exist beyond the lifetime of the handle object. On 64 bit windows, the result of this function is a long integer5,,,,,,,p,p,p,,p,,,,,,-p,p,p,p,5,- .-X-p- 5 1G1-p565657 58(5p8595:h5p;|5<t5<h5<\50>`L5@?<5`=45p@(5Ax5BcbPB u`hHPpiIPpl @LfPpdЋcopy(array) Return a copy of the array.count(x) Return number of occurences of x in the array.index(x) Return index of first occurence of x in the array.remove(x) Remove the first occurence of x in the array.pop([i]) Return the i-th element and delete it from the array. i defaults to -1.extend(array or iterable) Append items to the end of the array.insert(i,x) Insert a new item x into the array before position i.buffer_info() -> (address, length) Return a tuple (address, length) giving the current memory address and the length in items of the buffer used to hold array's contents The length should be multiplied by the itemsize attribute to calculate the buffer length in bytes.append(x) Append new value x to the end of the array.byteswap() Byteswap all items of the array. If the items in the array are not 1, 2, 4, or 8 bytes in size, RuntimeError is raised.Return state information for pickling.reverse() Reverse the order of the items in the array.fromfile(f, n) Read n objects from the file object f and append them to the end of the array. Also called as read.tofile(f) Write all items (as machine values) to the file object f. Also called as write.fromlist(list) Append items to array from list.tolist() -> list Convert array to an ordinary list with the same items.fromstring(string) Appends items from the string, interpreting it as an array of machine values,as if it had been read from a file using the fromfile() method).tostring() -> string Convert the array to an array of machine values and return the string representation.fromunicode(ustr) Extends this array with data from the unicode string ustr. The array must be a type 'u' array; otherwise a ValueError is raised. Use array.fromstring(ustr.decode(...)) to append Unicode data to an array of some other type.tounicode() -> unicode Convert the array to a unicode string. The array must be a type 'u' array; otherwise a ValueError is raised. Use array.tostring().decode() to obtain a unicode string from an array of some other type.F FF@\FTFHF` array Return a new array whose items are restricted by typecode, and initialized from the optional initializer value, which must be a list, string. or iterable over elements of the appropriate type. Arrays represent basic values and behave very much like lists, except the type of objects stored in them is constrained. Methods: append() -- append a new item to the end of the array buffer_info() -- return information giving the current memory info byteswap() -- byteswap all the items of the array count() -- return number of occurences of an object extend() -- extend array by appending multiple elements from an iterable fromfile() -- read items from a file object fromlist() -- append items from the list fromstring() -- append items from the string index() -- return index of first occurence of an object insert() -- insert a new item into the array at a provided position pop() -- remove and return item (default last) read() -- DEPRECATED, use fromfile() remove() -- remove first occurence of an object reverse() -- reverse the order of the items in the array tofile() -- write all items to a file object tolist() -- return the array converted to an ordinary list tostring() -- return the array converted to a string write() -- DEPRECATED, use tofile() Attributes: typecode -- the typecode character used to create the array itemsize -- the length in bytes of one array item Ep`R 8("DD l EPR AR  ??ÄńDŽɄ˄̈́τфӄՄׄلۄ݄DDDDDDDD$d$d$d$d4Tt4Tt ,|<|:|8|6|4|2|0|.|,|*|(|&|$|"| << < < < < < <\\\\lL, lL, tdTD4$xph`XPH@80( @@@@@@@@˨(8hxHX(8hxHX ` ` ` `Pp0Pp0 @ @ @ @ @@ @ @ VR^ZFBNJvr~zfbnj+)/-#!'%;9?=3175XHxh8(XHxh8(` ` ` ` 0pP0pP "%)-27<BIPXakv3Qs Vl$V LLT!%(,[1K6;ADH~OqW/`ibt`UXUTU@LU DU @U08U 0U $U UUU UU TT"T!TT%T#TTTEpT}}}}}}}}}}~}}~}}}}}}}}}}}}}}}}}}} }} }}}}}} !"#$}%&'()*+},-./}}}}0123456}789:;<}}=>?}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}!"#$%&'()*+,-012345689@ABCDEFGHIJKLMNPQRSTUVXYZ[`abcdefhijklmpqr>?456789:;<=  !"#$%&'()*+,-./0123ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/!B c0@P`p)Jk1s2R"RBrb9{ZӜb$C4 dtDTjK( ōS6r&0vfVF[z8׼HXhx@a(#8َHi +ZJzjqP 3:*˿yX;l|L\",<` A* hI~n^N>2.Qp:Yxʱ -No0 P%@Fpg`ڳ=^"25BRwbVr˥nO, 4$ftGd$TDۧ_~<&6WfvvF4VLm/ș鉊DXeHx'h8(}\?؛uJTZ7jz *:.lMͪɍ&|ld\EL<, >]|ߛُn6~UNt^.>(ascii) -> bin. Decode a line of uuencoded data(bin) -> ascii. Uuencode line of data(ascii) -> bin. Decode a line of base64 data(bin) -> ascii. Base64-code line of dataascii -> bin, done. Decode .hqx codingBinhex RLE-code binary dataEncode .hqx dataDecode hexbin RLE-coded string(data, oldcrc) -> newcrc. Compute hqx CRC incrementally(data, oldcrc = 0) -> newcrc. Compute CRC-32 incrementally0w,aQ mjp5c飕d2yҗ+L |~-d jHqA}mQDžӃVlkdzbeO\lcc=  n;^iLA`rqgjm Zjz  ' }Dңhi]Wbgeq6lknv+ӉZzJgo߹ホCՎ`~ѡ8ROggW?K6H+ L J6`zA`Ugn1yiFafo%6hRw G "/&U;( Z+j\1е,[d&c윣ju m ?6grWJz+{8 Ғ |! ӆBhn[&wowGZpj;f\ eibkaElx TN³9a&g`MGiIwn>JjѮZf @;7SŞϲG0򽽊º0S$6к)WTg#.zfJah]+o*7 Z-b2a_hex(data) -> s; Hexadecimal representation of binary data. This function is also available as "hexlify()".a2b_hex(hexstr) -> s; Binary data of hexadecimal representation. hexstr must contain an even number of hex digits (upper or lower case). This function is also available as "unhexlify()"  Decode a string of qp-encoded dataYYb2a_qp(data, quotetabs=0, istext=1, header=0) -> s; Encode a string using quoted-printable encoding. On encoding, when istext is set, newlines are not encoded, and white space at end of lines is. When istext is not set, \r and \n (CR/LF) are both encoded. When quotetabs is set, space and tabs are encoded.YYYYY(4|Y0*4pY+5dY-@5\Y.l5TY`15LY6X:DY7: module Import a module. The globals are only used to determine the context; they are not modified. The locals are currently unused. The fromlist should be a list of names to emulate ``from name import ...'', or an empty list to emulate ``import name''. When importing a module from a package, note that __import__('A.B', ...) returns package A when fromlist is empty, but its submodule B when fromlist is not empty. Level is used to determine whether to perform absolute or relative imports. -1 is the original strategy of attempting both absolute and relative imports, 0 is absolute, a positive number is the number of parent directories to search relative to the current module.abs(number) -> number Return the absolute value of the argument.all(iterable) -> bool Return True if bool(x) is True for all values x in the iterable.any(iterable) -> bool Return True if bool(x) is True for any x in the iterable.apply(object[, args[, kwargs]]) -> value Call a callable object with positional arguments taken from the tuple args, and keyword arguments taken from the optional dictionary kwargs. Note that classes are callable, as are instances with a __call__() method. Deprecated since release 2.3. Instead, use the extended call syntax: function(*args, **keywords).callable(object) -> bool Return whether the object is callable (i.e., some kind of function). Note that classes are callable, as are instances with a __call__() method.filter(function or None, sequence) -> list, tuple, or string Return those items of sequence for which function(item) is true. If function is None, return the items that are true. If sequence is a tuple or string, return the same type, else return a list.chr(i) -> character Return a string of one character with ordinal i; 0 <= i < 256.unichr(i) -> Unicode character Return a Unicode string of one character with ordinal i; 0 <= i <= 0x10ffff.cmp(x, y) -> integer Return negative if xy.coerce(x, y) -> (x1, y1) Return a tuple consisting of the two numeric arguments converted to a common type, using the same rules as used by arithmetic operations. If coercion is not possible, raise TypeError.compile(source, filename, mode[, flags[, dont_inherit]]) -> code object Compile the source string (a Python module, statement or expression) into a code object that can be executed by the exec statement or eval(). The filename will be used for run-time error messages. The mode must be 'exec' to compile a module, 'single' to compile a single (interactive) statement, or 'eval' to compile an expression. The flags argument, if present, controls which future statements influence the compilation of the code. The dont_inherit argument, if non-zero, stops the compilation inheriting the effects of any future statements in effect in the code calling compile; if absent or zero these statements do influence the compilation, in addition to any features explicitly specified.dir([object]) -> list of strings Return an alphabetized list of names comprising (some of) the attributes of the given object, and of attributes reachable from it: No argument: the names in the current scope. Module object: the module attributes. Type or class object: its attributes, and recursively the attributes of its bases. Otherwise: its attributes, its class's attributes, and recursively the attributes of its class's base classes.divmod(x, y) -> (div, mod) Return the tuple ((x-x%y)/y, x%y). Invariant: div*y + mod == x.eval(source[, globals[, locals]]) -> value Evaluate the source in the context of globals and locals. The source may be a string representing a Python expression or a code object as returned by compile(). The globals must be a dictionary and locals can be any mapping, defaulting to the current globals and locals. If only globals is given, locals defaults to it. execfile(filename[, globals[, locals]]) Read and execute a Python script from a file. The globals and locals are dictionaries, defaulting to the current globals and locals. If only globals is given, locals defaults to it.getattr(object, name[, default]) -> value Get a named attribute from an object; getattr(x, 'y') is equivalent to x.y. When a default argument is given, it is returned when the attribute doesn't exist; without it, an exception is raised in that case.globals() -> dictionary Return the dictionary containing the current scope's global variables.hasattr(object, name) -> bool Return whether the object has an attribute with the given name. (This is done by calling getattr(object, name) and catching exceptions.)id(object) -> integer Return the identity of an object. This is guaranteed to be unique among simultaneously existing objects. (Hint: it's the object's memory address.)argument %d to map() must support iterationmap(function, sequence[, sequence, ...]) -> list Return a list of the results of applying the function to the items of the argument sequence(s). If more than one sequence is given, the function is called with an argument list consisting of the corresponding item of each sequence, substituting None for missing values when not all sequences have the same length. If the function is None, return a list of the items of the sequence (or a list of tuples if more than one sequence).setattr(object, name, value) Set a named attribute on an object; setattr(x, 'y', v) is equivalent to ``x.y = v''.delattr(object, name) Delete a named attribute on an object; delattr(x, 'y') is equivalent to ``del x.y''.hash(object) -> integer Return a hash value for the object. Two objects with the same value have the same hash value. The reverse is not necessarily true, but likely.hex(number) -> string Return the hexadecimal representation of an integer or long integer.input([prompt]) -> value Equivalent to eval(raw_input(prompt)).intern(string) -> string ``Intern'' the given string. This enters the string in the (global) table of interned strings whose purpose is to speed up dictionary lookups. Return the string itself or the previously interned string object with the same value.iter(collection) -> iterator iter(callable, sentinel) -> iterator Get an iterator from an object. In the first form, the argument must supply its own iterator, or be a sequence. In the second form, the callable is called until it returns the sentinel.len(object) -> integer Return the number of items of a sequence or mapping.locals() -> dictionary Update and return a dictionary containing the current scope's local variables.min(iterable[, key=func]) -> value min(a, b, c, ...[, key=func]) -> value With a single iterable argument, return its smallest item. With two or more arguments, return the smallest argument.max(iterable[, key=func]) -> value max(a, b, c, ...[, key=func]) -> value With a single iterable argument, return its largest item. With two or more arguments, return the largest argument.oct(number) -> string Return the octal representation of an integer or long integer.open(name[, mode[, buffering]]) -> file object Open a file using the file() type, returns a file object.ord(c) -> integer Return the integer ordinal of a one-character string.pow(x, y[, z]) -> number With two arguments, equivalent to x**y. With three arguments, equivalent to (x**y) % z, but may be more efficient (e.g. for longs).range([start,] stop[, step]) -> list of integers Return a list containing an arithmetic progression of integers. range(i, j) returns [i, i+1, i+2, ..., j-1]; start (!) defaults to 0. When step is given, it specifies the increment (or decrement). For example, range(4) returns [0, 1, 2, 3]. The end point is omitted! These are exactly the valid indices for a list of 4 elements.raw_input([prompt]) -> string Read a string from standard input. The trailing newline is stripped. If the user hits EOF (Unix: Ctl-D, Windows: Ctl-Z+Return), raise EOFError. On Unix, GNU readline is used if enabled. The prompt string, if given, is printed without a trailing newline before reading.reduce(function, sequence[, initial]) -> value Apply a function of two arguments cumulatively to the items of a sequence, from left to right, so as to reduce the sequence to a single value. For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates ((((1+2)+3)+4)+5). If initial is present, it is placed before the items of the sequence in the calculation, and serves as a default when the sequence is empty.reload(module) -> module Reload the module. The module must have been successfully imported before.repr(object) -> string Return the canonical string representation of the object. For most object types, eval(repr(object)) == object.\\round(number[, ndigits]) -> floating point number Round a number to a given precision in decimal digits (default 0 digits). This always returns a floating point number. Precision may be negative.\\\Esorted(iterable, cmp=None, key=None, reverse=False) --> new sorted listvars([object]) -> dictionary Without arguments, equivalent to locals(). With an argument, equivalent to object.__dict__.sum(sequence, start=0) -> value Returns the sum of a sequence of numbers (NOT strings) plus the value of parameter 'start'. When the sequence is empty, returns start.isinstance(object, class-or-type-or-tuple) -> bool Return whether an object is an instance of a class or of a subclass thereof. With a type as second argument, return whether that is the object's type. The form using a tuple, isinstance(x, (A, B, ...)), is a shortcut for isinstance(x, A) or isinstance(x, B) or ... (etc.).issubclass(C, B) -> bool Return whether class C is a subclass (i.e., a derived class) of class B. When using a tuple as the second argument issubclass(X, (A, B, ...)), is a shortcut for issubclass(X, A) or issubclass(X, B) or ... (etc.).zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)] Return a list of tuples, where each tuple contains the i-th element from each of the argument sequences. The returned list is truncated in length to the length of the shortest argument sequence.\@h@\0A`C\@AC\BD\BXD\CE\DG\DHH\EH(EpI\R0V\`GxL\G@N\GN|\JPt\vxFl\PLP]@MQd\PMPR\\RVX\SPWT\@NRL\zWD\SW8\he,\if$\SY \TZ]TPZ\PNS`UWx[\pWZ\W8\ \@X\\PX]\YP][^][0`p_[pb`[ dHbM0db[@dHc[ RU[e(d[Pgd[pDG[fpd[`igBuilt-in functions, exceptions, and other objects. Noteworthy: None is the `nil' object; Ellipsis represents `...' in slices.9bool(x) -> bool Returns True when the argument x is true, False otherwise. The builtins True and False are the only two instances of the class bool. The class bool is a subclass of the class int, and cannot be subclassed.{`| |e z{Xm{xlf{mmbuffer(object [, offset[, size]]) Create a new buffer object which references the given object. The buffer will reference a slice of the target object from the start of the object (or at the specified offset). The slice will extend to the end of the target object (or with the specified size).`0P@00p0, @po`R  pnЀh@h pR Apddclassobj(name, bases, dict) Create a class object. The name must be a string; the second argument a tuple of classes, and the third a dictionary.]shes P@Aq0instance(class[, dict]) Create an instance without calling its __init__() method. The class must be a classic class. If present, dict must be a dictionary or None.    !"#$&P@ @''(`(P*`p *+++P,00 0000)sp0ttsp@APsp,-`slsds,s$s r(" instancemethod(function, instance, class) Create an instance method object.r    0 0U Avuu@ ????acos(x) Return the arc cosine of x.acosh(x) Return the hyperbolic arccosine of x.asin(x) Return the arc sine of x.asinh(x) Return the hyperbolic arc sine of x.atan(x) Return the arc tangent of x.atanh(x) Return the hyperbolic arc tangent of x.cos(x) nReturn the cosine of x.cosh(x) nReturn the hyperbolic cosine of x.exp(x) Return the exponential value e**x.log10(x) Return the base-10 logarithm of x.sin(x) Return the sine of x.sinh(x) Return the hyperbolic sine of x.sqrt(x) Return the square root of x.tan(x) Return the tangent of x.tanh(x) Return the hyperbolic tangent of x.log(x[, base]) -> the logarithm of x to the given base. If the base not specified, returns the natural logarithm (base e) of x.This module is always available. It provides access to mathematical functions for complex numbers.~AXw~Aw~Aw~Bw~0Bxx~PB,xt~3`xl~4xh~04xd~ @y\~P4xX~p4yP~4(yH~4TyD~4|y<~4yC objects to be exported from one extension module to another C objects are used for communication between extension modules. They provide a way for an extension module to export a C interface to other extension modules, so that extension modules can use the Python import mechanism to link to one another.~PD{0123456789abcdef0MMxh MT80M$ @M|p `TL@4 ($(,048<code(argcount, nlocals, stacksize, flags, codestring, constants, names, varnames, filename, name, firstlineno, lnotab[, freevars[, cellvars]]) Create a code object. Not for the faint of heart.$Dp[`]\@^R P~YAdd an element to the right side of the deque.Add an element to the left side of the deque.Remove and return the rightmost element.Remove and return the leftmost element.Extend the right side of the deque with elements from the iterableExtend the left side of the deque with elements from the iterableRotate the deque n steps to the right (default n=1). If n is negative, rotates left.D.remove(value) -- remove first occurrence of value.Remove all elements from the deque.Return a shallow copy of a deque.Return state information for pickling.fgiD.__reversed__() -- return a reverse iterator over the dequeTFaa@"i)j 4F@cȁPdE@bpbEk0Ef0q`fXdeque(iterable) --> deque object Build an ordered collection accessible from endpoints only.x$jPlkXjR E`jgpm @poD p`0:Private method returning an estimate of len(list(it)).B qhpR R pPpR R pq__missing__(key) # Called by __getitem__ for missing key; pseudo-code: if self.default_factory is None: raise KeyError((key,)) self[key] = value = self.default_factory() return value D.copy() -> a shallow copy of D.Dq<`rH)`rHEr0,|defaultdict(default_factory) --> dict with default factory The default factory is called without arguments to produce a new value when a key is not present, in __getitem__ only. A defaultdict compares equal to a dict with the same items. 0s`ssR EttpuD 0:High performance data structures. - deque: ordered collection accessible from endpoints only - defaultdict: dict subclass with a default value factory ?@܌܌complex(real[, imag]) -> complex number Create a complex number from a real part and an optional imaginary part. This is equivalent to (real + imag*1j) where imag defaults to 0.  p   p  pe@`  x@  R pHxD l \M< X0([ ?~54Y06( P1 TN  0   O P   p ܐ АȐ` "Ђ4@(<14+0hh(8:p[%$u  L+pp <C1 PPt08pB 0@L`` 8Plh0\H%XLx4*C implementation and optimization of the Python pickle module.( cNLSD[Vt01)aesuiobcPQRb.ЧPD::ܘTeИȘ(,pCCC@DpDDObjects that know how to pickle objects tL@R 0U EܑAB<xlPTL`( TeИ ИObjects that know how to unpickle PЁЄE @phШЕl \T`@xlDA simple fast partial StringIO replacement. This module provides a simple useful replacement for the StringIO module that is written in C. It does not provide the full generality of StringIO, but it provides enough for most applications and is especially useful in conjunction with the pickle module. Usage: from cStringIO import StringIO an_output_stream=StringIO() an_output_stream.write(some_stuff) ... value=an_output_stream.getvalue() an_input_stream=StringIO(a_string) spam=an_input_stream.readline() spam=an_input_stream.read(5) an_input_stream.seek(0) # OK, start over spam=an_input_stream.read() # and read it all If someone else wants to provide a more complete implementation, go for it. :-) cStringIO.c,v 1.29 1999/06/15 14:10:27 jim Exp flush(): does nothing.0getvalue([use_pos]) -- Get the string value. If use_pos is specified and is a true value, then the string returned will include only the text up to the current file position. isatty(): always returns 0read([s]) -- Read s characters, or the rest of the stringreadline() -- Read one linereadlines() -- Read all linesreset() -- Reset the file position to the beginningtell() -- get the current position.truncate(): truncate the file at the current position.seek(position) -- set the current position seek(position, mode) -- mode 0: absolute; 1: relative; 2: relative to EOFwrite(s) -- Write a string to the file Note (hack:) writing None resets the bufferclose(): explicitly release resources held.writelines(sequence_of_strings) -> None. Write the strings to the file. Note that newlines are not added. The sequence can be any iterable object producing strings. This is equivalent to calling write() for each string.X4Щ0ȗxEPp И |@pd@thH \PSimple type for output to strings.R `X4Щ0ȗxEPp И |@pd0thSimple type for treating strings as input file streams0R pStringIO([s]) -- Return a StringIO-like stream for reading or writingؤ(@h;Zx0N̰Ȱİ|tdTLD<| ,tdįEDifference between two datetime values. P R pؠ||,l@(خ`T0$@dX``x08Epdate(year, month, day) --> date object( R ȣ`  |t HE8Abstract base class for time zone info objects.(R PPE  Pp ,pT0 `t Tx,Etime([hour[, minute[, second[, microsecond[, tzinfo]]]]]) --> a time object All arguments are optional. tzinfo may be None, or an instance of a tzinfo subclass. The remaining arguments may be ints or longs. PR P8  @|   ȩlL8X` $  `$ P hئp tTx lE datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]]) The year, month and day arguments are required. tzinfo may be None, or an instance of a tzinfo subclass. The remaining arguments may be ints or longs. X000`R н`0@@ t ("("("(" p`R APxpp`@R APxԻpR APxܮpR APxPpP(R APx,P(pl (+` t2 ܺ  dX $!< !Ĺ @!!$!R A!!!P # t#("#`""p# #$R A$ش ("property(fget=None, fset=None, fdel=None, doc=None) -> property attribute fget is a function to be used for getting an attribute value, and likewise fset is a function for setting, and fdel a function for del'ing, an attribute. Typical use is to define a managed attribute x: class C(object): def getx(self): return self.__x def setx(self, value): self.__x = value def delx(self): del self.__x x = property(getx, setx, delx, "I'm the 'x' property.")4e`%R E`'&`&&D PE 0:p88 9D.has_key(k) -> True if D has a key k, else FalseD.__contains__(k) -> True if D has a key k, else Falsex.__getitem__(y) <==> x[y]D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None.D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in DD.pop(k[,d]) -> v, remove specified key and return the corresponding value If key is not found, d is returned if given, otherwise KeyError is raisedD.popitem() -> (k, v), remove and return some (key, value) pair as a 2-tuple; but raise KeyError if D is emptyD.keys() -> list of D's keysD.items() -> list of D's (key, value) pairs, as 2-tuplesD.values() -> list of D's valuesD.update(E, **F) -> None. Update D from E and F: for k in E: D[k] = E[k] (if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v. v defaults to None.D.clear() -> None. Remove all items from D.D.copy() -> a shallow copy of DD.iterkeys() -> an iterator over the keys of DD.itervalues() -> an iterator over the values of DD.iteritems() -> an iterator over the (key, value) items of D|@FH8A8Hp@FlFGйEGH+P9 ܺ0:@t29|`P:8"G<Qȼ QX@Q`QL0Jdict() -> new empty dictionary. dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs. dict(seq) -> new dictionary initialized as if via: d = {} for k, v in seq: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)he|34C6JR EؾI JEQQD J0:Private method returning an estimate of len(list(it)).BLԿPLR R L@PLR R pM@PLR R N@70enumerate(iterable) -> iterator for index, value of iterable Return an enumerate object. iterable must be an other object that supports iteration. The enumerate object yields pairs containing a count (from zero) and a value yielded by the iterable argument. enumerate is useful for obtaining an indexed list: (0, seq[0]), (1, seq[1]), (2, seq[2]), ...\eUR E@VR VD 0U0:reversed(sequence) -> reverse iterator over values of the sequence Return a reverse iteratorPrivate method returning an estimate of len(list(it)).BY8 e0XR EpXR XpD pW0:This module makes available standard errno system symbols. The value of each symbol is the corresponding integer value, e.g., on most systems, errno.ENOENT equals the integer 2. The dictionary errno.errorcode maps numeric codes to symbol names, e.g., errno.errorcode[2] could be the string 'ENOENT'. Symbols that are not relevant to the underlying system are not defined. To map error codes to error messages, use the function os.strerror(), e.g. os.strerror(2) could return 'No such file or directory'.Python's standard exception class hierarchy. Exceptions found here are defined both in the exceptions module and the built-in namespace. It is recommended that user-defined exceptions inherit from Exception. See the documentation for the exception inheritance hierarchy. E w`w x0xP<@xpxXy y uvpvR 0U E vudut uE vu utuE8 vuutuE vuutxuE vuut@uE| vuutP<$lT zE,pzy yt uE vu utuE vuutP<4lXE~< 0||Ep|{`zt 0|Ep|{zt 0|Ep|{ztxP<4lX l$EH @xPt4uE vuutuE vuutHuE vuHut|uE` vuut@uE vuutuE vuuthP<X, $(t\,PPEL0`t0,PE`t,PE`t`uE vuut(uEl vu(utXuE@ vu(ut(uE vuutuE vuutHP<eh( tl$X8(E H@t(EHth(EHt0uEx vuut\uE8 vuutuE vuutuE vuutPuEX vuut@uE vuuttuED vuut,uE vuutpuE vuut8uE vu8ut|uEH vu8ut uE vu8utuE vu8utXduE, vu8ut uE vu8utuEX vu8ut8uE vu8utxreadline([size]) -> next line from the file, as a string. Retain newline. A non-negative size argument limits the maximum number of bytes to return (an incomplete line may be returned then). Return an empty string at EOF.read([size]) -> read at most size bytes, returned as a string. If the size argument is negative or omitted, read until EOF is reached. Notice that when in non-blocking mode, less data than what was requested may be returned, even if no size parameter was given.write(str) -> None. Write string str to file. Note that due to buffering, flush() or close() may be needed before the file on disk reflects the data written.fileno() -> integer "file descriptor". This is needed for lower-level file interfaces, such os.read().seek(offset[, whence]) -> None. Move to new file position. Argument offset is a byte count. Optional argument whence defaults to 0 (offset from start of file, offset should be >= 0); other values are 1 (move relative to current position, positive or negative), and 2 (move relative to end of file, usually negative, although many platforms allow seeking beyond the end of a file). If the file is opened in text mode, only offsets returned by tell() are legal. Use of other offsets causes undefined behavior. Note that not all file objects are seekable.truncate([size]) -> None. Truncate the file to at most size bytes. Size defaults to the current file position, as returned by tell().tell() -> current file position, an integer (may be a long integer).readinto() -> Undocumented. Don't use this; it may go away.readlines([size]) -> list of strings, each a line from the file. Call readline() repeatedly and return a list of the lines so read. The optional size argument, if given, is an approximate bound on the total number of bytes in the lines returned.xreadlines() -> returns self. For backward compatibility. File objects now include the performance optimizations previously implemented in the xreadlines module.writelines(sequence_of_strings) -> None. Write the strings to the file. Note that newlines are not added. The sequence can be any iterable object producing strings. This is equivalent to calling write() for each string.flush() -> None. Flush the internal I/O buffer.close() -> None or (perhaps) an integer. Close the file. Sets data attribute .closed to True. A closed file cannot be used for further I/O operations. close() may be called more than once without error. Some kinds of file objects (for example, opened by popen()) may return an exit status upon closing.isatty() -> true or false. True if the file is connected to a tty device.__enter__() -> self.__exit__(*excinfo) -> None. Closes the file.p@EP H`(h00p`|P0`px h\0X4P(` PPp0] $<0]pfile(name[, mode[, buffering]]) -> file object Open a file. The mode can be 'r', 'w' or 'a' for reading (default), writing or appending. The file will be created if it doesn't exist when opened for writing or appending; it will be truncated when opened for writing. Add a 'b' to the mode for binary files. Add a '+' to the mode to allow simultaneous reading and writing. If the buffering argument is given, 0 means unbuffered, 1 means line buffered, and larger numbers specify the buffer size. Add a 'U' to mode to open the file for input with universal newline support. Any line ending in the input file will be seen as a '\n' in Python. Also, a file so opened gains the attribute 'newlines'; the value for this attribute is one of None (no newline read yet), '\r', '\n', '\r\n' or a tuple containing all the newline types seen. 'U' cannot be combined with 'w' or '+' mode. TeD@pR 0U @  lD l 9float.__getformat__(typestr) -> string You probably don't want to use this function. It exists mainly to be used in Python's test suite. typestr must be 'double' or 'float'. This function returns whichever of 'unknown', 'IEEE, big-endian' or 'IEEE, little-endian' best describes the format of floating point numbers used by the C type named by typestr.float.__setformat__(typestr, fmt) -> None You probably don't want to use this function. It exists mainly to be used in Python's test suite. typestr must be 'double' or 'float'. fmt must be one of 'unknown', 'IEEE, big-endian' or 'IEEE, little-endian', and in addition can only be one of the latter two if it appears to match the underlying C reality. Overrides the automatic determination of C-level floating point type. This affects how floats are converted to and from binary strings.`float(x) -> floating point number Convert a string or number to a floating point number, if possible.0p00P0`LeR PP <,x0h4\PH  8 0<P R 0U A ` X cs dGHdS(sHello world...N((((shello.pys?s@8 h48 $8 h (" t(Pth tfunction(code, globals[, name[, argdefs[, closure]]]) Create a function object from a code object and a dictionary. The optional name string overrides the name from the code object. The optional argdefs tuple specifies the default argument values. The optional closure tuple supplies the bindings for free variables.$]]`XL, @ R 0U A `$ P `! classmethod(function) -> method Convert a function to be a class method. A class method receives the class as implicit first argument, just like an instance method receives the instance. To declare a class method, use this idiom: class C: def f(cls, arg1, arg2, ...): ... f = classmethod(f) It can be called either on the class (e.g. C.f()) or on an instance (e.g. C().f()). The instance is ignored except for its class. If a class method is called for a derived class, the derived class object is passed as the implied first argument. Class methods are different than C++ or Java static methods. If you want those, see the staticmethod builtin.xe !R E !! "p"D PE 0:staticmethod(function) -> method Convert a function to be a static method. A static method does not receive an implicit first argument. To declare a static method, use this idiom: class C: def f(arg1, arg2, ...): ... f = staticmethod(f) It can be called either on the class (e.g. C.f()) or on an instance (e.g. C().f()). The instance is ignored except for its class. Static methods in Python are similar to those found in Java or C++. For a more advanced concept, see the classmethod builtin.d #R EX`####D PE 0:  88 PP enable() -> None Enable automatic garbage collection. disable() -> None Disable automatic garbage collection. isenabled() -> status Returns true if automatic garbage collection is enabled. collect([generation]) -> n With no arguments, run a full collection. The optional argument may be an integer specifying which generation to collect. A ValueError is raised if the generation number is invalid. The number of unreachable objects is returned. set_debug(flags) -> None Set the garbage collection debugging flags. Debugging information is written to sys.stderr. flags is an integer and can have the following bits turned on: DEBUG_STATS - Print statistics during collection. DEBUG_COLLECTABLE - Print collectable objects found. DEBUG_UNCOLLECTABLE - Print unreachable but uncollectable objects found. DEBUG_INSTANCES - Print instance objects. DEBUG_OBJECTS - Print objects other than instances. DEBUG_SAVEALL - Save objects to gc.garbage rather than freeing them. DEBUG_LEAK - Debug leaking programs (everything but STATS). get_debug() -> flags Get the garbage collection debugging flags. set_threshold(threshold0, [threshold1, threshold2]) -> None Sets the collection thresholds. Setting threshold0 to zero disables collection. get_threshold() -> (threshold0, threshold1, threshold2) Return the current collection thresholds get_count() -> (count0, count1, count2) Return the current collection counts get_referrers(*objs) -> list Return the list of objects that directly refer to any of objs.get_referents(*objs) -> list Return the list of objects that are directly referred to by objs.get_objects() -> [...] Return a list of objects tracked by the collector (excluding the list returned). This module provides access to the garbage collector for reference cycles. enable() -- Enable automatic garbage collection. disable() -- Disable automatic garbage collection. isenabled() -- Returns true if automatic collection is enabled. collect() -- Do a full collection right now. get_count() -- Return the current collection counts. set_debug() -- Set debugging flags. get_debug() -- Get debugging flags. set_threshold() -- Set the collection thresholds. get_threshold() -- Return the current the collection thresholds. get_objects() -- Return a list of all objects tracked by the collector. get_referrers() -- Return the list of objects that refer to an object. get_referents() -- Return the list of objects that an object refers to. "2p"233P3p44@4 3@@6058x5send(arg) -> send 'arg' into generator, return next yielded value or raise StopIteration.close(arg) -> raise GeneratorExit inside generator.throw(typ[,val[,tb]]) -> raise exception in generator, return next yielded value or raise StopIteration.`T L< D >=|8:R A:R p@X  =Copyright (c) 2001-2008 Python Software Foundation. All Rights Reserved. Copyright (c) 2000 BeOpen.com. All Rights Reserved. Copyright (c) 1995-2001 Corporation for National Research Initiatives. All Rights Reserved. Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam. All Rights Reserved.c""""# 8#<#D#   #######  `$d$$$$$$$$ h%l%t%x% %%%%&&&& &(&  '(','0'''''( 4(8(@(H(!"#$%&'() (( *+ + ) )) )(),),-./01234567 ))89,*0*<*D*H*P*X*\*d*:;H+L+P+<++=>?@A++B ,$,CX,\,D ,,,+,,E -$-,-4-8-@-D-FG--HI,.0.4.JK K HH LL........Nx/|/// N//00MMh0l0t0O00K11P@1D1H1QRS1111111Th2l2p2x2|2UVWXYZ23[\]H3L3P3T3X3d3h3l3^]044484<4@4H4L4P4_;S ] 55 5$5(5,50585<5@5`ab a] b   b 86<6@6D6L6P6T6X6\6l6p6t6x6cd777777NRh8p8t8e88888fgX9`9d9h9l9iii999::jk::li:::::jm[j]X;`;h;l;p;t;no< <pqD<H<rsp<<<Rt<<uvwxyz{Sr|Sr =<=@=D=}~====(>,>9d>h>>>>>,?8Lt>9@>:8>;0H?<(?= `@>A8?0B8@BA`CB DCDDXEpEdEFXF8GLF8H@ G(I  HJxH8KdILIMXJ,NJOKPK,Q$L8R\LSL # F2I +/ $    !"S%&'()*+,-./1x#tEldXPH@8pO0^5O($%&'(H$ *S),-0.pN@12Q34O67!89":;0 <=A? > GQLOBCDJKMNPRTLT\ T H < 0 $ ` P @      Г   ؍4    jjj    p d xcX pcL @ cc ccccccThis module provides the components needed to build your own __import__ function. Undocumented functions are obsolete.find_module(name, [path]) -> (file, filename, (suffix, mode, type)) Search for a module. If path is omitted or None, search for a built-in, frozen or special module and continue search in sys.path. The module name cannot contain '.'; to search for a submodule of a package, pass the submodule name and the package's __path__.load_module(name, file, filename, (suffix, mode, type)) -> module Load a module, given information returned by find_module(). The module name must include the full package name, if any.get_magic() -> string Return the magic number for .pyc or .pyo files.get_suffixes() -> [(suffix, mode, type), ...] Return a list of (suffix, mode, type) tuples describing the files that find_module() looks for.new_module(name) -> module Create a new module. Do not enter it in sys.modules. The module name must include the full package name, if any.lock_held() -> boolean Return True if the import lock is currently held, else False. On platforms without threads, return False.acquire_lock() -> None Acquires the interpreter's import lock for the current thread. This lock should be used by import hooks to ensure thread-safety when importing modules. On platforms without threads, this function does nothing.release_lock() -> None Release the interpreter's import lock. On platforms without threads, this function does nothing.4 0\(  8^ P^ x] _ @_ `(` a P P   | `l \ P p4  < (  bpPE 9@int(x[, base]) -> integer Convert a string or number to an integer, if possible. A floating point argument will be truncated towards zero (this does not include a string representation of a floating point number!) When converting a string, use the optional base. It is an error to supply a base when converting a non-string. If the argument is outside the integer range a long object will be returned instead. 0 @pP00 @ 0e @`e`R cc@Private method returning an estimate of len(list(it)).BfLR APR pf8R AR @\\groupby(iterable[, keyfunc]) -> create an iterator which returns (key, sub-iterator) grouped by each value of key(value). R EhpR 0:R R @l Data container common to multiple tee objects.tR Aj0:Returns an independent iterator.Iterator wrapped to make it copyable)@kdAk @R k0:tee(iterable, n=2) --> tuple of n independent iterators.cycle(iterable) --> cycle object Return elements from the iterable until it is exhausted. Then repeat the sequence indefinitely.TR Em@R 0:dropwhile(predicate, iterable) --> dropwhile object Drop items from the iterable while predicate(item) is true. Afterwards, return every element until the iterable is exhausted.@R EPn0R p00:takewhile(predicate, iterable) --> takewhile object Return successive entries from an iterable as long as the predicate evaluates to true for each entry.,R Eo R ` 0:islice(iterable, [start,] stop [, step]) --> islice object Return an iterator whose next() method returns selected values from an iterable. If start is specified, will skip all preceding elements; otherwise, start defaults to zero. Step defaults to one. If specified as another value, step determines how many values are skipped between successive calls. Works like a slice() on a list but returns an iterator. R E(qP R p 0:starmap(function, sequence) --> starmap object Return an iterator whose values are returned from the function evaluated with a argument tuple taken from the given sequence. R Es R 0  0:imap(func, *iterables) --> imap object Make an iterator that computes the function using arguments from each of the iterables. Like map() except that it returns an iterator instead of a list and that it stops when the shortest iterable is exhausted instead of filling in None for shorter iterables. R Eu R @  0:chain(*iterables) --> chain object Return a chain object whose .next() method returns elements from the first iterable until it is exhausted, then elements from the next iterable, until all of the iterables are exhausted.R Ev@R ` 0:ifilter(function or None, sequence) --> ifilter object Return those items of sequence for which function(item) is true. If function is None, return the items that are true.`R ExR 0:ifilterfalse(function or None, sequence) --> ifilterfalse object Return those items of sequence for which function(item) is false. If function is None, return the items that are false.PR EzR 0:count([firstval]) --> count object Return a count object whose .next() method returns consecutive integers starting from zero or, if specified, from firstval. l @R {R izip(iter1 [,iter2 [...]]) --> izip object Return a izip object whose .next() method returns a tuple where the i-th element comes from the i-th iterable argument. The .next() method continues until the shortest iterable in the argument sequence is exhausted and then it raises StopIteration. Works like the zip() function but consumes less memory by returning an iterator instead of a list.R E| R ``0:Private method returning an estimate of len(list(it)).B0repeat(element [,times]) -> create an iterator which returns the element for the specified number of times. If not specified, returns the element endlessly.`R E R @h@0:Functional tools for creating and using iterators. Infinite iterators: count([n]) --> n, n+1, n+2, ... cycle(p) --> p0, p1, ... plast, p0, p1, ... repeat(elem [,n]) --> elem, elem, elem, ... endlessly or up to n times Iterators terminating on the shortest input sequence: izip(p, q, ...) --> (p[0], q[0]), (p[1], q[1]), ... ifilter(pred, seq) --> elements of seq where pred(elem) is True ifilterfalse(pred, seq) --> elements of seq where pred(elem) is False islice(seq, [start,] stop [, step]) --> elements from seq[start:stop:step] imap(fun, p, q, ...) --> fun(p0, q0), fun(p1, q1), ... starmap(fun, seq) --> fun(*seq[0]), fun(*seq[1]), ... tee(it, n=2) --> (it1, it2 , ... itn) splits one iterator into n chain(p, q, ...) --> p0, p1, ... plast, q0, q1, ... takewhile(pred, seq) --> seq[0], seq[1], until pred fails dropwhile(pred, seq) --> seq[n], seq[n+1], starting when pred fails groupby(iterable[, keyfunc]) --> sub-iterators grouped by value of keyfunc(v) lObject wrapper with a custom sort key.?R ؄@?cmp() wrapper for sort with custom keys. `@@R \\E0x.__getitem__(y) <==> x[y]L.__reversed__() -- return a reverse iterator over the listL.append(object) -- append object to endL.extend(iterable) -- extend list by appending elements from the iterableL.insert(index, object) -- insert object before indexL.pop([index]) -> item -- remove and return item at index (default last)L.remove(value) -- remove first occurrence of valueL.index(value, [start, [stop]]) -> integer -- return first index of valueL.count(value) -> integer -- return number of occurrences of valueL.reverse() -- reverse *IN PLACE*L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*; cmp(x, y) -> -1, 0, 1AKHȆRTFP- 9-4F-PE00؇EH$E`GX\)@HE0Fc`A%P&'@%%,(%0,list() -> new list list(sequence) -> new list initialized from sequence's items%K M(eP! ""0pKR EXI@(PIQpJD PE 0:Private method returning an estimate of len(list(it)).B`RxQR ARR  RSRR ASR 0S%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%  !"#%%%%%%  !"#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%9long(x[, base]) -> integer Convert a string or number to a long integer, if possible. A floating point argument will be truncated towards zero (this does not include a string representation of a floating point number!) When converting a string, use the optional base. It is an error to supply a base when converting a non-string.x`y``@@PpЙ  esPttt0tR l ,X*(&$PlphPacos(x) Return the arc cosine (measured in radians) of x.asin(x) Return the arc sine (measured in radians) of x.atan(x) Return the arc tangent (measured in radians) of x.atan2(y, x) Return the arc tangent (measured in radians) of y/x. Unlike atan(y/x), the signs of both x and y are considered.ceil(x) Return the ceiling of x as a float. This is the smallest integral value >= x.cos(x) Return the cosine of x (measured in radians).cosh(x) Return the hyperbolic cosine of x.exp(x) Return e raised to the power of x.fabs(x) Return the absolute value of the float x.floor(x) Return the floor of x as a float. This is the largest integral value <= x.fmod(x,y) Return fmod(x, y), according to platform C. x % y may differ.hypot(x,y) Return the Euclidean distance, sqrt(x*x + y*y).pow(x,y) Return x**y (x to the power of y).sin(x) Return the sine of x (measured in radians).sinh(x) Return the hyperbolic sine of x.sqrt(x) Return the square root of x.tan(x) Return the tangent of x (measured in radians).tanh(x) Return the hyperbolic tangent of x.frexp(x) Return the mantissa and exponent of x, as pair (m, e). m is a float and e is an int, such that x = m * 2.**e. If x is 0, m and e are both 0. Else 0.5 <= abs(m) < 1.0.ldexp(x, i) -> x * (2**i)modf(x) Return the fractional and integer parts of x. Both results carry the sign of x. The integer part is returned as a real.log(x[, base]) -> the logarithm of x to the given base. If the base not specified, returns the natural logarithm (base e) of x.log10(x) -> the base 10 logarithm of x.degrees(x) -> converts angle x from radians to degreesradians(x) -> converts angle x from degrees to radians~~~ 80@x0`t~Pl~0h~000 p0 0@0̙d~@p\~0\`0PX~(P~\H~D~<~This module is always available. It provides access to the mathematical functions defined by the C standard.update (arg) Update the md5 object with the string arg. Repeated calls are equivalent to a single call with the concatenation of all the arguments.digest() -> string Return the digest of the strings passed to the update() method so far. This is a 16-byte string which may contain non-ASCII characters, including null bytes.hexdigest() -> string Like digest(), but returns the digest as a string of hexadecimal digits.copy() -> md5 object Return a copy (``clone'') of the md5 object.|2 0p2p<Hd2`X2P]pL2`This module implements the interface to RSA's MD5 message digest algorithm (see also Internet RFC 1321). Its use is quite straightforward: use the new() to create an md5 object. You can now feed this object with arbitrary strings using the update() method, and at any point you can ask it for the digest (a strong kind of 128-bit checksum, a.k.a. ``fingerprint'') of the concatenation of the strings fed to it so far using the digest() method. Functions: new([arg]) -- return a new md5 object, initialized with arg if provided md5([arg]) -- DEPRECATED, same as new, but for compatibility Special Objects: MD5Type -- type object for md5 objectsAn md5 represents the object used to calculate the MD5 checksum of a string of information. Methods: update() -- updates the current digest with an additional string digest() -- return the current digest value hexdigest() -- return the current digest as a string of hexadecimal digits copy() -- return a copy of the current md5 object@2`Тnew([arg]) -> md5 object Return a new md5 object. If arg is present, the method call update(arg) is made..xĥȥ HL     Ȧ̦ئܦXdhl222Х22T222222p2  Ч`(" t0t2pR AP`l4X4 d4EX4@pP4h(,@|HD4@P@` `84$(P04(4 4 Python C API version mismatch for module %.100s: This Python has API version %d, module %.100s has version %d.]module(name[, doc]) Create a module object. The name must be a string; the optional doc argument can have any type.d9  p R 0U E Ȭ D PE 0:: :0 x: h: X:p P: H: @:@ 8: 0: I.encode(unicode[, errors]) -> (string, length consumed) Return an encoded string version of `unicode'. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and 'xmlcharrefreplace' as well as any other name registered with codecs.register_error that can handle UnicodeEncodeErrors.I.decode(string[, errors]) -> (unicodeobject, length consumed) Decodes `string' using I, an MultibyteCodec instance. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a UnicodeDecodeError. Other possible values are 'ignore' and 'replace' as well as any other name registerd with codecs.register_error that is able to handle UnicodeDecodeErrors.L\;;L\;;;; @ ;(  * ; - R |0 0 ; P2 R E 2 pT2  1  2 4 h;$P6 R E 6 `T6  5 E9 p: 0; ; ;$P;(= R EP= PT@= 0< Hp> \> 0? ; 8;$@A R E@ ȶT@ ? `A UUUU?3333*$I$qtEUUU;$I8^Cy 0 ,d! p= ^B{ I$ B|uPq  >X X 0>X X }pȺȺккغغ  ((0088@@HHPPXX``hhppxxOperator interface. This module exports a set of functions implemented in C corresponding to the intrinsic operators of Python. For example, operator.add(x, y) is equivalent to the expression x+y. The function names are those used for special class methods; variants without leading and trailing '__' are also provided for convenience.N@o NN`o xNdNv N No MM0w M|0w MxMw (MMw LL x LLpx HL@L |  LLp| KE| Kt}| KUo Kvo KH)o Kvo KU p |Kv p |KxK`p 0Kw`p 0K$Kp KDwp KJp Jdwp JJ q Jw q JJ`q pJ|`q pJ)pq XJ|pq XJ\q  itemgetter object Return a callable object that fetches the given item(s) from its operand. After, f=itemgetter(2), the call f(r) returns r[2]. After, g=itemgetter(2,5,3), the call g(r) returns (r[2], r[5], r[3])(C`~ ~ R A~ } attrgetter(attr, ...) --> attrgetter object Return a callable object that fetches the given attribute(s) from its operand. After, f=attrgetter('name'), the call f(r) returns r.name. After, g=attrgetter('name', 'date'), the call g(r) returns (r.name, r.date).C ` R A@  Copyright 1995-1996 by Virginia Polytechnic Institute & State University, Blacksburg, Virginia, USA, and Fred L. Drake, Jr., Reston, Virginia, USA. Portions copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, The Netherlands.This is an interface to Python's internal parser.0.5T ` @ |TxTlTxTlTxTxTxT( @T8T SS SE` SS PSx)0DS SS` RR RR Rp hR8T ,RS QH QQ QQ QtQ SlQ` R`Q QTQ QHQ  Q%s:%d: Warning: 'with' will become a reserved keyword in Python 2.6 %s:%d: Warning: 'as' will become a reserved keyword in Python 2.6 This module provides access to operating system functionality that is standardized by the C Standard and the POSIX standard (a thinly disguised Unix interface). Refer to the library manual and corresponding Unix manual entries for more information on calls.stat_result: Result from stat or lstat. This object may be accessed either as a tuple of (mode, ino, dev, nlink, uid, gid, size, atime, mtime, ctime) or via the attributes st_mode, st_ino, st_dev, st_nlink, st_uid, and so on. Posix/windows: If your platform supports st_blksize, st_blocks, st_rdev, or st_flags, they are available as attributes only. See os.stat for more information.l`\`T`L`D`<`0```_______d_X_D_8___^^H statvfs_result: Result from statvfs or fstatvfs. This object may be accessed either as a tuple of (bsize, frsize, blocks, bfree, bavail, files, ffree, favail, flag, namemax), or via the attributes f_bsize, f_frsize, f_blocks, f_bfree, and so on. See os.statvfs for more information.^^^^^^^^^^|^ stat_float_times([newval]) -> oldval Determine whether os.[lf]stat represents time stamps as float objects. If newval is True, future calls to stat() return floats, if it is False, future calls return ints. If newval is omitted, return the current setting. access(path, mode) -> True if granted, False otherwise Use the real uid/gid to test for access to a path. Note that most operations will use the effective uid/gid, therefore this routine can be used in a suid/sgid environment to test if the invoking user has the specified access to the path. The mode argument can be F_OK to test existence, or the inclusive-OR of R_OK, W_OK, and X_OK.chdir(path) Change the current working directory to the specified path.chmod(path, mode) Change the access permissions of a file.fsync(fildes) force write of file with filedescriptor to disk.getcwd() -> path Return a string representing the current working directory.getcwdu() -> path Return a unicode string representing the current working directory.listdir(path) -> list_of_strings Return a list containing the names of the entries in the directory. path: path of directory to list The list is in arbitrary order. It does not include the special entries '.' and '..' even if they are present in the directory.mkdir(path [, mode=0777]) Create a directory.rename(old, new) Rename a file or directory.rmdir(path) Remove a directory.stat(path) -> stat result Perform a stat system call on the given path.system(command) -> exit_status Execute the command (a string) in a subshell.umask(new_mask) -> old_mask Set the current numeric umask and return the previous umask.unlink(path) Remove a file (same as remove(path)).remove(path) Remove a file (same as unlink(path)).utime(path, (atime, mtime)) utime(path, None) Set the access and modified time of the file to the given values. If the second form is used, set the access and modified times to the current time._exit(status) Exit to the system with specified status, without normal exit processing.execv(path, args) Execute an executable path with arguments, replacing current process. path: path of executable file args: tuple or list of stringsexecve(path, args, env) Execute a path with arguments and environment, replacing current process. path: path of executable file args: tuple or list of arguments env: dictionary of strings mapping to stringsspawnv(mode, path, args) Execute the program 'path' in a new process. mode: mode of process creation path: path of executable file args: tuple or list of stringsspawnve(mode, path, args, env) Execute the program 'path' in a new process. mode: mode of process creation path: path of executable file args: tuple or list of arguments env: dictionary of strings mapping to stringsgetpid() -> pid Return the current process idpopen(command [, mode='r' [, bufsize]]) -> pipe Open a pipe to/from a command returning a file object.waitpid(pid, options) -> (pid, status << 8) Wait for completion of a given process. options is ignored on Windows.lstat(path) -> stat result Like stat(path), but do not follow symbolic links.times() -> (utime, stime, cutime, cstime, elapsed_time) Return a tuple of floating point numbers indicating process times.open(filename, flag [, mode=0777]) -> fd Open a file (for low level IO).close(fd) Close a file descriptor (for low level IO).dup(fd) -> fd2 Return a duplicate of a file descriptor.dup2(old_fd, new_fd) Duplicate file descriptor.lseek(fd, pos, how) -> newpos Set the current position of a file descriptor.read(fd, buffersize) -> string Read a file descriptor.write(fd, string) -> byteswritten Write a string to a file descriptor.fstat(fd) -> stat result Like stat(), but for an open file descriptor.fdopen(fd [, mode='r' [, bufsize]]) -> file_object Return an open file object connected to a file descriptor.isatty(fd) -> bool Return True if the file descriptor 'fd' is an open file descriptor connected to the slave end of a terminal.pipe() -> (read_end, write_end) Create a pipe.putenv(key, value) Change or add an environment variable.strerror(code) -> string Translate an error code to a message string.tempnam([dir[, prefix]]) -> string Return a unique name for a temporary file. The directory and a prefix may be specified as strings; they may be omitted or None if not needed.tmpfile() -> file object Create a temporary file with no directory entries.tmpnam() -> string Return a unique name for a temporary file.abort() -> does not return! Abort the interpreter immediately. This 'dumps core' or otherwise fails in the hardest way possible on the hosting operating system.startfile(filepath [, operation]) - Start a file with its associated application. When "operation" is not specified or "open", this acts like double-clicking the file in Explorer, or giving the file name as an argument to the DOS "start" command: the file is opened with whatever application (if any) its extension is associated. When another "operation" is given, it specifies what should be done with the file. A typical operation is "print". startfile returns as soon as the associated application is launched. There is no option to wait for the application to close, and no way to retrieve the application's exit status. The filepath is relative to the current directory. If you want to use an absolute path, make sure the first character is not a slash ("/"); the underlying Win32 ShellExecute function doesn't work if it is.urandom(n) -> str Return a string of n random bytes suitable for cryptographic use. 4 `t^ l^ 4d^ \^p T^0 XL^! D^p d<^ 4^ ,^0 ^ X^` 8^ ^ E ] P]0! ] ]0 x] ] ] ]@ x]: ]; ]@< ]< ], ]p  \" XP# ]# ] $ x]$ PE% H& p]'  h]' h( `]) \X]) * P] pH]+ @]* 8]+ 0], X]P ]P. Hnnnnn]Xn]snnnnnnnnnt2nn$\nnnnnnnnndnxnnlnnn`nXnd9Xn]n]]Xnnnnt2PnnHnn@nXnnn+t2 xrange object Like range(), but instead of returning a list, returns an object that generates the numbers in the range on demand. For looping, this is slightly faster than range() and more memory efficient. @ Returns a reverse iterator. dl  R `  Private method returning an estimate of len(list(it)).B@ l R R  < , p  Remove and return an arbitrary set element.Private method returning an estimate of len(list(it)).B l  R R P Update a set with the union of itself and another.Return a shallow copy of a set.Remove all elements from this set.Return the union of two sets as a new set. (i.e. all elements that are in either set.)Return the intersection of two sets as a new set. (i.e. all elements that are in both sets.)Update a set with the intersection of itself and another.Remove all elements of another set from this set.Return the difference of two sets as a new set. (i.e. all elements that are in this set but not the other.)Update a set with the symmetric difference of itself and another.Return the symmetric difference of two sets as a new set. (i.e. all elements that are in exactly one of the sets.)Report whether another set contains this set.Report whether this set contains another set.Add an element to a set. This has no effect if the element is already present.x.__contains__(y) <==> y in x.Remove an element from a set; it must be a member. If the element is not a member, raise a KeyError.Remove an element from a set if it is a member. If the element is not a member, do nothing.Return state information for pickling. P U  " |P H<   ( Ԃ` X  T E@ @E` E (0 t l        p P  set(iterable) --> set object Build an unordered collection of unique elements.ed` P  @ p R E `  ` @ D ` 0:|P H<  (Ԃ` X T E` 0 l      frozenset(iterable) --> frozenset object Build an immutable unordered collection of unique elements.@ed` P  @ 0 R E` `  `  D  0:Return a copy of the hash object.Return the digest value as a string of binary data.Return the digest value as a string of hexadecimal digits.Update this hash object's state with the provided string.<L |2pL p2M 0N X2N ]N d2xL2x |K X|K XReturn a new SHA-256 hash object; optionally initialized with a string. Return a new SHA-224 hash object; optionally initialized with a string. N `O Return a copy of the hash object.Return the digest value as a string of binary data.Return the digest value as a string of hexadecimal digits.Update this hash object's state with the provided string.<0 p|2 p2`  X2 ] d2L2` @P @Return a new SHA-512 hash object; optionally initialized with a string. Return a new SHA-384 hash object; optionally initialized with a string. H0 @ Return a copy of the hashing object.Return the digest value as a string of binary data.Return the digest value as a string of hexadecimal digits.Update this hashing object's state with the provided string.< X|2 p2  d2 X2 ] L2 l 0Return a new SHA hashing object. An optional string argument may be provided; if present, this string will be automatically hashed. .@ default_int_handler(...) The default handler for SIGINT installed by Python. It raises KeyboardInterrupt.signal(sig, action) -> action Set the action for the given signal. The action can be SIG_DFL, SIG_IGN, or a callable Python object. The previous action is returned. See getsignal() for possible return values. *** IMPORTANT NOTICE *** A signal handler function is called with two arguments: the first is the signal number, the second is the interrupted stack frame.getsignal(sig) -> action Return the current action for the given signal. The return value can be: SIG_IGN -- if the signal is being ignored SIG_DFL -- if the default action for the signal is in effect None -- if an unknown handler is in effect anything else -- the callable Python object used as a handlerp  @p XThis module provides mechanisms to use signal handlers in Python. Functions: alarm() -- cause SIGALRM after a specified time [Unix only] signal() -- set the action for a given signal getsignal() -- get the signal action for a given signal pause() -- wait until a signal arrives [Unix only] default_int_handler() -- default SIGINT handler Constants: SIG_DFL -- used to refer to the system default handler SIG_IGN -- used to ignore the signal NSIG -- number of defined signals SIGINT, SIGTERM, etc. -- signal numbers *** IMPORTANT NOTICE *** A signal handler function is called with two arguments: the first is the signal number, the second is the interrupted stack frame. R ` slice([start,] stop[, step]) Create a slice object. This is used for extended slicing (e.g. a[0:10:2]).h` mS.indices(len) -> (start, stop, stride) Assuming a sequence of length len, calculate the start and stop indices, and the stride length of the extended slice described by S. Out of bounds indices are clipped in a manner consistent with the handling of normal slices.  e  `  R (   p 0 @  $ # P 0 $ 0 `    S.split([sep [,maxsplit]]) -> list of strings Return a list of the words in the string S, using sep as the delimiter string. If maxsplit is given, at most maxsplit splits are done. If sep is not specified or is None, any whitespace string is a separator.S.partition(sep) -> (head, sep, tail) Searches for the separator sep in S, and returns the part before it, the separator itself, and the part after it. If the separator is not found, returns S and two empty strings.S.rpartition(sep) -> (tail, sep, head) Searches for the separator sep in S, starting at the end of S, and returns the part before it, the separator itself, and the part after it. If the separator is not found, returns two empty strings and S.S.rsplit([sep [,maxsplit]]) -> list of strings Return a list of the words in the string S, using sep as the delimiter string, starting at the end of the string and working to the front. If maxsplit is given, at most maxsplit splits are done. If sep is not specified or is None, any whitespace string is a separator.S.join(sequence) -> string Return a string which is the concatenation of the strings in the sequence. The separator between elements is S.S.find(sub [,start [,end]]) -> int Return the lowest index in S where substring sub is found, such that sub is contained within s[start:end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.S.index(sub [,start [,end]]) -> int Like S.find() but raise ValueError when the substring is not found.S.rfind(sub [,start [,end]]) -> int Return the highest index in S where substring sub is found, such that sub is contained within s[start:end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.S.rindex(sub [,start [,end]]) -> int Like S.rfind() but raise ValueError when the substring is not found.S.strip([chars]) -> string or unicode Return a copy of the string S with leading and trailing whitespace removed. If chars is given and not None, remove characters in chars instead. If chars is unicode, S will be converted to unicode before strippingS.lstrip([chars]) -> string or unicode Return a copy of the string S with leading whitespace removed. If chars is given and not None, remove characters in chars instead. If chars is unicode, S will be converted to unicode before strippingS.rstrip([chars]) -> string or unicode Return a copy of the string S with trailing whitespace removed. If chars is given and not None, remove characters in chars instead. If chars is unicode, S will be converted to unicode before strippingS.lower() -> string Return a copy of the string S converted to lowercase.S.upper() -> string Return a copy of the string S converted to uppercase.S.title() -> string Return a titlecased version of S, i.e. words start with uppercase characters, all remaining cased characters have lowercase.S.capitalize() -> string Return a copy of the string S with only its first character capitalized.S.count(sub[, start[, end]]) -> int Return the number of non-overlapping occurrences of substring sub in string S[start:end]. Optional arguments start and end are interpreted as in slice notation.S.swapcase() -> string Return a copy of the string S with uppercase characters converted to lowercase and vice versa.S.translate(table [,deletechars]) -> string Return a copy of the string S, where all characters occurring in the optional argument deletechars are removed, and the remaining characters have been mapped through the given translation table, which must be a string of length 256.S.replace (old, new[, count]) -> string Return a copy of string S with all occurrences of substring old replaced by new. If the optional argument count is given, only the first count occurrences are replaced.S.startswith(prefix[, start[, end]]) -> bool Return True if S starts with the specified prefix, False otherwise. With optional start, test S beginning at that position. With optional end, stop comparing S at that position. prefix can also be a tuple of strings to try.S.endswith(suffix[, start[, end]]) -> bool Return True if S ends with the specified suffix, False otherwise. With optional start, test S beginning at that position. With optional end, stop comparing S at that position. suffix can also be a tuple of strings to try.S.encode([encoding[,errors]]) -> object Encodes S using the codec registered for encoding. encoding defaults to the default encoding. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and 'xmlcharrefreplace' as well as any other name registered with codecs.register_error that is able to handle UnicodeEncodeErrors.S.decode([encoding[,errors]]) -> object Decodes S using the codec registered for encoding. encoding defaults to the default encoding. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a UnicodeDecodeError. Other possible values are 'ignore' and 'replace' as well as any other name registerd with codecs.register_error that is able to handle UnicodeDecodeErrors.S.expandtabs([tabsize]) -> string Return a copy of S where all tab characters are expanded using spaces. If tabsize is not given, a tab size of 8 characters is assumed.S.ljust(width[, fillchar]) -> string Return S left justified in a string of length width. Padding is done using the specified fill character (default is a space).S.rjust(width[, fillchar]) -> string Return S right justified in a string of length width. Padding is done using the specified fill character (default is a space)S.center(width[, fillchar]) -> string Return S centered in a string of length width. Padding is done using the specified fill character (default is a space)S.zfill(width) -> string Pad a numeric string S with zeros on the left, to fill a field of the specified width. The string S is never truncated.S.isspace() -> bool Return True if all characters in S are whitespace and there is at least one character in S, False otherwise.S.isalpha() -> bool Return True if all characters in S are alphabetic and there is at least one character in S, False otherwise.S.isalnum() -> bool Return True if all characters in S are alphanumeric and there is at least one character in S, False otherwise.S.isdigit() -> bool Return True if all characters in S are digits and there is at least one character in S, False otherwise.S.islower() -> bool Return True if all cased characters in S are lowercase and there is at least one cased character in S, False otherwise.S.isupper() -> bool Return True if all cased characters in S are uppercase and there is at least one cased character in S, False otherwise.S.istitle() -> bool Return True if S is a titlecased string and there is at least one character in S, i.e. uppercase characters may only follow uncased characters and lowercase characters only cased ones. Return False otherwise.S.splitlines([keepends]) -> list of strings Return a list of the lines in S, breaking at line boundaries. Line breaks are not included in the resulting list unless keepends is given and true.<*@4 H8)) (P1 mp; m`< @ 8) )@  ' (؆` X*І 'Ȇ@ 0(P> \)@   `, 0l4` E : xS x 8 (; x`- l` Pd`: Xp? Lp@ `DP=  <PX $4X @%, Y %$Y & p  p 8"U #  Z @+  eType basestring cannot be instantiated; it is the base for str and unicode.x e.0@ str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.d  p# . # R  00 ,p/0[ l Common string manipulations, optimized for speed. Always use "import string" rather than referencing this module directly.split(s [,sep [,maxsplit]]) -> list of strings splitfields(s [,sep [,maxsplit]]) -> list of strings Return a list of the words in the string s, using sep as the delimiter string. If maxsplit is nonzero, splits into at most maxsplit words. If sep is not specified, any whitespace string is a separator. Maxsplit defaults to 0. (split and splitfields are synonymous)join(list [,sep]) -> string joinfields(list [,sep]) -> string Return a string composed of the words in list, with intervening occurrences of sep. Sep defaults to a single space. (join and joinfields are synonymous)find(s, sub [,start [,end]]) -> in Return the lowest index in s where substring sub is found, such that sub is contained within s[start,end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.rfind(s, sub [,start [,end]]) -> int Return the highest index in s where substring sub is found, such that sub is contained within s[start,end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.strip(s) -> string Return a copy of the string s with leading and trailing whitespace removed.lstrip(s) -> string Return a copy of the string s with leading whitespace removed.rstrip(s) -> string Return a copy of the string s with trailing whitespace removed.lower(s) -> string Return a copy of the string s converted to lowercase.upper(s) -> string Return a copy of the string s converted to uppercase.capitalize(s) -> string Return a copy of the string s with only its first character capitalized.expandtabs(string, [tabsize]) -> string Expand tabs in a string, i.e. replace them by one or more spaces, depending on the current column and the given tab size (default 8). The column number is reset to zero after each newline occurring in the string. This doesn't understand other non-printing characters.count(s, sub[, start[, end]]) -> int Return the number of occurrences of substring sub in string s[start:end]. Optional arguments start and end are interpreted as in slice notation.swapcase(s) -> string Return a copy of the string s with upper case characters converted to lowercase and vice versa.atoi(s [,base]) -> int Return the integer represented by the string s in the given base, which defaults to 10. The string s must consist of one or more digits, possibly preceded by a sign. If base is 0, it is chosen from the leading characters of s, 0 for octal, 0x or 0X for hexadecimal. If base is 16, a preceding 0x or 0X is accepted.atol(s [,base]) -> long Return the long integer represented by the string s in the given base, which defaults to 10. The string s must consist of one or more digits, possibly preceded by a sign. If base is 0, it is chosen from the leading characters of s, 0 for octal, 0x or 0X for hexadecimal. If base is 16, a preceding 0x or 0X is accepted. A trailing L or l is not accepted, unless base is 0.atof(s) -> float Return the floating point number represented by the string s.maketrans(frm, to) -> string Return a translation table (a string of 256 bytes long) suitable for use in string.translate. The strings frm and to must be of the same length.translate(s,table [,deletechars]) -> string Return a copy of the string s, where all characters occurring in the optional argument deletechars are removed, and the remaining characters have been mapped through the given translation table, which must be a string of length 256.replace (str, old, new[, maxsplit]) -> string Return a copy of string str with all occurrences of substring old replaced by new. If the optional argument maxsplit is given, only the first maxsplit occurrences are replaced.( =  : <0 7\) 9p X8l4 X4<*| x3 | x3 6m0 P7 >x ? H5 68)@z 2@z 2d @6X H:L >m0 7n_sequence_fieldsn_fieldsn_unnamed_fieldsl0heП      E p P LB p tB T\] d(8 ` R XC̗0 displayhook(object) -> None Print an object to sys.stdout and also save it in __builtin__. excepthook(exctype, value, traceback) -> None Handle an exception by displaying it with a traceback on sys.stderr. exc_info() -> (type, value, traceback) Return information about the most recent exception caught by an except clause in the current stack frame or in an older stack frame.exc_clear() -> None Clear global information on the current exception. Subsequent calls to exc_info() will return (None,None,None) until another exception is raised in the current thread or the execution stack returns to a frame where another exception is being handled.exit([status]) Exit the interpreter by raising SystemExit(status). If the status is omitted or None, it defaults to zero (i.e., success). If the status is numeric, it will be used as the system exit status. If it is another kind of object, it will be printed and the system exit status will be one (i.e., failure).getdefaultencoding() -> string Return the current default string encoding used by the Unicode implementation.setdefaultencoding(encoding) Set the current default string encoding used by the Unicode implementation.getfilesystemencoding() -> string Return the encoding used to convert Unicode filenames in operating system filenames.Pؚ̚settrace(function) Set the global debug tracing function. It will be called on each function call. See the debugger chapter in the library manual.setprofile(function) Set the profiling function. It will be called on each function call and return. See the profiler chapter in the library manual.setcheckinterval(n) Tell the Python interpreter to check for asynchronous events every n instructions. This also affects how often thread switches occur.getcheckinterval() -> current check interval; see setcheckinterval().setrecursionlimit(n) Set the maximum depth of the Python interpreter stack to n. This limit prevents infinite recursion from causing an overflow of the C stack and crashing Python. The highest possible limit is platform- dependent.getrecursionlimit() Return the current value of the recursion limit, the maximum depth of the Python interpreter stack. This limit prevents infinite recursion from causing an overflow of the C stack and crashing Python.getwindowsversion() Return information about the running version of Windows. The result is a tuple of (major, minor, build, platform, text) All elements are numbers, except text which is a string. Platform may be 0 for win32s, 1 for Windows 9x/ME, 2 for Windows NT/2000/XP getrefcount(object) -> integer Return the reference count of object. The count returned is generally one higher than you might expect, because it includes the (temporary) reference as an argument to getrefcount()._getframe([depth]) -> frameobject Return a frame object from the call stack. If optional integer depth is given, return the frame object that many calls below the top of the stack. If that is deeper than the call stack, ValueError is raised. The default for depth is zero, returning the frame at the top of the call stack. This function should be used for internal and specialized purposes only._current_frames() -> dictionary Return a dictionary mapping each current thread T's thread id to T's current stack frame. This function should be used for specialized purposes only.call_tracing(func, args) -> object Call func(*args), while tracing is enabled. The tracing state is saved, and restored afterwards. This is intended to be called from a debugger from a checkpoint, to recursively debug some other code.callstats() -> tuple of integers Return a tuple of function call statistics, if CALL_PROFILE was defined when Python was built. Otherwise, return None. When enabled, this function returns detailed, implementation-specific details about the number of function calls executed. The return value is a 11-tuple where the entries in the tuple are counts of: 0. all function calls 1. calls to PyFunction_Type objects 2. PyFunction calls that do not create an argument tuple 3. PyFunction calls that do not create an argument tuple and bypass PyEval_EvalCodeEx() 4. PyMethod calls 5. PyMethod calls on bound methods 6. PyType calls 7. PyCFunction calls 8. generator calls 9. All other calls 10. Number of stack pops performed by call_function()p@SP Q(p@ D E `FD}@ 8E xG| Hd@ IX 0OD@ 8M8 P$P N (I `K Lܙ` Jș HL 0J` PRThis module provides access to some objects used or maintained by the interpreter and to functions that interact strongly with the interpreter. Dynamic objects: argv -- command line arguments; argv[0] is the script pathname if known path -- module search path; path[0] is the script directory, else '' modules -- dictionary of loaded modules displayhook -- called to show results in an interactive session excepthook -- called to handle any uncaught exception other than SystemExit To customize printing in an interactive session or to install a custom top-level exception handler, assign other functions to replace these. exitfunc -- if sys.exitfunc exists, this routine is called when Python exits Assigning to sys.exitfunc is deprecated; use the atexit module instead. stdin -- standard input file object; used by raw_input() and input() stdout -- standard output file object; used by the print statement stderr -- standard error object; used for error messages By assigning other file objects (or objects that behave like files) to these, it is possible to redirect all of the interpreter's I/O. last_type -- type of last uncaught exception last_value -- value of last uncaught exception last_traceback -- traceback of last uncaught exception These three are only available in an interactive session after a traceback has been printed. exc_type -- type of exception currently being handled exc_value -- value of exception currently being handled exc_traceback -- traceback of exception currently being handled The function exc_info() should be used instead of these three, because it is thread-safe. Static objects: maxint -- the largest supported integer (the smallest is -maxint-1) maxunicode -- the largest supported character builtin_module_names -- tuple of module names built into this interpreter version -- the version of this interpreter as a string version_info -- version information as a tuple hexversion -- version information encoded as a single integer copyright -- copyright notice pertaining to this interpreter platform -- platform identifier executable -- pathname of this Python interpreter prefix -- prefix used to find the Python library exec_prefix -- prefix used to find the machine-specific Python library dllhandle -- [Windows only] integer handle of the Python DLL winver -- [Windows only] version number of the Python DLL __stdin__ -- the original stdin; don't touch! __stdout__ -- the original stdout; don't touch! __stderr__ -- the original stderr; don't touch! __displayhook__ -- the original displayhook; don't touch! __excepthook__ -- the original excepthook; don't touch! Functions: displayhook() -- print an object to the screen, and save it in __builtin__._ excepthook() -- print an exception and its traceback to sys.stderr exc_info() -- return thread-safe information about the current exception exc_clear() -- clear the exception state for the current thread exit() -- exit the interpreter by raising SystemExit getdlopenflags() -- returns flags to be used for dlopen() calls getrefcount() -- return the reference count for an object (plus one :-) getrecursionlimit() -- return the max recursion depth for the interpreter setcheckinterval() -- control how often the interpreter checks for events setdlopenflags() -- set the flags to be used for dlopen() calls setprofile() -- set the global profiling function setrecursionlimit() -- set the max recursion depth for the interpreter settrace() -- set the global debug tracing function cacquire([wait]) -> None or bool (acquire_lock() is an obsolete synonym) Lock the lock. Without argument, this blocks if the lock is already locked (even by the same thread), waiting for another thread to release the lock, and return None once the lock is acquired. With an argument, this will only block if the argument is true, and the return value reflects whether the lock is acquired. The blocking operation is not interruptible.release() (release_lock() is an obsolete synonym) Release the lock, allowing another thread that is blocked waiting for the lock to acquire the lock. The lock must be in the locked state, but it needn't be locked by the same thread that unlocks it.locked() -> bool (locked_lock() is an obsolete synonym) Return whether the lock is in the locked state.  0e 0e 0 f0 f g؞ g 0e0 f̞     p @  i@ start_new_thread(function, args[, kwargs]) (start_new() is an obsolete synonym) Start a new thread and return its identifier. The thread will call the function with positional arguments from the tuple args and keyword arguments taken from the optional dictionary kwargs. The thread exits when the function returns; the return value is ignored. The thread will also exit when the function raises an unhandled exception; a stack trace will be printed unless the exception is SystemExit. exit() (PyThread_exit_thread() is an obsolete synonym) This is synonymous to ``raise SystemExit''. It will cause the current thread to exit silently unless the exception is caught.interrupt_main() Raise a KeyboardInterrupt in the main thread. A subthread can use this function to interrupt the main thread.allocate_lock() -> lock object (allocate() is an obsolete synonym) Create a new lock object. See LockType.__doc__ for information about locks.get_ident() -> integer Return a non-zero integer that uniquely identifies the current thread amongst other threads that exist simultaneously. This may be used to identify per-thread resources. Even though on some platforms threads identities may appear to be allocated consecutive numbers starting at 1, this behavior should not be relied upon, and the number should be seen purely as a magic cookie. A thread's identity may be reused for another thread after it exits.stack_size([size]) -> size Return the thread stack size used when creating new threads. The optional size argument specifies the stack size (in bytes) to be used for subsequently created threads, and must be 0 (use platform or configured default) or a positive integer value of at least 32,768 (32k). If changing the thread stack size is unsupported, a ThreadError exception is raised. If the specified size is invalid, a ValueError exception is raised, and the stack size is unmodified. 32k bytes currently the minimum supported stack size value to guarantee sufficient stack space for the interpreter itself. Note that some platforms may have particular restrictions on values for the stack size, such as requiring a minimum stack size larger than 32kB or requiring allocation in multiples of the system memory page size - platform documentation should be referred to for more information (4kB pages are common; using multiples of 4096 for the stack size is the suggested approach in the absence of more specific information).|P jpP j`P mTP mH l l80 8m, Pn  (pThis module provides primitive operations to write multi-threaded programs. The 'threading' module provides a more convenient interface.A lock object is a synchronization primitive. To create a lock, call the PyThread_allocate_lock() function. Methods are: acquire() -- lock the lock, possibly blocking until it can be obtained release() -- unlock of the lock locked() -- test whether the lock is currently locked A lock is not owned by the thread that locked it; another thread may unlock it. A thread attempting to lock a lock that it has already locked will block until another thread unlocks it. Deadlocks may ensue.time() -> floating point number Return the current time in seconds since the Epoch. Fractions of a second may be present if the system clock provides them.clock() -> floating point number Return the CPU time or real time since the start of the process or since the first call to clock(). This has as much precision as the system records.sleep(seconds) Delay execution for a given number of seconds. The argument may be a floating point number for subsecond precision.tld\TLD<0@y gmtime([seconds]) -> (tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst) Convert seconds since the Epoch to a time tuple expressing UTC (a.k.a. GMT). When 'seconds' is not passed in, convert the current time instead.localtime([seconds]) -> (tm_year,tm_mon,tm_mday,tm_hour,tm_min,tm_sec,tm_wday,tm_yday,tm_isdst) Convert seconds since the Epoch to a time tuple expressing local time. When 'seconds' is not passed in, convert the current time instead.strftime(format[, tuple]) -> string Convert a time tuple to a string according to a format specification. See the library reference manual for formatting codes. When the time tuple is not present, current time as returned by localtime() is used.strptime(string, format) -> struct_time Parse a string to a time tuple according to a format specification. See the library reference manual for formatting codes (same as strftime()).asctime([tuple]) -> string Convert a time tuple to a string, e.g. 'Sat Jun 06 16:26:11 1998'. When the time tuple is not present, current time as returned by localtime() is used.ctime(seconds) -> string Convert a time in seconds since the Epoch to a string in local time. This is equivalent to asctime(localtime(seconds)). When the time tuple is not present, current time as returned by localtime() is used.mktime(tuple) -> floating point number Convert a time tuple in local time to seconds since the Epoch.P Xw w  x y z X} ~` ~T { |This module provides various functions to manipulate time values. There are two standard representations of time. One is the number of seconds since the Epoch, in UTC (a.k.a. GMT). It may be an integer or a floating point number (to represent fractions of seconds). The Epoch is system-defined; on Unix, it is generally January 1st, 1970. The actual value can be retrieved by calling gmtime(0). The other representation is a tuple of 9 integers giving local time. The tuple items are: year (four digits, e.g. 1998) month (1-12) day (1-31) hours (0-23) minutes (0-59) seconds (0-59) weekday (0-6, Monday is 0) Julian day (day in the year, 1-366) DST (Daylight Savings Time) flag (-1, 0 or 1) If the DST flag is 0, the time is given in the regular time zone; if it is 1, the time is given in the DST time zone; if it is -1, mktime() should guess based on the date and time. Variables: timezone -- difference in seconds between UTC and local standard time altzone -- difference in seconds between UTC and local DST time daylight -- whether local time should reflect DST tzname -- tuple of (standard time zone name, DST time zone name) Functions: time() -- return current time in seconds since the Epoch as a float clock() -- return CPU time since process start as a float sleep() -- delay for a number of seconds given as a float gmtime() -- convert seconds since Epoch to UTC tuple localtime() -- convert seconds since Epoch to local time tuple asctime() -- convert time tuple to string ctime() -- convert time in seconds to string mktime() -- convert local time tuple to seconds since Epoch strftime() -- convert time tuple to string according to format specification strptime() -- parse string to time tuple according to format specification tzset() -- change the local timezoneإХȥxph`XPH@84, ؤ̤xh\P@0 أ̣ th\* * A+ + 0tuple() -> an empty tuple tuple(sequence) -> tuple initialized from sequence's items If the argument is a tuple, the return value is the same object.6 08 8  7 `7 6 > 6 @= d `3 @4 4 P6 R E : P: A ; 0:Private method returning an estimate of len(list(it)).BA Њ@ R A@A R `A Thtl t`B  BC  tB 0C C ("C  Й <0pR  Й <0pR ]shePQ V |type(object) -> the object's type type(name, bases, dict) -> a new typedT `D  pO  @ P EЍV W  0:@W BPY P[ h|`b TE b TeW X @Y  Y R 0U @؎PW D `W l  xxpxhx`xXxPxX|h @s vl t гvppw vppw At  x |x` x `|| x l|| py ز| z h| z |p z رw t wpw X|\ @s A`p  t `|d `{ l|d { زv t гv u v t xv u `v0 t Hv0 u 0w@ t v@ u wP t wP u а(w` t w` u  unbound super object super(type, obj) -> bound super object; requires isinstance(obj, type) super(type, type2) -> bound super object; requires issubclass(type2, type) Typical use to call a cooperative superclass method: class C(B): def meth(self, arg): super(C, self).meth(arg)d 0  Eh0  p D PE 0:  !" #$ %&'()*+, -./012 3456789:;<=>?@ABCDEFGHI J J  !"#$%&$'()***++,-.----/01/01/012/0134567689:;;<=;>?@@ABCCCDDEF------------------------------------G-HIIIJKKLMMMNOPPQR666STUVWXYZ666[[[[[[[[[[[[[[[[VVVVVVVVVVVVVVVV6\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\-]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------- -------------------------------------------------- ------------------------------------------------------- ---------------------------------------------------- ------------------------------------- --------------------------------------------------- ----------------------------------------------------- ---------------------------------------------------- -------------------------------------------------------------------------------------------------------------------- -------------------------------------- --- --------------------------------------------------------------------------------------- ------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------_`abcd-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------ -------------------------------------------------------------------------------------------------------------------effffffffggggggggffffffggggggffffffffggggggggffffffffggggggggffffffggggggffffggggffffffffgggggggghhiiiijjkkllmmffffffffnnnnnnnnffffffffnnnnnnnnffffffffnnnnnnnnffoggppqrossssqffggttffWgguuZovvwwqx_`abcdx_`abcd-----666666666666666y6z{66666----666||||||||||||||||}}}}}}}}}}}}}}}}_`abcd_`abcd_`abcd~~~~~~~~~~~~~~~~~~~~~~~~~~x_`abcdx_`abcd_`abcd_`abcd\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------_66666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666     -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------@,,(,4 xS.title() -> unicode Return a titlecased version of S, i.e. words start with title case characters, all remaining cased characters have lower case.S.capitalize() -> unicode Return a capitalized version of S, i.e. make the first character have upper case.S.center(width[, fillchar]) -> unicode Return S centered in a Unicode string of length width. Padding is done using the specified fill character (default is a space)S.count(sub[, start[, end]]) -> int Return the number of non-overlapping occurrences of substring sub in Unicode string S[start:end]. Optional arguments start and end are interpreted as in slice notation.S.encode([encoding[,errors]]) -> string or unicode Encodes S using the codec registered for encoding. encoding defaults to the default encoding. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and 'xmlcharrefreplace' as well as any other name registered with codecs.register_error that can handle UnicodeEncodeErrors.S.decode([encoding[,errors]]) -> string or unicode Decodes S using the codec registered for encoding. encoding defaults to the default encoding. errors may be given to set a different error handling scheme. Default is 'strict' meaning that encoding errors raise a UnicodeDecodeError. Other possible values are 'ignore' and 'replace' as well as any other name registerd with codecs.register_error that is able to handle UnicodeDecodeErrors.S.expandtabs([tabsize]) -> unicode Return a copy of S where all tab characters are expanded using spaces. If tabsize is not given, a tab size of 8 characters is assumed.S.find(sub [,start [,end]]) -> int Return the lowest index in S where substring sub is found, such that sub is contained within s[start:end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.S.index(sub [,start [,end]]) -> int Like S.find() but raise ValueError when the substring is not found.S.islower() -> bool Return True if all cased characters in S are lowercase and there is at least one cased character in S, False otherwise.S.isupper() -> bool Return True if all cased characters in S are uppercase and there is at least one cased character in S, False otherwise.S.istitle() -> bool Return True if S is a titlecased string and there is at least one character in S, i.e. upper- and titlecase characters may only follow uncased characters and lowercase characters only cased ones. Return False otherwise.S.isspace() -> bool Return True if all characters in S are whitespace and there is at least one character in S, False otherwise.S.isalpha() -> bool Return True if all characters in S are alphabetic and there is at least one character in S, False otherwise.S.isalnum() -> bool Return True if all characters in S are alphanumeric and there is at least one character in S, False otherwise.S.isdecimal() -> bool Return True if there are only decimal characters in S, False otherwise.S.isdigit() -> bool Return True if all characters in S are digits and there is at least one character in S, False otherwise.S.isnumeric() -> bool Return True if there are only numeric characters in S, False otherwise.S.join(sequence) -> unicode Return a string which is the concatenation of the strings in the sequence. The separator between elements is S.S.ljust(width[, fillchar]) -> int Return S left justified in a Unicode string of length width. Padding is done using the specified fill character (default is a space).S.lower() -> unicode Return a copy of the string S converted to lowercase. S.strip([chars]) -> unicode Return a copy of the string S with leading and trailing whitespace removed. If chars is given and not None, remove characters in chars instead. If chars is a str, it will be converted to unicode before strippingS.lstrip([chars]) -> unicode Return a copy of the string S with leading whitespace removed. If chars is given and not None, remove characters in chars instead. If chars is a str, it will be converted to unicode before strippingS.rstrip([chars]) -> unicode Return a copy of the string S with trailing whitespace removed. If chars is given and not None, remove characters in chars instead. If chars is a str, it will be converted to unicode before strippingS.replace (old, new[, maxsplit]) -> unicode Return a copy of S with all occurrences of substring old replaced by new. If the optional argument maxsplit is given, only the first maxsplit occurrences are replaced.S.rfind(sub [,start [,end]]) -> int Return the highest index in S where substring sub is found, such that sub is contained within s[start:end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.S.rindex(sub [,start [,end]]) -> int Like S.rfind() but raise ValueError when the substring is not found.S.rjust(width[, fillchar]) -> unicode Return S right justified in a Unicode string of length width. Padding is done using the specified fill character (default is a space).S.split([sep [,maxsplit]]) -> list of strings Return a list of the words in S, using sep as the delimiter string. If maxsplit is given, at most maxsplit splits are done. If sep is not specified or is None, any whitespace string is a separator.S.partition(sep) -> (head, sep, tail) Searches for the separator sep in S, and returns the part before it, the separator itself, and the part after it. If the separator is not found, returns S and two empty strings.S.rpartition(sep) -> (tail, sep, head) Searches for the separator sep in S, starting at the end of S, and returns the part before it, the separator itself, and the part after it. If the separator is not found, returns two empty strings and S.S.rsplit([sep [,maxsplit]]) -> list of strings Return a list of the words in S, using sep as the delimiter string, starting at the end of the string and working to the front. If maxsplit is given, at most maxsplit splits are done. If sep is not specified, any whitespace string is a separator.S.splitlines([keepends]]) -> list of strings Return a list of the lines in S, breaking at line boundaries. Line breaks are not included in the resulting list unless keepends is given and true.S.swapcase() -> unicode Return a copy of S with uppercase characters converted to lowercase and vice versa.S.translate(table) -> unicode Return a copy of the string S, where all characters have been mapped through the given translation table, which must be a mapping of Unicode ordinals to Unicode ordinals, Unicode strings or None. Unmapped characters are left untouched. Characters mapped to None are deleted.S.upper() -> unicode Return a copy of S converted to uppercase.S.zfill(width) -> unicode Pad a numeric string x with zeros on the left, to fill a field of the specified width. The string x is never truncated.S.startswith(prefix[, start[, end]]) -> bool Return True if S starts with the specified prefix, False otherwise. With optional start, test S beginning at that position. With optional end, stop comparing S at that position. prefix can also be a tuple of strings to try.S.endswith(suffix[, start[, end]]) -> bool Return True if S ends with the specified suffix, False otherwise. With optional start, test S beginning at that position. With optional end, stop comparing S at that position. suffix can also be a tuple of strings to try.0e`xH 8)`0<*MxDL,`w\)|pMl4}(E0~<x mU( x  f( P4@@` x P(d XYLY`mYlx0PP؆PQ RlTT`UІRȆ S $YpZЛU{WO Y zUZ[\0\f ;unicode(string [, encoding[, errors]]) -> object Create a new Unicode object from the given encoded string. encoding defaults to the current default string encoding. errors can be 'strict', 'replace' or 'ignore' and defaults to 'strict'.dp Y(OfR xp/jl  pE@`О0D 0:     ````   ```в@pв$ L pA@`гl$ L PpA@`гxxsubtype is an example module showing how to subtype builtin types from C. test_descr.py in the standard test suite requires it in order to complete. If you don't care about the examples, and don't intend to run the Python test suite, you can recompile Python without Modules/xxsubtype.c.,'&thPD#,$p#P#@,'&t$|8$h$ /__init__.pyc/__init__.pyo/__init__.py.pyc.pyo.pyfind_module(fullname, path=None) -> self or None. Search for a module specified by 'fullname'. 'fullname' must be the fully qualified (dotted) module name. It returns the zipimporter instance itself if the module was found, or None if it wasn't. The optional 'path' argument is ignored -- it's there for compatibility with the importer protocol.load_module(fullname) -> module. Load the module specified by 'fullname'. 'fullname' must be the fully qualified (dotted) module name. It returns the imported module, or raises ZipImportError if it wasn't found.get_data(pathname) -> string with file data. Return the data associated with 'pathname'. Raise IOError if the file wasn't found.is_package(fullname) -> bool. Return True if the module specified by fullname is a package. Raise ZipImportError is the module couldn't be found.get_code(fullname) -> code object. Return the code object for the specified module. Raise ZipImportError is the module couldn't be found.get_source(fullname) -> source string. Return the source code for the specified module. Raise ZipImportError is the module couldn't be found, return None if the archive does contain the module, but has no source for it.4 & `'P8(X) )`(0 zipimporter(archivepath) -> zipimporter object Create a new zipimporter instance. 'archivepath' must be a path to a zipfile. ZipImportError is raised if 'archivepath' doesn't point to a valid Zip archive.PR E+*8+D PE 0:zipimport provides support for importing Python modules from Zip archives. This module exports three objects: - zipimporter: a class; its constructor takes a path to a Zip archive. - ZipImportError: exception raised by zipimporter objects. It's a subclass of ImportError, so it can be caught as ImportError, too. - _zip_directory_cache: a dict, mapping archive paths to zip directory info dicts, as used in zipimporter._files. It is usually not needed to use the zipimport module explicitly; it is used by the builtin import mechanism for sys.path items that are paths to Zip archives.N@?0HX`8 rdiff-backupPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDING0$070<0M0T0a0v0003a4444444 55-5A5K5]5n55555555566626C6P6b6s666666667/77777788"848E8R8d8v88888888899%9;9L9[9q9x9999999::4:E? B5i5547::::08h111^5558909=9J9W999;>>\?@l 0:0911v22333334A4P4z4444/55?6Z6666667 79777788;#Z>> ??P??P41'2x2555668:K;X<\<`>?.?p`111"245"67T89999999::: ::::: :$:(:,:0:4:8:<:@:D:H:L:P:T:X:\:`:d:>0000,?010P0\0^12222T3c3J7Z7d77c:? ?e??000A0n000 114111!23282@2E2U222J33 41484~4445K5555556<6f6666677188H99999];;;/<=b===+>>H?{?????00)0f00 11111"1=1L1W1i1v11111111111 22(262;2N2a22223344k4r4444455 6%6{666666667777888999a:k:::::::::T;Y;CO>q>{>>>>>3303;3T3i3p33334 4m4t444455599$<(<,<0<4a>m>r>w>>>>>>?a?}??????????????0000,01060;0R00 1=1w111^2223K334\44#55?69 999(9-949K9i99::$;.;G;S;c;;;;<<<<<===C>M>W>? ?2?7?X???x0$0B0G0N022223C3g3q33334&494455666666q777,868@8c8q8869D9N9999:::<<w>>000M3\3s3333&4J4T4s44444,5;5P577778 878A8K8888Q9[9e9999j:o::;*;<<*<==+====== >>">'>H>>>[?h?w????M0T0r0w0~0111122,2|333334444Z5_555666677788$8=8888899 92979X999k:x:::::=;D;b;g;n;;;6<;7>}>>>>j??? |O0r0w0011111O2z223*3/3334f444<5556E6{6677v77788r888$9b99:h::*;;;2<<<3===B>>>H???00j000Q111111122:2?2222233&3,3V3m3t33333344R4Y4o4t445P5[55566666737O7n777778~8888888#:*:I:b;q;w;;== >>(>,>0>4>8><>@>D>????@x11112o333435855555'7V7[77779E9m999:%:F:M:`:e::::::;;;&;F;K;x;;;;;;;<<+PJ0O0e0l00000001Z1_1Y2^2v3333333 44"4'4A4F444444555555555677889y;~;;;;;;;;;<$<<<<=6>C>H>>>>>>>@?`00^0c01111 1$1(1,1011123W3]3c333344!444444455[5b5h556$6:6A6\6t66667Q7f7k777777 888;8@8E8J8O8o8|88888888888888999*979G9T99999*>w?ps00000&1,121^11112 2'2:2?222222223<3S3Z3`3w3~333333333444)4@4F4R4l4s4444a5f555_6f6666778H888889-9k99999<:H:M::::;N;;;;"b>>>>>??%?>?E?X?]?r?y???000(1J1112 222222222323\33334(43494C4P444444 5'5s555555566666E77778$888I::;);<;@;D;H;L;P;T;q;v;;;BE>>>>>>0?5?H?M?l?q??0 000000001 111&1,11181?1E1O1T1i1o111.2222234 434c4r4z4446666Y7`7r7w7778"8'8I8P8e8l888P9Y9^9z999W:c:::::::;.;Q;;;;;; <<:B>>>>"?>????TE0H2L2P2T2X2\2`2d2h2l2p2t222333333334 4]4555555556z77|777777777777777777777777777777777888 88888 8$8(8,8::$;d;;;;;z<>>>>>>>>>>>>>>????????$U0\001111222 23354444 4$4(4,4044484<4@4D4H4L4P4T4X4\4`4d4h4l4p4t4x4|4444444444444444444<7b777777898E8888888$9::-:e::::: ;%;5;:;?? 0%00]22233-3I3h3333334.4Z4_4t444445 6676B6}6666'7,777777<8d8l8q8~88888859z99999::;9;I;N;n;w;;;;>>O>X>]>d>>>>>?!?,?c?o?|?000911]2u22222z333333334)4t4y4T5Y5-6W6:7?7789:;;z;;;;;;$<+>>>>>>?e?l???X 0#0*0000@11111^24444 5505555555q777777:U:s<<<<==>%?C1a1f1111%2,21272@2H2L2P2T222 3333m4r4444?5D556.636677777H8_88888m9t999):1:6:P:W:j:|::::9;>;;;;;;<4<:<>->C>Y>`>e>>>>>>@?U?j?s????  0090B0b001!1C1V122,23222333:4^444445i555566.636L6l6v6666%797W7n777J8O8U8Y8_8c8888#9V9999:F:r:w::::::::;;;;;;< <<<<&<0<5<;E>i>>>>>>>??"?B?T?[?p?w?????0 00$0)0G011 1'1@1S1111111202v222222 33%3j33F4\4444555 555555?5T5w5556#6(6R6Z6_6k666666666666B7778L8c8h8888889$99:e::2;|;;;;;<_<<<<<=l===B>>R??@:0000001N1S111111122222222333333333333444-4=4M4]4m4}4444444455#535@5M5]5m5}5555555566#636C6P6`6p6666666667:7?7\7z777788o8t88888i9n99999?:D:}::::Z;;;<<<<<====>e>>>P 80M0S0000000191?1D1w1111111272Y2_2d22222233$3W3y3333334:4\4b4g44444455$55556%6K6{6666 7+7K7{777A8G8L8k88899B9G9s9y99999::3:9:{::::::;;V;];r;y;;;;;@>>>>>>>>?+?6?O?Z?o?v??`00J0Q0i0o0000011S1X1111122223393c3h333334444W5]55555B6G6s6y666 77;7B7773888888K9P9999+:0:$;);R;W;;;;;< H>>>>Y??????p00000217111112 3@3T3Z3x3}33.4F4L4l4q44"595?5^5c5556@6F6y6666;7`7777 88)888888#9(9999S:o:u:::::T;v;|;;;<<==O=U======>#>??????B0H00111$1,111b1g12222.343m3s33344445666666+77778z888889y9999999J::::::;";z;;"<<>%>4>>H?O?h?m?z????????00^001 191?11%22222333944455556 6W66666k7'8,8 9999 :::*:S:X:::::!;S;X;;;;<<<<<<<<<<<<<<===T=n==>*>/>Q>y>~>> ?B?G?n?w?|??????00 050<0O0T0000031111L2222353:3333333g44(5U555\6b667 7W777r8888899@9G9: :9:>:a:::::;4;Y;d;;;;;;;< <%<*>>>??????????00 0071J1q1#2(2.252222 3'34 44444 4^4e44444444444445>5U55566e6l6s6z666666666677074787<7@7D7H7L7P7T7X7\7`7d7h7l7p7t7x77778888 8$8(8,8084888<8889 9=9U9q9999999999999 ;;;;(>->>>L 0 33O3333`6e6}667 7 77+818;Y<=====>> ?:???d?????@01141;1v6{667888888 9;;====>>> >>>`#1(1s2z23445555555556666 7 77]8b8v888888:;;;<<< <+<1>p11 252:222233333)4E4a44455Q555&6D777888+9Q999999::%??????00+1S1`1q12223,3=3P3U344455Y6^66667778889 9:O:T:t:y::::4;9;R;;;; <<:<<>>8?_?d?|????? 00000D11112222243333 4=4i475\555)6.6H6c6666(778:8?8d8s8{889999D:c:h:j;;9<<>>>i?????0p100t12@22222W3\3[5`5i5n556 6V66677778888 999:::::1;==*?/?H?W?{???????@00111111s2{22222233C3I333334U4Z4z445556t6y666666&7+7n777878Q8X8y888889+909`9g9999999:::::;;b;~;;;;;;k<<<<<<<=e=}======> >,>1>T>s>x>>>W???P00i00001:2m2r2222&3-3E3K3s3x333334I4N444'5.5M555667777'8,8D8Y8`8u8|888889#9:g;n;;;;;;;;;<>?3?a?f?`  0040F0a0x0}000001Y111111 2(222233[4`44444444444 5!5*525;55556667*7/7e777888%9:::::;;;<<-<2666677/7:77777E8L8":`:z::::;%;/;6;?;I;g;n;;;;;;;<<<(<@ >>!>n>s>>>?Q?V???????0 0Z0_000 1111113!373Q3u3z3334444444455555J6O6q7v777788888)9.999999>:C:::::;";';;;;;<=======>>!>>>>>>9?>????????420`0t0|00000011L2Q2r2w222222223%3:3V3c3q33333334 414D4J4`4k4|44444444444445 55+515:5A5N5a5u5z55555555 6666657C7Q777828;8@8L8S88888888889)919N9T9h9p9u9:::::; ;;%>7><>\>c>v>{>>>??#?H?O?U?\?c?j?p?u?|???? 0113333334B4K4 55b5g55555"6)6>6E6*717F7M7777789#989<9@9D9H9c9|999999 ::):|:::';;;j<4=9=C=>>1?8?D?a?i????022<3E3W3r3y3333333324f4m4445#5*5V5y5556!6*6/6R6\6e66666778 9e9l9::.:f:T;Y;l;<<<#<<<= =J=S=y===>?{?????2223333364=4R4Y44)505D5I5\555566677&7-7?7U7\7o7w7|7\88888 99::K:T:i::;;;~<<<<===">E>???T60k00m1w11111122[5g5n5t5y5557 77S7Z7 9094989<9@9D9H9L9P9T9X9\9`9d9h9l9p9t9x9|999999999999999999999999999999999::: ::::: :$:(:,:0:4:8:<:@:D:H:L:P:T:X:\:`:d:h:l:p:t:x:|::::::::::::::::L;P;T;X;\;`;d;h;l;p;t;x;|;;;;;2<;<<<<<<<==>>#?,?M?S?i?p?{??????N2^2u2222223363;3U3a3h3}3333333333 44)4C4T4e4k4444456'636W6c6788E8l8888#9U9999: :(:/:W:z::::::::;";L;j;q;;;<<6>>>K>q>v>>>>>>>??Z0z000000011<1l1q1c2}22233 33$3>333334 4V4p4x4~44445O5v55555U6a6o6v666-727A7X7]7}77777777778"818H8M8m8r888888888 99!989=9]9b9q999999999::(:-:M:R:a:x:}::::::::;;;=;B;Q;h;m;|;;;;;;;;;<<=>=>B>Q>h>m>|>>>>>>>>>??=?B?Q?h?m?|?????????00=0B0Q0h0m0|0000000001111:1I1l1192>22 4(494>4M4h4m44 5'585=5B5G5\5p5 666!6)61676A6]6666677}77777777 8/848G8O8U8[8e888888+9@9H9U9b9999I:|::::::;;;;;;9<@<]>>>>>>7?????$1&101B1K1Z1a1j1y11111111122.2K2_2222222333(3/3>3E333333-4B4I4W4h4m4444455955555556O6q66666 7#7Q7Z7i777778'8,888849@9O9\9-:A:I:W:::::;&;h;;;;; <7<><]>*>@>r>w>>>>>>>!?*?9??????? 00)0000000111122)2G2^2g2v2223$333B3K3Z33 4)484W4r4{4444444525;5J5u556 666A7J7Y77778 88a8j8y88888839:9[9`9999999::Q:Z:i::::;;);D;;;;;; M>R>e???0~00000011O222222233B33454U4u4444455#575D5R5c55666$6z66666e7k7|777777+828>8G8F99::::; ;;%;E;R;[;d;;;;;C>]>e>n>>>>>!?'?3? >2>q>>>>???P00A0H0a0f03111:2Z2 33-32344/44444445 595U5555566C6J6o6v66666667&77777888<9B999999:-:2:Q:V:<<<<= ='=`(0-0w00"1'111111'2.232M2R22234 444 5555$5j66677*7/7p7y7~78899999::;0;6;;;f;;;XX>>>%??p001.135:5666 6$6(6,6064686<6@66666889;;;;;;;;;;;;;;<<< <<<< >2>7>X>>>>>>?#?8?$???"0s000111 11111'2S2f223333333333446!6j667777777889X:\:`:d:~:::~;<)==m>r>>?$?p?t?x?|??????????????????????????00}000+1222222222'3i344444555$5)5_55555!6d6666666D7v7777(8888888889j99?;R;;;|<<<<<<<<w>??8(0y0D1H1L1P1T1X1\1`1d1h1l1p1t1x1|1111????0b01D1u13N44444444444444444444444455#5*535B5T6666.777 8]88a9u9:g:q:w:;;>> >>>>>'>>>M>|>>??!?8?e>>>?$?;?????0000112#2@2E223]3333334#4*4A4H4_4f44F55555 66}66666677!7&777777 8858<8j8o888&9A9T9_9999 :H:f::::';9;>;f;~;;;< <<<<<<<<<==-=8=Y=`=y=======>>>>>>E?????? l)0.0t0y001(1Q1V1z112W33336/6a66666H77779999.:5:H:M:y::t;02>~>>L?S?o?030q0x000t1122 3W333g4556@666M777778o8888999 ::!:P:y:::: ;;;e;;;;; <<%=I=b=i==>f>>>? ?#?2?=?F?R?Y?a?}???????@80n000}333333M4R4z4444444 555:55556-6A6F666666=7777$89992:I:::;;;>>>@?E?P|00@1E1112233^4c455566627777779$979<9O9T999999999::;;<<9=>=====>>>?i?n???`K0P00P12222Y3|33333333G4445 5?5D555y6~6=7H7_788)9.999):.:z:::::;;; <.<5>>>4?9???pX1122.343D3K3t3y3333334 4 4$4(4,4044484<4@4D4H4L4P4T4X4\4`4d4h4l4p4t4x4|44444444444444444444444444444444 66]6b666y7~77778.838x88889%999;;<.>I>O>U>l>p>t>x>|>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>??? ????? ?$?(?,?0?4?8?9V9g9n9~99999999 :9:_:n::::::::;;,;:;I;U;[;q;w;;;;;;;;;;< <<<=?>>???0200;2e2v22224455566667G7q7z777777 8"8]8$9N99999: :9:A:G:r:x::::::;;;;;$<<<<<< =1=K=====>>:>L>R>t>>>=?j?q?0T0Y0000000 1*1H1b111#2*202M2n22222223U3o33X475R5p5555555566!6-63696Z6`6f6666666777 7$7(7,7074787<7@7D777\8a888889C999999999 ::?:F:K:k::::::;\;;;5<<======&>+>G>s>x>>?????0 00,020Q0Y0_0e0p000000001.1E1L1e1l11112!242j2q2w22222!31393?3E3Q3V3k3u3|333333 44645Y55556 6D666O7U7$8@8R88909M9R9W9\99999:::.;3;h;;;;;;:>\?~00+10171P1W1}1112 2&2q2|22222233Z3y333444#484?4_4f4{4444444445#5S5_5x55555556666677768<8n8y88888%909b9m9999:::;;;;; >>>>>> ??N?????o0t000001 1"1)1>1E1j1q111111112 2&2-2B2I2222223G3q33333344I5n5u55555l6q66]7777777777788 8,838E8J8y888888999:::::Z;;;<1<<=3=:====>>>>??2?:?D?P?o?}????0U0Z0w0001%1,111122\2c22222333J4O44 5/545f5555W66R7777778889999: :::':v::::.;3;=;h;m;t;;;;;;< <T>Y>>>>>> ??????? 0001!161=1h1o1111111112 2`2e22373334e4j4o44444(55555666I6U6777U88880959:9f99C:w:|:::::v;;;;<<<<====>>>1>F>[>p>>>>>>>>2?8?K??????$0020k0p0u00000111T1Y1^11111122M2]2h2m2s2y2222222222222222223%343C3R3]3g3o3w3333333339444 55"5<5p5w55555556616>6`6g66666)747X7_7777777788(898>8;9B9\9h9o999999:::::;;/;<;A;t;{;;;;<<<<==0=5==,>>>L? 00C0H0j00000 1*112/272E2l2}2222333A4H4p4v44$585@5N56-626J66666677777888889959H9O99_::[;;<<<<0?\?c???0)000G0`001101o111t222)30333C4K4W4`4f4{444444485?5Z5a555+6M66j77788888;;B;V;^;< ==0=7=V=]==>>->3>>>>>>@01$1@1m1t11111 2262555556%6H6666&7/7E777772878R8889i98::::;<<<<==*>/>??,?7?D?J?}??????P40o000001'1G1g111111 2N222'3=3r3333334444R4c444445>5C55566~77777889999:':5:C:Q:_:s:::::::::;;";6;G;U;f;w;;;;;;;;;<<#<1>>0>A>O>`>n>>>>>>>>> ??,?=?N?b?s?????????`0 040E0V0g0x0000000011(191J1[1o1111111 222233333444424H4O4V4h44515555555 6$616b6k6u66666617778,8:8A8888M999-:G::::;=;h;};;;;<(>7>G>>>>>>?W????p00000000001/1611Z2a2q2v222A3{333333.4D4I4466j77777888z888888 99)9.9:>1>o>>?E????????000 000l0p0t0x0|000000000000111 11112g3y33333444'7e777777778r8888,9E9K9`9g9|9999%:+:?:F:Y:_:::::::*;J;j;;;;;@7>???|11111d3333 434K4444G5l5555666666X7m7{7777788808=8N8[8l8y88888888899 9-9>9K9\9i9z9999999999::.:;:L:Y:j:w:::::::::; ;;+;<;I;Z;g;x;;;;;;;;;;<<,<9 >>(>0>6>A>G>Y>f>n>t>>>>>>>>>>>>>>??!?)?/?;?A?S?`?g?m?y??????????????000"0(040:0L0Y0a0g0r0x0000000000000111"1-131E1R1Z1`1l1r11111111111112 222'2-2?2L2S2Y2e2k2}2222222222222333 3&383E3M3S3^3d3v33333333333334444414>4F4L4X4^4p4}44444444444445555+585?5E5Q5W5i5v5~55555555555556 66$61696?6J6P6b6o6w6}66666666666667 77*72787D7J7\7i7p7v7777777777777788$8+818=8C8U8b8j8p8{8888888888888899%9+969<9O9`9o9v999999 ::H:g:m:u::;R;];;;;;B6>J>Z>o>>>>!???1060Q0V0|000000011p11111112F2j222223[3b333-4E4444444445*5X5h555556"6>6N6e6u66666667&797777M8n8]9~9:-:::s;<< =G=L======U>\>v>}>>>>> ?%?K?P??? 60;00000101n1s111111 222C2H2i2t222o3z34N44444 55,515r5w55555555556 666#6(666;6@6E6T6Z6l6p6t6x6|666666666617f777777777888888%9j9o999999::::::;;s;x;;;;;<<0A>>)?0?[??,0000A1F1{1111 2222:2?2h2m222222*33333&4^4c4444455E5k555556X667P8`8k8p8~999I:,;1;q;;;;;;;;;;;;.<<<===y=======> >>g>y>>>>>>>?*?C?J?x?}???30[0`0000$1)1Y1m1112 20272W22222222233T333333344445n5~55555555566-626?6Z66 7*767{7788899999:=:E:::::::;%;a;h;;;;;;8>n>v>}>>>>>>>>"?*?c?j??????t 0*0<0S0Y00000011>1V1m11111122>2w22222233S3j3333333334%494B4Z4e4p44444;5P5h5n555555566666^6i666666=7P7|77777<8L8_8w8}8888888,9999999:: :0:B:R:b:s:x::::::::;;";';1;L;j;p;;;;;;;<<-<2<@0>?>q>>>>>? ?=?N?W?]?????Q0000001#141@1]1e1k1 22&2-2233&3H3P3_3o333B4G4S44444445566/646e6k66677Y8^888R9W9t9x9|999\:t:;;;;;;;Q>e>>>>>>)?.?_?u???00000=1223344444445q5x5555555 6 6(656W6`66666667!797K7R7777777 88!8:8@88888 99+909F9M9`9e999999*:/:_:d:::::::;;<;A;Z;_;w;;;;;< <<<'>.><>H>R>>>>>>>>>??N?V??0@050L0`0g000000000001k111111111111 242\2e2r2}2222222233.333[3s33333333334 444(4-4A4G4M4U4q4w4}444J5c56U6666666677-7;7O7c7w7777777!858=8K8q888859;9C9J9W9j9y9T:_::: ;";*;7;;;;;< <%e>>>>>>>? ??+?7?3n334:4E4x44,5=5`5q55555555566V6r6z666 7777 7$7y777777777778%8,848:8N8U8]8c88888,939r9999999,:::::::;Q;;;;;<<0<|<<<==$=>===>> >:>>????P0i0t000111152222224:4A4V4]4w444e5555h66666D7w77%8v8888Y9999%:1:j:v:::::;1<<<5====== >>>>> >$>(>,>0>4>8><>@>D>H>L>P>T>X>\>`>d>h>W???`0 00)0.00122i34`445 565555N6U6f6o6v6666666N7U7h7{777.848:8A8J8t8y888899*919C9H99:"::::;;;;$;/;Y;;;;;;;;;<<^<~<<<<<==2=9=~=====>A?Q?n?x??????p 0000>0I0W0c0m0v0}000000000000j11111]2222223343;3R3e3k333333444:4c44 55o5546[6n666666667 7)737777777777778'8>8O8U8r888888998:E:P:V:^:r:z::::::::;u;;< <_%>t>>>p?0@0H0_0e000000001s1111122 2&252^222233n3t333333333 442444444444555#525A5_5f5566.63677 88!9J9O9w9|9;$;);;;<<<<|===m>>>f???@=0u0z01Q1V124292222222333<3B3a3g33334#4%5T5Y555566 61676=6{666677777777788-848h8v888888899!999@9J9S9n9~99999999: :B:g:l:::::::::;;4;N;h;o;;;;;;;;< <<<,@>]>d>}>>>>>>??0?7?N?S?a?{??????(0!01090I0q0x000001*11111111%2=2v222*3T3333333333434?4E4~44444S5d5s5z555555556+6B6G6]6g6q66666!7F7X7z7778889!99999999::t:::::::::;;;;;<<<>&>+>j>o>>>>>??0?5?J?Q?a?q?????"020f0{00#1(1Z111 22&2H2M2l2{2222 363|3333 4y444445"5'515N5S5X5555556656L6c6z6666666 7747C7778G888888!9/949J99999:/:4:k:::;6;~;;;<<4<; >:>>>>>?:?P?Y?r??0 0%0W0000000/111111 2i222223Z333333J4Q4W4^444444444444555 55555'545J5|55566"6o6667"7Y7`7777(818|8$9d9i99999 ::!:3:8::::;%;8;h;;;>Y>=?`?e???? 0h0011m1M2W2_2h2222222#3(3A3P3_3f3u3|3333333 44'474M4S4f455$5F5~5555I6`6i6u6~666666 77S7778N8T8j8p8x8888889)909u9~9999:!:):F:N:q:x:::::; ;f;k;;;;;;;<<2<9<<<<<<<)=.=Q=X=s=z===== >>}>>>>>>\?t:0D000000111111111111)202C2H2[2b2t2|22222222 33&3+3y333333*414D4I4]4d4v4~444445 55$565>5C5K5X5_5555556 666:6A6T6Y6m6t666666777-747F7N7S77777777 88&8.838I8Q8V8o888888888m99':N:::::::::;;;. >>9>@>S>X>j>q>>>>>>>D?[?t????0K0P0k0000000A1K1111I2b2i22222223E3W3]33333334'444<4D4W44444444444445535E5N555555566"7V7j7r778%9*949:g;;>>>??l00k001#1A1283D3g3(545W57-7b777777#8(8Y8~88889:':M;`;e;;;;;=>>>>>????*11113333344I4w44555R5X5H7\778888899 99 9(90989@9H9P9X9`9h9p9~999999[::;;;;;;;;<<'<0<8)>1>?>Y>`>w>>>>>>>>? ?M?????? i0p0000 11<1\1q11111111192@2S2Y2u222333?3E3R3|33334M44a5j5w5}5 66'6Y6`6y66G7R7X7777778-9L9S9x997:Z::;;;;<<=<=A=b=g======>$>>?(?/??????0,:0c0h000I1P1p1u19:X<]=I?P?b?g??@$0+0=0B00000000A111111o23 44,414X4_4r4w4445556]6b6}66666F7u777 8888888Y9a9z9999999!:*:/:;:D:I:v::::::::::;q;v;;;A>-?T?o?v?????P0I0S00001 171I1v1111233 4R4X4h4445{555566616S66617877777788~8888888"9'9>9E9e9j99999:":::;;;<I>>> ?8?K?V?|?????`00B0G0S0p0~00000111I2O2_233(3A3L3333333H4M44445$5555556 6!6(677788899;;;; ==/=u======>:>? ?*?p.0a0h0000000141;1Z1v12 22>3H3333555I7U7u7z77888999_:h:t:::::2~>>>>>T0Y00000171B1b1l1111G2o22,34393334#4l5t5y55588/8999$:,:1:::: ;;);0;;;;<<<<$=+=D=K=^=c===,>>????T33666P7U7-8:899:::::::4;<;A;;;;=======>K>P>???D?\3333334 4414;4A4U4\4444444444 5555.565=55555D6666666667 77/7B7T7q77777777778'8,828@8J8S8]8b8|888888899)9/979B9H9U9p9v9|999999999: ::/:F:X:z:::::::: ;;C;M;T;j;;;;;;;;< < <87>`>d>h>l>p>t>x>|>>>>>>>>>>s???[0M111112>2O2222233'323K3V3o3z33333333 4#4.4G4R4]4v444{55$6+6G6o6#77)88=999q::e;<|<??$0w0000 1111&1-181=1H1M1X1]12 223334"4=444q55555556677.838=:B:l:p:t:x:|:::::::::::::::::::Z;b;i;;;<$<=='>.>4>f>>>>>??F?L?b?g?|????0b0001181B1n1111112(2-2F222>3o3334 4%4*4E4K4a4k4444444445 5%5+5A5L5e5k5555555556 636M6j6~667"7?7S777 88~88888899W9~9999:::::::;9;X;];b;;;;;;6/77778 8$8w89|999:::4:9:>:W:\:i:::::::;;;#;G;P;w;;;;;h>>>>>?800D1[1h1o1|11111!262@2y22223&3-323K3P3}3333334!4<4p4444555556#6<6A6f6k66666667 7,717K7P7q7~77780858N8X8x888888889=9B9c999999 ::J:O:f:k::::::; ;*;/;:;?;k;p;;;;;;;;;+<0>#>(>L>Q>>>>>>>??\?a??????? 00N0t0y0000001k1z111111#202230353H3L3P3T3333333344O44444'5<5k5y5556R7W7777888 8$8(89 99,979<999]:g:::#;*;@;E;=====O>T>h>l>p>t>x>|>>>>>>>>>>>>)?0?B?G?m?r??? u0000&1+122 33y333333 44-424Y4`444444$52595f5o555556%6.6?6666677777 88#8(8F8u8888888!9A9O9z999999:F:d::::::::;;;j;o;;;#>I>P>b>g>???? x11112 2#2*2j3p3333344 4S4?5F5l5s55555`6f6w6|666688899F9M9_9d9:::?=K={====>>??0 00 11.131l111122 55.535l55556779 9n9s999 ::$:):L:c::::::::;>;[;j;q;;;;<"&>>>>> ???{???????@ &0<0D0I011112 222$2G2L2e2222223*3e3{33333344Y4h444444444444445)5L5`5555o6x666666/77S:X:t::::::;;L;Z;b;;;;;;;<"<<!>&>P>X>u>>>;?B?L?P?T?X?\?`??????P 00$0j0p00011%1+12 2,232M2T2Z2h2233"3:3@3345<5X5m5t55566777V7^7f7h8m8888888888 99)9:9G9X9e9v99999::::::;+;1;9;A;F;R;n;s;;;;;;;;W$>6>>3?^?y????` 01$1*101:1U1p11!2*20262@2m22222M3X333333 44'4/444456I6c6r7y7777 8"8-8F8Q8i8t888899L9W9s9y9999: :c:q::::::;;#;+;6;E;;;;'a>>>"?0???p 50u0005112e222%3e333%4e444%5e555E6667E777588899J9~9999E:::5;;;;;7*>>??? x0)1.131F1X1]1c1j1t11111111-2k22+333:34(444566;7@7r9999: :@:E::::::::;';,;1;K;P;;;;;;;; <<<,<1>#?*?Y?`? q0w0000001#1z1111122 33:3@3Y3_3334 4C4444)545L5R5v5{555!6&6K6P666 7%7A7F7k7y7777778-8M8n8v8888888 9O9}999999 :+:C:I:::;7;<;; <[g>l>q>>>>> ??#?J?U???? (0080?0Q0c0v0{000000001111F1X1k111122`2e2j222222233;3I3y334A4444 55{55555555555566 666"6-626=6B6M6e6p6}66666637A7j7q7777777788!868M8U888888889p99:(:J:O::A;;;I<<<=@=N=n=s=x===>>>>C>H>h>>>>> ?2?7?P>^>>>>J?X???? "0001)11112222j2x2223,3b3p334(4b444c5q5556,6667d7r777L8Z8z88888889_9|99:::::::2;u;z;;;;; <<5>>>>?>?F?p?~????? <0M000000%1[1111 2202f2222 3>3X333333 434t44445M5555566/6:666666667.797T777777E8S888888o999 : :9:}::::::';N;;;;;;<<<<<<<<<< ===)==>(>->>>#?(?H?L?P?T?X?\?`?d?h?l?p?t?x?|????????????????????????????????? [0`0e00001 1%1*1112-2E2J2O222233$3Q3V3333333449444444*5259566V6w6~66666{777 8m9y999-:7:N:!;E;;<$<.j>o>>>>>>>?g?t???????? 00/0000122"2,22292A2G2O2g2y2233:33333333333344)4I4T4Z4d4j4q4y44444444 5&5T5c5h5w555556&6+6:6I6X666666777777*8O8_8e8j88888999S::::;8;O;_;;;;;< <$<6.>w>>>>>>*?3?=?????? 70K0^0l0000#1I1X1}1111142T2y22223=3M333344444W5n555555686H66666697t77777 88:8y888888888819{99999999:::::5:::?:D:j:::::;;;;;?;F;;<-<;>>>>>>>?2?H?d?l??????? 020=0n000000 11H1P1i1p11111112%2022222333/343i3o3333>4Y444445!5:5A5T5Y555555C6t666666 7&7S7[7t7{7777777 828=88889 9"9)9;9@9999 :>:V::::;B;_;f;q;;;;;;A>>>>>>>?0?Q????? 40 00,0@000001 111;1V1\1o1y111111111122,2J2v222223Z3}333333314[4r444445Y5v5555$6R66667X7b7777:8Y8h8u88888919;9Z9q99 ::9:T:}:::::::;;&;K;n;;;;;;;;;;< <<<<<<<<;>@>Z>v>{>>>>>>>>>>>>?7?C?[?e??????0 X 0!050M0h000000 1"1:1R1i111111112Q2Y2_2j2{2222222222222222222233 333!3'3-3;3333333344A4j4t4~44445 555&5+52575<5J5O5V5[5`555555 666$606<6J6R6_6z66667 77$727:7J7R7[7v77X8h88#9Z9999N:[:e:::::::;!;B;G;;;;;<T>>>???????@ @0010G0O0V0u111111112'2C2L2Z2h2~22222222233B3b3333a4x44444445 5!565D5K555z666666677#767=7L7P77777 88,8Q8h8|888899 :$:7:=:::+;v;};;;$a>p>v>{>>>>>>>>>>>>>>>>>>>>>> ????-?P?W?]?l?s?z?????????????????P 00 000(00050C0N0j0q0w00000000000000111#1/161<1K1W1^1d1s1~11111111111111222$2*292E2L2R2a2l2r2x22222222222222 333%31383>3M3X3_3e3t3333333333333333333334 4444'40484=4K4W4\4a4f4k4p4v4|44444444444444444445 55 5+5F5L5R5a5m5t5z55555555555555 666%60666<6K6W6]6c6r6~66666666666666777#7)787D7K7Q7`7l7s7y77777777777777888#8/84898>8C8H8N8T8Y8^8j8s8{888888888888888899)959:9?9D9I9N9T9Z9_9d9p9y99999999999999999: ::2:=:C:H:M:R:W:]:c:h:n:z:::::::::::::::::;;;";<;H;M;R;W;\;a;g;m;r;w;;;;;;;;;;;;;;;;; <<<<-=C=H=N=T=Y=^=j=s={================>>)>5>:>?>D>I>N>T>Z>_>d>p>y>>>>>>>>>>>>>>>>>? ??8?>?C?H?M?R?X?^?c?i?u?~????????????????` 0 00070C0H0M0R0W0\0b0h0m0r0~00000000000000001 111(1B1N1S1X1]1b1g1m1s1x1}11111111111111112 222#212K2V2\2a2f2k2p2v2|222222222222222233 33!3(3-3;3U3a3f3k3p3u3z333333333333333334 444"4+43484F4`4l4q4v4{444444444444444445 55555+545<5A5O5i5t5z555555555555555566 6666 6%616:6A6F6T6n6z666666666666666667 77777$7)7/7;7D7L7Q7_7y77777777777777777 88888"8(8.83888D8M8U8Z8h888888888888888899999#9(9.94999>9J9S9Z9_9m99999999999999999 :::":':,:1:7:=:B:H:T:]:e:j:x:::::::::::::::::;";';,;1;6;;;A;G;L;Q;];f;n;s;;;;;;;;;;;;;;;;;>>'>3>:>@>O>Z>a>g>v>> ??????p 00 11j1o11111j2o22222j3o333*5/555:6?66677:8?8[8`8}8888 99j9o99999 ::-:2::::;?;;;J>->2>>>>>>>J?O?k?p??? *0/0*1/1z1111j2o22222)3.363>3F3N3V3`3d3h3l3p3t33333334D44444 5655555555555555555666 6$6(6,6064686<6@6D6H6L6Y6^6f6n6v66666666666666666666777 777+70777j7777&8+818O8g888888 9[9`9g9999+:0:7:Z:c::::; ;;;Q;V;m;s;;;;;;;;;;<<<6<<=T=Z=q=w=========>>>#>:>@>V>\>s>y>>>>>>>>>???%?0D0Z0`0w0}0000000001 1#1)1@1F1\1b1y111111111122%2+2B2H2^2d2{2222222222 33'3-3D3J3`3f3}3333333333 44)4/4F4L4b4h4444444444455+515H5N5d5j555555555556 66#666<6]6d6i66666667@7|7778>8m8888#9_99999:,:_:::::&;>;I;T;;;<*<5&>/>\>>>>>+?g???????  0B0v0000111 11111 1$1(1,1014181<1@1[1`1g11112J2~222233(313m333334?4H4r444445505H5w55555'6_666677T7777828_888889A9t99999#:V::::;4;p;;;;<:">:>i>>>>>?B?u??? l0:0R000000 1S111111111111111111111111 222(2-2L2d22222$3O3j3~33333344!4=4Q4f4444444455A5X555555616v6666S7778828C8d8l8888888809;9B9U9~99999 :D:W:p:::::;;9;m;<i>q>y>>>>>(?,?0?4?8?>>>>>>5?0?e?? 0.0W0^0l0q00000455;5@5S5Z5v5555555553686T6Y6666 778888*9/9a99:+:Y:;@;P;};;;%>> ?K????????? 0#0/0:0000001m1w11N22 333334L4456P6777-889p9999999:::&:c::::::: ;d;;_<<>g?l??? *050@0Y0q0 22)222A2K2V2^2g2s223,3a333333344444A4g4s415G55555*61686M6f6m6t666666777/7477777C99999999::$:9:K:R:W:y::::::::::;@;L;W;p;V<<< ==!=(===o>>>> ?&?-?4?I?[?b?g???????????? 00:0?0L001 11(1111122222222233Y3`3g3|3333334444444444555/555555555666666666667777<7Y77777777888888Q9v9}9999999:I:P:U:::::;);0;E;;; <<<,i>p>w>>>>?9?P?@ 4;;<<j>s>x>>>>> ?v?{?????P  0000050 0<<8>>>??F?K?k???? Q0W0[0l0r0v000 q44556666,7W7\7{788 8&8+8@8M8Z8q88888888 999&929A9Y9g9}99999999:::1:>::::::::;;#;);;;B;G;T;;;;;;;<<<1> >'>4>C>m>>>>???v?{?????? /0E0P00000001#1;1B1u111112V2[222|33d4n445t5!6&6I6P66666*717J7P77777(818j8q8888889/9I9P9e9l99999=>2>E>>>>>>>??"?J?d?k????? 001'1,1Y2`2g2|2222 33*313C3`3e3s334F4T4d4h4l4p4t4x4|44444495>5a5f55566&6\6i666778#8R8\8f888889V<_D>I>\>d>i>>>>>>\?d?i?|?????? 003090000001 1C11C22V333344v444-5A5F5x556$66667'7F7K7k7q77777848e8j8888888A9F9t9{999999::&:\:::: ;!;2;9;O;k;r;;;;;< <%o>???? l-020000]11&2[223 3N3S3334D4{4444 5J5y556666G799 :%:,:E:L:::<<<0 l1111111h2m2T444444(515W5^555556e6j666%7,7T8888969n999999999::*;=;;;;1>+>k>>>>??#????@ | 00:0H000000*1/1}1111112 2R2y22334`4e444445I6666"77&8M889 :8:_:::k;;/Z>_>~>>>P Q00000/3M333333-444M4T4 555555556R67;7b77a888819^999.:6;];b;~;;Gd>h>l>>>>?C?x??????` 0112#2k22d3k3444444455]5d5556699)94999E9J9U9Z9e9j9v9{999999S:X:::<x>>>>4?V?]???p 080Z000001+1>1E1i1p111)202Y2222222L3P3T3X3\3`3d3h3l34B4w4445555616G6h6|66777777777777888 8888888 9799A:K::::<>? ?b?m? Q0V0000111233333314;44415;55516;66667t7{7777(8-8F8K888>9: :::::';5;:;e;;;;;5<<<<<=%=*=U=z=====>>>>>?I?x?}??? 0J0^0001111114455556666666$737l7{77u8z88J9P9U999999999::: ::::: :$:(:,:0:4:8:k:p::::;/<{<<<<,=2=J=O=d=h=l=p=t=x=|==============#>>U??? |00000011>1E1i111112 22!2X2_22566,7N777'898O88g99::V;_;;H<<>>>>>> ??p?t?x?|????? <4445556677S89<99;;<1=:=G====R?W? p1t1x1|11111111111111111112 3N5S5;< =$=(=,=0=4=8=<=@=D=H=L=P=T=X=\=`=d=h=l= >>">g>>> ?$?(?,?F?a?z???? x 00)060C0P0]0j0z000000000111+181E1R1_1q11111A2M2b2g22222222223"3*3/3Z3333333333<4G4L4W4b4g4r4}4444444 51565A5T5Y5e5o555556627@7J7S7X7r777777777778 8!8*8/8W8p8888*9/9u999A:N:U:g:::::::;A;R;W;];k;|;;;;;;;;;;;;<<1<7>(>b>>>?1?A?N?`?q????? (0I0001H1_1o11111122 2C2T2^2|222222222222233+323E3O3V3n3x33333333334 44.4:4F4R4^4j4x444445A5G5L5Q5^555556:6n666 7A7l7777778'898G8888888888999939[99999999:":O:]:::::::::::: ;c;q;;;;;;;< <<"<4>'>->A>I>P>{>>>>>>>>??8?L?V?\?s???? R0W0r0{000011B111111334444`5y5555*6j6666666667737n7777878<8R8y8~8888892989P9U99999999999999 ::::A:H:x::::::::::; ;);?;P;r;[<<<="=@=G=====)>R>a>??z???? 0 0$0)0@0H0M0e0j0000001)181T1112!2-222l2{222222333)313<3H3S3y3~33333333344 444 4.43494@4N4j4}4444444444 55!575Z5o5y5555556m666667'778D8K8888888 9 959Z9t9999G:|::;!;\;;;;;Hm>>>>>8????? 217111k2q222d3o333333#44o55 6M666677 8e8889}99:::::::::::::::::::::;;; ;;;;;<<<<<<<<<<<<> 00>0T0^0o00011u3334455&6-66c777084888`8d8h89.99::: ;Q;V;b;<<6>>$?K?X?i?0 '030G0]0d000001151<1B1T1i1p1~111112 242X2]2y2223 3p3333333 444C4O4u4|44444c5555=7B7777 898@8Y8_89+9?9Y9`9f9y9999Z:b:{:::::;;&;+;8;A;F;;;;;;;;;; <<2>#>)><>Q>X>f>>>>?@ 0/070D0q0000001111&2:2B2P2222223A3G3d3j33334)4/454 55%5355 666O7j7777788&8889+939@9_9j9x9999:;1;8;;;;;;;7<<<=0=;=^=i==C>Y?v??P 001W2]222222223"3D3I333x4L6l77777(8/8q8888/9:;-;4;c;h;;;;;;;;!<*<9=C=}==> >!>'>Z>>>>>>~?????????` 00 000>011111*2j22223!3t4y4r6p 11X2222 3%3G3N3S3l3t333333'4.434M4U44444444455#5=5E5y555555556 6666677#7<7D7~777^8e8j8}8888N9U9Z9w9~9999999&:g:l::::::: ;;u;;;;;;;;'<,=e=========>$>K>S>X>g>n>s>>>>>>?!? 00#0<0D0q00000051g1l1111111122.252G2[2b2~22222222y33333444555556/6<6b6k6z6e7m7u7z77778%919:9: ::+:C:V:c:i:r:::;/;6;;;H=R=h=v=|====8>?>R>>?B?K?Z?y????? 080>0z000011111111*2/22223(353V3n33334 4*414Q5566697T7Y7777G8M8{8888/949G9P9_999:$:8:A:P:y::::::8;D;I;O;T;fC>H>o>t>y>>>>>>>??!???D?I?q??? z000000000.1J1h1|111111111112 2?2\2z22222222222333O3l3333333333 444(4-4_4|444444444455$585=5o55555555556*6/646H6M6666666667 77:7?7D7X7]777777778 888@8E8J8\8a8v88888888889 99%9*9/9A9U9d999::!:':u:z::::::: ;;#;(;7;O;T;Y;h;;;;;;;;<.<3<8=C=H=W=o=t=y========>:>N>S>X>g>>>>>>>>>>?,?J?^?c?h?w?????????? 0&0+000J0k0s0x0}0000001 1e1j1o1111111111111 222:2?2D2j2o2t2222222223*3/343Z3_3d333333333324R4p44444444444455B5b555555555566 66#6:6?6D6j6o6t66677777%8H8M8888893989R9W9s9y999999: :C:z:::::::::: ;;;;.;D;M;|;;;;;;;$<+'>,>E>J>O>>>>>>C?O?^? 00I0[00001111522222223G3L3i3s3}333344D4444,535555-666777779999994:H:g:;1;H;x;;;;;;;;<<2=<=b=h======>>%>H>N>>>>>>?? L000011f1m11 22m2222222 33'313M3]3g3q33333333444453595@5G5N5U5\5c5j55555556606Z6a6s6z66666666666667777,737Q7X7^777777777.858\8c8i8888888888888888889 999!9(9/969=9D9K9R9Y9`9g9n9u9|99999999999999999999999999999::: ::::: :$:(:,:0:4:8:<:@:D:t:x:|::::::::::::::::::::::; ;;;;; ;$;(;,;0;4;8;<;@;D;H;L;h;l;p;t;x;|;;;;;;;;;;h>=>M>X>}>>>>>>>??=?M?X??? 0W0\0x0000000001x11111111/2P2W223C3g333N4445 5)505Y5`55556666667788*99c:}:::d;;;"=f====/>e>>>????? 0:000@1P1`11|222222I4P455(646x6 889%9999L:Q:}:.;e;o;v;;;;0<<<=9=>==>H>L>P>T>X>\>`>d>h>l>p>t>x>|>>>>?d91@1o223334 55z5555$6$7H7888888G9M99999a:s::::;;> >$>(>Y>`>>>??p001-1112\3334'525:6U6^6g6o6z666637:7L8Q88879S9b9{99;l>>>>>>>>>>>??u???? |01111G2o22 3'33333444444667777 88888"939:9O9V9i9n999D:R:]:x::D;<< ==?=a==>>>?0D,0004080I1[1{11122V2e2v33334 4$4(4m8r88;9@99Y;=@4m6r6779::9:>:<=|=>>1>6>O>T>??f???P`56`7777M99999:}:::U;;;;;;<>>3?p???????`0040;0d0i00000B1H1S1m11111111122A2^2c22222223#3I3P3s3333334:4n4u444A55555556W6^6s6z66666L7Q777768=8V8\89-989Q9X9999999:]:b::::::::: ; ;;<<<<<<=y===y>>>Y?d?v?p0e0m000000000 1#1o1v1111H2O2y222222r4y4445(5:5566666 77l7v7778889 9999@9F9}99::: ::):4:F:n:s: ;;';a;<<<====>G>Q>>>?&?V???????0 001~11112333]4g4q455L5V55555r6{666697D7V7788888999::Z::::::k;v;;;;<<<"<>f>>>>>z0001V2]233 4454<444444C5J588888888888999/949H9M9o9t9999 :/:4: ;0;4;8;<;@;D;\;`;d;h;l;p;;;;;R<<$>D>K>b>i>>>??'?,?[?v?~?T 0D0s0011A1c1k1p111111111112!2+22272Y2`2j2q2v22222222222363x3333333333334(4/494@4E4`4h4r4z444444444444(5/595@5E5`5h5r5z555555555555(6/696@6E6`6h6r6z666666666666)707:7A7F7a7h7r7z777777777788)818;8B8G8i8q8{8888888888899 9(929:9?9h9o9y99999999999:: :(:2:::?:h:o:y:::::::::::;; ;(;2;:;?;i;q;{;;;;;;;;;;;<<(/>9>@>E>`>h>r>z>>>>>>>>>>>>?'?1?9?>?h?o?y???????????00 0(020:0?0h0o0y0000000000011 1(121:1?1h1o1y11111111111H2P2U2x222222222333 3%3@3H3R3Z3_3333333444i45 5Z55566=6D6Y6`6q6w888889$9R99999:6:V::::::::; ;;$;5;F;K;Q;W;i;n;t;{;W1q1{11111152223"3j3r34@4E4j4444!5&5]5d5s5y55555556 6&66^7778a8|8888999!979B9M9m9x9999999 ::/:J:P:]::::L;Q;h;;;<v>}>g?????800002171R1W1\1a1q1v1|111111111111111111111112 2222#2)2/252;2A2F2L2R2X2e2l222222222223+3G33333474444[5`556U6k666!707W7n777R888'9>99999: :]:k:p::::::::::::::::::::::;;;;; ;&;,;2;8;>;D;J;P;V;\;b;h;n;t;z;;;;;;;;;;;;;;;;;;;;;;;< <<<<"<(<.<4<:<@> >>>>$>*>>>>>>>>>>?? ????$?*?0?6?0D0J0P0V0\0b0h0n0t0z000000011111111111111111112 2222"2(2.242:2@2F2L2R2X2f2n2w222222222222222333:3N3344'4/474C4Q4Y4f4m44444445 5=5I5P555555555555555555555556 6666"6444555(545@5L508888888889p55555555686@6H6P6X6`6h6p6x666666666666666667777 7(70787@7H7P7X7`7h7p7x777777777777777778888 8(80888@8H8P8X8`8h8p8H2P2X2`2h2p2x222222222222222223333 3(30383@3H3P3p333333333333333334444 4(40484@4H4P4X4`4h4p4x444444444444444445555 5(50585@5H5P5X5`5h5p5x555555555555555556666 6(606;;;;;<<<<<<<@=H=P=X=0>8>@>H>P>X>`>h>p>x>>>>>>>>>>>>>>>>>???? ?(?0?8?@?H?P?X?`?h?p?x?????????????????@0000 0(00080@0H0P0X0`0h0p0x0000000003333( >(>0>8>@>H>P>X>`>h>p>x>>>>?00000114X:P;;;;;;<< <(<0>>080@0H0P0X0`0222333444P4X4`4p444444444444444445555 5(50585@5H5P5X5`5h5p5x555555555555555556666 6(60686@6H6P6X6`6h6p6x666666666666666667777 7(70787@7H7P7X7`7h7p7x7777777777777x:::::T0888@8H8P8X8`8h8p8x888888888888888889999 9(90989@9H9P9X9`9h9p9x99999999999999999:::: :(:0:8:@:H:P:X:`:h:p:x:::::::::::::::::;;;; ;(;0;8;@;H;P;X;`;h;p;x;;;;;;;;;;;;;;;;;<<<< <(<0<8<@@>H>P>X>`>h>p>x>>>>>>>>>>>>>>>>>???? ?(?0?8?@?H?P?X?`?h?p?x?????????????????0 0000 0(00080@0H0P0X0`60686H6P6X666666666666666667777 7(70787@7H7P7X7`7h7p7x777777777777777778888 8(80888@8H8P8X8`8h89999 9::::(:0::p;x;;;;;;;;;;;;;;;;;<<<< <(<0<8<@>>>>>>>??? ?(?0?@?H?P?X?`?h?p?x?????????????????P0000 00080@0`0h0p0000000000000001111 1(1018144@4<6666666666666679 9(90989@9H9P9X9`9h9<x11111111133334444 4(40484@4H4P4X4`4`====>>>>>>>>>>> ?(?0?8?@?H?P?X?`?h?p?x?????????????????0000 0(00080@0H0P0X0`0h0p0x000000000000000001111 1(10181@1H1P1X1`1h1p1x111111111111111112222 2(20282@2H2P2X2`2h2p2x22222h5p55599:;;<<<< <(<8<<`1p1x111111133333334444 4(40484@4H4==== =(=0=8=@=H=P=X=h=p=x=============>>>0>@>H>P>X>`>h>>>>>>>>>>>>???0?8?@?P?X?`?h?p??????????????000 00080@0H0P0`0p0x00000000000000111 1(101H1P1X1h1p1x11111111111222 2(202666 78?@?D?L?P?T?\?d?h?p?t?x???????????????????,000(040@0L0X0d0p0|0000000P33333333333334444 4(40484@4H4P4X4`4h4p4x44444444444444445555 5(50585@5H5P5X5`5h5p5x555555555555555556666 6(60686@6H6P6X6`6999:::: :(:0:8:@:H:P:X:`:h:p:x:::::::::::::::::;;;; ;(;0;8;@;H;P;X;`;h;p;x;;;;;;;;;;;;;;;;;<<<L000001111111@2H2P2X20383@3H3P3X3`3h3p3x333333333333333334444 4(40484@4H4P4X4`4h4p4x444444444444444445555 5(50585@5H5P5X5`5h5p5x555555555 6(60686@6H6P6X6`6h6p6x666666666666666667777 7(70787@7H7P7X7`7h7p7x7888H:P:T:X:`:h:l:x::::::::::@222222223333 3(30383@3H3P3X3`3h3p3x33333333333333334444 4(40484@4H4P4X4`4h4p4x444444444444444445555 5(50585@5H5P5X5`5h5p5x55????000000@1H1P1X10282@2H2P2X2`2h2p2x222222222222222223333 3(30383@3H3P3X3`3h3p3x333333333333333334444 4(40484@4H4P4X4`4h4p4x444444444777>>>@H167 78788999P::>>>>>> >$>(>8>D>P>\>h>t>> p1t1<<<<<<p $<(<9999$9(94989|99`l0\0`0p0t00`7d7l7p7t7|777777788899 9999 9$9,90949<9@9D9L9l9x99,:8:@:`=d=h=l=>???pH000011112233 3333$3(3,34383<3D3H3L3T3t4x44444444444444444 5555 54585<5@5H5\5`5(<,<4<8<< >>>(>,>8><>H>L>T>X>\>d>>>>>>>>>??$?(?8?\>d>h>l>t>x>|>>>>>>>>>>>>>>>>>>>>>>>??? ??? ?(?0?8?h3l333333344 4444$4(4,444556$6D6H6L6P6x6|66666666666666666D777777p9t9x999999999999999>>>>>>>>>>>>>>>>>>>>>>>????T>0 0000$0(0,040T0X0\0`0d0h0l0p0t0x0|00000000000001111 1(141<1P111111112 2222$2(2,24282<2D2H2L2T2X2\2d2h2l2t2x2|222222222222222222222222233 330343@3D3P3T3`3d3p3t333333333333333D>> >>>>> >$>(>,>0>4>8><>@> t77777888$8,848<8X8\8`8888888? ???(?,?8?>>?? ????$?(?,?4?8?>$>(><>P>x>>>>??p000 00 0$0(0,040<0H0X0\0d0l0t0x0000001$101@1D1`1t1x11|2222222222222,333444444 4044484<4@4D4H4L4P4T4X4\4`4d4h4l4p4t4x4|4444444444444444444444444555 55555(5,545<5@5l555555555\6d6p6666666666666::::::::::::::;; ;;;;$;(;,;4;8;<;D;H;L;T;X;\;d;h;l;t;x;|;;;;;;;;;;;= ==X=======> >>> >$>0>4>8>H>P>d>x>>>>>>>??,?@?T? T0\0h0x0|000000X3d3l333333333333344 4444 4$4,40444<4@4D4L4P4T4\4`4d4l4p4t4|445 55$5,585H5L5P5T5\5d555555556 6P6t6x6|66674787<7p8t8|888888888888999: :0:4:8:L:P:l:p:x:H;L;X;\;x;;;;;;x<|<<<<<<<<<<<<<<===$=0=4=D=H=T=\=`=p=|================>>> >>>>> >$>(>,>0>4>8><>@>D>H>L>P>T>X>\>`>d>h>l>p>t>x>|>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>??? ????? ?$?(?,?0?4?8?> >>>>t>>>>>>>p?t?|?????????00 0$0(0,0004080<0@0D0H0L0P0T0X0\0`0d0h0l0p0t0x0|0000000000 1$1(1,1<1@1D1H111111222$24282\222222222222222233 3333$3(3,34383<3D3H3L3T3X3\3d3h3l3t3x3|3333333333333444444445 5,5P5T5\5`5d5l5p5t5|55555555(686T6|6666666666677 7$7(70787<7D7H7L7T7X7\7d7h7l7t7x7|777777778<9H9\9`9l9t9x999999999::::,:0:@:D:h:l:p:t:x:|::::::::::::::::::::::;; ;;;; ;$;,;0;4;<;@;D;L;P;T;\;`;d;l;p;t;|;;;;;;;;;;;;;;;;;;;;;;<<==========>> >$>H>L>P>T>X>\>`>d>h>l>p>x>>>>>>??,?0?\?d?p????????h0$000D0X0`0t00000001 141P1T1`1d111111122 2$2\2d2p2222222233@3P3T3\3`3d3l3p3t3|33333333333333333333344$4(44484L4T4\4d44444455,545@5P5T5d5h5p5555556$6L6P6T6X6<8D8P88888888888889=====================>> >>>> >$>,>0>4><>@>D>L>P>T>\>`>d>l>p>t>|>>>>>>>>8L0T0`0d0p0t0|00000000000000@1D1L1d1l1x11111$2,282h2222222(3L3P3T3335$505`5p5t555555p6t6|6666666677(7,707d:h:t:x::::::::::;,;8;L;T;d;h;l;x;|;;;;;;;;;<@>8>L>X>>>>>>>?? ?`?d?h?????????0 0`0d0h00000000(1,101P1d1l11111112,242X2`2p2t2222222223,3@3D3H3\3`3h3|333334 4404D4L4p4444444 5585@5P5T5d5h5x5|55555556660686L6T6x666666777@7T7`777777788(8h8l8p8888888094989X9l9t999999: :4:<:`:t:::::::;(;0;@;D;T;X;h;l;|;;;;;;;;;<(<,<04>@>>>>>>>>>?H?L?P?p???????00080L0T0x000000111@1T1`111111122 2$24282H2L2\2`2p2t222222233 343<3`3t3333333334(4<4H4t44444444455P5T5X5x55555566 6@6T6\666666677$7H7\7h77777778$808p8t8x888888889<9@9`9t9|9999:::(:<:D:h:|::::::; ;0;D;P;;;;;;;; <$>,>P>d>p>>>>>>>?,?8?x?|???????0@0D0H0h0|000001 1101D1L1p1111111 2282<<== ====$=(=,=4=8=<=D=H=L=T=X=\=d=h=l=t=x=|=======================>>>,>0>@>D>T>l>p>x>>>>>>> 42<2H2\2x2|222222222222P6T6`6d6l6p6t6|666777 77777 7<7@7D7H77777777777777 848X8l888888899$9(9,989<9@9L9P9|999999999:::::::::;;(;P;T;X;d;h;l;x;|;;;;;;;;;;; =$=(=,=0=<=D=P=d=x=========0000000 1,1014181d3l3x3333333334 4$484<4P4T4h4H6P>T>\>`>d>l>p>t>|>>>>>>>>>>>>>>>>>>>>>>>>>?? ? 000X0\0d0h0l0t0x0|000000011 11T12222 3$3L3d3|33334444L4p44444 5$5<5T5555546L6d6|666666 7<7T7l777778 8T8l88888<9T9l9999::t::::::;;4;\;t;;;;; <,><>T>l>>>>??4?L?d?????0 0$0<0T0000001,1T1l11111 2$2<2T222222343t33333344\4t4444445L5d5|555555 6$66666667,7D7\7t77777 8$8<8T8|888889,9D9|99999:,:D:\:t:::::;,;D;|;;;;;;<08>P>x>>>>??L?d?|?????@d0|000000 1$1<1T11111142L2d2|22222 3$3d3|333333$4<4T444445545\5t55555646L666666$7<7T7l77777$8<8T8l8888889,9D9h999999:,:\:t:::::;,;D;\;t;;;;;<(<@<`> >>>$>0>4><>H>L>T>`>d>l>x>|>>>>>>>>>>>>>>>>>? ?? ?$?,?8?,>0>? ?P?`?d?t?x???pt000000011223(3,3<3@3l3p3L4X44444444<6H6x6666666778(8,8<8@8l8p8L9X99999999::;;;,;0;\;`;,<8>>>>>> ??h?l?t?40@0T0p000000004445 55H5X5d55560686H66666p9t9|9999999999999999999999999:: ::::0:4:8:<:@:D:H:L:P:T::::::::::::;;;;;$;,;L;P;T;X;;;;;;;<,<<<@>>>8><>H>L>X>\>h>l>x>|>>>>>>>>>>>X(2,242<2@2H2L2T2X2\2`2|222222222$3p3t33333334444<4`4d4p4t444445 5$5,5P5T5`5d5p5t5555556$6<6@6D6\6d666666666787L7d7h7l7777749<9H9\999::$::::::::::::::::::;;; ;;;;; ;$;(;,;0;4;8;<;@;D;H;L;P;T;X;\;`;d;h;l;p;t;x;|;;;;;;;;;;;;;;;;;;; =$=,=0=4=<=@=D=L=P=T=\=`=d=l=p=t=|=========================>> >>>> >$>,>0>4><>@>D>L>P>T>\>`>d>l>p>t>|>>>>>>>>>>>>>>>>>>>>>>>>>?? ???? ?$?,?0?4?L>P>T>X>\>`>d>h>l>p>t>x>|>>>>>>>>>>>>>???0000 0(000@0D0H0l66666666666666666677 7777 7$7,70747<7@7D7L7P7T7\7`7d7l7p7t7|777777777777777777777777788 8888 8$8,80848@8D8P8T8`8d8l8p8t8|888888888888888888888888899 9999 9$9,90949<9@9D9L9P9T9\9`9d9l9p9t9|999999999999999999999999::: ::::: :$:(:,:0:4:8:<:@:D:H:L:P:T:X:\:`:d:h:l:p:t:x:|:::::::::::::::::::::::::::::::::;;; ;;;;; ;$;(;,;0;4;8;<;@;D;H;L;P;T;X;\;`;d;h;l;p;t;x;|;;;;;;;;;;;;;;<<<<<==(=<=D=X=h=|===> >>,>4>@>p>>>>>>>>? ?????????04080<0545@5D5L5P5T5\5`5d5l5p5t5|555555555555555555555555566 6666 6$6,60646<6@6D6L6P6T6\6t66666666d7l7x7|77777777777777778 8$8,80848<8@8D8L8P8T8\8`8d8l8p8t8|8888888888888999999999:: :$:(:,:4:<:`:d:h:X;\;d;h;l;t;x;|;;;;;;;;;;;,<8<<<<<@>D>L>P>T>\>@?D?L?P?T?\?`?d?l?p?t?|???????0 0|00000<1@1D11 2(2,24282<2D20343<3@3D3L3P3T3\3`3d3l33333333334\4d40585<5D5x8|88888888d;l;;;$<<<<==>>$>0>@>D>T>`>p>>>>>>>>>>?? ????? ?$? < <<<<$<(<,<4<8<<> >>>>$>(>,>4>8><>D>H>L>T>X>\>x>>t?|???00 00000000001111$141@1\1`1@0000000000000000011 1111$1(1,14181<1D1H1L1T1X1\1d1h1l1t1x1|11111111111111111111111<2@2D2L2P2T2X2\2h2t2x2222222 343X3l333333344$4@4p4444:::: :$:(:P(6,64686<6D6H6L6T6X6\6d6h6l6t6x6|666666666666666666666666677 7777$7(7,74787<7D7H7L7T7X7\7d7`\,5X8\8d8h8l8t8x8|88888888888888888889999999::(:,:0:L:l:p84<4D4H4L4T4X4\4d4h4l4t4x4|44444444444444@9H9P9X9`9h9p9x9999`?d?l?p?t?|????????????????????????? 7$7(7,7074787<7@7D7H7L7P7T7X7\7`7d7h7l7p7t7x7|7777777777777777777777777777777778888(888\8d8p8x888999999999::::(:,:<:D:H:L:X:h:l:t:|::::; ;;,;4;@;p;;;;;;;<$<8$>0>@>D>T>X>`>d>p>t>x>>>>>>>>>>>?? ????4?> >4>8><>@>D>L>P>X>`>l>|>>>>>>>>??$?(?,?\?`?d?h???????????????????????????? 000 0$040<0@0L0P0T0\0d0p00000000000001$101@1D1H1L1P1X1\1`1d1t1x11133 3333 3$3,30343<3P3T3\3333 484<4D4H4L4T4h4x4455$5P5T5:::::::::::;; ;;;;$;8;L;`;d}||_ddk}|i|dd||fdqXddk}|i|dd|dn|idj o!|ii||iindS(Ntaiis)The logfile '%s' could not be opened: %ssErrors occurreds See the logfile '%s' for details( t_filetNonet_errortopent Exceptiontatexittregistertwritetflush(tselfttexttalerttfnametdetailsR((s3C:\Python25\lib\site-packages\py2exe\boot_common.pyR 2s"         cCs%|idj o|iindS(N(RRR (R ((s3C:\Python25\lib\site-packages\py2exe\boot_common.pyR EsN( t__name__t __module__t softspaceRRRtsyst _MessageBoxt executableR R (((s3C:\Python25\lib\site-packages\py2exe\boot_common.pyR.s t BlackholecBs eZdZdZdZRS(icCsdS(N((R R ((s3C:\Python25\lib\site-packages\py2exe\boot_common.pyR NscCsdS(N((R ((s3C:\Python25\lib\site-packages\py2exe\boot_common.pyR Ps(RRRR R (((s3C:\Python25\lib\site-packages\py2exe\boot_common.pyRLs cCsdS(Nt((tfilenametlinenotmodule_globals((s3C:\Python25\lib\site-packages\py2exe\boot_common.pyt fake_getline]s( RtfrozentobjectRtstderrRRtstdoutt linecacheRRtgetlinet orig_getline(((s3C:\Python25\lib\site-packages\py2exe\boot_common.pys,s       c@sddkZeidS(iN(tzipextimportertinstall(((sss c@sXddkZddkZedjo/eid oeiieidndS(iNt__main__t__no_execute__i( Rtrdiff_backup.Maint rdiff_backupRtglobalsthas_keytMainterror_check_Maintargv(((s rdiff-backupss  !PAD<4VS_VERSION_INFO?StringFileInfox040904B0|*FileDescriptionLocal/remote mirroring+incremental backup,FileVersion1.2.0LOriginalFilenamerdiff-backup.exe< ProductNamerdiff-backup0ProductVersion1.2.0DVarFileInfo$Translation PADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADPK86v+v+ StringIO.pyc ϰEc@sdZyddklZWnej o dZnXdgZdZdd dYZdZedjo end S( s File-like objects that read from or write to a string buffer. This implements (nearly) all stdio methods. f = StringIO() # ready for writing f = StringIO(buf) # ready for reading f.close() # explicitly release resources held flag = f.isatty() # always false pos = f.tell() # get current position f.seek(pos) # set current position f.seek(pos, mode) # mode 0: absolute; 1: relative; 2: relative to EOF buf = f.read() # read until EOF buf = f.read(n) # read up to n bytes buf = f.readline() # read until end of line ('\n') or EOF list = f.readlines()# list of f.readline() results until EOF f.truncate([size]) # truncate file at to at most size (default: current pos) f.write(buf) # write at current position f.writelines(list) # for line in list: f.write(line) f.getvalue() # return whole file's contents as a string Notes: - Using a real file is often faster (but less convenient). - There's also a much faster implementation in C, called cStringIO, but it's not subclassable. - fileno() is left unimplemented so that code which uses it triggers an exception early. - Seeking far beyond EOF and then writing will insert real null bytes that occupy space in the buffer. - There's a simple test set (see end of this file). i(tEINVALitStringIOcCs|o tdndS(NsI/O operation on closed file(t ValueError(tclosed((s StringIO.pyct_complain_ifclosed&scBseZdZddZdZdZdZdZddZd Z d d Z dd Z dd Z ddZdZdZdZdZRS(sclass StringIO([buffer]) When a StringIO object is created, it can be initialized to an existing string by passing the string to the constructor. If no string is given, the StringIO will start empty. The StringIO object can accept either Unicode or 8-bit strings, but mixing the two may take some care. If both are used, 8-bit strings that cannot be interpreted as 7-bit ASCII (that use the 8th bit) will cause a UnicodeError to be raised when getvalue() is called. tcCs`t|tpt|}n||_t||_g|_d|_t|_d|_ dS(Ni( t isinstancet basestringtstrtbuftlentbuflisttpostFalseRt softspace(tselfR ((s StringIO.pyct__init__6s    cCs|S(N((R((s StringIO.pyct__iter__AscCs.t|i|i}|p tn|S(s_A file object is its own iterator, for example iter(f) returns f (unless f is closed). When a file is used as an iterator, typically in a for loop (for example, for line in f: print line), the next() method is called repeatedly. This method returns the next input line, or raises StopIteration when EOF is hit. (RRtreadlinet StopIteration(Rtr((s StringIO.pyctnextDs    cCs'|ipt|_|`|`ndS(s Free the memory buffer. N(RtTrueR R (R((s StringIO.pyctcloseQs  cCst|itS(s_Returns False because StringIO objects are not connected to a tty-like device. (RRR (R((s StringIO.pyctisattyXs icCst|i|io(|idi|i7_g|_n|djo||i7}n|djo||i7}ntd||_dS(sSet the file's current position. The mode argument is optional and defaults to 0 (absolute file positioning); other values are 1 (seek relative to the current position) and 2 (seek relative to the file's end). There is no return value. RiiiN(RRR R tjoinR R tmax(RR tmode((s StringIO.pyctseek_s     cCst|i|iS(s#Return the file's current position.(RRR (R((s StringIO.pycttellrs icCst|i|io(|idi|i7_g|_n|djo |i}nt|i||i}|i|i|!}||_|S(sERead at most size bytes from the file (less if the read hits EOF before obtaining size bytes). If the size argument is negative or omitted, read all data until EOF is reached. The bytes are returned as a string object. An empty string is returned when EOF is encountered immediately. Ri(RRR R RR tminR (RtntnewposR((s StringIO.pyctreadws      cCst|i|io(|idi|i7_g|_n|iid|i}|djo |i}n |d}|dj o)|i||jo|i|}qn|i|i|!}||_|S(s%Read one entire line from the file. A trailing newline character is kept in the string (but may be absent when a file ends with an incomplete line). If the size argument is present and non-negative, it is a maximum byte count (including the trailing newline) and an incomplete line may be returned. An empty string is returned only when EOF is encountered immediately. Note: Unlike stdio's fgets(), the returned string contains null characters ('\0') if they occurred in the input. Rs iiN( RRR R RtfindR R tNone(RtlengthtiR R((s StringIO.pycRs        cCswd}g}|i}xX|oP|i||t|7}d|jo |jnoPn|i}qW|S(s'Read until EOF using readline() and return a list containing the lines thus read. If the optional sizehint argument is present, instead of reading up to EOF, whole lines totalling approximately sizehint bytes (or more to accommodate a final whole line). i(RtappendR (Rtsizehintttotaltlinestline((s StringIO.pyct readliness  cCst|i|djo |i}n>|djottdn||ijo ||_n|i| |_||_dS(sTruncate the file's size. If the optional size argument is present, the file is truncated to (at most) that size. The size defaults to the current position. The current file position is not changed unless the position is beyond the new file size. If the specified size exceeds the file's current size, the file remains unchanged. isNegative size not allowedN( RRR#R tIOErrorRtgetvalueR R (Rtsize((s StringIO.pycttruncates     cCsrt|i|pdSnt|tpt|}n|i}|i}||jo2|ii||t||_|_dSn||jo"|iid|||}n|t|}||jom|io|i di |i7_ n|i | ||i |g|_d|_ ||jo |}q\n|ii||}||_||_dS(sGWrite a string to the file. There is no return value. NtR( RRRRRR R R R&R R(RtstspostslenR ((s StringIO.pyctwrites4            cCs(|i}x|D]}||qWdS(sWrite a sequence of strings to the file. The sequence can be any iterable object producing strings, typically a list of strings. There is no return value. (The name is intended to match readlines(); writelines() does not add line separators.) N(R4(RtiterableR4R*((s StringIO.pyct writeliness cCst|idS(s"Flush the internal buffer N(RR(R((s StringIO.pyctflushscCs9|io(|idi|i7_g|_n|iS(s Retrieve the entire contents of the "file" at any time before the StringIO object's close() method is called. The StringIO object can accept either Unicode or 8-bit strings, but mixing the two may take some care. If both are used, 8-bit strings that cannot be interpreted as 7-bit ASCII (that use the 8th bit) will cause a UnicodeError to be raised when getvalue() is called. R(R R R(R((s StringIO.pycR-s  N(t__name__t __module__t__doc__RRRRRRRR!R#RR+R/R4R6R7R-(((s StringIO.pycR*s            ! c Csddk}|ido|id}nd}t|di}t|di}t}x|d D]}|i|qoW|i|d|i|jo t dn|i }dG|GH|i t |d|i|d|i dd Gt |iGHd G|i GH|i}d Gt |GH|i t | d|it |}||jo t d n|i t |d|i}|d}|i |i t ||i}||jo t d ndGt |GdGHdG|i GH|i |jo t dn|i|d|i dddG|i GH|i |djo t dn|idS(Niis /etc/passwdRis write faileds File length =is First line =s Position =s Second line =sbad result after seek backs#bad result after seek back from EOFtReads more liness bad lengthisTruncated length =struncate did not adjust length(tsystargvtopenR+R!RR4R6R-t RuntimeErrorRRR treprRR/R( R<tfileR)ttexttfR*R$tline2tlist((s StringIO.pycttestsV                 t__main__N(( R:terrnoRt ImportErrort__all__RRRFR8(((s StringIO.pycss    - PK8<8N UserDict.pyc Z Dc@sFdZdddYZdefdYZdd dYZdS( sGA more or less complete user-defined wrapper around dictionary objects.tUserDictcBseZddZdZdZdZdZdZdZ dZ dZ d Z d Z d Zd Zd ZdZdZddZddZddZdZdZdZeddZRS(cKsIh|_|dj o|i|nt|o|i|ndS(N(tdatatNonetupdatetlen(tselftdicttkwargs((s UserDict.pyct__init__s    cCs t|iS(N(treprR(R((s UserDict.pyct__repr__ scCs;t|tot|i|iSnt|i|SdS(N(t isinstanceRtcmpR(RR((s UserDict.pyct__cmp__ scCs t|iS(N(RR(R((s UserDict.pyct__len__scCsY||ijo|i|Snt|ido|ii||Snt|dS(Nt __missing__(Rthasattrt __class__RtKeyError(Rtkey((s UserDict.pyct __getitem__s cCs||i|sKPK8n$t UserList.pyc sPK8FE__future__.pyc Q1Dc@sdZdddddgZdgeZdZdZd Zd Zd Zd dd YZeddeZ eddeZ eddeZ edd eZ ed!d"eZ dS(#sfRecord of phased-in incompatible language changes. Each line is of the form: FeatureName = "_Feature(" OptionalRelease "," MandatoryRelease "," CompilerFlag ")" where, normally, OptionalRelease < MandatoryRelease, and both are 5-tuples of the same form as sys.version_info: (PY_MAJOR_VERSION, # the 2 in 2.1.0a3; an int PY_MINOR_VERSION, # the 1; an int PY_MICRO_VERSION, # the 0; an int PY_RELEASE_LEVEL, # "alpha", "beta", "candidate" or "final"; string PY_RELEASE_SERIAL # the 3; an int ) OptionalRelease records the first release in which from __future__ import FeatureName was accepted. In the case of MandatoryReleases that have not yet occurred, MandatoryRelease predicts the release in which the feature will become part of the language. Else MandatoryRelease records when the feature became part of the language; in releases at or after that, modules no longer need from __future__ import FeatureName to use the feature in question, but may continue to use such imports. MandatoryRelease may also be None, meaning that a planned feature got dropped. Instances of class _Feature have two corresponding methods, .getOptionalRelease() and .getMandatoryRelease(). CompilerFlag is the (bitfield) flag that should be passed in the fourth argument to the builtin function compile() to enable the feature in dynamically compiled code. This flag is stored in the .compiler_flag attribute on _Future instances. These values must match the appropriate #defines of CO_xxx flags in Include/compile.h. No feature line is ever to be deleted from this file. t nested_scopest generatorstdivisiontabsolute_importtwith_statementtall_feature_namesiii i@it_FeaturecBs,eZdZdZdZdZRS(cCs||_||_||_dS(N(toptionalt mandatoryt compiler_flag(tselftoptionalReleasetmandatoryReleaseR ((s__future__.pyct__init__Gs  cCs|iS(sReturn first release in which this feature was recognized. This is a 5-tuple, of the same form as sys.version_info. (R(R ((s__future__.pyctgetOptionalReleaseLscCs|iS(sReturn release in which this feature will become mandatory. This is a 5-tuple, of the same form as sys.version_info, or, if the feature was dropped, is None. (R(R ((s__future__.pyctgetMandatoryReleaseTscCs dt|i|i|ifS(NR(treprRRR (R ((s__future__.pyct__repr__]s (t__name__t __module__R RRR(((s__future__.pycRFs   iitbetatalphaitfinaliiiN((iiisbetai(iiisalphai(iiisalphai(iiisfinali(iiisalphai(iiisalphai(iiisalphai(iiisalphai(iiisalphai(iiisalphai(t__doc__Rt__all__t CO_NESTEDtCO_GENERATOR_ALLOWEDtCO_FUTURE_DIVISIONtCO_FUTURE_ABSOLUTE_IMPORTtCO_FUTURE_WITH_STATEMENTRRRRRR(((s__future__.pycs0s6      PK8"q_8_8 _strptime.pyc Z]Gc@sdZddkZddkZddkZddklZddklZddklZ ddk l Z yddk lZWnddklZnXdZd Zd gZd Zd efd YZdefdYZeZeadZhadZddZdS(sStrptime-related classes and functions. CLASSES: LocaleTime -- Discovers and stores locale-specific time information TimeRE -- Creates regexes for pattern matching a string of text containing time information FUNCTIONS: _getlang -- Figure out what language is being used for the locale strptime -- Calculates the time struct represented by the passed-in string iN(tcompile(t IGNORECASE(tescape(tdate(t allocate_locks Brett Cannonsbrett@python.orgtstrptimecCstitiS(N(tlocalet getlocaletLC_TIME(((s _strptime.pyct_getlangst LocaleTimecBsMeZdZdZdZdZdZdZdZdZ RS(skStores and handles locale-specific information related to time. ATTRIBUTES: f_weekday -- full weekday names (7-item list) a_weekday -- abbreviated weekday names (7-item list) f_month -- full month names (13-item list; dummy value in [0], which is added by code) a_month -- abbreviated month names (13-item list, dummy value in [0], which is added by code) am_pm -- AM/PM representation (2-item list) LC_date_time -- format string for date/time representation (string) LC_date -- format string for date representation (string) LC_time -- format string for time representation (string) timezone -- daylight- and non-daylight-savings timezone representation (2-item list of sets) lang -- Language used by instance (2-item tuple) cCset|_|i|i|i|i|it|ijotdndS(sSet all attributes. Order of methods called matters for dependency reasons. The locale language is set at the offset and then checked again before exiting. This is to make sure that the attributes were not set with a mix of information from more than one locale. This would most likely happen when using threads where one thread calls a locale-dependent function while another thread changes the locale while the function in the other thread is still running. Proper coding would call for locks to prevent changing the locale while locale-dependent code is running. The check here is done in case someone does not think about doing this. Only other possible issue is if someone changed the timezone and did not call tz.tzset . That is an issue for the programmer, though, since changing the timezone is worthless without that call. s$locale changed during initializationN(R tlangt_LocaleTime__calc_weekdayt_LocaleTime__calc_montht_LocaleTime__calc_am_pmt_LocaleTime__calc_timezonet_LocaleTime__calc_date_timet ValueError(tself((s _strptime.pyct__init__5s      cCs8t|}|o|iddn|id|S(Nit(tlisttinserttappend(Rtseqtfront((s _strptime.pyct__padRs   cCs~g}tdD]}|ti|iq~}g}tdD]}|ti|iqE~}||_||_dS(Ni(trangetcalendartday_abbrtlowertday_namet a_weekdayt f_weekday(Rt_[1]tiR t_[2]R!((s _strptime.pyct__calc_weekday[s44 cCs~g}tdD]}|ti|iq~}g}tdD]}|ti|iqE~}||_||_dS(Ni (RRt month_abbrRt month_nameta_monthtf_month(RR"R#R(R$R)((s _strptime.pyct __calc_monthcs44 c Csmg}xWd D]O}tiddd|dddd d f }|itid |iq W||_dS( Niiiiii,i7iiLis%p(ii(ttimet struct_timeRtstrftimeRtam_pm(RR.thourt time_tuple((s _strptime.pyct __calc_am_pmjs *#c Cstid0}dddg}tid |i|d d?fD]\}}||} x1|D])\} } | o| i | | } qWqWWtid@}d,ti||jo d-} nd.} | i d/| ||3[0-1]|[1-2]\d|0[1-9]|[1-9]| [1-9])tds(?P2[0-3]|[0-1]\d|\d)tHs(?P1[0-2]|0[1-9]|[1-9])tIsG(?P36[0-6]|3[0-5]\d|[1-2]\d\d|0[1-9]\d|00[1-9]|[1-9]\d|0[1-9]|[1-9])tjs(?P1[0-2]|0[1-9]|[1-9])tms(?P[0-5]\d|\d)tMs(?P6[0-1]|[0-5]\d|\d)tSs(?P5[0-3]|[0-4]\d|\d)tUs (?P[0-6])tws (?P\d\d)tys(?P\d\d\d\d)tYtAtaitBtbtpcss*x#|]}x|D] }|VqWqWdS(N((t.0ttz_namesRJ((s _strptime.pycs s tZR2tWtctxtXN(t locale_timeR tsuperR`Rt_TimeRE__seqToRER!R R)R(R.RBt __setitem__t __getitem__RCtpatternRDRERF(RRxtbase((s _strptime.pycRs8                %cCspt|dtdt}x$|D]}|djoPqqWdSdid|D}d||f}d|S(sdConvert a list to a regex string for matching a directive. Want possible matching values to be from longest to shortest. This prevents the possibility of a match occuring for a value that also a substring of a larger value that should have matched (e.g., 'abc' matching when 'abcdef' should have been the match). tkeytreverseRt|cssx|]}t|VqWdS(N(t re_escape(Rqtstuff((s _strptime.pycs s s (?P<%s>%ss%s)(tsortedtlentTruetjoin(Rt to_convertRLtvaluetregex((s _strptime.pyct __seqToREs   cCsd}td}|id|}td}|id|}xVd|joH|idd}d|||d |||f}||d}qEWd||fS( sReturn regex pattern for the format string. Need to make sure that any characters that might be interpreted as regex syntax are escaped. Rs([\\.^$*+?\(\){}\[\]|])s\\\1s\s+R2is%s%s%ss%s%s(t re_compiletsubtindex(Rtformattprocessed_formatt regex_charstwhitespace_replacementtdirective_index((s _strptime.pycR}s    cCst|i|tS(s2Return a compiled re object for the format string.(RR}R(RR((s _strptime.pycR sN(R\R]R^R@RRzR}R(((s _strptime.pycR`s  )  icCst|ddi}|p |dd}|dd}nd|d}|djod||Sn|d|d}d||SdS(sCalculate the Julian day based on the year, week of the year, and day of the week, with week_start_day representing whether the week of the year assumes the week starts on Sunday or Monday (6 or 0).iiiN(t datetime_datetweekday(tyeart week_of_yeart day_of_weektweek_starts_Mont first_weekdayt week_0_lengtht days_to_week((s _strptime.pyct_calc_julian_from_U_or_Ws s%a %b %d %H:%M:%S %YcCstiz ttiijotatint tt jotinti}ti |}|pyti |}Wntt j oF}|id}|djo d}n~td||fn$tj otd|nX|t| s.     Z   PK8YW5jMM_threading_local.pyc DDc@s^dZdgZdefdYZdZdefdYZddklZlZdS( s Thread-local objects. (Note that this module provides a Python version of the threading.local class. Depending on the version of Python you're using, there may be a faster one available. You should always import the `local` class from `threading`.) Thread-local objects support the management of thread-local data. If you have data that you want to be local to a thread, simply create a thread-local object and use its attributes: >>> mydata = local() >>> mydata.number = 42 >>> mydata.number 42 You can also access the local-object's dictionary: >>> mydata.__dict__ {'number': 42} >>> mydata.__dict__.setdefault('widgets', []) [] >>> mydata.widgets [] What's important about thread-local objects is that their data are local to a thread. If we access the data in a different thread: >>> log = [] >>> def f(): ... items = mydata.__dict__.items() ... items.sort() ... log.append(items) ... mydata.number = 11 ... log.append(mydata.number) >>> import threading >>> thread = threading.Thread(target=f) >>> thread.start() >>> thread.join() >>> log [[], 11] we get different data. Furthermore, changes made in the other thread don't affect data seen in this thread: >>> mydata.number 42 Of course, values you get from a local object, including a __dict__ attribute, are for whatever thread was current at the time the attribute was read. For that reason, you generally don't want to save these values across threads, as they apply only to the thread they came from. You can create custom local objects by subclassing the local class: >>> class MyLocal(local): ... number = 2 ... initialized = False ... def __init__(self, **kw): ... if self.initialized: ... raise SystemError('__init__ called too many times') ... self.initialized = True ... self.__dict__.update(kw) ... def squared(self): ... return self.number ** 2 This can be useful to support default values, methods and initialization. Note that if you define an __init__ method, it will be called each time the local object is used in a separate thread. This is necessary to initialize each thread's dictionary. Now if we create a local object: >>> mydata = MyLocal(color='red') Now we have a default number: >>> mydata.number 2 an initial color: >>> mydata.color 'red' >>> del mydata.color And a method that operates on the data: >>> mydata.squared() 4 As before, we can access the data in a separate thread: >>> log = [] >>> thread = threading.Thread(target=f) >>> thread.start() >>> thread.join() >>> log [[('color', 'red'), ('initialized', True)], 11] without affecting this thread's data: >>> mydata.number 2 >>> mydata.color Traceback (most recent call last): ... AttributeError: 'MyLocal' object has no attribute 'color' Note that subclasses can define slots, but they are not thread local. They are shared across threads: >>> class MyLocal(local): ... __slots__ = 'number' >>> mydata = MyLocal() >>> mydata.number = 42 >>> mydata.color = 'red' So, the separate thread: >>> thread = threading.Thread(target=f) >>> thread.start() >>> thread.join() affects what we see: >>> mydata.number 11 >>> del mydata tlocalt _localbasecBseZdZdZRS(t _local__keyt _local__argst _local__lockcOsti|}ddtt|f}ti|d|ti|d||fti|dt|p|o#|itijotdnti|d}|t i |<|S(NRs thread.local.RRs*Initialization arguments are not supportedt__dict__( tobjectt__new__tstrtidt __setattr__tRLockt__init__t TypeErrort__getattribute__t currentThreadR(tclstargstkwtselftkeytdict((s_threading_local.pycRs!(s _local__keys _local__argss _local__lock(t__name__t __module__t __slots__R(((s_threading_local.pycRscCsti|d}tii|}|djo{h}|ti|s   7PK8q~ atexit.pyc s            PK8 "b)) base64.pyc Dc@sdZddkZddkZddkZddddddd d d d d dddgZgZedD]Zeeeqk[Z dZ dZ ddZ ddZdZdZdZdZhdd<dd<dd<d d!<d"d#<d$d%<d&d'<d(d)<d*d+<d,d-<d.d/<d0d1<d2d3<d4d5<d6d7<d8d9<d:d;<d<d=<d>d?<d@dA<dBdC<dDdE<dFdG<dHdI<dJdK<dLdM<dNdO<dPdQ<dRdS<dTdU<dVdW<dXdY7}||d@d>7}|it|d?t|d ?d @t|d?d @t|d ?t|d ?d @t|d ?d @t|d?t|d @gqUWti|}|djo|d dSnX|d jo|d dSn;|djo|d dSn|djo|d dSn|S(scEncode a string using Base32. s is the string to encode. The encoded string is returned. itis!HHBiiii iii iiis======is====is===iit=( tdivmodtlentrangetstructtunpacktextendt_b32tabt EMPTYSTRINGR( Rtpartstquantatleftovertitc1tc2tc3R((s base64.pycRs8 .      c Cs'tt|d\}}|otdn|o%t|hdd<|d<}n|o|i}nd}tid|}|o5t|id}|djo|| }qng}d}d } x|D]} ti | } | djotd n|t| | >7}| d 8} | djo*|i t i d |d}d } qqWt i d |} |djo d } ny|djo| d } n^|djo| d } nC|djo| d } n(|djo| d } n td|i | ti|S(sGDecode a Base32 encoded string. s is the string to decode. Optional casefold is a flag specifying whether a lowercase alphabet is acceptable as input. For security purposes, the default is False. RFC 3548 allows for optional mapping of the digit 0 (zero) to the letter O (oh), and for optional mapping of the digit 1 (one) to either the letter I (eye) or letter L (el). The optional argument map01 when not None, specifies which letter the digit 1 should be mapped to (when map01 is not None, the digit 0 is always mapped to the letter O). For security purposes the default is None, so that 0 and 1 are not allowed in the input. The decoded string is returned. A TypeError is raised if s were incorrectly padded or if there are non-alphabet characters present in the string. isIncorrect paddingR9t0t1is(?P[=]*)$tpadi#sNon-base32 digit foundis%010xRiiiiiiiiN(RFRGR"Rtuppertretsearchtgroupt_b32revtgetRtappendRt unhexlifyRMR( Rtcasefoldtmap01RORPtpadcharstmoRNtacctshifttctvaltlast((s base64.pycRsR%            cCsti|iS(scEncode a string using Base16. s is the string to encode. The encoded string is returned. (RthexlifyRX(R((s base64.pycRscCsG|o|i}ntid|otdnti|S(swDecode a Base16 encoded string. s is the string to decode. Optional casefold is a flag specifying whether a lowercase alphabet is acceptable as input. For security purposes, the default is False. The decoded string is returned. A TypeError is raised if s were incorrectly padded or if there are non-alphabet characters present in the string. s [^0-9A-F]sNon-base16 digit found(RXRYRZR"RR_(RR`((s base64.pycR s iLcCsxto|it}|pPnxGt|tjo3|itt|}|pPn||7}q(Wti|}|i|qWdS(sEncode a file.N(tTruetreadt MAXBINSIZERGRRtwrite(tinputtoutputRtnstline((s base64.pycRscCsGx@to8|i}|pPnti|}|i|qWdS(sDecode a file.N(RjtreadlineRR Rm(RnRoRqR((s base64.pycR,s cCs]g}xGtdt|tD]-}|||t!}|iti|qWdi|S(sEncode a string.iR(RHRGRlR^RRR(RtpiecesRQtchunk((s base64.pycR6s cCs ti|S(sDecode a string.(RR (R((s base64.pycR?sc CsRddk}ddk}y#|i|idd\}}WnF|ij o7}|i|_|GHd|idGH|idnXt}xu|D]m\}}|djo t}n|d jo t}n|d jo t}n|d jot dSqqW|o2|dd jo!|t |dd |in||i |idS(sSmall test programiNitdeutsusage: %s [-d|-e|-u|-t] [file|-] -d, -u: decode -e: encode (default) -t: encode and decode string 'Aladdin:open sesame'iis-es-ds-us-tt-trb( tsystgetopttargvterrortstderrtstdouttexitRRttest1topentstdin(RxRytoptstargsR#tfunctota((s base64.pycttestFs.#       !cCs5d}t|}t|}|Gt|G|GHdS(NsAladdin:open sesame(RRtrepr(ts0ts1ts2((s base64.pycR_s  t__main__(,t__doc__RYRIRt__all__t_[1]RHt_xtchrRRMRRRRR R R R t _b32alphabetRRLtsortt_[2]RRtdictt_[3]tlongR\RtFalseRRR t MAXLINESIZERlRRRRRRt__name__(((s base64.pycssZ      -     $$$$$  '? *J       PK8N8BBbdb.pyc @dDc@sdZddkZddkZddkZdddgZdefdYZdfdYZdZdfd YZ d Z d Z d efd YZ dZ dZdZdS(sDebugger basicsiNtBdbQuittBdbt BreakpointcBseZdZRS(sException to give up completely(t__name__t __module__t__doc__(((sbdb.pycR scBsveZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdZdZd(dZdZdZdd(d(dZdZdZdZdZdZdZ dZ!d Z"d!Z#d"d#Z$d(d(d$Z%d(d(d%Z&d&Z'd'Z(RS()sGeneric Python debugger base class. This class takes care of details of the trace facility; a derived class should implement user interaction. The standard debugger class (pdb.Pdb) is an example. cCsh|_h|_dS(N(tbreakstfncache(tself((sbdb.pyct__init__s cCsv|d|dd!djo|Sn|ii|}|p5tii|}tii|}||i|(Rtgettostpathtabspathtnormcase(Rtfilenametcanonic((sbdb.pycRscCs>ddk}|id|_d|_d|_d|_dS(Nii(t linecachet checkcachetNonetbotframet stopframet returnframetquitting(RR((sbdb.pyctreset$s      cCs|iodSn|djo|i|Sn|djo|i||Sn|djo|i||Sn|djo|i||Sn|djo |iSn|djo |iSn|djo |iSndGt|GH|iS( Ntlinetcalltreturnt exceptiontc_callt c_exceptiontc_returns*bdb.Bdb.dispatch: unknown debugging event:(Rt dispatch_linet dispatch_calltdispatch_returntdispatch_exceptionttrace_dispatchtrepr(Rtframeteventtarg((sbdb.pycR&,s$           cCsL|i|p|i|o%|i||io tqEn|iS(N(t stop_heret break_heret user_lineRRR&(RR(((sbdb.pycR"@s    cCsz|idjo|i|_|iSn|i|p |i|pdSn|i|||io tn|iS(N( RRtf_backR&R+tbreak_anywheret user_callRR(RR(R*((sbdb.pycR#Fs    cCsO|i|p||ijo(|i|||io tqHn|iS(N(R+Rt user_returnRRR&(RR(R*((sbdb.pycR$Ss   cCs?|i|o(|i|||io tq8n|iS(N(R+tuser_exceptionRRR&(RR(R*((sbdb.pycR%Ys  cCsb||ijotSnxC|dj o5||ij o%||ijotSn|i}qWtS(N(RtTrueRRR.tFalse(RR(((sbdb.pycR+cscCs|i|ii}||ijotSn|i}||i|jo,|ii}||i|jotSqvnt|||\}}|o?|i|_ |o$|i o|i t |int SntSdS(N(Rtf_codet co_filenameRR4tf_linenotco_firstlinenot effectivetnumbert currentbpt temporarytdo_cleartstrR3(RR(Rtlinenotbptflag((sbdb.pycR,ns    cCs tddS(Ns)subclass of bdb must implement do_clear()(tNotImplementedError(RR*((sbdb.pycR=scCs|ii|i|iiS(N(Rthas_keyRR5R6(RR(((sbdb.pycR/s cCsdS(snThis method is called when there is the remote possibility that we ever need to stop in this function.N((RR(t argument_list((sbdb.pycR0scCsdS(s9This method is called when we stop or break at this line.N((RR(((sbdb.pycR-scCsdS(s5This method is called when a return trap is set here.N((RR(t return_value((sbdb.pycR1scCs|\}}}dS(smThis method is called if an exception occurs, but only if we are to stop at or just below this level.N((RR(t.2texc_typet exc_valuet exc_traceback((sbdb.pycR2s cCsd|_d|_d|_dS(sStop after one line of code.iN(RRRR(R((sbdb.pyctset_steps  cCs||_d|_d|_dS(s2Stop on the next line in or below the given frame.iN(RRRR(RR(((sbdb.pyctset_nexts  cCs"|i|_||_d|_dS(s)Stop when returning from the given frame.iN(R.RRR(RR(((sbdb.pyct set_returns  cCsu|djotii}n|ix*|o"|i|_||_|i}q-W|iti |idS(spStart debugging from `frame`. If frame is not specified, debugging starts from caller's frame. N( Rtsyst _getframeR.RR&tf_traceRRJtsettrace(RR(((sbdb.pyct set_traces     cCsz|i|_d|_d|_|ipNtidtii }x/|o#||ij o|` |i }qGWndS(Ni( RRRRRRRMRPRNR.RO(RR(((sbdb.pyct set_continues     cCs/|i|_d|_d|_tiddS(Ni(RRRRRRMRP(R((sbdb.pyctset_quits   ic Cs|i|}ddk}|i||}|pd||fSn||ijog|i|t__args__s()t __return__s->( RR'RR5R6tco_nametf_localsRRTtstrip( Rt frame_linenotlprefixRR'R(R?RtstargstrvR((sbdb.pyctformat_stack_entryFs*      c Bs|djoddk}|i}n|djo |}n|iei|ie|ei p|d}nz(y|||UWne j onXWdd|_ eidXdS(Nis i( Rt__main__t__dict__RRMRPR&t isinstancettypestCodeTypeRR(RtcmdtglobalstlocalsR((sbdb.pyctrunbs         c Cs|djoddk}|i}n|djo |}n|iti|it|ti p|d}nz.yt |||SWnt j onXWdd|_ tidXdS(Nis i( RRRRRMRPR&RRRtevalRR(RtexprRRR((sbdb.pyctrunevalus         cCs|i|||dS(N(R(RRRR((sbdb.pyctrunctxsc Osk|iti|id}z-y|||}Wntj onXWdd|_tidX|S(Ni(RRMRPR&RRR(RtfuncR}tkwdstres((sbdb.pyctruncalls   N()RRRR RRR&R"R#R$R%R+R,R=R/R0R-R1R2RJRKRLRRQRRRSRYR]RbRdReRfRgRhRiRtRRRRR(((sbdb.pycR sN                           cCstidS(N(RRQ(((sbdb.pycRQscBs\eZdZdZhZdgZddddZdZdZ dZ ddZ RS( sBreakpoint class Implements temporary breakpoints, ignore counts, disabling and (re)-enabling, and conditionals. Breakpoints are indexed by number through bpbynumber and by the file,line tuple using bplist. The former points to a single instance of class Breakpoint. The latter points to a list of such instances since there may be more than one breakpoint per line. iicCs||_d|_||_||_||_||_d|_d|_d|_ t i |_ t i dt _ |i i||ii||fo|i||fi|n|g|i||fs    T  5  PK8Dnp bisect.pyc Fc@sdZdddZeZdddZeZdddZdddZy2ddklZlZlZlZlZlZWne j onXdS( sBisection algorithms.icCsy|djot|}nxE||jo7||d}|||jo |}q |d}q W|i||dS(sInsert item x in list a, and keep it sorted assuming a is sorted. If x is already in a, insert it to the right of the rightmost x. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. iiN(tNonetlentinsert(tatxtlothitmid((s bisect.pyct insort_rights   cCsi|djot|}nxE||jo7||d}|||jo |}q |d}q W|S(sReturn the index where to insert item x in list a, assuming a is sorted. The return value i is such that all e in a[:i] have e <= x, and all e in a[i:] have e > x. So if x already appears in the list, a.insert(x) will insert just after the rightmost x already there. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. iiN(RR(RRRRR((s bisect.pyct bisect_rights   cCsy|djot|}nxE||jo7||d}|||jo|d}q |}q W|i||dS(sInsert item x in list a, and keep it sorted assuming a is sorted. If x is already in a, insert it to the left of the leftmost x. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. iiN(RRR(RRRRR((s bisect.pyct insort_left+s   cCsi|djot|}nxE||jo7||d}|||jo|d}q |}q W|S(sReturn the index where to insert item x in list a, assuming a is sorted. The return value i is such that all e in a[:i] have e < x, and all e in a[i:] have e >= x. So if x already appears in the list, a.insert(x) will insert just before the leftmost x already there. Optional args lo (default 0) and hi (default len(a)) bound the slice of a to be searched. iiN(RR(RRRRR((s bisect.pyct bisect_left=s   i(R R R RtinsorttbisectN( t__doc__RRR R R R R t_bisectt ImportError(((s bisect.pycss2PK8Aݡhh calendar.pyc NֱGc@sdZddklZddkZddkZddkZdddddd d d d d ddddddddgZeZ defdYZ defdYZ dZ dZ dddddddddddddg Zdd@dYZd dAd!YZed"Zed#Zed$Zed%Zed&\ZZZZZZZd'Zd(Zd)Zd*Z d+e!fd,YZ"d-e"fd.YZ#d/e"fd0YZ$d1dBd2YZ%d3e#fd4YZ&d5e$fd6YZ'e#Z(e(i)Z*d7Z+e(i,Z-e(i.Z.e(i/Z0e(i1Z2e(i3Z3e(i4Z5e(i6Z7e(i8Z9dDZ:d9Z;e:e;d:Z<e:e;d;Z=d<Z>ei?e>ddi@ZAd=ZBd>ZCeDd?joeCeiEndS(Es$Calendar printing functions Note when comparing these calendars to the ones printed by cal(1): By default, these calendars have Monday as the first day of the week, and Sunday as the last (the European convention). Use setfirstweekday() to set the first day of the week (0=Monday, 6=Sunday).i(twith_statementNtIllegalMonthErrortIllegalWeekdayErrortsetfirstweekdayt firstweekdaytisleaptleapdaystweekdayt monthranget monthcalendartprmonthtmonthtprcaltcalendarttimegmt month_namet month_abbrtday_nametday_abbrcBseZdZdZRS(cCs ||_dS(N(R (tselfR ((s calendar.pyct__init__scCs d|iS(Ns!bad month number %r; must be 1-12(R (R((s calendar.pyct__str__s(t__name__t __module__RR(((s calendar.pycRs cBseZdZdZRS(cCs ||_dS(N(R(RR((s calendar.pycRscCs d|iS(Ns7bad weekday number %r; must be 0 (Monday) to 6 (Sunday)(R(R((s calendar.pycR s(RRRR(((s calendar.pycRs iiiiiit_localized_monthcBsseZgZedD]#Zeeideddiq[Zei dddZ dZ dZ RS(i iiicCsdS(t((tx((s calendar.pyct3scCs ||_dS(N(tformat(RR((s calendar.pycR5scCsZ|i|}t|to,g}|D]}|||iq(~Sn||iSdS(N(t_monthst isinstancetsliceR(Rtitfuncst_[1]tf((s calendar.pyct __getitem__8s ,cCsdS(Ni ((R((s calendar.pyct__len__?s( RRR"txrangeR tdatetimetdatetstrftimeRtinsertRR$R%(((s calendar.pycR0s =  t_localized_daycBs`eZgZedD]#Zeeiddediq[ZdZ dZ dZ RS(iiicCs ||_dS(N(R(RR((s calendar.pycRHscCsZ|i|}t|to,g}|D]}|||iq(~Sn||iSdS(N(t_daysRRR(RR R!R"R#((s calendar.pycR$Ks ,cCsdS(Ni((R((s calendar.pycR%Rs( RRR"R&R R'R(R)R,RR$R%(((s calendar.pycR+Cs=  s%As%as%Bs%bicCs0|ddjo|ddjp|ddjS(s.Return 1 for leap years, 0 for non-leap years.iiidi((tyear((s calendar.pycRbscCsD|d8}|d8}|d|d|d|d|d|dS(sFReturn number of leap years in range [y1, y2). Assume y1 <= y2.iiidi((ty1ty2((s calendar.pycRgs  cCsti|||iS(sTReturn weekday (0-6 ~ Mon-Sun) for year (1970-...), month (1-12), day (1-31).(R'R(R(R-R tday((s calendar.pycRoscCskd|jo djnpt|nt||d}t||tjo t|}||fS(sQReturn weekday (0-6 ~ Mon-Sun) and number of days (28-31) for year, month.ii (RRtmdaystFebruaryR(R-R tday1tndays((s calendar.pycRus !tCalendarcBseZdZddZdZdZeeeZdZdZ dZ dZ d Z d Z d Zd d Zd dZd dZRS(so Base calendar class. This class doesn't do any formatting. It simply provides data to subclasses. icCs ||_dS(N(R(RR((s calendar.pycRscCs |idS(Ni(t _firstweekday(R((s calendar.pyctgetfirstweekdayscCs ||_dS(N(R6(RR((s calendar.pycRsccs1x*t|i|idD]}|dVqWdS(ss Return a iterator for one week of weekday numbers starting with the configured first one. iN(R&R(RR ((s calendar.pyct iterweekdayssccsti||d}|i|id}|tid|8}tidd}xFto>|V||7}|i|jo|i|ijoPqWqWWdS(s Return an iterator for one month. The iterator will yield datetime.date values and will always iterate through complete weeks, so it will yield dates outside the specified month. iitdaysN(R'R(RRt timedeltatTrueR (RR-R R(R9toneday((s calendar.pyctitermonthdatess &ccsZxS|i||D]?}|i|jod|ifVq|i|ifVqWdS(s Like itermonthdates(), but will yield (day number, weekday number) tuples. For days outside the specified month the day number is 0. iN(R=R RR0(RR-R R(((s calendar.pyctitermonthdays2s ccsBx;|i||D]'}|i|jo dVq|iVqWdS(s Like itermonthdates(), but will yield day numbers. For days outside the specified month the day number is 0. iN(R=R R0(RR-R R(((s calendar.pyct itermonthdayss  cCsTt|i||}g}tdt|dD]}||||d!q5~S(s Return a matrix (list of lists) representing a month's calendar. Each row represents a week; week entries are datetime.date values. ii(tlistR=R&tlen(RR-R tdatesR"R ((s calendar.pyctmonthdatescalendarscCsTt|i||}g}tdt|dD]}||||d!q5~S(s Return a matrix representing a month's calendar. Each row represents a week; week entries are (day number, weekday number) tuples. Day numbers outside this month are zero. ii(R@R>R&RA(RR-R R9R"R ((s calendar.pyctmonthdays2calendarscCsTt|i||}g}tdt|dD]}||||d!q5~S(s Return a matrix representing a month's calendar. Each row represents a week; days outside this month are zero. ii(R@R?R&RA(RR-R R9R"R ((s calendar.pyctmonthdayscalendarsic Csvg}tttdD]}||i||q~}g}tdt||D]}|||||!qW~S(s& Return the data for the specified year ready for formatting. The return value is a list of month rows. Each month row contains upto width months. Each month contains between 4 and 6 weeks and each week contains 1-7 days. Days are datetime.date objects. i i(R&tJanuaryRCRA(RR-twidthR"R tmonthst_[2]((s calendar.pyctyeardatescalendars3c Csvg}tttdD]}||i||q~}g}tdt||D]}|||||!qW~S(s Return the data for the specified year ready for formatting (similar to yeardatescalendar()). Entries in the week lists are (day number, weekday number) tuples. Day numbers outside this month are zero. i i(R&RFRDRA(RR-RGR"R RHRI((s calendar.pyctyeardays2calendars3c Csvg}tttdD]}||i||q~}g}tdt||D]}|||||!qW~S(s Return the data for the specified year ready for formatting (similar to yeardatescalendar()). Entries in the week lists are day numbers. Day numbers outside this month are zero. i i(R&RFRERA(RR-RGR"R RHRI((s calendar.pyctyeardayscalendars3(RRt__doc__RR7RtpropertyRR8R=R>R?RCRDRERJRKRL(((s calendar.pycR5s        t TextCalendarcBseZdZdZdZdZdZdZedZ dddZ ddd Z d d d d dZ ddd d dZ RS(sr Subclass of Calendar that outputs a calendar as a simple plain text similar to the UNIX program cal. cCs|i||GdS(s3 Print a single week (no newline). N(t formatweek(RttheweekRG((s calendar.pyctprweekscCs.|djo d}n d|}|i|S(s* Returns a formatted day. iRs%2i(tcenter(RR0RRGts((s calendar.pyct formatday s   cs difd|DS(sA Returns a single week in a string (no newline). t c3s.x'|] \}}i||VqWdS(N(RU(t.0tdtwd(RGR(s calendar.pycs s (tjoin(RRQRG((RGRs calendar.pycRPscCs2|djo t}nt}||| i|S(s4 Returns a formatted week day name. i (RRRS(RR0RGtnames((s calendar.pyct formatweekdays  cs&difdiDS(s- Return a header for a week. RVc3s%x|]}i|VqWdS(N(R\(RWR (RRG(s calendar.pycs *s (RZR8(RRG((RGRs calendar.pyctformatweekheader&scCs2t|}|od||f}n|i|S(s0 Return a formatted month name. s%s %r(RRS(RttheyeartthemonthRGtwithyearRT((s calendar.pyctformatmonthname,s icCs|i||||GdS(s+ Print a month's calendar. N(t formatmonth(RR^R_twtl((s calendar.pycR 5scCstd|}td|}|i||d|dd}|i}|d|7}||i|i7}|d|7}xD|i||D]0}||i||i7}|d|7}qW|S(s@ Return a month's calendar string (multi-line). iiis (tmaxRatrstripR]RDRP(RR^R_RcRdRTtweek((s calendar.pycRb;s! iiiic s?td|}td|}td|}|dddg}|i}|ti|||di|d|i|xti|D]{\}} t||dt ||ddd} |d|fd| D} |t | |i|d|fd| D} |t | |i|d|td| D} xt| D]}g}xO| D]G}|t |jo|id q|ii |||qW|t ||i|d|qWqWd i |S( sC Returns a year's calendar as a multi-line string. iiis i c3s+x$|]}i|tVqWdS(N(RatFalse(RWtk(R^tcolwidthR(s calendar.pycs \s c3sx|] }VqWdS(N((RWRi(theader(s calendar.pycs `s cssx|]}t|VqWdS(N(RA(RWtcal((s calendar.pycs ds R(RetappendtreprRSRfR]t enumerateRKR&tmint formatstringRARPRZ(RR^RcRdtctmtvtaR trowRHR[theaderstheighttjtweeksRl((RkRRjR^s calendar.pyct formatyearKs@ / ,  !cCs|i|||||GHdS(sPrint a year's calendar.N(R{(RR^RcRdRrRs((s calendar.pyctpryearps(RRRMRRRURPR\R]R;RaR RbR{R|(((s calendar.pycROs    %t HTMLCalendarcBseZdZdddddddgZdZd Zd Zd Zed Z ed Z ddZ ddddZ RS(s4 This calendar returns complete HTML pages. tmonttuetwedtthutfritsattsuncCs.|djodSnd|i||fSdS(s/ Return a day as a table cell. is s%dN(t cssclasses(RR0R((s calendar.pycRU}s cs'difd|D}d|S(s8 Return a complete week as a table row. Rc3s+x$|]\}}i||VqWdS(N(RU(RWRXRY(R(s calendar.pycs s s %s(RZ(RRQRT((Rs calendar.pycRPscCsd|i|t|fS(s: Return a weekday name as a table header. s%s(RR(RR0((s calendar.pycR\scs-difdiD}d|S(s< Return a header for a week as a table row. Rc3s"x|]}i|VqWdS(N(R\(RWR (R(s calendar.pycs s s %s(RZR8(RRT((Rs calendar.pycR]s%cCs5|odt||f}ndt|}d|S(s5 Return a month name as a table row. s%s %ss%ss.%s(R(RR^R_R`RT((s calendar.pycRascCsg}|i}|d|d||i||d||d||i|dx7|i||D]#}||i||dqvW|d|ddi|S(s6 Return a formatted month as a table. s@s R`s
R(RmRaR]RDRPRZ(RR^R_R`RtRuRg((s calendar.pycRbs       icCsg}|i}t|d}|d|d|d||fxtttd|D]w}t|t||d}|dx>|D]6}|d||i||d t|d qW|d q]W|d d i|S(s? Return a formatted year as a table of tables. is?s s.i i ssss
%s
R`s
R(RmReR&RFRpRbRhRZ(RR^RGRtRuR RHRs((s calendar.pycR{s$      s calendar.csscCs|djoti}ng}|i}|d||d|d|d|d||dj o|d|n|d||d|d ||i|||d |d d i|i|d S(sB Return a formatted year as a complete HTML page. s$ sn s s sC s4 sCalendar for %d s s s RtxmlcharrefreplaceN(tNonetsystgetdefaultencodingRmR{RZtencode(RR^RGtcsstencodingRtRu((s calendar.pyctformatyearpages$          N(RRRMRRURPR\R]R;RaRbR{RR(((s calendar.pycR}us     t TimeEncodingcBs#eZdZdZdZRS(cCs ||_dS(N(tlocale(RR((s calendar.pycRscCs/titi|i|_titidS(Ni(t_localet setlocaletLC_TIMERt oldlocalet getlocale(R((s calendar.pyct __enter__scGstiti|idS(N(RRRR(Rtargs((s calendar.pyct__exit__s(RRRRR(((s calendar.pycRs  tLocaleTextCalendarcBs2eZdZdddZdZedZRS(s This class can be passed a locale name in the constructor and will return month and weekday names in the specified locale. If this locale includes an encoding all strings containing month and weekday names will be returned as unicode. icCs:ti|||djoti}n||_dS(N(RORRRtgetdefaultlocaleR(RRR((s calendar.pycRs cCst|ii}i}ze|~}|djo t}nt}||}|dj o|i|}n|| i|SWd|~QXdS(Ni ( RRRRRRRtdecodeRS(RR0RGR"RIRR[tname((s calendar.pycR\s(    c Cst|ii}i}z_|~}t|}|dj o|i|}n|od||f}n|i|SWd|~QXdS(Ns%s %r(RRRRRRRRS( RR^R_RGR`R"RIRRT((s calendar.pycRa s(  N(RRRMRRR\R;Ra(((s calendar.pycRs tLocaleHTMLCalendarcBs2eZdZdddZdZedZRS(s This class can be passed a locale name in the constructor and will return month and weekday names in the specified locale. If this locale includes an encoding all strings containing month and weekday names will be returned as unicode. icCs:ti|||djoti}n||_dS(N(R}RRRRR(RRR((s calendar.pycRs cCswt|ii}i}zL|~}t|}|dj o|i|}nd|i||fSWd|~QXdS(Ns%s(RRRRRRRR(RR0R"RIRRT((s calendar.pycR\!s (  cCst|ii}i}zZ|~}t|}|dj o|i|}n|od||f}nd|SWd|~QXdS(Ns%s %ss.%s(RRRRRRR(RR^R_R`R"RIRRT((s calendar.pycRa(s(  N(RRRMRRR\R;Ra(((s calendar.pycRs cCs;t|jo tjnpt|n|t_dS(N(tMONDAYtSUNDAYRRrR(R((s calendar.pycR7siicCst|||GHdS(s1Prints multi-column formatting for year calendarsN(Rq(tcolsRjtspacing((s calendar.pycRKscs'|d9}|ifd|DS(sEReturns a string formatted from n strings, centered within n columns.RVc3s"x|]}|iVqWdS(N(RS(RWRr(Rj(s calendar.pycs Ss (RZ(RRjR((Rjs calendar.pycRqPs ic Csq|d \}}}}}}ti||dit|d}|d|}|d|} | d|} | S(sBUnrelated but handy function to calculate Unix timestamp from GMT.iiii<(R'R(t toordinalt _EPOCH_ORD( ttupleR-R R0thourtminutetsecondR9thourstminutestseconds((s calendar.pycRZs 'c Csddk}|idd}|idddddd d d d d |idddddd d dd d|idddddd d dd d|idddddd d dd d|iddddd d d d!|id"d#dd$d dd d%|id&d'dd(d dd d)|id*d+ddd d,d-d6d d/|i|\}}|io)|i o|id0ti dn|i|if}|i d.jo|iot d$|}n t }|i}|djoti }ntd(|d|i}t|djo!|itiii|GHqt|d jo|it|d|GHq|id1ti dnZ|iotd$|}n t}td2|id3|i}t|djo|i|d4<|i|d5sh    -    !    up #            \ PK8tHT44cmd.pyc ):sMiscellaneous help topics:sUndocumented commands:s*** No help on %sittabcCsnddk}|dj o ||_n |i|_|dj o ||_n |i|_g|_||_dS(sInstantiate a line-oriented interpreter framework. The optional argument 'completekey' is the readline name of a completion key; it defaults to the Tab key. If completekey is not None and the readline module is available, command completion is done automatically. The optional arguments stdin and stdout specify alternate input and output file objects; if not specified, sys.stdin and sys.stdout are used. iN(tsystNonetstdintstdouttcmdqueuet completekey(tselfR RRR((scmd.pyct__init__Os        cCs|i|iog|io]yCddk}|i|_|i|i|i|idWq{t j oq{XnzE|dj o ||_ n|i o!|i i t|i dnd}x|p|io|iid}n|io3yt|i}Wqtj o d}qXnQ|i i |i|i i|ii}t|p d}n |d }|i|}|i|}|i||}qW|iWd|ioD|io:y ddk}|i|iWqt j oqXnXdS(sRepeatedly issue a prompt, accept input, parse an initial prefix off the received input, and dispatch to action methods, passing them the remainder of the line as argument. iNs : completes itEOF(tpreloopt use_rawinputR treadlinet get_completert old_completert set_completertcompletetparse_and_bindt ImportErrorRtintroRtwritetstrR tpopt raw_inputtprompttEOFErrortflushRtlentprecmdtonecmdtpostcmdtpostloop(R RRtstoptline((scmd.pyctcmdloopfsP      !       cCs|S(sHook method executed just before the command line is interpreted, but after the input prompt is generated and issued. ((R R%((scmd.pycR scCs|S(s?Hook method executed just after a command dispatch is finished.((R R$R%((scmd.pycR"scCsdS(s>Hook method executed once when the cmdloop() method is called.N((R ((scmd.pycRscCsdS(sYHook method executed once when the cmdloop() method is about to return. N((R ((scmd.pycR#scCs|i}|pdd|fSnh|ddjod|d}nE|ddjo3t|dod|d}qdd|fSndt|}}x0||jo"|||ijo|d}qW|| ||i}}|||fS( sParse the line into a command name and a string containing the arguments. Returns a tuple containing (command, args, line). 'command' and 'args' may be None if the line couldn't be parsed. it?shelp it!tdo_shellsshell N(tstripRthasattrRt identchars(R R%titntcmdtarg((scmd.pyct parselines !cCs|i|\}}}|p|iSn|djo|i|Sn||_|djo|i|SnEyt|d|}Wn tj o|i|SnX||SdS(shInterpret the argument as though it had been typed in response to the prompt. This may be overridden, but should not normally need to be; see the precmd() and postcmd() methods for useful execution hooks. The return value is a flag indicating whether interpretation of commands by the interpreter should stop. Rtdo_N(R1t emptylineRtdefaulttlastcmdtgetattrtAttributeError(R R%R/R0tfunc((scmd.pycR!s    cCs"|io|i|iSndS(sCalled when an empty line is entered in response to the prompt. If this method is not overridden, it repeats the last nonempty command entered. N(R5R!(R ((scmd.pycR3s cCs|iid|dS(sCalled on an input line when the command prefix is not recognized. If this method is not overridden, it prints an error message and returns. s*** Unknown syntax: %s N(RR(R R%((scmd.pycR4scGsgS(sMethod called to complete an input line when no command-specific complete_*() method is available. By default, it returns an empty list. ((R tignored((scmd.pyctcompletedefaultscGsGd|}g}|iD]%}|i|o||dqq~S(NR2i(t get_namest startswith(R ttextR9tdotextt_[1]ta((scmd.pyct completenamess c Cs2|djoddk}|i}|i}t|t|}|i|}|i|}|djol|i|\} } } | djo |i} qyt|d| } Wqt j o|i} qXn |i } | |||||_ ny|i |SWnt j o dSnXdS(sReturn the next possible completion for 'text'. If a command has not been entered, then complete against command list. Otherwise try to call complete_ to get list of completions. iiNRt complete_(Rtget_line_buffertlstripRt get_begidxt get_endidxR1R:R6R7RAtcompletion_matchest IndexErrorR( R R=tstateRtoriglineR%tstrippedtbegidxtendidxR/targstfootcompfunc((scmd.pycRs*        cCseg}|ig}xL|oD|id}|io|t|i}n|t|}qW|S(Ni(t __class__Rt __bases__tlisttdir(R tnamestclassestaclass((scmd.pycR;s  cGs |i|S(N(RA(R RN((scmd.pyct complete_help'sc Cs4|oyt|d|}Wntj oyCt|d|i}|o"|iidt|dSnWntj onX|iidt|i|fdSnX|nq|i}g}g}h}x1|D])}|d djod||d Ns list[i] not a string for i in %ss, is%s iiiRis ( RRtrangeRt isinstanceRt TypeErrortjointmaptmaxR]tljust(R RSt displaywidthR?R-t nonstringstsizetnrowstncolst colwidthsttotwidthtcoltcolwidthtrowtxttexts((scmd.pycRl_sj(                   N(#t__name__t __module__RZtPROMPTRt IDENTCHARSR,RkR5RRR^R`RaRcR[RR R&R R"RR#R1R!R3R4R:RARR;RXRjR_Rl(((scmd.pycR7s<  4          - ((RZtstringt__all__Rt ascii_letterstdigitsRR(((scmd.pycs.s   PK8Xㄋ~~ codecs.pyc "Ec@sAdZddkZddkZyddkTWn%ej oZedenXddddd d d d d dddddddddddddddgZdZdZ Z dZ Z d Z d!Zeid"joe ZZe Zne ZZeZe Ze Ze ZeZd#efd$YZd%dNd&YZd'efd(YZd)efd*YZd+efd,YZd-efd.YZd/efd0YZd1efd2YZ d3dOd4YZ!d5dPd6YZ"d7dd8d9d:Z$dd8d;Z%d<Z&d=Z'd>Z(d?Z)d@Z*dAZ+d8dBZ,d8dCZ-dDZ.dEZ/y@e0d8Z1e0dFZ2e0dGZ3e0dHZ4e0dIZ5Wn1e6j o%dZ1dZ2dZ3dZ4dZ5nXdJZ7e7oddk8Z8ne9dKjo4e%ei:dLdMe_:e%ei;dMdLe_;ndS(Qs codecs -- Python Codec Registry, API and helpers. Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iN(t*s%Failed to load the builtin codecs: %stregistertlookuptopent EncodedFiletBOMtBOM_BEtBOM_LEtBOM32_BEtBOM32_LEtBOM64_BEtBOM64_LEtBOM_UTF8t BOM_UTF16t BOM_UTF16_LEt BOM_UTF16_BEt BOM_UTF32t BOM_UTF32_LEt BOM_UTF32_BEt strict_errorst ignore_errorstreplace_errorstxmlcharrefreplace_errorstregister_errort lookup_errorssssttlittlet CodecInfocBs)eZddddddZdZRS(c Csati|||||f}||_||_||_||_||_||_||_|S(N( ttuplet__new__tnametencodetdecodetincrementalencodertincrementaldecodert streamwritert streamreader( tclsRR R$R#R!R"Rtself((s codecs.pycRMs       cCs)d|ii|ii|it|fS(Ns&<%s.%s object for encoding %s at 0x%x>(t __class__t __module__t__name__Rtid(R&((s codecs.pyct__repr__YsN(R)R(tNoneRR+(((s codecs.pycRKs tCodeccBs&eZdZddZddZRS(s Defines the interface for stateless encoders/decoders. The .encode()/.decode() methods may use different error handling schemes by providing the errors argument. These string values are predefined: 'strict' - raise a ValueError error (or a subclass) 'ignore' - ignore the character and continue with the next 'replace' - replace with a suitable replacement character; Python will use the official U+FFFD REPLACEMENT CHARACTER for the builtin Unicode codecs on decoding and '?' on encoding. 'xmlcharrefreplace' - Replace with the appropriate XML character reference (only for encoding). 'backslashreplace' - Replace with backslashed escape sequences (only for encoding). The set of allowed values can be extended via register_error. tstrictcCs tdS(s+ Encodes the object input and returns a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling. The method may not store state in the Codec instance. Use StreamCodec for codecs which have to keep state in order to make encoding/decoding efficient. The encoder must be able to handle zero length input and return an empty object of the output object type in this situation. N(tNotImplementedError(R&tinputterrors((s codecs.pycRrscCs tdS(s Decodes the object input and returns a tuple (output object, length consumed). input must be an object which provides the bf_getreadbuf buffer slot. Python strings, buffer objects and memory mapped files are examples of objects providing this slot. errors defines the error handling to apply. It defaults to 'strict' handling. The method may not store state in the Codec instance. Use StreamCodec for codecs which have to keep state in order to make encoding/decoding efficient. The decoder must be able to handle zero length input and return an empty object of the output object type in this situation. N(R/(R&R0R1((s codecs.pycR s(R)R(t__doc__RR (((s codecs.pycR-\s tIncrementalEncodercBs/eZdZddZedZdZRS(s An IncrementalEncoder encodes an input in multiple steps. The input can be passed piece by piece to the encode() method. The IncrementalEncoder remembers the state of the Encoding process between calls to encode(). R.cCs||_d|_dS(s Creates an IncrementalEncoder instance. The IncrementalEncoder may use different error handling schemes by providing the errors keyword argument. See the module docstring for a list of possible values. tN(R1tbuffer(R&R1((s codecs.pyct__init__s cCs tdS(sA Encodes input and returns the resulting object. N(R/(R&R0tfinal((s codecs.pycRscCsdS(s: Resets the encoder to the initial state. N((R&((s codecs.pyctresets(R)R(R2R6tFalseRR8(((s codecs.pycR3s tBufferedIncrementalEncodercBs8eZdZddZdZedZdZRS(s This subclass of IncrementalEncoder can be used as the baseclass for an incremental encoder if the encoder must keep some of the output in a buffer between calls to encode(). R.cCsti||d|_dS(NR4(R3R6R5(R&R1((s codecs.pycR6scCs tdS(N(R/(R&R0R1R7((s codecs.pyct_buffer_encodescCs<|i|}|i||i|\}}|||_|S(N(R5R;R1(R&R0R7tdatatresulttconsumed((s codecs.pycRs  cCsti|d|_dS(NR4(R3R8R5(R&((s codecs.pycR8s (R)R(R2R6R;R9RR8(((s codecs.pycR:s    tIncrementalDecodercBs/eZdZddZedZdZRS(s An IncrementalDecoder decodes an input in multiple steps. The input can be passed piece by piece to the decode() method. The IncrementalDecoder remembers the state of the decoding process between calls to decode(). R.cCs ||_dS(s Creates a IncrementalDecoder instance. The IncrementalDecoder may use different error handling schemes by providing the errors keyword argument. See the module docstring for a list of possible values. N(R1(R&R1((s codecs.pycR6scCs tdS(sA Decodes input and returns the resulting object. N(R/(R&R0R7((s codecs.pycR scCsdS(s: Resets the decoder to the initial state. N((R&((s codecs.pycR8s(R)R(R2R6R9R R8(((s codecs.pycR?s tBufferedIncrementalDecodercBs8eZdZddZdZedZdZRS(s This subclass of IncrementalDecoder can be used as the baseclass for an incremental decoder if the decoder must be able to handle incomplete byte sequences. R.cCsti||d|_dS(NR4(R?R6R5(R&R1((s codecs.pycR6scCs tdS(N(R/(R&R0R1R7((s codecs.pyct_buffer_decodescCs<|i|}|i||i|\}}|||_|S(N(R5RAR1(R&R0R7R<R=R>((s codecs.pycR s  cCsti|d|_dS(NR4(R?R8R5(R&((s codecs.pycR8s (R)R(R2R6RAR9R R8(((s codecs.pycR@s    t StreamWritercBsMeZddZdZdZdZedZdZdZ RS(R.cCs||_||_dS(s[ Creates a StreamWriter instance. stream must be a file-like object open for writing (binary) data. The StreamWriter may use different error handling schemes by providing the errors keyword argument. These parameters are predefined: 'strict' - raise a ValueError (or a subclass) 'ignore' - ignore the character and continue with the next 'replace'- replace with a suitable replacement character 'xmlcharrefreplace' - Replace with the appropriate XML character reference. 'backslashreplace' - Replace with backslashed escape sequences (only for encoding). The set of allowed parameter values can be extended via register_error. N(tstreamR1(R&RCR1((s codecs.pycR6s cCs/|i||i\}}|ii|dS(s> Writes the object's contents encoded to self.stream. N(RR1RCtwrite(R&tobjectR<R>((s codecs.pycRD+scCs|idi|dS(s[ Writes the concatenated list of strings to the stream using .write(). R4N(RDtjoin(R&tlist((s codecs.pyct writelines2scCsdS(s5 Flushes and resets the codec buffers used for keeping state. Calling this method should ensure that the data on the output is put into a clean state, that allows appending of new fresh data without having to rescan the whole stream to recover state. N((R&((s codecs.pycR89s cCs||i|S(s? Inherit all other methods from the underlying stream. (RC(R&Rtgetattr((s codecs.pyct __getattr__EscCs|S(N((R&((s codecs.pyct __enter__LscCs|iidS(N(RCtclose(R&ttypetvaluettb((s codecs.pyct__exit__Os( R)R(R6RDRHR8RIRJRKRP(((s codecs.pycRBs     t StreamReadercBseZddZddZddedZdedZdedZ dZ dd Z d Z d Z ed Zd ZdZRS(R.cCs1||_||_d|_d|_d|_dS(s[ Creates a StreamReader instance. stream must be a file-like object open for reading (binary) data. The StreamReader may use different error handling schemes by providing the errors keyword argument. These parameters are predefined: 'strict' - raise a ValueError (or a subclass) 'ignore' - ignore the character and continue with the next 'replace'- replace with a suitable replacement character; The set of allowed parameter values can be extended via register_error. R4N(RCR1t bytebuffert charbufferR,t linebuffer(R&RCR1((s codecs.pycR6Vs     cCs tdS(N(R/(R&R0R1((s codecs.pycR psic Cs|io"di|i|_d|_nxjtob|djo?|djo|ioPq~qt|i|joPqnt|i|joPn|djo|ii}n|ii|}|i|}y|i ||i \}}Wnnt j ob}|oO|i ||i |i \}}|i t} t| djoqgqlnX|||_|i|7_|pPq/q/W|djo|i} d|_n|i| } |i||_| S(s Decodes data from the stream self.stream and returns the resulting object. chars indicates the number of characters to read from the stream. read() will never return more than chars characters, but it might return less, if there are not enough characters available. size indicates the approximate maximum number of bytes to read from the stream for decoding purposes. The decoder can modify this setting as appropriate. The default value -1 indicates to read and decode as much as possible. size is intended to prevent having to decode huge files in one step. If firstline is true, and a UnicodeDecodeError happens after the first line terminator in the input only the first line will be returned, the rest of the input will be kept until the next call to read(). The method should use a greedy read strategy meaning that it should read as much data as is allowed within the definition of the encoding and the given size, e.g. if optional encoding endings or state markers are available on the stream, these should be read too. R4iiN(RTRFRSR,tTruetlenRCtreadRRR R1tUnicodeDecodeErrortstartt splitlines( R&tsizetcharst firstlinetnewdataR<tnewcharst decodedbytestexctlinesR=((s codecs.pycRWssH         "       c Csm|iop|id}|id=t|idjo|id|_d |_n|p|itd}n|Sn|pd}d}xto|i|dt}|o4|ido ||idddd7}qn||7}|it}|ot|djo|d}|d=t|djo)|d c|i7<||_d |_n|d|i|_|p|itd}nPn|d}|ditd}||jo9di |d|i|_|o |}n|}Pq n| p |d j o+|o| o|itd}nPn|d jo|d 9}qqW|S( s Read one line from the input stream and return the decoded data. size, if given, is passed as size argument to the read() method. iiiHR4R]s R[R\ii@iN( RTRVRSR,RZR9RURWtendswithRF( R&R[tkeependstlinetreadsizeR<Rbt line0withendtline0withoutend((s codecs.pyctreadlines\     $         cCs|i}|i|S(sZ Read all lines available on the input stream and return them as list of lines. Line breaks are implemented using the codec's decoder method and are included in the list entries. sizehint, if given, is ignored since there is no efficient way to finding the true end-of-line. (RWRZ(R&tsizehintRdR<((s codecs.pyct readlines s cCsd|_d|_d|_dS(s Resets the codec buffers used for keeping state. Note that no stream repositioning should take place. This method is primarily intended to be able to recover from decoding errors. R4uN(RRRSR,RT(R&((s codecs.pycR8s  icCs!|i|ii||dS(sp Set the input stream's current position. Resets the codec buffers used for keeping state. N(R8RCtseek(R&toffsettwhence((s codecs.pycRl's cCs%|i}|o|SntdS(s4 Return the next decoded line from the input stream.N(Rit StopIteration(R&Re((s codecs.pyctnext/s cCs|S(N((R&((s codecs.pyct__iter__7scCs||i|S(s? Inherit all other methods from the underlying stream. (RC(R&RRI((s codecs.pycRJ:scCs|S(N((R&((s codecs.pycRKAscCs|iidS(N(RCRL(R&RMRNRO((s codecs.pycRPDsN(R)R(R6R R9RWR,RURiRkR8RlRpRqRIRJRKRP(((s codecs.pycRQTs  OI     tStreamReaderWritercBseZdZdZddZddZddZddZdZ d Z d Z d Z d Z ed ZdZdZRS(s StreamReaderWriter instances allow wrapping streams which work in both read and write modes. The design is such that one can use the factory functions returned by the codec.lookup() function to construct the instance. tunknownR.cCs:||_||||_||||_||_dS(sR Creates a StreamReaderWriter instance. stream must be a Stream-like object. Reader, Writer must be factory functions or classes providing the StreamReader, StreamWriter interface resp. Error handling is done in the same way as defined for the StreamWriter/Readers. N(RCtreadertwriterR1(R&RCtReadertWriterR1((s codecs.pycR6Vs icCs|ii|S(N(RtRW(R&R[((s codecs.pycRWhscCs|ii|S(N(RtRi(R&R[((s codecs.pycRilscCs|ii|S(N(RtRk(R&Rj((s codecs.pycRkpscCs |iiS(s4 Return the next decoded line from the input stream.(RtRp(R&((s codecs.pycRptscCs|S(N((R&((s codecs.pycRqyscCs|ii|S(N(RuRD(R&R<((s codecs.pycRD|scCs|ii|S(N(RuRH(R&RG((s codecs.pycRHscCs|ii|iidS(N(RtR8Ru(R&((s codecs.pycR8s cCs||i|S(s? Inherit all other methods from the underlying stream. (RC(R&RRI((s codecs.pycRJscCs|S(N((R&((s codecs.pycRKscCs|iidS(N(RCRL(R&RMRNRO((s codecs.pycRPsN(R)R(R2tencodingR6RWR,RiRkRpRqRDRHR8RIRJRKRP(((s codecs.pycRrIs            t StreamRecodercBseZdZdZdZddZddZddZddZ dZ d Z d Z d Z d Zed ZdZdZRS(sE StreamRecoder instances provide a frontend - backend view of encoding data. They use the complete set of APIs returned by the codecs.lookup() function to implement their task. Data written to the stream is first decoded into an intermediate format (which is dependent on the given codec combination) and then written to the stream using an instance of the provided Writer class. In the other direction, data is read from the stream using a Reader instance and then return encoded data to the caller. RsR.cCsL||_||_||_||||_||||_||_dS(s Creates a StreamRecoder instance which implements a two-way conversion: encode and decode work on the frontend (the input to .read() and output of .write()) while Reader and Writer work on the backend (reading and writing to the stream). You can use these objects to do transparent direct recodings from e.g. latin-1 to utf-8 and back. stream must be a file-like object. encode, decode must adhere to the Codec interface, Reader, Writer must be factory functions or classes providing the StreamReader, StreamWriter interface resp. encode and decode are needed for the frontend translation, Reader and Writer for the backend translation. Unicode is used as intermediate encoding. Error handling is done in the same way as defined for the StreamWriter/Readers. N(RCRR RtRuR1(R&RCRR RvRwR1((s codecs.pycR6s    icCs1|ii|}|i||i\}}|S(N(RtRWRR1(R&R[R<t bytesencoded((s codecs.pycRWscCsQ|djo|ii}n|ii|}|i||i\}}|S(N(R,RtRiRR1(R&R[R<Rz((s codecs.pycRis  cCs7|ii}|i||i\}}|idS(Ni(RtRWRR1RZ(R&RjR<Rz((s codecs.pycRkscCs.|ii}|i||i\}}|S(s4 Return the next decoded line from the input stream.(RtRpRR1(R&R<Rz((s codecs.pycRpscCs|S(N((R&((s codecs.pycRqscCs+|i||i\}}|ii|S(N(R R1RuRD(R&R<t bytesdecoded((s codecs.pycRDscCs:di|}|i||i\}}|ii|S(NR4(RFR R1RuRD(R&RGR<R{((s codecs.pycRHscCs|ii|iidS(N(RtR8Ru(R&((s codecs.pycR8s cCs||i|S(s? Inherit all other methods from the underlying stream. (RC(R&RRI((s codecs.pycRJscCs|S(N((R&((s codecs.pycRKscCs|iidS(N(RCRL(R&RMRNRO((s codecs.pycRP sN(R)R(R2t data_encodingt file_encodingR6RWR,RiRkRpRqRDRHR8RIRJRKRP(((s codecs.pycRys         trbR.icCs|dj od|jo|d}nti|||}|djo|Snt|}t||i|i|}||_|S(s Open an encoded file using the given mode and return a wrapped version providing transparent encoding/decoding. Note: The wrapped version will only accept the object format defined by the codecs, i.e. Unicode objects for most builtin codecs. Output is also codec dependent and will usually be Unicode as well. Files are always opened in binary mode, even if no binary mode was specified. This is done to avoid data loss due to encodings using 8-bit values. The default file mode is 'rb' meaning to open the file in binary read mode. encoding specifies the encoding which is to be used for the file. errors may be given to define the error handling. It defaults to 'strict' which causes ValueErrors to be raised in case an encoding error occurs. buffering has the same meaning as for the builtin open() API. It defaults to line buffered. The returned wrapped file object provides an extra attribute .encoding which allows querying the used encoding. This attribute is only available if an encoding was specified as parameter. tbN(R,t __builtin__RRRrR$R#Rx(tfilenametmodeRxR1t bufferingtfiletinfotsrw((s codecs.pycRs     cCsl|djo |}nt|}t|}t||i|i|i|i|}||_||_|S(s Return a wrapped version of file which provides transparent encoding translation. Strings written to the wrapped file are interpreted according to the given data_encoding and then written to the original file as string using file_encoding. The intermediate encoding will usually be Unicode but depends on the specified codecs. Strings are read from the file using file_encoding and then passed back to the caller as string using data_encoding. If file_encoding is not given, it defaults to data_encoding. errors may be given to define the error handling. It defaults to 'strict' which causes ValueErrors to be raised in case an encoding error occurs. The returned wrapped file object provides two extra attributes .data_encoding and .file_encoding which reflect the given parameters of the same name. The attributes can be used for introspection by Python programs. N( R,RRyRR R$R#R|R}(RR|R}R1t data_infot file_infotsr((s codecs.pycR:s      cCs t|iS(s Lookup up the codec for the given encoding and return its encoder function. Raises a LookupError in case the encoding cannot be found. (RR(Rx((s codecs.pyct getencoder`scCs t|iS(s Lookup up the codec for the given encoding and return its decoder function. Raises a LookupError in case the encoding cannot be found. (RR (Rx((s codecs.pyct getdecoderjscCs0t|i}|djot|n|S(s Lookup up the codec for the given encoding and return its IncrementalEncoder class or factory function. Raises a LookupError in case the encoding cannot be found or the codecs doesn't provide an incremental encoder. N(RR!R,t LookupError(Rxtencoder((s codecs.pyctgetincrementalencoderts  cCs0t|i}|djot|n|S(s Lookup up the codec for the given encoding and return its IncrementalDecoder class or factory function. Raises a LookupError in case the encoding cannot be found or the codecs doesn't provide an incremental decoder. N(RR"R,R(Rxtdecoder((s codecs.pyctgetincrementaldecoders  cCs t|iS(s Lookup up the codec for the given encoding and return its StreamReader class or factory function. Raises a LookupError in case the encoding cannot be found. (RR$(Rx((s codecs.pyct getreaderscCs t|iS(s Lookup up the codec for the given encoding and return its StreamWriter class or factory function. Raises a LookupError in case the encoding cannot be found. (RR#(Rx((s codecs.pyct getwritersckskt|||}x-|D]%}|i|}|o |VqqW|idt}|o |VndS(s Encoding iterator. Encodes the input strings from the iterator using a IncrementalEncoder. errors and kwargs are passed through to the IncrementalEncoder constructor. R4N(RRRU(titeratorRxR1tkwargsRR0toutput((s codecs.pyct iterencodes  ckskt|||}x-|D]%}|i|}|o |VqqW|idt}|o |VndS(s Decoding iterator. Decodes the input strings from the iterator using a IncrementalDecoder. errors and kwargs are passed through to the IncrementalDecoder constructor. R4N(RR RU(RRxR1RRR0R((s codecs.pyct iterdecodes  cCs%h}x|D]}||| dict Return a dictionary where elements of the rng sequence are mapped to themselves. ((trngtresti((s codecs.pyctmake_identity_dicts cCsLh}x?|iD]1\}}||jo|||s         @"DQt,&           PK8 9**copy.pyc Z Dc@s]dZddkZddklZdefdYZeZyddklZWne j o dZnXdddgZ d Z hZ Zd ZxNedeeeeeeeeeeieieif D]ZeeeR-R?RR RdR(((scopy.pycs1s   !         3                       5 5 PK88>> copy_reg.pyc Q1Dc@sdZddklZdddddgZhZddZd Zye Wne j onXd Z ee e e d Z dZ dZdZdZhZhZhZdZdZdZdS(sHelper to provide extensibility for pickle/cPickle. This is only useful to add pickle support for extension types defined in C, not for instances of user-defined classes. i(t ClassTypetpicklet constructort add_extensiontremove_extensiontclear_extension_cachecCsit|tjotdnt|ptdn|t|<|dj ot|ndS(Ns-copy_reg is not intended for use with classess$reduction functions must be callable(ttypet _ClassTypet TypeErrortcallabletdispatch_tabletNoneR(tob_typetpickle_functiontconstructor_ob((s copy_reg.pycRs   cCs!t|ptdndS(Nsconstructors must be callable(R R(tobject((s copy_reg.pycRs cCst|i|iffS(N(tcomplextrealtimag(tc((s copy_reg.pyctpickle_complex'scCsF|tjoti|}n#|i||}|i|||S(N(Rt__new__t__init__(tclstbasetstatetobj((s copy_reg.pyct_reconstructor.s  ii cCsL|djptx>|iiD]*}t|do|it@ oPq!q!Wt}|tjo d}n1||ijotd|i n||}|i||f}y |i }Wn_t j oSt |ddotdny |i }Wq&t j o d}q&Xn X|}|ot||fSn t|fSdS(Nit __flags__scan't pickle %s objectst __slots__sNa class that defines __slots__ without defining __getstate__ cannot be pickled(tAssertionErrort __class__t__mro__thasattrRt _HEAPTYPERR Rt__name__t __getstate__tAttributeErrortgetattrt__dict__R(tselftprotoRRtargstgetstatetdict((s copy_reg.pyct _reduce_ex:s2        cGs|i||S(N(R(RR*((s copy_reg.pyct __newobj__[scCs|iid}|dj o|Sng}t|dpnx|iD]}d|ijo|id}t|to |f}nxr|D]f}|djoqq|ido/|id o|i d|i |fq|i |qWqKqKWy ||_ WnnX|S( sReturn a list of slot names for a given class. This needs to find slots defined by the class and its bases, so we can't simply return the __slots__ attribute. We must walk down the Method Resolution Order and concatenate the __slots__ of each class found there. (This assumes classes don't modify their __slots__ attribute to misrepresent their slots after the class is defined.) t __slotnames__RR't __weakref__t__s_%s%sN(s__dict__s __weakref__( R'tgetR R!R t isinstancet basestringt startswithtendswithtappendR#R/(RtnamesRtslotstname((s copy_reg.pyct _slotnames^s0      ! cCst|}d|jo djnp tdn||f}ti||joti||jodSn|tjotd|t|fn|tjotd|t|fn|t|<|t|R2R?R=t_extension_cache(R@R:RARB((s copy_reg.pycRs  cCstidS(N(RCtclear(((s copy_reg.pycRsNi(t__doc__ttypesRRt__all__R R RRRt NameErrorRRR"R-R.R;R>R?RCRRR(((s copy_reg.pycss.    !  8  PK8# difflib.pyc Fc @scdZddddddddd d g Zd d kZd ZdfdYZdddZdZdfdYZd d kZei di dZ ddZ dddddddZ dddddddZee dZeee dZdZdZd Zd!Zd efd"YZ[d#Zd$Zed%jo end S(&se Module difflib -- helpers for computing deltas between objects. Function get_close_matches(word, possibilities, n=3, cutoff=0.6): Use SequenceMatcher to return list of the best "good enough" matches. Function context_diff(a, b): For two lists of strings, return a delta in context diff format. Function ndiff(a, b): Return a delta: the difference between `a` and `b` (lists of strings). Function restore(delta, which): Return one of the two sequences that generated an ndiff delta. Function unified_diff(a, b): For two lists of strings, return a delta in unified diff format. Class SequenceMatcher: A flexible class for comparing pairs of sequences of any type. Class Differ: For producing human-readable deltas from sequences of lines of text. Class HtmlDiff: For producing HTML side by side comparison with change highlights. tget_close_matchestndifftrestoretSequenceMatchertDiffertIS_CHARACTER_JUNKt IS_LINE_JUNKt context_difft unified_difftHtmlDiffiNcCs|od||SndS(Ng@g?((tmatchestlength((s difflib.pyct_calculate_ratio%scBseZdZddddZdZdZdZdZdZ dZ d Z d d Z d Z d ZdZRS(s SequenceMatcher is a flexible class for comparing pairs of sequences of any type, so long as the sequence elements are hashable. The basic algorithm predates, and is a little fancier than, an algorithm published in the late 1980's by Ratcliff and Obershelp under the hyperbolic name "gestalt pattern matching". The basic idea is to find the longest contiguous matching subsequence that contains no "junk" elements (R-O doesn't address junk). The same idea is then applied recursively to the pieces of the sequences to the left and to the right of the matching subsequence. This does not yield minimal edit sequences, but does tend to yield matches that "look right" to people. SequenceMatcher tries to compute a "human-friendly diff" between two sequences. Unlike e.g. UNIX(tm) diff, the fundamental notion is the longest *contiguous* & junk-free matching subsequence. That's what catches peoples' eyes. The Windows(tm) windiff has another interesting notion, pairing up elements that appear uniquely in each sequence. That, and the method here, appear to yield more intuitive difference reports than does diff. This method appears to be the least vulnerable to synching up on blocks of "junk lines", though (like blank lines in ordinary text files, or maybe "

" lines in HTML files). That may be because this is the only method of the 3 that has a *concept* of "junk" . Example, comparing two strings, and considering blanks to be "junk": >>> s = SequenceMatcher(lambda x: x == " ", ... "private Thread currentThread;", ... "private volatile Thread currentThread;") >>> .ratio() returns a float in [0, 1], measuring the "similarity" of the sequences. As a rule of thumb, a .ratio() value over 0.6 means the sequences are close matches: >>> print round(s.ratio(), 3) 0.866 >>> If you're only interested in where the sequences match, .get_matching_blocks() is handy: >>> for block in s.get_matching_blocks(): ... print "a[%d] and b[%d] match for %d elements" % block a[0] and b[0] match for 8 elements a[8] and b[17] match for 21 elements a[29] and b[38] match for 0 elements Note that the last tuple returned by .get_matching_blocks() is always a dummy, (len(a), len(b), 0), and this is the only case in which the last tuple element (number of elements matched) is 0. If you want to know how to change the first sequence into the second, use .get_opcodes(): >>> for opcode in s.get_opcodes(): ... print "%6s a[%d:%d] b[%d:%d]" % opcode equal a[0:8] b[0:8] insert a[8:8] b[8:17] equal a[8:29] b[17:38] See the Differ class for a fancy human-friendly file differencer, which uses SequenceMatcher both to compare sequences of lines, and to compare sequences of characters within similar (near-matching) lines. See also function get_close_matches() in this module, which shows how simple code building on SequenceMatcher can be used to do useful work. Timing: Basic R-O is cubic time worst case and quadratic time expected case. SequenceMatcher is quadratic time for the worst case and has expected-case behavior dependent in a complicated way on how many elements the sequences have in common; best case time is linear. Methods: __init__(isjunk=None, a='', b='') Construct a SequenceMatcher. set_seqs(a, b) Set the two sequences to be compared. set_seq1(a) Set the first sequence to be compared. set_seq2(b) Set the second sequence to be compared. find_longest_match(alo, ahi, blo, bhi) Find longest matching block in a[alo:ahi] and b[blo:bhi]. get_matching_blocks() Return list of triples describing matching subsequences. get_opcodes() Return list of 5-tuples describing how to turn a into b. ratio() Return a measure of the sequences' similarity (float in [0,1]). quick_ratio() Return an upper bound on .ratio() relatively quickly. real_quick_ratio() Return an upper bound on ratio() very quickly. tcCs-||_d|_|_|i||dS(s[Construct a SequenceMatcher. Optional arg isjunk is None (the default), or a one-argument function that takes a sequence element and returns true iff the element is junk. None is equivalent to passing "lambda x: 0", i.e. no elements are considered to be junk. For example, pass lambda x: x in " \t" if you're comparing lines as sequences of characters, and don't want to synch up on blanks or hard tabs. Optional arg a is the first of two sequences to be compared. By default, an empty string. The elements of a must be hashable. See also .set_seqs() and .set_seq1(). Optional arg b is the second of two sequences to be compared. By default, an empty string. The elements of b must be hashable. See also .set_seqs() and .set_seq2(). N(tisjunktNonetatbtset_seqs(tselfRRR((s difflib.pyct__init__s; cCs|i||i|dS(sSet the two sequences to be compared. >>> s = SequenceMatcher() >>> s.set_seqs("abcd", "bcde") >>> s.ratio() 0.75 N(tset_seq1tset_seq2(RRR((s difflib.pycRs cCs5||ijodSn||_d|_|_dS(sMSet the first sequence to be compared. The second sequence to be compared is not changed. >>> s = SequenceMatcher(None, "abcd", "bcde") >>> s.ratio() 0.75 >>> s.set_seq1("bcde") >>> s.ratio() 1.0 >>> SequenceMatcher computes and caches detailed information about the second sequence, so if you want to compare one sequence S against many sequences, use .set_seq2(S) once and call .set_seq1(x) repeatedly for each of the other sequences. See also set_seqs() and set_seq2(). N(RRtmatching_blockstopcodes(RR((s difflib.pycRs cCsH||ijodSn||_d|_|_d|_|idS(sMSet the second sequence to be compared. The first sequence to be compared is not changed. >>> s = SequenceMatcher(None, "abcd", "bcde") >>> s.ratio() 0.75 >>> s.set_seq2("abcd") >>> s.ratio() 1.0 >>> SequenceMatcher computes and caches detailed information about the second sequence, so if you want to compare one sequence S against many sequences, use .set_seq2(S) once and call .set_seq1(x) repeatedly for each of the other sequences. See also set_seqs() and set_seq1(). N(RRRRt fullbcountt_SequenceMatcher__chain_b(RR((s difflib.pycRs   c CsN|i}t|}h|_}h}xt|D]w\}}||joQ||}|djo)t|d|jod||<|2q|i|q5|g||= k' i <= i' and if i == i', j <= j' In other words, of all maximal matching blocks, return one that starts earliest in a, and of all those maximal matching blocks that start earliest in a, return the one that starts earliest in b. >>> s = SequenceMatcher(None, " abcd", "abcd abcd") >>> s.find_longest_match(0, 5, 0, 9) (0, 4, 5) If isjunk is defined, first the longest matching block is determined as above, but with the additional restriction that no junk element appears in the block. Then that block is extended as far as possible by matching (only) junk elements on both sides. So the resulting block never matches on junk except as identical junk happens to be adjacent to an "interesting" match. Here's the same example as before, but considering blanks to be junk. That prevents " abcd" from matching the " abcd" at the tail end of the second sequence directly. Instead only the "abcd" can match, and matches the leftmost "abcd" in the second sequence: >>> s = SequenceMatcher(lambda x: x==" ", " abcd", "abcd abcd") >>> s.find_longest_match(0, 5, 0, 9) (1, 0, 4) If no blocks match, return (alo, blo, 0). >>> s = SequenceMatcher(None, "ab", "c") >>> s.find_longest_match(0, 2, 0, 1) (0, 0, 0) ii(RRRR!txrangetget(RtalotahitblotbhiRRRR!tbestitbestjtbestsizetj2lentnothingR%tj2lengettnewj2lentjtk((s difflib.pyctfind_longest_match[sN8*    , %" %"cCs|idj o |iSnt|it|i}}d|d|fg}g}x|o|i\}}}}|i||||\} } } } | o|i| || jo*|| jo|i|| || fn| | |jo6| | |jo%|i| | || | |fq2qXqXW|id} }}g}x||D]t\}}}| ||jo|||jo||7}q\|o|i| ||fn|||} }}q\W|o|i| ||fn|i||df||_|iS(sReturn list of triples describing matching subsequences. Each triple is of the form (i, j, n), and means that a[i:i+n] == b[j:j+n]. The triples are monotonically increasing in i and in j. New in Python 2.5, it's also guaranteed that if (i, j, n) and (i', j', n') are adjacent triples in the list, and the second is not the last triple in the list, then i+n != i' or j+n != j'. IOW, adjacent triples never describe adjacent equal blocks. The last triple is a dummy, (len(a), len(b), 0), and is the only triple with n==0. >>> s = SequenceMatcher(None, "abxcd", "abcd") >>> s.get_matching_blocks() [(0, 0, 2), (3, 2, 2), (5, 4, 0)] iN( RRRRRtpopR:Rtsort(RtlatlbtqueueRR-R.R/R0R%R8R9txti1tj1tk1t non_adjacentti2tj2tk2((s difflib.pyctget_matching_blockss< % ". " cCs|idj o |iSnd}}g|_}x|iD]\}}}d}||jo||jo d}n/||jo d}n||jo d}n|o |i|||||fn||||}}|o |id||||fq?q?W|S(sZReturn list of 5-tuples describing how to turn a into b. Each tuple is of the form (tag, i1, i2, j1, j2). The first tuple has i1 == j1 == 0, and remaining tuples have i1 == the i2 from the tuple preceding it, and likewise for j1 == the previous j2. The tags are strings, with these meanings: 'replace': a[i1:i2] should be replaced by b[j1:j2] 'delete': a[i1:i2] should be deleted. Note that j1==j2 in this case. 'insert': b[j1:j2] should be inserted at a[i1:i1]. Note that i1==i2 in this case. 'equal': a[i1:i2] == b[j1:j2] >>> a = "qabxcd" >>> b = "abycdf" >>> s = SequenceMatcher(None, a, b) >>> for tag, i1, i2, j1, j2 in s.get_opcodes(): ... print ("%7s a[%d:%d] (%s) b[%d:%d] (%s)" % ... (tag, i1, i2, a[i1:i2], j1, j2, b[j1:j2])) delete a[0:1] (q) b[0:0] () equal a[1:3] (ab) b[0:2] (ab) replace a[3:4] (x) b[2:3] (y) equal a[4:6] (cd) b[3:5] (cd) insert a[6:6] () b[5:6] (f) iR treplacetdeletetinserttequalN(RRRHR(RR%R8tanswertaitbjtsizettag((s difflib.pyct get_opcodess&          $ic cs|i}|p dg}n|dddjoP|d\}}}}}|t||||t||||f|d>> from pprint import pprint >>> a = map(str, range(1,40)) >>> b = a[:] >>> b[8:8] = ['i'] # Make an insertion >>> b[20] += 'x' # Make a replacement >>> b[23:28] = [] # Make a deletion >>> b[30] += 'y' # Make another replacement >>> pprint(list(SequenceMatcher(None,a,b).get_grouped_opcodes())) [[('equal', 5, 8, 5, 8), ('insert', 8, 8, 8, 9), ('equal', 8, 11, 9, 12)], [('equal', 16, 19, 17, 20), ('replace', 19, 20, 20, 21), ('equal', 20, 22, 21, 23), ('delete', 22, 27, 23, 23), ('equal', 27, 30, 23, 26)], [('equal', 31, 34, 27, 30), ('replace', 34, 35, 30, 31), ('equal', 35, 38, 31, 34)]] RLiiiN(sequaliiii(RRtmaxtminRR( RR#tcodesRQRARERBRFtnntgroup((s difflib.pyctget_grouped_opcodesGs*  77 6+ 0cCs>td|id}t|t|it|iS(sReturn a measure of the sequences' similarity (float in [0,1]). Where T is the total number of elements in both sequences, and M is the number of matches, this is 2.0*M / T. Note that this is 1 if the sequences are identical, and 0 if they have nothing in common. .ratio() is expensive to compute if you haven't already computed .get_matching_blocks() or .get_opcodes(), in which case you may want to try .quick_ratio() or .real_quick_ratio() first to get an upper bound. >>> s = SequenceMatcher(None, "abcd", "bcde") >>> s.ratio() 0.75 >>> s.quick_ratio() 0.75 >>> s.real_quick_ratio() 1.0 cSs ||dS(i((tsumttriple((s difflib.pyctsi(treduceRHR RRR(RR ((s difflib.pyctratioys c Cs|idjo?h|_}x/|iD] }|i|dd||((s difflib.pyctreal_quick_ratiosN(t__name__t __module__t__doc__RRRRRRR:RHRRRXR]RaRb(((s difflib.pycR*sj?  - 3 n G 7 2  ig333333?c Cs |djptd|fnd|jo djnptd|fng}t}|i|xq|D]i}|i||i|joC|i|jo0|i|jo|i|i|fq|q|Wti ||}g}|D]\}}||q~S(sUse SequenceMatcher to return list of the best "good enough" matches. word is a sequence for which close matches are desired (typically a string). possibilities is a list of sequences against which to match word (typically a list of strings). Optional arg n (default 3) is the maximum number of close matches to return. n must be > 0. Optional arg cutoff (default 0.6) is a float in [0, 1]. Possibilities that don't score at least that similar to word are ignored. The best (no more than n) matches among the possibilities are returned in a list, sorted by similarity score, most similar first. >>> get_close_matches("appel", ["ape", "apple", "peach", "puppy"]) ['apple', 'ape'] >>> import keyword as _keyword >>> get_close_matches("wheel", _keyword.kwlist) ['while'] >>> get_close_matches("apple", _keyword.kwlist) [] >>> get_close_matches("accept", _keyword.kwlist) ['except'] isn must be > 0: %rgg?s cutoff must be in [0.0, 1.0]: %r( t ValueErrorRRRRbRaR]Rtheapqtnlargest( twordt possibilitiesR#tcutofftresulttsR@t_[1]tscore((s difflib.pycRs     !cCsGdt|}}x-||jo|||jo|d7}qW|S(s} Return number of `ch` characters at the start of `line`. Example: >>> _count_leading(' abc', ' ') 3 ii(R(tlinetchR%R#((s difflib.pyct_count_leadings cBsSeZdZdddZdZdZdZdZdZ dZ RS( se Differ is a class for comparing sequences of lines of text, and producing human-readable differences or deltas. Differ uses SequenceMatcher both to compare sequences of lines, and to compare sequences of characters within similar (near-matching) lines. Each line of a Differ delta begins with a two-letter code: '- ' line unique to sequence 1 '+ ' line unique to sequence 2 ' ' line common to both sequences '? ' line not present in either input sequence Lines beginning with '? ' attempt to guide the eye to intraline differences, and were not present in either input sequence. These lines can be confusing if the sequences contain tab characters. Note that Differ makes no claim to produce a *minimal* diff. To the contrary, minimal diffs are often counter-intuitive, because they synch up anywhere possible, sometimes accidental matches 100 pages apart. Restricting synch points to contiguous matches preserves some notion of locality, at the occasional cost of producing a longer diff. Example: Comparing two texts. First we set up the texts, sequences of individual single-line strings ending with newlines (such sequences can also be obtained from the `readlines()` method of file-like objects): >>> text1 = ''' 1. Beautiful is better than ugly. ... 2. Explicit is better than implicit. ... 3. Simple is better than complex. ... 4. Complex is better than complicated. ... '''.splitlines(1) >>> len(text1) 4 >>> text1[0][-1] '\n' >>> text2 = ''' 1. Beautiful is better than ugly. ... 3. Simple is better than complex. ... 4. Complicated is better than complex. ... 5. Flat is better than nested. ... '''.splitlines(1) Next we instantiate a Differ object: >>> d = Differ() Note that when instantiating a Differ object we may pass functions to filter out line and character 'junk'. See Differ.__init__ for details. Finally, we compare the two: >>> result = list(d.compare(text1, text2)) 'result' is a list of strings, so let's pretty-print it: >>> from pprint import pprint as _pprint >>> _pprint(result) [' 1. Beautiful is better than ugly.\n', '- 2. Explicit is better than implicit.\n', '- 3. Simple is better than complex.\n', '+ 3. Simple is better than complex.\n', '? ++\n', '- 4. Complex is better than complicated.\n', '? ^ ---- ^\n', '+ 4. Complicated is better than complex.\n', '? ++++ ^ ^\n', '+ 5. Flat is better than nested.\n'] As a single multi-line string it looks like this: >>> print ''.join(result), 1. Beautiful is better than ugly. - 2. Explicit is better than implicit. - 3. Simple is better than complex. + 3. Simple is better than complex. ? ++ - 4. Complex is better than complicated. ? ^ ---- ^ + 4. Complicated is better than complex. ? ++++ ^ ^ + 5. Flat is better than nested. Methods: __init__(linejunk=None, charjunk=None) Construct a text differencer, with optional filters. compare(a, b) Compare two sequences of lines; generate the resulting delta. cCs||_||_dS(s Construct a text differencer, with optional filters. The two optional keyword parameters are for filter functions: - `linejunk`: A function that should accept a single string argument, and return true iff the string is junk. The module-level function `IS_LINE_JUNK` may be used to filter out lines without visible characters, except for at most one splat ('#'). It is recommended to leave linejunk None; as of Python 2.3, the underlying SequenceMatcher class has grown an adaptive notion of "noise" lines that's better than any static definition the author has ever been able to craft. - `charjunk`: A function that should accept a string of length 1. The module-level function `IS_CHARACTER_JUNK` may be used to filter out whitespace characters (a blank or tab; **note**: bad idea to include newline in this!). Use of IS_CHARACTER_JUNK is recommended. N(tlinejunktcharjunk(RRsRt((s difflib.pycRYs c cst|i||}x|iD]\}}}}}|djo"|i||||||} n|djo|id|||} nc|djo|id|||} n:|djo|id|||} ntd|fx| D] } | VqWq"Wd S( s Compare two sequences of lines; generate the resulting delta. Each sequence must contain individual single-line strings ending with newlines. Such sequences can be obtained from the `readlines()` method of file-like objects. The delta generated also consists of newline- terminated strings, ready to be printed as-is via the writeline() method of a file-like object. Example: >>> print ''.join(Differ().compare('one\ntwo\nthree\n'.splitlines(1), ... 'ore\ntree\nemu\n'.splitlines(1))), - one ? ^ + ore ? ^ - two - three ? - + tree + emu RIRJt-RKt+RLt sunknown tag %rN(RRsRRt_fancy_replacet_dumpRf( RRRtcruncherRQR-R.R/R0tgRp((s difflib.pyctcompareqs  "   ccs1x*t||D]}d|||fVqWdS(s4Generate comparison results for a same-tagged range.s%s %sN(R+(RRQR@tlothiR%((s difflib.pycRysc cs||jo ||jpt||||jo4|id|||}|id|||}n1|id|||}|id|||}x*||fD]} x| D] } | VqWqWdS(NRvRu(tAssertionErrorRy( RRR-R.RR/R0tfirsttsecondR{Rp((s difflib.pyct_plain_replaces! ccs<d\}}t|i} d\} } xt||D]} || } | i| xt||D]}||}|| jo%| djo|| } } qdqdn| i|| i|joD| i|jo1| i|jo| i|| }}}qdqdWq7W||jo[| djo6x+|i ||||||D] }|VqKWdSn| | d}}}nd} x+|i ||||||D] }|VqW||||}}| djo)d}}| i ||x| i D]\}}}}}||||}}|djo |d|7}|d|7}q|djo|d |7}q|d jo|d |7}q|d jo |d |7}|d |7}qt d|fqWx2|i||||D] }|VqWn d|Vx3|i ||d|||d|D] }|Vq)WdS(sD When replacing one block of lines with another, search the blocks for *similar* lines; the best-matching pair (if any) is used as a synch point, and intraline difference marking is done on the similar pair. Lots of work, but often worth it. Example: >>> d = Differ() >>> results = d._fancy_replace(['abcDefghiJkl\n'], 0, 1, ... ['abcdefGhijkl\n'], 0, 1) >>> print ''.join(results), - abcDefghiJkl ? ^ ^ ^ + abcdefGhijkl ? ^ ^ ^ gGz?g?Ng?R RIt^RJRuRKRvRLRwsunknown tag %rs i(gGz?g?(NN(RRtRR+RRRbRaR]Rt _fancy_helperRRRRft_qformat(RRR-R.RR/R0t best_ratioRkRzteqiteqjR8ROR%RNtbest_itbest_jRptaelttbelttatagstbtagsRQtai1tai2tbj1tbj2R=R>((s difflib.pycRxsn        &             'c csg}||joK||jo"|i||||||}q|id|||}n*||jo|id|||}nx|D] }|VqWdS(NRuRv(RxRy( RRR-R.RR/R0R{Rp((s difflib.pycRs  " ccstt|dt|d}t|t|| d}||i}||i}d|V|odd||fVnd|V|odd||fVndS(s Format "?" output and deal with leading tabs. Example: >>> d = Differ() >>> results = d._qformat('\tabcDefghiJkl\n', '\t\tabcdefGhijkl\n', ... ' ^ ^ ^ ', '+ ^ ^ ^ ') >>> for line in results: print repr(line) ... '- \tabcDefghiJkl\n' '? \t ^ ^ ^\n' '+ \t\tabcdefGhijkl\n' '? \t ^ ^ ^\n' s Rws- s? %s%s s+ N(RTRrtrstrip(RtalinetblineRRtcommon((s difflib.pycRs  N( RcRdReRRR|RyRRxRR(((s difflib.pycRs\ )   b s \s*#?\s*$cCs||dj S(s Return 1 for ignorable line: iff `line` is blank or contains a single '#'. Examples: >>> IS_LINE_JUNK('\n') True >>> IS_LINE_JUNK(' # \n') True >>> IS_LINE_JUNK('hello\n') False N(R(Rptpat((s difflib.pycRPss cCs ||jS(s Return 1 for ignorable character: iff `ch` is a space or tab. Examples: >>> IS_CHARACTER_JUNK(' ') True >>> IS_CHARACTER_JUNK('\t') True >>> IS_CHARACTER_JUNK('\n') False >>> IS_CHARACTER_JUNK('x') False ((Rqtws((s difflib.pycR`sR s c cst}xtd||i|D]t} |p.d|||fVd|||fVt}n| dd| dd| dd| ddf\} } } } d | d| | | d| | |fVx| D]\}} } } } |d jo(x|| | !D]}d |VqWqn|d jp |d jo%x"|| | !D]}d|Vq<Wn|d jp |djo%x"|| | !D]}d|Vq{WqqWq"WdS(s Compare two sequences of lines; generate the delta as a unified diff. Unified diffs are a compact way of showing line changes and a few lines of context. The number of context lines is set by 'n' which defaults to three. By default, the diff control lines (those with ---, +++, or @@) are created with a trailing newline. This is helpful so that inputs created from file.readlines() result in diffs that are suitable for file.writelines() since both the inputs and outputs have trailing newlines. For inputs that do not have trailing newlines, set the lineterm argument to "" so that the output will be uniformly newline free. The unidiff format normally has a header for filenames and modification times. Any or all of these may be specified using strings for 'fromfile', 'tofile', 'fromfiledate', and 'tofiledate'. The modification times are normally expressed in the format returned by time.ctime(). Example: >>> for line in unified_diff('one two three four'.split(), ... 'zero one tree four'.split(), 'Original', 'Current', ... 'Sat Jan 26 23:30:50 1991', 'Fri Jun 06 10:20:52 2003', ... lineterm=''): ... print line --- Original Sat Jan 26 23:30:50 1991 +++ Current Fri Jun 06 10:20:52 2003 @@ -1,4 +1,4 @@ +zero one -two -three +tree four s --- %s %s%ss +++ %s %s%siiiiiis@@ -%d,%d +%d,%d @@%sRLRwRIRJRuRKRvN(tFalseRRRXtTrue(RRtfromfilettofilet fromfiledatet tofiledateR#tlinetermtstartedRWRARERBRFRQRp((s difflib.pycRss0) >(  c cst}hdd<dd<dd<dd<} xVtd||i|D]9} |p.d |||fVd |||fVt}nd |fV| d d | ddd jo*d| ddd| d d |fVnd| d d |fVg} | D]"} | ddjo | | qq~ } | oZxW| D]K\}}}}}|djo)x&|||!D]}| ||VqiWq9q9Wn| d d| ddd jo*d| ddd| d d|fVnd| d d|fVg}| D]"} | ddjo || qq~} | oZxW| D]K\}}}}}|djo)x&|||!D]}| ||VqbWq2q2WqLqLWdS(s Compare two sequences of lines; generate the delta as a context diff. Context diffs are a compact way of showing line changes and a few lines of context. The number of context lines is set by 'n' which defaults to three. By default, the diff control lines (those with *** or ---) are created with a trailing newline. This is helpful so that inputs created from file.readlines() result in diffs that are suitable for file.writelines() since both the inputs and outputs have trailing newlines. For inputs that do not have trailing newlines, set the lineterm argument to "" so that the output will be uniformly newline free. The context diff format normally has a header for filenames and modification times. Any or all of these may be specified using strings for 'fromfile', 'tofile', 'fromfiledate', and 'tofiledate'. The modification times are normally expressed in the format returned by time.ctime(). If not specified, the strings default to blanks. Example: >>> print ''.join(context_diff('one\ntwo\nthree\nfour\n'.splitlines(1), ... 'zero\none\ntree\nfour\n'.splitlines(1), 'Original', 'Current', ... 'Sat Jan 26 23:30:50 1991', 'Fri Jun 06 10:22:46 2003')), *** Original Sat Jan 26 23:30:50 1991 --- Current Fri Jun 06 10:22:46 2003 *************** *** 1,4 **** one ! two ! three four --- 1,4 ---- + zero one ! tree four s+ RKs- RJs! RIs RLs *** %s %s%ss --- %s %s%ss***************%siiiis*** %d,%d ****%ss *** %d ****%siis--- %d,%d ----%ss --- %d ----%sN(sreplacesdelete(sreplacesinsert(RRRRXR(RRRRRRR#RRt prefixmapRWRntetvisiblechangesRQRAREt_Rpt_[2]RBRF((s difflib.pycRs>,*  !*6 !*6 cCst||i||S(s Compare `a` and `b` (lists of strings); return a `Differ`-style delta. Optional keyword parameters `linejunk` and `charjunk` are for filter functions (or None): - linejunk: A function that should accept a single string argument, and return true iff the string is junk. The default is None, and is recommended; as of Python 2.3, an adaptive notion of "noise" lines is used that does a good job on its own. - charjunk: A function that should accept a string of length 1. The default is module-level function IS_CHARACTER_JUNK, which filters out whitespace characters (a blank or tab; note: bad idea to include newline in this!). Tools/scripts/ndiff.py is a command-line front-end to this function. Example: >>> diff = ndiff('one\ntwo\nthree\n'.splitlines(1), ... 'ore\ntree\nemu\n'.splitlines(1)) >>> print ''.join(diff), - one ? ^ + ore ? ^ - two - three ? - + tree + emu (RR|(RRRsRt((s difflib.pycRs"c#sddk}|idt||||ddgfdfdfd}|}|djox^to|iVqWnD|d7}d}x0to(ddg|} } t} xN| tjo@|i\} } } | |}| | | f| |<| d7} qW| |jod V|}n | }d} x3|o+| |}| d7} | |V|d8}qMW|d}xN|oF|i\} } } | o|d}n |d8}| | | fVqWqWdS( sReturns generator yielding marked up from/to side by side differences. Arguments: fromlines -- list of text lines to compared to tolines tolines -- list of text lines to be compared to fromlines context -- number of context lines to display on each side of difference, if None, all from/to text lines will be generated. linejunk -- passed on to ndiff (see ndiff documentation) charjunk -- passed on to ndiff (see ndiff documentation) This function returns an interator which returns a tuple: (from line tuple, to line tuple, boolean flag) from/to line tuple -- (line num, line text) line num -- integer or None (to indicate a context seperation) line text -- original line text with following markers inserted: '\0+' -- marks start of added text '\0-' -- marks start of deleted text '\0^' -- marks start of changed text '\1' -- marks end of added/deleted/changed text boolean flag -- None indicates context separation, True indicates either "from" or "to" line contains a change, otherwise False. This function/iterator was originally developed to generate side by side file difference for making HTML pages (see HtmlDiff class for example usage). Note, this function utilizes the ndiff function to generate the side by side difference markup. Optional ndiff arguments may be passed to this function and they in turn will be passed to ndiff. iNs (\++|\-+|\^+)ic s2||cd7<|djo|||iddfSn|djo|id|id}}g}|d}i||xS|dddD]>\}\} } |d| !d||| | !d || }qW|d}n7|idd}|p d }nd||d }|||fS( sReturns line of text with user's change markup and line formatting. lines -- list of lines from the ndiff generator to produce a line of text from. When producing the line of text to return, the lines used are removed from this list. format_key -- '+' return first line in list with "add" markup around the entire line. '-' return first line in list with "delete" markup around the entire line. '?' return first line in list with add/delete/change intraline markup (indices obtained from second line) None return first line in list with no markup side -- indice into the num_lines list (0=from,1=to) num_lines -- from/to current line number. This is NOT intended to be a passed parameter. It is present as a keyword argument to maintain memory of the current line numbers between calls of this function. Note, this function is purposefully not defined at the module scope so that data it needs from its parent function (within whose context it is defined) does not need to be of module scope. iiit?cSs3|i|idd|ig|idS(Nii(RRWtspan(t match_objecttsub_info((s difflib.pyctrecord_sub_infoks&NitsRw(RR;tsub( tlinest format_keytsidet num_linesttexttmarkersRRtkeytbegintend(t change_re(s difflib.pyct _make_lineJs"   0 c3sg}d\}}xtoxRt|djo>y|iiWqtj o|idqXqWdig}|D]}||dq~}|ido |}n^|ido-|dd|ddtfVqn!|ido+|d8}|d ddtfVqn|ido.|d dd}}|dd}}n|id o-|dd|ddtfVqnk|ido-|dd|ddtfVqn.|id o+|d8}|d ddtfVqn|ido+|d7}d|ddtfVqn|ido.d|dd}}|dd}}nz|ido+|d7}d|ddtfVqn?|ido.|dd|ddtfVqnx*|djo|d7}ddtfVqWx*|djo|d8}ddtfVqFW|ido tq||tfVqWdS(sYields from/to lines of text with a change indication. This function is an iterator. It itself pulls lines from a differencing iterator, processes them and yields them. When it can it yields both a "from" and a "to" line, otherwise it will yield one or the other. In addition to yielding the lines of from/to text, a boolean flag is yielded to indicate if the text line(s) have differences in them. Note, this function is purposefully not defined at the module scope so that data it needs from its parent function (within whose context it is defined) does not need to be of module scope. iitXR s-?+?Ris--++Rus--?+s--+s- s-+?s-?+s+--Rvs+ s+-Rws N(ii(s--?+s--+s- (s+ s+-(R s (R s ( RRRtnextt StopIterationtjoint startswithRR(Rtnum_blanks_pendingtnum_blanks_to_yieldRnRpRmt from_linetto_line(Rtdiff_lines_iterator(s difflib.pyct_line_iteratorst . & &&   '     c3s}gg}}xtoxt|djpt|djoa|i\}}}|dj o|i||fn|dj o|i||fq#q#W|id\}}|id\}}|||p|fVqWdS(stYields from/to lines of text with a change indication. This function is an iterator. It itself pulls lines from the line iterator. Its difference from that iterator is that this function always yields a pair of from/to text lines (with the change indication). If necessary it will collect single from/to lines until it has a matching pair from/to pair to yield. Note, this function is purposefully not defined at the module scope so that data it needs from its parent function (within whose context it is defined) does not need to be of module scope. iN(RRRRRR;(t line_iteratort fromlinesttolinesRRt found_difftfromDifftto_diff(R(s difflib.pyct_line_pair_iterators  &  i(NNN(tretcompileRRRRR(RRtcontextRsRtRRtline_pair_iteratortlines_to_writetindext contextLinesRRRR%((RRRRs difflib.pyct_mdiff sT" 8[            sm %(table)s%(legend)s sH table.diff {font-family:Courier; border:medium;} .diff_header {background-color:#e0e0e0} td.diff_header {text-align:right} .diff_next {background-color:#c0c0c0} .diff_add {background-color:#aaffaa} .diff_chg {background-color:#ffff77} .diff_sub {background-color:#ffaaaa}sZ %(header_row)s %(data_rows)s
s
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op
cBseZdZeZeZeZeZdZddde dZ dde ddZ dZ dZd Zd Zd Zd Zd Zdde ddZRS(s{For producing HTML side by side comparison with change highlights. This class can be used to create an HTML table (or a complete HTML file containing the table) showing a side by side, line by line comparison of text with inter-line and intra-line change highlights. The table can be generated in either full or contextual difference mode. The following methods are provided for HTML generation: make_table -- generates HTML for a single side by side table make_file -- generates complete HTML file with a single side by side table See tools/scripts/diff.py for an example usage of this class. iicCs(||_||_||_||_dS(sHtmlDiff instance initializer Arguments: tabsize -- tab stop spacing, defaults to 8. wrapcolumn -- column number where lines are broken and wrapped, defaults to None where lines are not wrapped. linejunk,charjunk -- keyword arguments passed into ndiff() (used to by HtmlDiff() to generate the side by side HTML differences). See ndiff() documentation for argument default values and descriptions. N(t_tabsizet _wrapcolumnt _linejunkt _charjunk(Rttabsizet wrapcolumnRsRt((s difflib.pycRvs   R icCsD|itd|id|id|i||||d|d|S(sReturns HTML file of side by side comparison with change highlights Arguments: fromlines -- list of "from" lines tolines -- list of "to" lines fromdesc -- "from" file column header string todesc -- "to" file column header string context -- set to True for contextual differences (defaults to False which shows full differences). numlines -- number of context lines. When context is set True, controls number of lines displayed before and after the change. When context is False, controls the number of lines to place the "next" link anchors before the next change (so click of "next" link jumps to just before the change). tstylestlegendttableRtnumlines(t_file_templatetdictt_stylest_legendt make_table(RRRtfromdescttodescRR((s difflib.pyct make_files    csgfd}g}|D]}|||q~}g}|D]}|||qA~}||fS(sReturns from/to line lists with tabs expanded and newlines removed. Instead of tab characters being replaced by the number of spaces needed to fill in to the next tab stop, this function will fill the space with tab characters. This is done so that the difference algorithms can identify changes in a file when tabs are replaced by spaces and vice versa. At the end of the HTML generation, the tab characters will be replaced with a nonbreakable space. csO|idd}|ii}|idd}|iddidS(NRwRs s (RIt expandtabsRR(Rp(R(s difflib.pyct expand_tabss((RRRRRnRpR((Rs difflib.pyct_tab_newline_replaces  ''c Cs~|p|i||fdSnt|}|i}||jp||idd|jo|i||fdSnd}d}d}x||jo}||jop||djo"|d7}||}|d7}q||djo|d7}d}q|d7}|d7}qW|| } ||} |o| d} d|| } n|i|| f|i|d| dS( sBuilds list of text lines by splitting text lines at wrap point This function will determine if the input text line needs to be wrapped (split) into separate lines. If so, the first wrap point will be determined and the first line appended to the output text line list. This function is used recursively to handle the second part of the split line to further split it. NRiiR ist>(RRRtcountt _split_line( Rt data_listtline_numRRPRSR%R#tmarktline1tline2((s difflib.pycRs:   +        c csx|D]\}}}|djo|||fVqn||\}}\}}gg} } |i| |||i| ||xa| p| oR| o| id}nd}| o| id}nd}|||fVqWqWdS(s5Returns iterator that splits (wraps) mdiff text linesiR RwN(R Rw(R Rw(RRR;( Rtdiffstfromdatattodatatflagtfromlinetfromtextttolinettotexttfromlistttolist((s difflib.pyct _line_wrappers$  c Csggg}}}x|D]\}}}y<|i|id|||i|id||Wn-tj o!|id|idnX|i|qW|||fS(sCollects mdiff output into separate lists Before storing the mdiff from/to data into a list, it is converted into a single line of text with HTML markup. iiN(Rt _format_linet TypeErrorR(RRRRtflaglistRRR((s difflib.pyct_collect_lines s  cCsy%d|}d|i||f}Wntj o d}nX|iddiddidd }|id d i}d |||fS( sReturns HTML markup of "from" / "to" text lines side -- 0 or 1 indicating "from" or "to" text flag -- indicates if difference on line linenum -- line number (used for line number column) text -- line text to be marked up s%ds id="%s%s"R t&s&Rs>t%s%s(t_prefixRRIR(RRRtlinenumRtid((s difflib.pycRs  *cCs<dti}dti}tid7_||g|_dS(sCreate unique anchor prefixessfrom%d_sto%d_iN(R t_default_prefixR(Rt fromprefixttoprefix((s difflib.pyct _make_prefix5s  cCsd|id}dgt|}dgt|}dt} } d} xt|D]|\} } | oc| pXt} | } td| |g} d|| f|| <| d7} d|| f|| ns2 No Differences Found s( Empty File s!fs#t(RRRRRRS(RRRRRRRtnext_idt next_hreftnum_chgt in_changetlastR%R((s difflib.pyct_convert_flags@s<           c Cs|i|i||\}}|o |}nd}t|||d|id|i}|io|i|}n|i|\} } } |i | | | ||\} } } } } g}dd}xt t | D]m}| |djo"|djo|i dqLq|i || || || || || |fqW|p|o"ddd |dd |f}nd }|i td d i|d |d |id}|iddiddiddiddiddS(sReturns HTML table of side by side comparison with change highlights Arguments: fromlines -- list of "from" lines tolines -- list of "to" lines fromdesc -- "from" file column header string todesc -- "to" file column header string context -- set to True for contextual differences (defaults to False which shows full differences). numlines -- number of context lines. When context is set True, controls number of lines displayed before and after the change. When context is False, controls the number of lines to place the "next" link anchors before the next change (so click of "next" link jumps to just before the change). RsRts1 %s%ss%%s%s is) s %s%s%s%ss!
s+%sR t data_rowst header_rowtprefixit+st-st^ssss s N(RRRRRRRRRR trangeRRt_table_templateRRRRI(RRRRRRRt context_linesRRRRRRRmtfmtR%RR((s difflib.pycRosL    $     N(RcRdReRRRRRRRRRRRRRRRRR R(((s difflib.pycR `s&      7    / ccsy&hdd<dd>> diff = ndiff('one\ntwo\nthree\n'.splitlines(1), ... 'ore\ntree\nemu\n'.splitlines(1)) >>> diff = list(diff) >>> print ''.join(restore(diff, 1)), one two three >>> print ''.join(restore(diff, 2)), ore tree emu s- is+ is)unknown delta choice (must be 1 or 2): %rs N(tinttKeyErrorRf(tdeltatwhichRQtprefixesRp((s difflib.pycRs&  cCs%ddk}ddk}|i|S(Ni(tdoctesttdifflibttestmod(RR((s difflib.pyct_testst__main__(Ret__all__RgR RRRrRRRtmatchRRRRRRRRRRRtobjectR RRRc(((s difflib.pycssD     0 T   =J$   ]  PK8i$$dis.pyc         cCsr|djoKy ti}Wntj otdnXx|io |i}q<Wnt|ii|i dS(s2Disassemble a traceback (default: last traceback).s no last traceback to disassembleN( R tsystlast_tracebacktAttributeErrort RuntimeErrorttb_nextRttb_frametf_codettb_lasti(ttb((sdis.pycR2s   c Cs}|i}t|}tt|}t|}d}d}d}x1||jo#||} t| } ||jo"|djoHnd||GndG||jodGndG||jodGndGt|idGt | i dG|d }| t joht||t||d d |} d}|d }| t jo| d }nt| id G| t jodt|i| dGqs| tjod|i| dGqs| tjodt|| dGqs| tjod|i| dGqs| tjodt| dGqs| tjo5|djo|i|i}nd|| dGqsnHqHWdS(sDisassemble a code object.is%3ds s-->s>>s iiiiilit(t)s(to N(R t findlabelstdicttfindlinestartstlenR tordtreprtrjusttopnametljustt HAVE_ARGUMENTt EXTENDED_ARGthasconstt co_conststhasnametco_namesthasjrelthaslocalt co_varnamest hascomparetcmp_opthasfreet co_cellvarst co_freevars( tcotlastitcodetlabelst linestartstntit extended_argtfreetctoptoparg((sdis.pycR<s^            *         c Cst|}t|}d}x||jo||}t|} ||jodGndG||jodGndGt|idGt| idG|d}| tjo7t||t||dd } |d }t| id G| tjo-|od t|| d Gqd| Gq| t jo-|dj od || d Gqd| Gq| t jodt|| d Gq| t jo'|od || d Gqd| Gq| t jod t| d GqnHq!WdS(Nis-->s s>>s iiiiiiR(R)s(%d)s(to (R*R-R.R/R0R1R2R3R5R7R R9R:R<R=( RCRBtvarnamestnamest constantsRDRFRGRJRKRL((sdis.pycRmsJ         &          cCsg}t|}d}x||jo||}t|}|d}|tjot||t||dd}|d}d}|tjo||}n|tjo |}n|djo"||jo|i|qqqqW|S(s`Detect all offsets in a byte code which are jump targets. Return the list of offsets. iiiii(R-R.R3R9thasjabstappend(RCRDRFRGRJRKRLtlabel((sdis.pycR*s(      &      c csg}|idddD]}|t|q~}g}|idddD]}|t|qR~}d}|i}d}x^t||D]M\} } | o0||jo||fV|}n|| 7}n|| 7}qW||jo||fVndS(sFind the offsets in a byte code which are start of lines in the source. Generate pairs (offset, lineno) as described in Python/compile.c. iNii(t co_lnotabR.R tco_firstlinenotzip( RCt_[1]RJtbyte_incrementst_[2]tline_incrementst lastlinenotlinenotaddrt byte_incrt line_incr((sdis.pycR,s77      cCstido_tido!tiidtidntid}| p |djo d}qsnd}|djo ti}n t|}|i}|dj o|i nd}t ||d}t |dS(s*Simple test program to disassemble a file.iisusage: python dis.py [-|file] t-stexecN( RtargvtstderrtwritetexitR tstdintopentreadtclosetcompileR(tfntftsourceRC((sdis.pyct_tests"      t__main__(t__doc__RR topcodeRt _opcodes_allR RRRRRR*R,RmR(((sdis.pycss"    & 1  '    PK8E{/{/ doctest.pyc Z]Gc!@sdZdZdddddddd d d d d ddddddddddddddddddd d!d"g!Zd#d$kZd#d$kZd#d$kZd#d$kZd#d$kZd#d$kZd#d$k Z d#d$k Z d#d$k Z d#d$k Z d#d$k Z d#d$kZd#d%klZhZd&ZedZedZedZedZedZedZeeBeBeBeBeBZed Zed Zed Zed ZeeBeBeBZd'Zd(Zd)Z d*d+Z!d,Z"d-d.Z#d/Z$d0efd1YZ%d2Z&d3Z'd4e i(fd5YZ)d6Z*dfd7YZ+dfd8YZ,dfd9YZ-dfd:YZ.dfd;YZ/dfd<YZ0de1fd=YZ2de1fd>YZ3de/fd?YZ4e5a6e5e5e5e5e7d@e5e8e8dA Z9e7e5e5e5e5e7d@e5e8e-e5dB Z:e8dCe5d@dDZ;dfdEYZ<d@a=dFZ>dGe i?fdHYZ@e5e5e5e5dIZAdJe@fdKYZBe7e5e5e-e5dLZCdMZDdNZEdOZFe8e5dPZGe8e5dQZHe8dRZIdSfdTYZJheJdS<dUdV<dWdX<dYdZ<d[d\<d]d^), and the final line of output is "Test failed.". Run it with the -v switch instead: python M.py -v and a detailed report of all examples tried is printed to stdout, along with assorted summaries at the end. You can force verbose mode by passing "verbose=True" to testmod, or prohibit it by passing "verbose=False". In either of those cases, sys.argv is not examined by testmod. There are a variety of other ways to run doctests, including integration with the unittest framework, and support for running non-Python text files containing doctests. There are also many ways to override parts of doctest's default behaviors. See the Library Reference Manual for details. sreStructuredText entregister_optionflagtDONT_ACCEPT_TRUE_FOR_1tDONT_ACCEPT_BLANKLINEtNORMALIZE_WHITESPACEtELLIPSIStSKIPtIGNORE_EXCEPTION_DETAILtCOMPARISON_FLAGSt REPORT_UDIFFt REPORT_CDIFFt REPORT_NDIFFtREPORT_ONLY_FIRST_FAILUREtREPORTING_FLAGStExampletDocTestt DocTestParsert DocTestFindert DocTestRunnert OutputCheckertDocTestFailuretUnexpectedExceptiont DebugRunnerttestmodttestfiletrun_docstring_examplestTestert DocTestSuitet DocFileSuitetset_unittest_reportflagstscript_from_examplest testsourcet debug_srctdebugiN(tStringIOcCsti|dtt>S(Ni(tOPTIONFLAGS_BY_NAMEt setdefaulttlen(tname((s doctest.pycR}ss s...cCsWd}xJtiD]?}|i|d}|tt|jo||iO}qqW|S(s Return the compiler-flags associated with the future features that have been imported into the given namespace (globs). iN(t __future__tall_feature_namestgettNonetgetattrt compiler_flag(tglobstflagstfnametfeature((s doctest.pyct_extract_future_flagss icCsti|o|Snot|ttfo t|ttdgSn9|djot i t i |i dSn t ddS(s Return the module specified by `module`. In particular: - If `module` is a module, then return module. - If `module` is a string, then import and return the module with that name. - If `module` is None, then return the calling module. The calling module is assumed to be the module of the stack frame at the given depth in the call stack. t*t__name__s"Expected a module, string, or NoneN(tinspecttismodulet isinstancetstrtunicodet __import__tglobalstlocalsR)tsystmodulest _getframet f_globalst TypeError(tmoduletdepth((s doctest.pyct_normalize_modules   cCs|oxt|d}t||}t|doFt|ido/|ii|}|itid|fSq{qnt|i |fS(Nit __loader__tget_datas ( RBt_module_relative_paththasattrRCRDtreplacetostlineseptopentread(tfilenametpackagetmodule_relativet file_contents((s doctest.pyct_load_testfiles%icCstid|d|S(s{ Add the given number of space characters to the beginning every non-blank line in `s`, and return the result. s (?m)^(?!$)t (tretsub(tstindent((s doctest.pyct_indentscCs;t}|\}}}ti|||d||iS(sz Return a string containing a traceback message for the given exc_info tuple (as returned by sys.exc_info()). tfile(R!t tracebacktprint_exceptiontgetvalue(texc_infotexcouttexc_typetexc_valtexc_tb((s doctest.pyct_exception_tracebacks t _SpoofOutcBseZdZddZRS(cCsSti|}|o|id o|d7}nt|do |`n|S(Ns t softspace(R!RZtendswithRFRb(tselftresult((s doctest.pycRZs  cCs.ti||t|do |`ndS(NRb(R!ttruncateRFRb(Rdtsize((s doctest.pycRfsN(R2t __module__RZR)Rf(((s doctest.pycRas cCs?t|jo||jSn|it}t|djptdt|}}|d}|o/|i|ot|}|d=qtSn|d}|o3|i|o|t|8}|d=qtSn||jotSnxH|D]@}|i|||}|djotSn|t|7}qWtS(s_ Essentially the only subtle case: >>> _ellipsis_match('aa...aa', 'aaa') False iii( tELLIPSIS_MARKERtsplitR$tAssertionErrort startswithtFalseRctfindtTrue(twanttgottwststartpostendpostw((s doctest.pyct_ellipsis_matchs4        cCs'|i}|o d|SndSdS(s)Return a commented form of the given lines# t#N(trstrip(tline((s doctest.pyct _comment_line3s  t_OutputRedirectingPdbcBs5eZdZdZddZdZdZRS(s A specialized version of the python debugger that redirects stdout to a given stream when interacting with the user. Stdout is *not* redirected when traced code is executed. cCs,||_t|_tii|d|dS(Ntstdout(t_OutputRedirectingPdb__outRmt$_OutputRedirectingPdb__debugger_usedtpdbtPdbt__init__(Rdtout((s doctest.pycRAs  cCs@t|_|djotii}ntii||dS(N( RoR~R)R;R=tf_backRRt set_trace(Rdtframe((s doctest.pycRFs  cCs"|iotii|ndS(N(R~RRt set_continue(Rd((s doctest.pycRLs cGs=ti}|it_ztii||SWd|t_XdS(N(R;R|R}RRttrace_dispatch(Rdtargst save_stdout((s doctest.pycRRs   N(R2Rht__doc__RR)RRR(((s doctest.pycR{;s    cCsti|ptd|n|ido tdnt|dotii|i d}n}|i djoXt t i djo5t i ddjo!tiit i dd}qti}ntd|d tii||idS( NsExpected a module: %rt/s1Module-relative files may not have absolute pathst__file__it__main__ts+Can't resolve paths relative to the module s (it has no __file__)(R3R4R?Rlt ValueErrorRFRHtpathRjRR2R$R;targvtcurdirtjoin(R@Rtbasedir((s doctest.pycRE]s *! cBs#eZdZdddddZRS(sn A single doctest example, consisting of source code and expected output. `Example` defines the following attributes: - source: A single Python statement, always ending with a newline. The constructor adds a newline if needed. - want: The expected output from running the source code (either from stdout, or a traceback in case of exception). `want` ends with a newline unless it's empty, in which case it's an empty string. The constructor adds a newline if needed. - exc_msg: The exception message generated by the example, if the example is expected to generate an exception; or `None` if it is not expected to generate an exception. This exception message is compared against the return value of `traceback.format_exception_only()`. `exc_msg` ends with a newline unless it's `None`. The constructor adds a newline if needed. - lineno: The line number within the DocTest string containing this Example where the Example begins. This line number is zero-based, with respect to the beginning of the DocTest. - indent: The example's indentation in the DocTest string. I.e., the number of space characters that preceed the example's first prompt. - options: A dictionary mapping from option flags to True or False, which is used to override default options for this example. Any option flags not contained in this dictionary are left at their default value (as specified by the DocTestRunner's optionflags). By default, no options are set. icCs|idp|d7}n|o|id o|d7}n|dj o|id o|d7}n||_||_||_||_|djo h}n||_||_dS(Ns (RcR)tsourceRptlinenoRUtoptionstexc_msg(RdRRpRRRUR((s doctest.pycRs      N(R2RhRR)R(((s doctest.pycR s" cBs)eZdZdZdZdZRS(se A collection of doctest examples that should be run in a single namespace. Each `DocTest` defines the following attributes: - examples: the list of examples. - globs: The namespace (aka globals) that the examples should be run in. - name: A name identifying the DocTest (typically, the name of the object whose docstring this DocTest was extracted from). - filename: The name of the file that this DocTest was extracted from, or `None` if the filename is unknown. - lineno: The line number within filename where this DocTest begins, or `None` if the line number is unavailable. This line number is zero-based, with respect to the beginning of the file. - docstring: The string that the examples were extracted from, or `None` if the string is unavailable. cCs[t|t p td||_||_|i|_||_||_||_ dS(s Create a new DocTest containing the given examples. The DocTest's globals are initialized with a copy of `globs`. s8DocTest no longer accepts str; use DocTestParser insteadN( R5t basestringRktexamplest docstringtcopyR,R%RLR(RdRR,R%RLRR((s doctest.pycRs    cCspt|idjo d}n4t|idjo d}ndt|i}d|i|i|i|fS(Nis no examplesis 1 examples %d exampless(R$RR%RLR(RdR((s doctest.pyct__repr__s  cCs[t|tpdSnt|i|i|it|f|i|i|it|fS(Ni(R5RtcmpR%RLRtid(Rdtother((s doctest.pyct__cmp__s!(R2RhRRRR(((s doctest.pycRs  cBseZdZeideieiBZeideieiBeiBZ eidi Z ddZ dZ ddZdZeid eiZd Zeid eiZd Zd ZdZRS(sD A class used to parse strings containing doctest examples. s # Source consists of a PS1 line followed by zero or more PS2 lines. (?P (?:^(?P [ ]*) >>> .*) # PS1 line (?:\n [ ]* \.\.\. .*)*) # PS2 lines \n? # Want consists of any non-blank lines that do not start with PS1. (?P (?:(?![ ]*$) # Not a blank line (?![ ]*>>>) # Not a line starting with PS1 .*$\n? # But any other line )*) s # Grab the traceback header. Different versions of Python have # said different things on the first traceback line. ^(?P Traceback\ \( (?: most\ recent\ call\ last | innermost\ last ) \) : ) \s* $ # toss trailing whitespace on the header. (?P .*?) # don't blink: absorb stuff until... ^ (?P \w+ .*) # a line *starts* with alphanum. s ^[ ]*(#.*)?$scCs|i}|i|}|djo;dig}|idD]}|||qB~}ng}d\}}x|ii|D]} |i||| i!||id|| i7}|i | ||\} } } } |i | pB|it | | | d|d|t | i dd| n||id| i| i7}| i}qW|i|||S(s= Divide the given string into examples and intervening text, and return them as a list of alternating Examples and strings. Line numbers for the Examples are 0-based. The optional argument `name` is a name identifying this string, and is only used for error messages. is RRUR(ii(t expandtabst _min_indentRRjt _EXAMPLE_REtfinditertappendtstarttcountt_parse_examplet_IS_BLANK_OR_COMMENTR R$tgrouptend(RdtstringR%t min_indentt_[1]tltoutputtcharnoRtmRRRpR((s doctest.pyctparse"s(  ; !%cCs%t|i|||||||S(s" Extract all doctest examples from the given string, and collect them into a `DocTest` object. `globs`, `name`, `filename`, and `lineno` are attributes for the new `DocTest` object. See the documentation for `DocTest` for more information. (Rt get_examples(RdRR,R%RLR((s doctest.pyct get_doctestIs cCs?g}|i||D]!}t|to ||qq~S(s Extract all doctest examples from the given string, and return them as a list of `Example` objects. Line numbers are 0-based, because it's most common in doctests that nothing interesting appears on the same line as opening triple-quote, and so the first interesting line is called "line 1" then. The optional argument `name` is a name identifying this string, and is only used for error messages. (RR5R (RdRR%Rtx((s doctest.pycRUs c Cst|id}|idid}|i|||||i|dd|d||dig}|D]}|||dqv~}|id} | id} t| djo"tid | d o | d =n|i| d|||t|dig} | D]} | | |q~ } |ii| }|o|id } nd } |i |||}||| | fS( s Given a regular expression match from `_EXAMPLE_RE` (`m`), return a pair `(source, want)`, where `source` is the matched example's source code (with prompts and indentation stripped); and `want` is the example's expected output (with indentation stripped). `name` is the string's name, and `lineno` is the line number where the example starts; both are used for error messages. RURs iRQt.iRps *$itmsgN( R$RRjt_check_prompt_blankt _check_prefixRRRtmatcht _EXCEPTION_RER)t _find_options(RdRR%RRUt source_linesRtslRRpt want_linest_[2]twlRR((s doctest.pycRcs$ "2* .s#\s*doctest:\s*([^\n\'"]*)$c Csh}x|ii|D]}|ididdi}xs|D]k}|ddjp|dtjo!td|d||fnt|d}|ddj||>> tests = DocTestFinder().find(_TestClass) >>> runner = DocTestRunner(verbose=False) >>> tests.sort(key = lambda test: test.name) >>> for test in tests: ... print test.name, '->', runner.run(test) _TestClass -> (0, 2) _TestClass.__init__ -> (0, 2) _TestClass.get -> (0, 2) _TestClass.square -> (0, 1) The `summarize` method prints a summary of all the test cases that have been run by the runner, and returns an aggregated `(f, t)` tuple: >>> runner.summarize(verbose=1) 4 items passed all tests: 2 tests in _TestClass 2 tests in _TestClass.__init__ 2 tests in _TestClass.get 1 tests in _TestClass.square 7 tests in 4 items. 7 passed and 0 failed. Test passed. (0, 7) The aggregated number of tried examples and failed examples is also available via the `tries` and `failures` attributes: >>> runner.tries 7 >>> runner.failures 0 The comparison between expected outputs and actual outputs is done by an `OutputChecker`. This comparison may be customized with a number of option flags; see the documentation for `testmod` for more information. If the option flags are insufficient, then the comparison may also be customized by passing a subclass of `OutputChecker` to the constructor. The test runner's display output can be controlled in two ways. First, an output function (`out) can be passed to `TestRunner.run`; this function will be called with strings that should be displayed. It defaults to `sys.stdout.write`. If capturing the output is not sufficient, then the display output can be also customized by subclassing DocTestRunner, and overriding the methods `report_start`, `report_success`, `report_unexpected_exception`, and `report_failure`. R1iFicCsy|pt|_|djodtij}n||_||_||_d|_d|_ h|_ t |_ dS(sc Create a new test runner. Optional keyword arg `checker` is the `OutputChecker` that should be used to compare the expected outputs and actual outputs of doctest examples. Optional keyword arg 'verbose' prints lots of stuff if true, only failures if false; by default, it's true iff '-v' is in sys.argv. Optional argument `optionflags` can be used to control how the test runner compares expected output to actual output, and how it displays failures. See the documentation for `testmod` for more information. s-viN( Rt_checkerR)R;RRt optionflagstoriginal_optionflagsttriestfailurest_name2ftRat_fakeout(RdtcheckerRR ((s doctest.pycR7s       cCsc|ioU|io,|dt|idt|iq_|dt|idndS(s Report that the test runner is about to process the given example. (Only displays a message if verbose=True) sTrying: s Expecting: sExpecting nothing N(RRpRVR(RdRRtexample((s doctest.pyct report_start[s   )cCs|io|dndS(st Report that the given example ran successfully. (Only displays a message if verbose=True) sok N(R(RdRRRRq((s doctest.pyctreport_successhs cCs3||i|||ii|||idS(s7 Report that the given example failed. N(t_failure_headerRtoutput_differenceR (RdRRRRq((s doctest.pyctreport_failurepscCs.||i||dtt|dS(sO Report that the given example raised an unexpected exception. sException raised: N(RRVR`(RdRRRR[((s doctest.pyctreport_unexpected_exceptionwscCs|ig}|iob|idj o(|idj o|i|id}nd}|id|i||ifn"|id|id|if|id|i}|it|di|S(Nit?sFile "%s", line %s, in %ssLine %s, in %ssFailed example:s ( tDIVIDERRLRR)RR%RRVR(RdRRRRR((s doctest.pycR~s    !  c Bsd}}|i}ed\}}} |ii} xee|iD]T\} } |ie@o |dj} ||_| ioNxK| iiD]6\}}|o|i|O_q|i|M_qWn|ie @oqDn|d7}| p|i ||| nd|i | f}y7e | i |d|d|iU|iid }Wn5ej o n!ei}|iinX|ii}|iid|}|d jo'| | i||io |}qnei}ei|d d}| p|e|7}n| id jo | }n| | i||io |}nz|ie@okeid| i}eid|}|o9|o2| |i d|i d|io |}qn||jo%| p|i!||| |qqD||jo/| p|i"||| |n|d7}qD|| jo/| p|i#||| |n|d7}qDe$pt%d |fqDW||_|i&|||||fS( s Run the examples in `test`. Write the outcome of each example with one of the `DocTestRunner.report_*` methods, using the writer function `out`. `compileflags` is the set of compiler flags that should be used to execute examples. Return a tuple `(f, t)`, where `t` is the number of examples tried, and `f` is the number of examples that failed. The examples are run in the namespace `test.globs`. iiistsingleiis[^:]*:sunknown outcomeN('R RRt check_outputRRR RRRRR%RRR,tdebuggerRR)tKeyboardInterruptR;R[RRZRfRpRXtformat_exception_onlyR`RRRRRRRRRRmRkt_DocTestRunner__record_outcome(RdRt compileflagsRR R R tSUCCESStFAILUREtBOOMtcheckt examplenumRtquiett optionflagRRLt exceptionRqtoutcomeR[Rtm1tm2((s doctest.pyct__runs                )      cCs^|ii|id\}}||||f|i|i<|i|7_|i|7_dS(s{ Record the fact that the given DocTest (`test`) generated `f` failures out of `t` tried examples. iN(ii(R R(R%R R (RdRtftttf2tt2((s doctest.pyct__record_outcomess3[\w\.]+)\[(?P\d+)\]>$cCs||ii|}|oO|id|iijo3|iit|id}|iit Sn|i ||SdS(NR%R$( t%_DocTestRunner__LINECACHE_FILENAME_RERRRR%RtintRt splitlinesRotsave_linecache_getlines(RdRLtmodule_globalsRR((s doctest.pyct__patched_linecache_getliness #cCs||_|djot|i}nti}|djo |i}n|it_ti }t ||_ |i i |i i t_ t i|_|it _z|i|||SWd|t_|t_ |it _|o|iinXdS(sJ Run the examples in `test`, and display the results using the writer function `out`. The examples are run in the namespace `test.globs`. If `clear_globs` is true (the default), then this namespace will be cleared after the test runs, to help with garbage collection. If you would like to examine the namespace after the test completes, then use `clear_globs=False`. `compileflags` gives the set of flags that should be used by the Python compiler when running the examples. If not specified, then it will default to the set of future-import flags that apply to `globs`. The output of each example is checked using `DocTestRunner.check_output`, and the results are formatted by the `DocTestRunner.report_*` methods. N(RR)R0R,R;R|twriteRRRR{RtresetRRR4t*_DocTestRunner__patched_linecache_getlinest_DocTestRunner__runtclear(RdRRRt clear_globsRtsave_set_trace((s doctest.pyctrun#s(             c Cs3|djo |i}ng}g}g}d}}x|iiD]}|\}\} } | | jpt|| 7}|| 7}| djo|i|qF| djo|i|| fqF|i|qFW|o|o7t|GdGH|ix|D]} dG| GHqWn|oCt|GdGH|ix'|D]\} } d| | fGHqEWqln|oT|iGHt|GdGH|ix0|D]$\} \} } d| | | fGHqWn|o3|GdGt|iGd GH||Gd G|Gd GHn|od G|Gd GHn|o dGHn||fS(s Print a summary of all the test cases that have been run by this DocTestRunner, and return a tuple `(f, t)`, where `f` is the total number of failed examples, and `t` is the total number of tried examples. The optional `verbose` argument controls how detailed the summary is. If the verbosity is not specified, then the DocTestRunner's verbosity is used. isitems had no tests:s sitems passed all tests:s %3d tests in %ssitems had failures:s %3d of %3d in %sstests insitems.s passed andsfailed.s***Test Failed***s failures.s Test passed.N( R)RR RRkRR$RR( RdRtnoteststpassedtfailedttotaltttotalfRR%R,R-tthingR((s doctest.pyct summarize\sZ            cCs|i}xu|iiD]d\}\}}||jo5d|dGH||\}}||}||}n||f||RERG(((s doctest.pycRs7 $     |  9 9cBs)eZdZdZdZdZRS(s_ A class used to check the whether the actual output from a doctest example matches the expected output. `OutputChecker` defines two methods: `check_output`, which compares a given pair of outputs, and returns true if they match; and `output_difference`, which returns a string describing the differences between two outputs. cCs.||jotSn|t@p:||fd jotSn||fd jotSqZn|t@pPtidtitd|}tidd|}||jotSqn|t@oCdi|i }di|i }||jotSqn|t @ot ||otSq*nt S( s Return True iff the actual output from an example (`got`) matches the expected output (`want`). These strings are always considered to match if they are identical; but depending on what option flags the test runner is using, several non-exact match types are also possible. See the documentation for `TestRunner` for more information about option flags. sTrue s1 sFalse s0 s (?m)^%s\s*?$Rs (?m)^\s*?$RQ(sTrue s1 (sFalse s0 ( RoRRRRRStescapetBLANKLINE_MARKERRRRjRRvRm(RdRpRqR ((s doctest.pycRs,            cCsW|ttBtB@ptSn|t@otSn|iddjo|iddjS(Ns i(RR R RmRoR(RdRpRqR ((s doctest.pyct_do_a_fancy_diffs  c Cs|i}|t@ptidt|}n|i|||o5|it}|it}|t@o2t i ||dd}t |d}d}n|t @o2t i ||dd}t |d}d}nT|t@o7t idt i} t | i||}d}ndp td g} |D]} | | id q9~ }d |td i|Sn|o%|od t|t|fSn7|odt|Sn|odt|SndSdS(s Return a string describing the differences between the expected output for a given example (`example`) and the actual output (`got`). `optionflags` is the set of option flags used to compare `want` and `got`. s(?m)^[ ]*(?= )tnis#unified diff with -expected +actuals-context diff with expected followed by actualtcharjunksndiff with -expected +actualisBad diff options sDifferences (%s): RsExpected: %sGot: %ssExpected: %sGot nothing sExpected nothing Got: %ssExpected nothing Got nothing N(RpRRRRSRIRJR3RoRtdifflibt unified_difftlistR t context_diffR tDiffertIS_CHARACTER_JUNKtcompareRkRxRVR( RdRRqR RpRt got_linestdifftkindtengineRRy((s doctest.pycRs8        +(R2RhRRRJR(((s doctest.pycRs 6 cBs eZdZdZdZRS(sA DocTest example has failed in debugging mode. The exception instance has variables: - test: the DocTest object being run - example: the Example object that failed - got: the actual output cCs||_||_||_dS(N(RRRq(RdRRRq((s doctest.pycR0s  cCs t|iS(N(R6R(Rd((s doctest.pyct__str__5s(R2RhRRRX(((s doctest.pycR%s  cBs eZdZdZdZRS(sA DocTest example has encountered an unexpected exception The exception instance has variables: - test: the DocTest object being run - example: the Example object that failed - exc_info: the exception info cCs||_||_||_dS(N(RRR[(RdRRR[((s doctest.pycRCs  cCs t|iS(N(R6R(Rd((s doctest.pycRXHs(R2RhRRRX(((s doctest.pycR8s  cBs2eZdZddedZdZdZRS(s_ Run doc tests but raise an exception as soon as there is a failure. If an unexpected exception occurs, an UnexpectedException is raised. It contains the test, the example, and the original exception: >>> runner = DebugRunner(verbose=False) >>> test = DocTestParser().get_doctest('>>> raise KeyError\n42', ... {}, 'foo', 'foo.py', 0) >>> try: ... runner.run(test) ... except UnexpectedException, failure: ... pass >>> failure.test is test True >>> failure.example.want '42\n' >>> exc_info = failure.exc_info >>> raise exc_info[0], exc_info[1], exc_info[2] Traceback (most recent call last): ... KeyError We wrap the original exception to give the calling application access to the test and example information. If the output doesn't match, then a DocTestFailure is raised: >>> test = DocTestParser().get_doctest(''' ... >>> x = 1 ... >>> x ... 2 ... ''', {}, 'foo', 'foo.py', 0) >>> try: ... runner.run(test) ... except DocTestFailure, failure: ... pass DocTestFailure objects provide access to the test: >>> failure.test is test True As well as to the example: >>> failure.example.want '2\n' and the actual output: >>> failure.got '1\n' If a failure or error occurs, the globals are left intact: >>> del test.globs['__builtins__'] >>> test.globs {'x': 1} >>> test = DocTestParser().get_doctest(''' ... >>> x = 2 ... >>> raise KeyError ... ''', {}, 'foo', 'foo.py', 0) >>> runner.run(test) Traceback (most recent call last): ... UnexpectedException: >>> del test.globs['__builtins__'] >>> test.globs {'x': 2} But the globals are cleared if there is no error: >>> test = DocTestParser().get_doctest(''' ... >>> x = 2 ... ''', {}, 'foo', 'foo.py', 0) >>> runner.run(test) (0, 1) >>> test.globs {} cCs7ti||||t}|o|iin|S(N(RR>RmR,R;(RdRRRR<tr((s doctest.pycR>scCst|||dS(N(R(RdRRRR[((s doctest.pycRscCst|||dS(N(R(RdRRRRq((s doctest.pycRsN(R2RhRR)RoR>RR(((s doctest.pycRKsY ic Cs'|djotiid}nti|ptd|fn|djo |i}ntd|} |ot d|d|} nt d|d|} x3| i ||d|d|D]} | i | qW|o| i ntdjo | anti| | i| ifS( s, m=None, name=None, globs=None, verbose=None, report=True, optionflags=0, extraglobs=None, raise_on_error=False, exclude_empty=False Test examples in docstrings in functions and classes reachable from module m (or the current module if m is not supplied), starting with m.__doc__. Also test examples reachable from dict m.__test__ if it exists and is not None. m.__test__ maps names to functions, classes and strings; function and class docstrings are tested even if the name is private; strings are tested directly, as if they were docstrings. Return (#failures, #tests). See doctest.__doc__ for an overview. Optional keyword arg "name" gives the name of the module; by default use m.__name__. Optional keyword arg "globs" gives a dict to be used as the globals when executing examples; by default, use m.__dict__. A copy of this dict is actually used for each docstring, so that each docstring's examples start with a clean slate. Optional keyword arg "extraglobs" gives a dictionary that should be merged into the globals that are used to execute examples. By default, no extra globals are used. This is new in 2.4. Optional keyword arg "verbose" prints lots of stuff if true, prints only failures if false; by default, it's true iff "-v" is in sys.argv. Optional keyword arg "report" prints a summary at the end when true, else prints nothing at the end. In verbose mode, the summary is detailed, else very brief (in fact, empty if all tests passed). Optional keyword arg "optionflags" or's together module constants, and defaults to 0. This is new in 2.3. Possible values (see the docs for details): DONT_ACCEPT_TRUE_FOR_1 DONT_ACCEPT_BLANKLINE NORMALIZE_WHITESPACE ELLIPSIS SKIP IGNORE_EXCEPTION_DETAIL REPORT_UDIFF REPORT_CDIFF REPORT_NDIFF REPORT_ONLY_FIRST_FAILURE Optional keyword arg "raise_on_error" raises an exception on the first unexpected exception or failure. This allows failures to be post-mortem debugged. Advanced tomfoolery: testmod runs methods of a local instance of class doctest.Tester, then merges the results into (or creates) global Tester instance doctest.master. Methods of doctest.master can be called directly too, if you want to do something unusual. Passing report=0 to testmod is especially useful then, to delay displaying a summary. Invoke doctest.master.summarize(verbose) when you're done fiddling. Rstestmod: module required; %rRRR R,RN(R)R;R<R(R3R4R?R2RRRRnR>REtmasterRGR R ( RR%R,RtreportR Rtraise_on_errorRtfindertrunnerR((s doctest.pycRs&E      c Csa|o| otdnt|||\} }|djotii|}n|djo h}n |i}|dj o|i|n| otd|d|} nt d|d|} | dj o| i | } n| i | |||d}| i ||o| i ntdjo | anti| | i| ifS(s Test examples in the given file. Return (#failures, #tests). Optional keyword arg "module_relative" specifies how filenames should be interpreted: - If "module_relative" is True (the default), then "filename" specifies a module-relative path. By default, this path is relative to the calling module's directory; but if the "package" argument is specified, then it is relative to that package. To ensure os-independence, "filename" should use "/" characters to separate path segments, and should not be an absolute path (i.e., it may not begin with "/"). - If "module_relative" is False, then "filename" specifies an os-specific path. The path may be absolute or relative (to the current working directory). Optional keyword arg "name" gives the name of the test; by default use the file's basename. Optional keyword argument "package" is a Python package or the name of a Python package whose directory should be used as the base directory for a module relative filename. If no package is specified, then the calling module's directory is used as the base directory for module relative filenames. It is an error to specify "package" if "module_relative" is False. Optional keyword arg "globs" gives a dict to be used as the globals when executing examples; by default, use {}. A copy of this dict is actually used for each docstring, so that each docstring's examples start with a clean slate. Optional keyword arg "extraglobs" gives a dictionary that should be merged into the globals that are used to execute examples. By default, no extra globals are used. Optional keyword arg "verbose" prints lots of stuff if true, prints only failures if false; by default, it's true iff "-v" is in sys.argv. Optional keyword arg "report" prints a summary at the end when true, else prints nothing at the end. In verbose mode, the summary is detailed, else very brief (in fact, empty if all tests passed). Optional keyword arg "optionflags" or's together module constants, and defaults to 0. Possible values (see the docs for details): DONT_ACCEPT_TRUE_FOR_1 DONT_ACCEPT_BLANKLINE NORMALIZE_WHITESPACE ELLIPSIS SKIP IGNORE_EXCEPTION_DETAIL REPORT_UDIFF REPORT_CDIFF REPORT_NDIFF REPORT_ONLY_FIRST_FAILURE Optional keyword arg "raise_on_error" raises an exception on the first unexpected exception or failure. This allows failures to be post-mortem debugged. Optional keyword arg "parser" specifies a DocTestParser (or subclass) that should be used to extract tests from the files. Optional keyword arg "encoding" specifies an encoding that should be used to convert the file to unicode. Advanced tomfoolery: testmod runs methods of a local instance of class doctest.Tester, then merges the results into (or creates) global Tester instance doctest.master. Methods of doctest.master can be called directly too, if you want to do something unusual. Passing report=0 to testmod is especially useful then, to delay displaying a summary. Invoke doctest.master.summarize(verbose) when you're done fiddling. s8Package may only be specified for module-relative paths.RR iN(RRPR)RHRtbasenameRRRRtdecodeRR>RERZRGR R (RLRNR%RMR,RR[R RR\RtencodingttextR^R((s doctest.pycR#s.R          tNoNamec Csdtd|dt}td|d|}x3|i||d|D]}|i|d|qCWdS(sr Test examples in the given object's docstring (`f`), using `globs` as globals. Optional argument `name` is used in failure messages. If the optional argument `verbose` is true, then generate output even if there are no failures. `compileflags` gives the set of flags that should be used by the Python compiler when running the examples. If not specified, then it will default to the set of future-import flags that apply to `globs`. Optional keyword arg `optionflags` specifies options for the testing and output. See the documentation for `testmod` for more information. RRR R,RN(RRmRRnR>( R,R,RR%RR R]R^R((s doctest.pycRs cBs_eZdddddZdZdddZddZdZddZdZ RS( icCstidtdd|djo|djotdn|dj o(ti| otd|fn|djo |i}n||_||_ ||_ t |_ t d|d||_dS(NsCclass Tester is deprecated; use class doctest.DocTestRunner insteadt stacklevelis*Tester.__init__: must specify mod or globss)Tester.__init__: mod must be a module; %rRR (twarningstwarntDeprecationWarningR)R?R3R4RR,RR Rt testfinderRt testrunner(RdtmodR,RR ((s doctest.pycRs         cCs}ti||i|dd}|io dG|GHn|ii|\}}|io|GdG|GdG|GHn||fS(NsRunning stringtofsexamples failed in string(RRR,R)RRiR>(RdRTR%RR,R-((s doctest.pyct runstrings!   c Csvd}}|ii||d|d|i}x;|D]3}|ii|\}} |||| }}q5W||fS(NiR@R,(RhRnR,RiR>( RdRR%R@R,R-RRR.R/((s doctest.pyctrundocs  cCsUddk}|i|}|ii||djo t}n|i|||S(Ni(tnewR@RRR)RmRm(RdRFR%R@RnR((s doctest.pyctrundicts    cCs4ddk}|i|}||_|i||S(Ni(RnR@RRm(RdRFR%RnR((s doctest.pyct run__test__s  cCs|ii|S(N(RiRE(RdR((s doctest.pycREscCs|ii|idS(N(RiRG(RdR((s doctest.pycRGsN( R2RhR)RRlRmRoRpRERG(((s doctest.pycRs    cCs4|t@|jotd|nt}|a|S(s?Sets the unittest option flags. The old flag is returned so that a runner could restore the old value if it wished to: >>> import doctest >>> old = doctest._unittest_reportflags >>> doctest.set_unittest_reportflags(REPORT_NDIFF | ... REPORT_ONLY_FIRST_FAILURE) == old True >>> doctest._unittest_reportflags == (REPORT_NDIFF | ... REPORT_ONLY_FIRST_FAILURE) True Only reporting flags can be set: >>> doctest.set_unittest_reportflags(ELLIPSIS) Traceback (most recent call last): ... ValueError: ('Only reporting flags allowed', 8) >>> doctest.set_unittest_reportflags(old) == (REPORT_NDIFF | ... REPORT_ONLY_FIRST_FAILURE) True sOnly reporting flags allowed(R Rt_unittest_reportflags(R-told((s doctest.pycRs t DocTestCasecBskeZdd d d dZdZdZdZdZdZdZ dZ e Z d Z RS( icCsAtii|||_||_||_||_||_dS(N(tunittesttTestCaseRt_dt_optionflagst _dt_checkert_dt_testt _dt_setUpt _dt_tearDown(RdRR tsetUpttearDownR((s doctest.pycR"s     cCs.|i}|idj o|i|ndS(N(RxRyR)(RdR((s doctest.pycR{,s cCs;|i}|idj o|i|n|iidS(N(RxRzR)R,R;(RdR((s doctest.pycR|2s c Cs|i}ti}t}|i}|t@p|tO}ntd|d|idt }z5dd|_ |i |d|i dt \}}Wd|t_X|o"|i |i|indS(NR RRRiFRR<(RxR;R|R!RvR RqRRwRmRR>R7tfailureExceptiontformat_failureRZ(RdRRrRnR R^R R ((s doctest.pyctrunTest:s       " cCsl|i}|idjo d}nd|i}di|iidd}d|i|i|||fS(Nsunknown line numbers%sRis:Failed doctest test for %s File "%s", line %s, in %s %s(RxRR)RR%RjRL(RdterrRRtlname((s doctest.pycR~Rs   cCsI|itd|id|idt}|i|i|idS(sRun the test case without results and without catching exceptions The unit test framework includes a debug method on test cases and test suites to support post-mortem debugging. The test code is run in such a way that errors are not caught. This way a caller can catch the errors and initiate post-mortem debugging. The DocTestCase provides a debug method that raises UnexpectedException errors if there is an unexepcted exception: >>> test = DocTestParser().get_doctest('>>> raise KeyError\n42', ... {}, 'foo', 'foo.py', 0) >>> case = DocTestCase(test) >>> try: ... case.debug() ... except UnexpectedException, failure: ... pass The UnexpectedException contains the test, the example, and the original exception: >>> failure.test is test True >>> failure.example.want '42\n' >>> exc_info = failure.exc_info >>> raise exc_info[0], exc_info[1], exc_info[2] Traceback (most recent call last): ... KeyError If the output doesn't match, then a DocTestFailure is raised: >>> test = DocTestParser().get_doctest(''' ... >>> x = 1 ... >>> x ... 2 ... ''', {}, 'foo', 'foo.py', 0) >>> case = DocTestCase(test) >>> try: ... case.debug() ... except DocTestFailure, failure: ... pass DocTestFailure objects provide access to the test: >>> failure.test is test True As well as to the example: >>> failure.example.want '2\n' and the actual output: >>> failure.got '1\n' R RRN(R{RRvRwRmR>RxR|(RdR^((s doctest.pycR ^s B cCs |iiS(N(RxR%(Rd((s doctest.pycRscCs4|iiid}d|ddi|d fS(NRs%s (%s)i(RxR%RjR(RdR%((s doctest.pycRscCsd|iiS(Ns Doctest: (RxR%(Rd((s doctest.pyctshortDescriptionsN( R2RhR)RR{R|RR~R RRRXR(((s doctest.pycRs s     H  c Ks|d jo t}nt|}|i|d|d|}|d jo |i}n|pt|dn|iti}x|D]x}t |i djoqn|i p5|i }|dd jo|d }n||_ n|i t||qW|S( s Convert doctest tests for a module to a unittest test suite. This converts each documentation string in a module that contains doctest tests to a unittest test case. If any of the tests in a doc string fail, then the test case fails. An exception is raised showing the name of the file containing the test and a (sometimes approximate) line number. The `module` argument provides the module to be tested. The argument can be either a module or a module name. If no argument is given, the calling module is used. A number of options may be provided as keyword arguments: setUp A set-up function. This is called before running the tests in each file. The setUp function will be passed a DocTest object. The setUp function can access the test globals as the globs attribute of the test passed. tearDown A tear-down function. This is called after running the tests in each file. The tearDown function will be passed a DocTest object. The tearDown function can access the test globals as the globs attribute of the test passed. globs A dictionary containing initial global variables for the tests. optionflags A set of doctest option flags expressed as an integer. R,Rs has no testsiis.pycs.pyoiN(s.pycs.pyo(R)RRBRnRRRRtt TestSuiteR$RRLRtaddTestRs( R@R,Rt test_finderRRtsuiteRRL((s doctest.pycRs*%          t DocFileCasecBs)eZdZdZeZdZRS(cCsdi|iiidS(Nt_R(RRxR%Rj(Rd((s doctest.pycRscCs |iiS(N(RxRL(Rd((s doctest.pycRscCsd|ii|ii|fS(Ns2Failed doctest test for %s File "%s", line 0 %s(RxR%RL(RdR((s doctest.pycR~s(R2RhRRRXR~(((s doctest.pycRs  c Ks|djo h}n |i}|o| otdnt|||\}}d|jo||d>> text = ''' ... Here are examples of simple math. ... ... Python has super accurate integer addition ... ... >>> 2 + 2 ... 5 ... ... And very friendly error messages: ... ... >>> 1/0 ... To Infinity ... And ... Beyond ... ... You can use logic if you want: ... ... >>> if 0: ... ... blah ... ... blah ... ... ... ... Ho hum ... ''' >>> print script_from_examples(text) # Here are examples of simple math. # # Python has super accurate integer addition # 2 + 2 # Expected: ## 5 # # And very friendly error messages: # 1/0 # Expected: ## To Infinity ## And ## Beyond # # You can use logic if you want: # if 0: blah blah # # Ho hum is # Expected:s s## Rwi( RRR5R RRRpRjRztpopR(RTRtpieceRpRRR((s doctest.pycRe s$:  > 2cCst|}ti|}g}|D]!}|i|jo ||q)q)~}|pt|dn|d}t|i}|S(sExtract the test sources from a doctest docstring as a script. Provide the module (or dotted name of the module) containing the test to be debugged and the name (within the module) of the object with the doc string with tests to be debugged. snot found in testsi(RBRRnR%RRR(R@R%RRR-Rttestsrc((s doctest.pycR s 5 cCs t|}t|||dS(s4Debug a single doctest docstring, in argument `src`'N(Rt debug_script(tsrctpmR,R((s doctest.pycR s c Csddk}tidd}t|d}|i||iz|o|i}nh}|oHyt|||Wqti dGH|i ti dqXn|i d|||Wdt i |XdS( s7Debug a test script. `src` is the script, as a string.iNs.pyt doctestdebugRuiis execfile(%r)(RttempfiletmktempRJR7tcloseRtexecfileR;R[t post_mortemR>RHtremove(RRR,Rt srcfilenameR,((s doctest.pycR s"   cCs2t|}t||}t|||idS(sDebug a single doctest docstring. Provide the module (or dotted name of the module) containing the test to be debugged and the name (within the module) of the object with the docstring with tests to be debugged. N(RBRRR(R@R%RR((s doctest.pycR s t _TestClasscBs)eZdZdZdZdZRS(s A pointless class, for sanity-checking of docstring testing. Methods: square() get() >>> _TestClass(13).get() + _TestClass(-12).get() 1 >>> hex(_TestClass(13).square().get()) '0xa9' cCs ||_dS(sval -> _TestClass object with associated value val. >>> t = _TestClass(123) >>> print t.get() 123 N(R(RdR((s doctest.pycR scCs|id|_|S(sosquare() -> square TestClass's associated value >>> _TestClass(13).square().get() 169 i(R(Rd((s doctest.pyctsquare scCs|iS(s}get() -> return TestClass's associated value. >>> x = _TestClass(-42) >>> print x.get() -42 (R(Rd((s doctest.pycR( s(R2RhRRRR((((s doctest.pycR s  s Example of a string object, searched as-is. >>> x = 1; y = 2 >>> x + y, x * y (3, 2) Rs In 2.2, boolean expressions displayed 0 or 1. By default, we still accept them. This can be disabled by passing DONT_ACCEPT_TRUE_FOR_1 to the new optionflags argument. >>> 4 == 4 1 >>> 4 == 4 True >>> 4 > 4 0 >>> 4 > 4 False sbool-int equivalences Blank lines can be marked with : >>> print 'foo\n\nbar\n' foo bar s blank liness If the ellipsis flag is used, then '...' can be used to elide substrings in the desired output: >>> print range(1000) #doctest: +ELLIPSIS [0, 1, 2, ..., 999] tellipsiss| If the whitespace normalization flag is used, then differences in whitespace are ignored. >>> print range(30) #doctest: +NORMALIZE_WHITESPACE [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29] swhitespace normalizationcCs ti}|itdS(N(RttTextTestRunnerR>R(RY((s doctest.pyct_testX s R(NRt __docformat__t__all__R&R;RXR3RRHRRRtRMRRReR!R"RRRRRRRRRR R R R RIRiR0RBRPRVR`RaRvRzRR{RER RRRRRt ExceptionRRRR)RZRoRmRRRRRqRRuRsRRRRRRRRR RRRR2(((s doctest.pycs.s  H0                 1 " $5<n  f    x? $?   I R  ,      PK8!dummy_thread.pyc ZDc@sdZdZdZddddddd gZd d kZd d kZdefd YZhd Z dZ dZ dZ d dZd efdYZeaeadZd S(s,Drop-in replacement for the thread module. Meant to be used as a brain-dead substitute so that threaded code does not need to be rewritten for when the thread module is not present. Suggested usage is:: try: import thread except ImportError: import dummy_thread as thread s Brett Cannonsbrett@python.orgterrortstart_new_threadtexitt get_identt allocate_locktinterrupt_maintLockTypeiNcBseZdZdZRS(s%Dummy implementation of thread.error.cGs ||_dS(N(targs(tselfR((sdummy_thread.pyct__init__s(t__name__t __module__t__doc__R (((sdummy_thread.pycRscCst|ttjotdnt|ttjotdntay|||Wn#tj ontinXt at ota t ndS(sDummy implementation of thread.start_new_thread(). Compatibility is maintained by making sure that ``args`` is a tuple and ``kwargs`` is a dictionary. If an exception is raised and it is SystemExit (which can be done by thread.exit()) it is caught and nothing is done; all other exceptions are printed out by using traceback.print_exc(). If the executed function calls interrupt_main the KeyboardInterrupt will be raised when the function returns. s2nd arg must be a tuples3rd arg must be a dictN( ttypettuplet TypeErrortdicttFalset_maint SystemExitt _tracebackt print_exctTruet _interrupttKeyboardInterrupt(tfunctionRtkwargs((sdummy_thread.pycRs cCs tdS(s&Dummy implementation of thread.exit().N(R(((sdummy_thread.pycR>scCsdS(sDummy implementation of thread.get_ident(). Since this module should only be used when threadmodule is not available, it is safe to assume that the current process is the only thread. Thus a constant can be safely returned. i((((sdummy_thread.pycRBscCstS(s/Dummy implementation of thread.allocate_lock().(R(((sdummy_thread.pycRKscCs!|dj otdndS(s,Dummy implementation of thread.stack_size().s'setting thread stack size not supportediN(tNoneR(tsize((sdummy_thread.pyct stack_sizeOs cBsDeZdZdZddZeZdZdZdZ RS(sClass implementing dummy implementation of thread.LockType. Compatibility is maintained by maintaining self.locked_status which is a boolean that stores the state of the lock. Pickling of the lock, though, should not be done since if the thread module is then used with an unpickled ``lock()`` from here problems could occur from this class not having atomic methods. cCs t|_dS(N(Rt locked_status(R((sdummy_thread.pycR `scCsY|djot|_dSn8|p#|ipt|_tSqUtSnt|_tSdS(sDummy implementation of acquire(). For blocking calls, self.locked_status is automatically set to True and returned appropriately based on value of ``waitflag``. If it is non-blocking, then the value is actually checked and not set if it is already acquired. This is all done so that threading.Condition's assert statements aren't triggered and throw a little fit. N(RRRR(Rtwaitflag((sdummy_thread.pyctacquirecs     cCs|idS(N(trelease(Rttyptvalttb((sdummy_thread.pyct__exit__}scCs!|ip tnt|_tS(sRelease the dummy lock.(RRRR(R((sdummy_thread.pycR!s   cCs|iS(N(R(R((sdummy_thread.pyctlockedsN( R R R R RR t __enter__R%R!R&(((sdummy_thread.pycRUs     cCsto tntadS(s^Set _interrupt flag to True to have start_new_thread raise KeyboardInterrupt upon exiting.N(RRRR(((sdummy_thread.pycRs (R t __author__t __email__t__all__t tracebackRtwarningst ExceptionRRRRRRRtobjectRRRRRR(((sdummy_thread.pycs s        8PK8`encodings/__init__.pyc JֱGc@sdZddkZddkZddklZhZdZdgZdZeiZ de e fdYZ d Z d ZeiedS( s, Standard "encodings" Package Standard Python encoding modules are stored in this package directory. Codec modules must have names corresponding to normalized encoding names as defined in the normalize_encoding() function below, e.g. 'utf-8' must be implemented by the module 'utf_8.py'. Each codec module must export the following interface: * getregentry() -> codecs.CodecInfo object The getregentry() API must a CodecInfo object with encoder, decoder, incrementalencoder, incrementaldecoder, streamwriter and streamreader atttributes which adhere to the Python Codec Interface Standard. In addition, a module may optionally also define the following APIs which are then used by the package's codec search function: * getaliases() -> sequence of encoding name strings to use as aliases Alias names returned by getaliases() must be normalized encoding names as defined by normalize_encoding(). Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iN(taliasess --unknown--t*s . 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz tCodecRegistryErrorcBseZRS((t__name__t __module__(((sencodings\__init__.pycR-scCsUttdo)t|tijo|id}ndi|itiS(s Normalize an encoding name. Normalization works as follows: all non-alphanumeric characters except the dot used for Python package names are collapsed and replaced with a single underscore, e.g. ' -;#' becomes '_'. Leading and trailing underscores are removed. Note that encoding names should be ASCII only; if they do use non-ASCII characters, these must be Latin-1 compatible. t UnicodeTypeslatin-1t_( thasattrttypesttypeRtencodetjoint translatet_norm_encoding_maptsplit(tencoding((sencodings\__init__.pyctnormalize_encoding0s&c CsYti|t}|tj o|Snt|}ti|pti|idd}|dj o||g}n |g}xj|D]\}| p d|joqny#td|tt t }Wnt j oqXPqWd}y |i }Wnt j o d}nX|djodt|s    TPK8~}7z#z#encodings/aliases.pyc bCc@sx dZhdd<dd<dd<dd<dd<dd<dd<dd <dd <dd <dd <dd <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <dd!<d"d#<d"d$<d"d%<d&d'<d&d(<d)d*<d)d+<d,d-<d,d.<d/d0<d/d1<d2d3<d2d4<d5d6<d5d7<d8d9<d8d:<d;d<<d;d=<d>d?<d>d@<dAdB<dAdC<dDdE<dDdF<dDdG<dDdH<dIdJ<dIdK<dIdL<dMdN<dMdO<dMdP<dMdQ<dMdR<dSdT<dSdU<dSdV<dWdX<dWdY<dWdZ<d[d\<d[d]<d[d^<d_d`<d_da<d_db<dcdd<dcde<dcdf<dgdh<dgdi<dgdj<dkdl<dkdm<dkdn<dkdo<dpdq<dpdr<dpds<dtdu<dtdv<dtdw<dxdy<dxdz<dxd{<d|d}<d|d~<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <dd <dd <dd <dd <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <dd!<dd"<dd#<dd$<d%d&<d%d'<d%d(<d%d)<d%d*<d%d+<d,d-<d,d.<d/d0<d1d2<d1d3<d1d4<d1d5<d1d6<d1d7<d1d8<d1d9<d1d:<d1d;<d1d<<d1d=<d>d?<d@dA<dBdC<dDdE<dDdF<dGdH<dIdJ<dKdL<dMdN<dMdO<dMdP<dMdQ<dRdS<dRdT<dRdU<dVdW<dXdY<dXdZ<dXd[<dXd\<d]d^<d]d_<d]d`<dadb<dadc<dadd<dedf<dgdh<dgdi<dgdj<dgdk<dgdl<dmdn<dmdo<dpdq<dpdr<dsdt<dsdu<dvdw<dvdx<dvdy<dzd{<dzd|<dzd}<dzd~<dzd<dd<dd<ddsR                                                                                                                                                                                                                                                                                                      PK8#!!encodings/ascii.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd eefdYZdZdS(s Python 'ascii' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecst ascii_encodetencodet ascii_decodetdecode(((sencodings\ascii.pycR s tIncrementalEncodercBseZedZRS(cCsti||idS(Ni(RRterrors(tselftinputtfinal((sencodings\ascii.pycRs(RRtFalseR(((sencodings\ascii.pycRstIncrementalDecodercBseZedZRS(cCsti||idS(Ni(RRR (R R R ((sencodings\ascii.pycRs(RRR R(((sencodings\ascii.pycRst StreamWritercBseZRS((RR(((sencodings\ascii.pycRst StreamReadercBseZRS((RR(((sencodings\ascii.pycRstStreamConvertercBseZeiZeiZRS((RRRRRRR(((sencodings\ascii.pycR"s cCs:tidddtidtidtdtdtdtS( NtnametasciiRRtincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRRRRRR(((sencodings\ascii.pyct getregentry)s   ( t__doc__RRRRRRRR(((sencodings\ascii.pycss PK8Z! encodings/base64_codec.pyc 5#Dc@sdZddkZddkZddZddZdeifdYZdeifd YZd eifd YZd eeifd YZdeei fdYZ dZ dS(s Python 'base64_codec' Codec - base64 content transfer encoding Unlike most of the other codecs which target Unicode, this codec will return Python string objects for both encode and decode. Written by Marc-Andre Lemburg (mal@lemburg.com). iNtstrictcCs3|djptti|}|t|fS(s Encodes the object input and returns a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(tAssertionErrortbase64t encodestringtlen(tinputterrorstoutput((sencodings\base64_codec.pyct base64_encode s cCs3|djptti|}|t|fS(s Decodes the object input and returns a tuple (output object, length consumed). input must be an object which provides the bf_getreadbuf buffer slot. Python strings, buffer objects and memory mapped files are examples of objects providing this slot. errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(RRt decodestringR(RRR((sencodings\base64_codec.pyct base64_decodestCodeccBs eZddZddZRS(RcCs t||S(N(R(tselfRR((sencodings\base64_codec.pyctencode/scCs t||S(N(R (R RR((sencodings\base64_codec.pyctdecode1s(t__name__t __module__R R(((sencodings\base64_codec.pycR -s tIncrementalEncodercBseZedZRS(cCs$|idjptti|S(NR(RRRR(R Rtfinal((sencodings\base64_codec.pycR 5s(RRtFalseR (((sencodings\base64_codec.pycR4stIncrementalDecodercBseZedZRS(cCs$|idjptti|S(NR(RRRR (R RR((sencodings\base64_codec.pycR:s(RRRR(((sencodings\base64_codec.pycR9st StreamWritercBseZRS((RR(((sencodings\base64_codec.pycR>st StreamReadercBseZRS((RR(((sencodings\base64_codec.pycRAscCs4tidddtdtdtdtdtdtS( NtnameRR Rtincrementalencodertincrementaldecodert streamwritert streamreader(tcodecst CodecInfoRR RRRR(((sencodings\base64_codec.pyct getregentryFs ( t__doc__RRRR R RRRRR(((sencodings\base64_codec.pycss  PK8^^encodings/big5.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtbig5tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\big5.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\big5.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\big5.pycRst StreamReadercBseZeZRS((RRR(((sencodings\big5.pycR st StreamWritercBseZeZRS((RRR(((sencodings\big5.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\big5.pyct getregentrys   (t _codecs_twRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\big5.pycss   ""PK8b'†encodings/big5hkscs.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt big5hkscstCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\big5hkscs.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\big5hkscs.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\big5hkscs.pycRst StreamReadercBseZeZRS((RRR(((sencodings\big5hkscs.pycR st StreamWritercBseZeZRS((RRR(((sencodings\big5hkscs.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\big5hkscs.pyct getregentrys   (t _codecs_hkRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\big5hkscs.pycss   ""PK8+Z66encodings/bz2_codec.pyc Ec@sdZddkZddkZddZddZdeifdYZdeifd YZd eifd YZd eeifd YZdeei fdYZ dZ dS(s2 Python 'bz2_codec' Codec - bz2 compression encoding Unlike most of the other codecs which target Unicode, this codec will return Python string objects for both encode and decode. Adapted by Raymond Hettinger from zlib_codec.py which was written by Marc-Andre Lemburg (mal@lemburg.com). iNtstrictcCs3|djptti|}|t|fS(s Encodes the object input and returns a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(tAssertionErrortbz2tcompresstlen(tinputterrorstoutput((sencodings\bz2_codec.pyct bz2_encodes cCs3|djptti|}|t|fS(s Decodes the object input and returns a tuple (output object, length consumed). input must be an object which provides the bf_getreadbuf buffer slot. Python strings, buffer objects and memory mapped files are examples of objects providing this slot. errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(RRt decompressR(RRR((sencodings\bz2_codec.pyct bz2_decodestCodeccBs eZddZddZRS(RcCs t||S(N(R(tselfRR((sencodings\bz2_codec.pyctencode1scCs t||S(N(R (R RR((sencodings\bz2_codec.pyctdecode3s(t__name__t __module__R R(((sencodings\bz2_codec.pycR /s tIncrementalEncodercBs)eZddZedZdZRS(RcCs0|djpt||_ti|_dS(NR(RRRt BZ2Compressort compressobj(R R((sencodings\bz2_codec.pyct__init__7s cCsB|o'|ii|}||iiSn|ii|SdS(N(RRtflush(R Rtfinaltc((sencodings\bz2_codec.pycR <scCsti|_dS(N(RRR(R ((sencodings\bz2_codec.pyctresetCs(RRRtFalseR R(((sencodings\bz2_codec.pycR6s  tIncrementalDecodercBs)eZddZedZdZRS(RcCs0|djpt||_ti|_dS(NR(RRRtBZ2Decompressort decompressobj(R R((sencodings\bz2_codec.pycRGs cCs2y|ii|SWntj o dSnXdS(Nt(RR tEOFError(R RR((sencodings\bz2_codec.pycRLscCsti|_dS(N(RRR(R ((sencodings\bz2_codec.pycRRs(RRRRRR(((sencodings\bz2_codec.pycRFs  t StreamWritercBseZRS((RR(((sencodings\bz2_codec.pycRUst StreamReadercBseZRS((RR(((sencodings\bz2_codec.pycR XscCs4tidddtdtdtdtdtdtS( NtnameRR Rtincrementalencodertincrementaldecodert streamwritert streamreader(tcodecst CodecInfoRR RRRR (((sencodings\bz2_codec.pyct getregentry]s ( t__doc__R&RRR R RRRR R((((sencodings\bz2_codec.pycs s    PK8ݻ) encodings/charmap.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdS(s Generic Python Character Mapping Codec. Use this codec directly rather than through the automatic conversion mechanisms supplied by unicode() and .encode(). Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecstcharmap_encodetencodetcharmap_decodetdecode(((sencodings\charmap.pycRs tIncrementalEncodercBs#eZdddZedZRS(tstrictcCs tii||||_dS(N(RRt__init__tmapping(tselfterrorsR ((sencodings\charmap.pycR scCsti||i|idS(Ni(RRR R (R tinputtfinal((sencodings\charmap.pycRsN(RRtNoneR tFalseR(((sencodings\charmap.pycRstIncrementalDecodercBs#eZdddZedZRS(R cCs tii||||_dS(N(RRR R (R R R ((sencodings\charmap.pycR !scCsti||i|idS(Ni(RRR R (R RR((sencodings\charmap.pycR%sN(RRRR RR(((sencodings\charmap.pycR st StreamWritercBs#eZdddZddZRS(R cCs#tii|||||_dS(N(RRR R (R tstreamR R ((sencodings\charmap.pycR *scCsti|||iS(N(RRR (R RR ((sencodings\charmap.pycR.sN(RRRR R(((sencodings\charmap.pycR(st StreamReadercBs#eZdddZddZRS(R cCs#tii|||||_dS(N(RRR R (R RR R ((sencodings\charmap.pycR 3scCsti|||iS(N(RRR (R RR ((sencodings\charmap.pycR7sN(RRRR R(((sencodings\charmap.pycR1scCs:tidddtidtidtdtdtdtS( NtnametcharmapRRtincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRRRRRR(((sencodings\charmap.pyct getregentry<s   (t__doc__RRRRRRR(((sencodings\charmap.pycs s   PK8l O O encodings/cp037.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(ss Python Character Mapping Codec cp037 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP037.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp037.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp037.pyctdecodes(t__name__t __module__RR (((sencodings\cp037.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp037.pycRs(R R tFalseR(((sencodings\cp037.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp037.pycR s(R R RR (((sencodings\cp037.pycRst StreamWritercBseZRS((R R (((sencodings\cp037.pycRst StreamReadercBseZRS((R R (((sencodings\cp037.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp037RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp037.pyct getregentry!s   uœ †—Ž …‡’€‚ƒ„ ˆ‰Š‹Œ‘“”•–˜™š›ž  âäàáãåçñ¢.<(+|&éêëèíîïìß!$*);¬-/ÂÄÀÁÃÅÇѦ,%_>?øÉÊËÈÍÎÏÌ`:#@'="Øabcdefghi«»ðýþ±°jklmnopqrªºæ¸Æ¤µ~stuvwxyz¡¿ÐÝÞ®^£¥·©§¶¼½¾[]¯¨´×{ABCDEFGHI­ôöòóõ}JKLMNOPQR¹ûüùúÿ\÷STUVWXYZ²ÔÖÒÓÕ0123456789³ÛÜÙڟ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp037.pycss  PK8`6 encodings/cp1006.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec cp1006 generated from 'MAPPINGS/VENDORS/MISC/CP1006.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1006.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1006.pyctdecodes(t__name__t __module__RR (((sencodings\cp1006.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1006.pycRs(R R tFalseR(((sencodings\cp1006.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1006.pycR s(R R RR (((sencodings\cp1006.pycRst StreamWritercBseZRS((R R (((sencodings\cp1006.pycRst StreamReadercBseZRS((R R (((sencodings\cp1006.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1006RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1006.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ۰۱۲۳۴۵۶۷۸۹،؛­؟ﺁﺍﺎﺎﺏﺑﭖﭘﺓﺕﺗﭦﭨﺙﺛﺝﺟﭺﭼﺡﺣﺥﺧﺩﮄﺫﺭﮌﺯﮊﺱﺳﺵﺷﺹﺻﺽﺿﻁﻅﻉﻊﻋﻌﻍﻎﻏﻐﻑﻓﻕﻗﻙﻛﮒﮔﻝﻟﻠﻡﻣﮞﻥﻧﺅﻭﮦﮨﮩﮪﺀﺉﺊﺋﻱﻲﻳﮰﮮﹼﹽ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1006.pycss  PK8T] ] encodings/cp1026.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(su Python Character Mapping Codec cp1026 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP1026.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1026.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1026.pyctdecodes(t__name__t __module__RR (((sencodings\cp1026.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1026.pycRs(R R tFalseR(((sencodings\cp1026.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1026.pycR s(R R RR (((sencodings\cp1026.pycRst StreamWritercBseZRS((R R (((sencodings\cp1026.pycRst StreamReadercBseZRS((R R (((sencodings\cp1026.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1026RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1026.pyct getregentry!s   uœ †—Ž …‡’€‚ƒ„ ˆ‰Š‹Œ‘“”•–˜™š›ž  âäàáãå{ñÇ.<(+!&éêëèíîïìßĞİ*);^-/ÂÄÀÁÃÅ[Ñş,%_>?øÉÊËÈÍÎÏÌı:ÖŞ'=ÜØabcdefghi«»}`¦±°jklmnopqrªºæ¸Æ¤µöstuvwxyz¡¿]$@®¢£¥·©§¶¼½¾¬|¯¨´×çABCDEFGHI­ô~òóõğJKLMNOPQR¹û\ùúÿü÷STUVWXYZ²Ô#ÒÓÕ0123456789³Û"Ùڟ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1026.pycss  PK8r7dO O encodings/cp1140.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sf Python Character Mapping Codec cp1140 generated from 'python-mappings/CP1140.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1140.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1140.pyctdecodes(t__name__t __module__RR (((sencodings\cp1140.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1140.pycRs(R R tFalseR(((sencodings\cp1140.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1140.pycR s(R R RR (((sencodings\cp1140.pycRst StreamWritercBseZRS((R R (((sencodings\cp1140.pycRst StreamReadercBseZRS((R R (((sencodings\cp1140.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1140RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1140.pyct getregentry!s   uœ †—Ž …‡’€‚ƒ„ ˆ‰Š‹Œ‘“”•–˜™š›ž  âäàáãåçñ¢.<(+|&éêëèíîïìß!$*);¬-/ÂÄÀÁÃÅÇѦ,%_>?øÉÊËÈÍÎÏÌ`:#@'="Øabcdefghi«»ðýþ±°jklmnopqrªºæ¸Æ€µ~stuvwxyz¡¿ÐÝÞ®^£¥·©§¶¼½¾[]¯¨´×{ABCDEFGHI­ôöòóõ}JKLMNOPQR¹ûüùúÿ\÷STUVWXYZ²ÔÖÒÓÕ0123456789³ÛÜÙڟ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1140.pycss  PK8wt t encodings/cp1250.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1250 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1250.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1250.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1250.pyctdecodes(t__name__t __module__RR (((sencodings\cp1250.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1250.pycRs(R R tFalseR(((sencodings\cp1250.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1250.pycR s(R R RR (((sencodings\cp1250.pycRst StreamWritercBseZRS((R R (((sencodings\cp1250.pycRst StreamReadercBseZRS((R R (((sencodings\cp1250.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1250RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1250.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾‚￾„…†‡￾‰Š‹ŚŤŽŹ￾‘’“”•–—￾™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1250.pycss  PK8DT$q q encodings/cp1251.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1251 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1251.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1251.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1251.pyctdecodes(t__name__t __module__RR (((sencodings\cp1251.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1251.pycRs(R R tFalseR(((sencodings\cp1251.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1251.pycR s(R R RR (((sencodings\cp1251.pycRst StreamWritercBseZRS((R R (((sencodings\cp1251.pycRst StreamReadercBseZRS((R R (((sencodings\cp1251.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1251RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1251.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—￾™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1251.pycss  PK8_Rt t encodings/cp1252.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1252 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1252.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1252.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1252.pyctdecodes(t__name__t __module__RR (((sencodings\cp1252.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1252.pycRs(R R tFalseR(((sencodings\cp1252.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1252.pycR s(R R RR (((sencodings\cp1252.pycRst StreamWritercBseZRS((R R (((sencodings\cp1252.pycRst StreamReadercBseZRS((R R (((sencodings\cp1252.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1252RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1252.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾‚ƒ„…†‡ˆ‰Š‹Œ￾Ž￾￾‘’“”•–—˜™š›œ￾žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1252.pycss  PK8)]z encodings/cp1253.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1253 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1253.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1253.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1253.pyctdecodes(t__name__t __module__RR (((sencodings\cp1253.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1253.pycRs(R R tFalseR(((sencodings\cp1253.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1253.pycR s(R R RR (((sencodings\cp1253.pycRst StreamWritercBseZRS((R R (((sencodings\cp1253.pycRst StreamReadercBseZRS((R R (((sencodings\cp1253.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1253RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1253.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾‚ƒ„…†‡￾‰￾‹￾￾￾￾￾‘’“”•–—￾™￾›￾￾￾￾ ΅Ά£¤¥¦§¨©￾«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ￾ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1253.pycss  PK8;v v encodings/cp1254.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1254 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1254.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1254.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1254.pyctdecodes(t__name__t __module__RR (((sencodings\cp1254.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1254.pycRs(R R tFalseR(((sencodings\cp1254.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1254.pycR s(R R RR (((sencodings\cp1254.pycRst StreamWritercBseZRS((R R (((sencodings\cp1254.pycRst StreamReadercBseZRS((R R (((sencodings\cp1254.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1254RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1254.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾‚ƒ„…†‡ˆ‰Š‹Œ￾￾￾￾‘’“”•–—˜™š›œ￾￾Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1254.pycss  PK8XM8 encodings/cp1255.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1255 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1255.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1255.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1255.pyctdecodes(t__name__t __module__RR (((sencodings\cp1255.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1255.pycRs(R R tFalseR(((sencodings\cp1255.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1255.pycR s(R R RR (((sencodings\cp1255.pycRst StreamWritercBseZRS((R R (((sencodings\cp1255.pycRst StreamReadercBseZRS((R R (((sencodings\cp1255.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1255RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1255.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾‚ƒ„…†‡ˆ‰￾‹￾￾￾￾￾‘’“”•–—˜™￾›￾￾￾￾ ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹ￾ֻּֽ־ֿ׀ׁׂ׃װױײ׳״￾￾￾￾￾￾￾אבגדהוזחטיךכלםמןנסעףפץצקרשת￾￾‎‏￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1255.pycss  PK8\?s s encodings/cp1256.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1256 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1256.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1256.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1256.pyctdecodes(t__name__t __module__RR (((sencodings\cp1256.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1256.pycRs(R R tFalseR(((sencodings\cp1256.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1256.pycR s(R R RR (((sencodings\cp1256.pycRst StreamWritercBseZRS((R R (((sencodings\cp1256.pycRst StreamReadercBseZRS((R R (((sencodings\cp1256.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1256RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1256.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1256.pycss  PK8&{ { encodings/cp1257.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1257 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1257.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1257.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1257.pyctdecodes(t__name__t __module__RR (((sencodings\cp1257.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1257.pycRs(R R tFalseR(((sencodings\cp1257.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1257.pycR s(R R RR (((sencodings\cp1257.pycRst StreamWritercBseZRS((R R (((sencodings\cp1257.pycRst StreamReadercBseZRS((R R (((sencodings\cp1257.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1257RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1257.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾‚￾„…†‡￾‰￾‹￾¨ˇ¸￾‘’“”•–—￾™￾›￾¯˛￾ ￾¢£¤￾¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1257.pycss  PK89xMy y encodings/cp1258.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sv Python Character Mapping Codec cp1258 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1258.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp1258.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp1258.pyctdecodes(t__name__t __module__RR (((sencodings\cp1258.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp1258.pycRs(R R tFalseR(((sencodings\cp1258.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp1258.pycR s(R R RR (((sencodings\cp1258.pycRst StreamWritercBseZRS((R R (((sencodings\cp1258.pycRst StreamReadercBseZRS((R R (((sencodings\cp1258.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp1258RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp1258.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾‚ƒ„…†‡ˆ‰￾‹Œ￾￾￾￾‘’“”•–—˜™￾›œ￾￾Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp1258.pycss  PK8Ũm m encodings/cp424.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec cp424 generated from 'MAPPINGS/VENDORS/MISC/CP424.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp424.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp424.pyctdecodes(t__name__t __module__RR (((sencodings\cp424.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp424.pycRs(R R tFalseR(((sencodings\cp424.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp424.pycR s(R R RR (((sencodings\cp424.pycRst StreamWritercBseZRS((R R (((sencodings\cp424.pycRst StreamReadercBseZRS((R R (((sencodings\cp424.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp424RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp424.pyct getregentry!s   uœ †—Ž …‡’€‚ƒ„ ˆ‰Š‹Œ‘“”•–˜™š›ž אבגדהוזחט¢.<(+|&יךכלםמןנס!$*);¬-/עףפץצקרש¦,%_>?￾ת￾￾ ￾￾￾‗`:#@'="￾abcdefghi«»￾￾￾±°jklmnopqr￾￾￾¸￾¤µ~stuvwxyz￾￾￾￾￾®^£¥·©§¶¼½¾[]¯¨´×{ABCDEFGHI­￾￾￾￾￾}JKLMNOPQR¹￾￾￾￾￾\÷STUVWXYZ²￾￾￾￾￾0123456789³￾￾￾￾Ÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp424.pycss  PK8f!!encodings/cp437.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdE<dTdG<dUdV<dWdI<dXdY<dZd[<d\d]<d^d_<d`dX<dadb<dcd`<dRdd<dbde<dfdg<dhdi<djdk<dldm<dndo<dpdq<drds<dtdu<dvdw<dxdy<dzd{<d|dZ<d}df<d~dc<dda<dd<dd\<dd<dd<dd<dd<dd+<dd-<dd3<dd<dd<dd/<dd<dd<dd<dd<dd<dd<dd<ddW<dd<dd<dd<dd<ddA<dd<dd<dd<dd<dd<ddC<dd<dd<dd<dd<ddO<dd<dd<dd<dd<dsd1<dd<dd#<dd<dd<dd!<dd)<ddQ<dd'<dd%<dd<dkdU<dd9<ddS<dd5<dd<dd7<dd<did<dd=<dwdT<dd;<dd<dmd<dd<dPd?<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d?dP<dddR<dFdE<dHdG<dJdI<dYdX<dedb<dXd`<ddi<dUdk<ddm<d1ds<dTdw<d[dZ<dgdf<d`dc<dbda<d]d\<d,d+<d.d-<d4d3<dd<d0d/<dIdW<dBdA<dDdC<dOd<dd<dPdO<dd<dd<dd<d2d1<dd<d$d#<dd<d d<d"d!<d*d)<dRdQ<d(d'<d&d%<dVdU<d:d9<dEdS<d6d5<d8d7<d7d<d>d=<dGdT<d<d;<dd<d@d?<dNdM<dd<dd<dd<d#d<dd<dd<d!d<d'd<dd<dd<dd<dQd<dd<dLdK<d=d<d;d<d)d<d%d<dd<dd<dSd<d9d<d_d^<d5d<dd<d+d<dodn<dd<d\d<dd<dd<dd<dqdp<dd<dd<d-d<dd<dZd|<dd<dAd<d/d<dydx<dwdv<dfd}<dd<dd<dd<dd<dad<dcd~<d3d<dd<dd<dsdr<dudt<d{dz<dWd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dCd<dd<dd<dd<didh<dkdj<dmdl<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp437.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8j O O encodings/cp500.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(ss Python Character Mapping Codec cp500 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP500.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp500.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp500.pyctdecodes(t__name__t __module__RR (((sencodings\cp500.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp500.pycRs(R R tFalseR(((sencodings\cp500.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp500.pycR s(R R RR (((sencodings\cp500.pycRst StreamWritercBseZRS((R R (((sencodings\cp500.pycRst StreamReadercBseZRS((R R (((sencodings\cp500.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp500RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp500.pyct getregentry!s   uœ †—Ž …‡’€‚ƒ„ ˆ‰Š‹Œ‘“”•–˜™š›ž  âäàáãåçñ[.<(+!&éêëèíîïìß]$*);^-/ÂÄÀÁÃÅÇѦ,%_>?øÉÊËÈÍÎÏÌ`:#@'="Øabcdefghi«»ðýþ±°jklmnopqrªºæ¸Æ¤µ~stuvwxyz¡¿ÐÝÞ®¢£¥·©§¶¼½¾¬|¯¨´×{ABCDEFGHI­ôöòóõ}JKLMNOPQR¹ûüùúÿ\÷STUVWXYZ²ÔÖÒÓÕ0123456789³ÛÜÙڟ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp500.pycss  PK8Ӊ""encodings/cp737.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadb<dcdd<dedf<dgdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<drd<dd<dd<dd<dd<dd<dd<dpd<dd<d~d<dd<dd<dtd<dd<dPd<d Z hd d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<dcdc<dddd<dede<dfdf<dgdg<dhdh<didi<djdj<dkdk<dldl<dmdm<dndn<dodo<dpdp<dqdq<drdr<dsds<dtdt<dudu<dvdv<dwdw<dxdx<dydy<dzdz<d{d{<d|d|<d}d}<d~d~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ddP<ddp<ddr<ddt<dd~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d<d"d!<d$d#<d&d%<d(d'<d*d)<d,d+<d.d-<d0d/<d2d1<d4d3<d6d5<d8d7<d:d9<d<d;<d>d=<dd<dd<dd<dd<dd<dd<d@d?<dBdA<dDdC<dFdE<dHdG<dJdI<dLdK<dNdM<dPdO<dRdQ<dTdS<dVdU<dXdW<dZdY<d\d[<d^d]<d`d_<dddc<dbda<dfde<dhdg<djdi<dldk<dndm<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dvdu<dd<dd<dd<dd<dd<dxdw<dd<dd<dd<dd<dd<dd<dd<dd<dd<d~d}<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dzdy<d|d{<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dpdo<drdq<dtds<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρσςτυφχψ░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀ωάέήϊίόύϋώΆΈΉΊΌΎΏ±≥≤ΪΫ÷≈°∙·√ⁿ²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp737.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8p!!encodings/cp775.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<ddO<dPdQ<dRd;<dSdG<dTdM<dUdV<dWdX<dXdY<dZd[<d\dZ<d]d^<d_d`<dad]<dbdc<d`d\<ddde<dfdg<dhdi<djdk<dldm<dndo<dpdq<drds<dtdu<dvdw<dxdy<dzd{<d|dd<d}da<d~d_<dd<dd<dd<dd<dd<dd<dd+<dd-<dd3<dd<dd<dd/<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ddA<ddK<ddI<dd<dd<dd<ddC<dd<dd<dd<dd<dd<dd<dd<dd<dd<dqd1<dd<dd<dd<dd<dd<dd<dd<dd<dd<dcd<did<dd<ddR<dsd<dYd<dd7<dd<dgdE<dd<dud<dyd<dmd<dkd<dd<dOd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<ddO<d<d;<dHdG<dNdM<dYdX<ddY<d[dZ<d\d`<d^d]<ddc<dZd\<dEdg<ddi<ddk<ddm<d1dq<dds<ddu<ddy<dedd<d]da<d`d_<dRd<d,d+<d.d-<d4d3<d0d/<dd<dd<dBdA<dLdK<dJdI<dDdC<dd<dd<dd<d2d1<dd<d;dR<dd<d8d7<d7d<dFdE<dd<dOd<dd<dqdp<dd<dd<dd<dsdr<dd<dd<d"d!<dwdv<dd<dudt<dd<d:d9<dd<dQdP<d(d'<d_d~<dd<dd<dd<dd<dd<dcdb<d d<dd<dd<dd<dd<dd<d6d5<d$d#<d&d%<d>d=<d@d?<dd<dd<dd<dKd<d3d<dAd<d*d)<dVdU<dGdS<dMdT<dd<dId<dd<dd<dXdW<dd<dd<d+d<dmdl<dd<dd<dd<dd<dd<dodn<dd<dd<d-d<dd<d{dz<d/d<ddd|<dd<dad}<dd<dydx<dd<dd<dd<dd<dCd<dd<dd<dd<dgdf<didh<dkdj<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ĆüéāäģåćłēŖŗīŹÄÅÉæÆōöĢ¢ŚśÖÜø£ØפĀĪóŻżź”¦©®¬½¼Ł«»░▒▓│┤ĄČĘĖ╣║╗╝ĮŠ┐└┴┬├─┼ŲŪ╚╔╩╦╠═╬Žąčęėįšųūž┘┌█▄▌▐▀ÓßŌŃõÕµńĶķĻļņĒŅ’­±“¾¶§÷„°∙·¹³²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp775.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8 encodings/cp850.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdG<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdZ<dcdd<dedb<dRdf<ddd`<dgdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dady<dzd{<d|d\<d}dg<d~de<dTdc<dYd<dd^<ddw<dds<ddu<dd<dd+<dd-<dd3<dd<dd<dd/<dd<dd<dd<dd<dd<dWd<dd<ddX<dd<dd<dd<dd<ddA<ddK<ddI<dd<dd<dd<ddC<d[d<dd<dd<dd<ddO<dd<dd<dd<dd<dtd1<dd<dd#<dd<dd<dd!<dd)<ddQ<dhd'<drd%<dfd<dldV<dd9<ddS<dvd5<d]d<dd7<dyd<djdE<d_d=<dxdU<d{d;<dpd<dnd<dd<dPd?<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d?dP<dfdR<dcdT<dHdG<ddW<ddY<dd[<dd]<d=d_<dyda<d[dZ<d`dd<dZdb<ddf<dad`<d'dh<dEdj<dVdl<ddn<ddp<d%dr<d1dt<d5dv<dUdx<ddy<d;d{<d]d\<dhdg<dbde<dddc<dSd<d_d^<dxdw<dtds<dvdu<dd<d,d+<d.d-<d4d3<dd<dd<d0d/<dd<dd<dd<dAd<dKd<dId<dXd<dYdX<dd<dd<dd<dd<dBdA<dLdK<dJdI<d!d<dd<dd<dDdC<dQd<d#d<dOd<dd<dPdO<dd<d3d<dd<dd<d2d1<dd<d$d#<dd<d d<d"d!<d*d)<dRdQ<d(d'<d&d%<dd<dWdV<d:d9<dTdS<d6d5<dd<d8d7<d7d<dFdE<d>d=<dGdU<d<d;<dd<d)d<dd<d@d?<dd<dNdM<d9d<d+d<dpdo<dd<d^d<dwd<dd<dd<drdq<dud<dsd<d-d<dd<d\d|<d/d<dgd}<dd<ded~<dd<d{dz<dd<dd<dd<dd<dCd<dd<djdi<dldk<dndm<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈıÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp850.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8g!!encodings/cp852.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadb<dcdd<dedf<dgdc<dhdi<dfdj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d~<dd<dd<ddk<dd<dd<dd<dd<dd<ddw<ddy<dd<dd+<dd<dd<dd<dd<dd/<dd<dd<dd<dd<dd<dXd<dd<dd<dd<dd<dd<dd<ddA<ddK<dd<dd<dd<dd<ddC<dd<dd<dd<dd<ddO<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd!<dd<ddQ<dd'<dvd<did<dd<dd<ddS<dd5<d^d<dd7<d~d<dnd<d`d<ddU<dd<dd<dd<dd<dPd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<dcdc<dddd<dede<ddP<ddX<dd^<dd`<djdf<dddc<ddi<ddn<ddv<dd~<dldk<dxdw<dzdy<d,d+<dd<d0d/<dd<dAd<dKd<dd<dd<dBdA<dLdK<dd<dDdC<dQd<dOd<dPdO<dd<dd<dd<dd<d"d!<dRdQ<d(d'<dTdS<d6d5<d8d7<d7d<dVdU<dd<dd<dd<dd<dXdW<dZdY<d.d-<dd<dcdg<dNdM<dd<dd<dd<dd<d`d_<dbda<d|d{<dd<d2d1<d4d3<d:d9<d<d;<dJdI<d d<dd<dd<dd<dd<d$d#<d&d%<dd<dd<dd<dd<d>d=<d@d?<d~d}<didh<dd<dd<dd<d'd<dFdE<dHdG<dd<dd<d!d<dd<d*d)<dfde<dd<dd<d\d[<d^d]<dSd<d5d<dUd<dd<dd<d+d<dtds<dd<dd<dd<dd<dd<dvdu<dyd<dwd<dd<dd<dd<d/d<dkd<dd<dd<dd<dd<dd<dd<dd<dd<dCd<dd<dndm<dpdo<drdq<ddiiZii[iiiiiidiieiiAiiii iiiiiiiiiiiiii}ii~iiiiiiiizii i_iiiii%ii%ii%ii%ii$%iiiiiiii^iic%iiQ%iiW%i]%ii{ii|ii%ii%ii4%i,%i%ii%i<%iiiiiZ%iiT%ii%iif%ii`%iiP%iil%iiiiiiiiiiiiGiiii%ii %ii%ii%ibiinii%iiiCiiDiHii`iiaiTiiUiipiiiciiiiiiiiiiiiiiqiiXiYi%iiu  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäůćçłëŐőîŹÄĆÉĹĺôöĽľŚśÖÜŤťŁ×čáíóúĄąŽžĘ꬟Ⱥ«»░▒▓│┤ÁÂĚŞ╣║╗╝Żż┐└┴┬├─┼Ăă╚╔╩╦╠═╬¤đĐĎËďŇÍÎě┘┌█▄ŢŮ▀ÓßÔŃńňŠšŔÚŕŰýÝţ´­˝˛ˇ˘§÷¸°¨˙űŘř■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp852.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8""encodings/cp855.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadb<dcdd<dedf<dgdh<didj<dfdk<dldm<dndo<dpdq<drds<dtdu<dvdw<dxdy<dzd{<d|d}<d~d<dd<dd<ddl<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dXd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<djd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d^d<dd<dPd<d Z hd d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<dcdc<dddd<dede<dfdf<dgdg<dhdh<didi<djdj<dkdk<dldl<dmdm<dndn<dodo<dpdp<dqdq<drdr<dsds<dtdt<dudu<dvdv<dwdw<dxdx<dydy<dzdz<d{d{<d|d|<d}d}<d~d~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ddP<ddX<dd^<dkdf<ddj<dmdl<dd<dd<dd<dd<d"d!<d&d%<d*d)<d.d-<d2d1<d6d5<d:d9<d>d=<dBdA<dFdE<dRdQ<dVdU<dd<djdi<d^d]<dbda<dd<dd<dd~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dfde<d{dz<dZdY<dd<dd<dd<dNdM<dd<dd<dd<dJdI<dd<dPdO<dTdS<dd<dhdg<d\d[<d`d_<dd<dd<d}d|<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dddc<dydx<dXdW<dd<dd<dd<dLdK<dd<dd<dd<dHdG<dd<dd<dd<dd<dd<d d<d$d#<d(d'<d,d+<d0d/<d4d3<d8d7<d<d;<d@d?<dDdC<dd<dd<dudt<dd<dd<dd<dd<dd<dwdv<dd<dd<dd<dd<dd<dd<dld<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dodn<dqdp<dsdr<ddiiii?ii%ii %ii%ii%iiiiOii%ii/ii@ii iiAii!iiBii"iiCii#ii6iiii2iiiiLii,ii!iiiKii+ii7iiiiHii(iiMii-iiIii)iiGii'iii%iiu  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ђЂѓЃёЁєЄѕЅіІїЇјЈљЉњЊћЋќЌўЎџЏюЮъЪаАбБцЦдДеЕфФгГ«»░▒▓│┤хХиИ╣║╗╝йЙ┐└┴┬├─┼кК╚╔╩╦╠═╬¤лЛмМнНоОп┘┌█▄Пя▀ЯрРсСтТуУжЖвВьЬ№­ыЫзЗшШэЭщЩчЧ§■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp855.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8KV encodings/cp856.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec cp856 generated from 'MAPPINGS/VENDORS/MISC/CP856.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp856.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp856.pyctdecodes(t__name__t __module__RR (((sencodings\cp856.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp856.pycRs(R R tFalseR(((sencodings\cp856.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp856.pycR s(R R RR (((sencodings\cp856.pycRst StreamWritercBseZRS((R R (((sencodings\cp856.pycRst StreamReadercBseZRS((R R (((sencodings\cp856.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp856RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp856.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~אבגדהוזחטיךכלםמןנסעףפץצקרשת￾£￾×￾￾￾￾￾￾￾￾￾￾®¬½¼￾«»░▒▓│┤￾￾￾©╣║╗╝¢¥┐└┴┬├─┼￾￾╚╔╩╦╠═╬¤￾￾￾￾￾￾￾￾￾┘┌█▄¦￾▀￾￾￾￾￾￾µ￾￾￾￾￾￾￾¯´­±‗¾¶§÷¸°¨·¹³²■ ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp856.pycss  PK8댳 encodings/cp857.pyc 5#Dc@s,dZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdG<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdc<ddde<dfdb<dRdg<ded`<dhdi<djdk<dldm<dndo<dpdq<drds<dtdu<dvdw<dxdy<dadz<d{d|<d}d~<ddh<ddf<dTdd<dYd<dd^<ddx<ddt<ddv<dd<dd+<dd-<dd3<dd<dd<dd/<dd<dd<dd<dd<dd<dWd<d~d<dcdX<dd<dd<dd<e d<ddA<dd<ddI<dd<dd<dd<ddC<d[d<dd<dd<dd<ddO<dd<dd<dd<dd<dud1<e d<dd#<dd<dd<dd!<ddQ<did'<dsd%<dgd<dmdV<e d9<ddS<dwd5<d]d<dd7<dzd<dkdE<d_d=<dydU<d|d;<dqd<dod<dd<dPd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<ddP<dgdR<dddT<dHdG<ddW<ddY<dd[<dd]<d=d_<dzda<dXdc<d`de<dcdb<ddg<dad`<d'di<dEdk<dVdm<ddo<ddq<d%ds<d1du<d5dw<dUdy<ddz<d;d|<dd~<didh<dbdf<dedd<dSd<d_d^<dydx<dudt<dwdv<dd<d,d+<d.d-<d4d3<dd<dd<d0d/<dd<dd<dd<dAd<dd<dId<dYdX<dd<dd<dd<dd<dBdA<d#d<dJdI<d!d<dd<dd<dDdC<dOd<dd<dPdO<dd<d3d<dd<dd<d2d1<dd<d$d#<dd<d d<d"d!<d2d2<dRdQ<d(d'<d&d%<dWdV<d:d9<dTdS<d6d5<dd<d8d7<d7d<dFdE<d>d=<dGdU<d<d;<dd<dQd<d[dZ<d]d\<d@d?<d*d)<dLdK<dNdM<d+d<dqdp<dd<d^d<dxd<dd<dd<dsdr<dvd<dtd<d-d<dd<d~d}<d/d<dhd<dd<dfd<dd<d|d{<dd<dd<dd<dd<dCd<dd<dkdj<dmdl<dodn<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäàåçêëèïîıÄÅÉæÆôöòûùİÖÜø£ØŞşáíóúñÑĞ𿮬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ºªÊËÈ￾ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµ￾×ÚÛÙìÿ¯´­±￾¾¶§÷¸°¨·¹³²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~ii(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdatetNoneR R(((sencodings\cp857.pycss                                                                                                                                                                                                                                                                                                                                                                                              PK8?!!encodings/cp860.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdE<dTdG<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadY<dbdc<ddda<dRde<dcdf<dgdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d[<d~dg<ddd<ddb<dd<dd]<dd1<dd<dd-<dd+<dd<dd<dd<dd<dd3<dd/<dd!<dd<dd?<dd%<dd<dd<dd<ddW<dd_<ddM<dd'<ddA<dd<dd<dd<ddI<dd;<dd<ddC<dd<dd<dd<dd<ddO<dd<dd<dd<dd<dtd<dd<dd#<dd<dd<dd<dd)<ddQ<dd<dd<dd<dldU<dd9<ddS<dd5<dd7<dd<dd<djd<dd=<dxdT<dd<dd<dnd<dd<dPd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<ddP<dedR<dFdE<dHdG<dZdY<dfdc<dYda<ddj<dUdl<ddn<ddt<dTdx<d\d[<dhdg<dadd<dcdb<d^d]<d2d1<dd<d.d-<d,d+<dd<d4d3<d0d/<d"d!<d@d?<d&d%<dXdW<d`d_<dNdM<d(d'<dBdA<dJdI<d<d;<dDdC<dOd<dd<dPdO<dd<dd<dd<d$d#<dd<d d<d*d)<dRdQ<dVdU<d:d9<dEdS<d6d5<d8d7<dd<d>d=<dGdT<dd<dd<dd<dd<d#d<dd<dd<dd<dd<dd<dd<dd<dQd<dd<dLdK<d=d<dd<d)d<dd<dd<dd<dSd<d9d<d5d<d7d<dd<dpdo<d;d<d]d<d1d<dId<d+d<drdq<d-d<dd<dd<d%d<d[d}<dAd<dd<d/d<dzdy<dxdw<dgd~<d'd<dMd<d3d<dd<dbd<ddd<dd<dd<d?d<dtds<dvdu<d|d{<dWd<d_d<dd<dd<dd<d!d<dd<dd<dd<dd<dCd<dd<dd<dd<djdi<dldk<dndm<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâãàÁçêÊèÍÔìÃÂÉÀÈôõòÚùÌÕÜ¢£Ù₧ÓáíóúñѪº¿Ò¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp860.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8fA!!encodings/cp861.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdG<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdc<ddde<dfdb<dRdg<dedh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d~<dd<ddi<ddf<ddd<dd<dd^<dd<ddV<dd<dd<dd+<dd-<dd3<dd<dd<dd/<dd<dd<dd<ddX<dd<dd<dd%<dd<dd<ddZ<dd<dd<ddA<dd<ddI<dd<dd\<dd<ddC<dd=<dd)<dd<dd<ddO<dd<dd<dd<dd<dvd1<dd<dd#<dd<dd<dd!<dd<ddQ<dd<dd<dd'<dnd<dd<ddS<dd5<dd<dd7<dd<dldE<dd<dzdU<dd;<dd<dpd?<dd9<dPd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<ddP<dgdR<dHdG<dhde<dcdb<dEdl<ddn<d?dp<d1dv<dUdz<djdi<dbdf<dedd<d_d^<dWdV<d,d+<d.d-<d4d3<dd<d0d/<dYdX<d&d%<d[dZ<dBdA<dJdI<d]d\<dDdC<d>d=<d*d)<dOd<dd<dPdO<dd<dd<dd<d2d1<dd<d$d#<dd<d d<d"d!<dRdQ<d(d'<dTdS<d6d5<d8d7<d7d<dFdE<dGdU<d<d;<dd<d@d?<d:d9<dNdM<dd<dd<dd<d#d<dd<dd<d!d<dd<dd<dd<dd<dQd<dd<dLdK<dd<d;d<dd<dd<dd<d'd<dSd<dd<dad`<d5d<dd<d+d<drdq<d\d<d^d<dd<dd<dd<dtds<dd<dVd<d-d<dXd<dd<dd<dAd<d/d<d|d{<dzdy<did<dd<dZd<dd<dd<ddd<dfd<d3d<dd<dd<dvdu<dxdw<d~d}<dd<dd<dd<dd<d%d<dd<dId<dd<dd<dd<dCd<dd<d=d<d)d<dldk<dndm<dpdo<d9d?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäàåçêëèÐðÞÄÅÉæÆôöþûÝýÖÜø£Ø₧ƒáíóúÁÍÓÚ¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp861.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8~@]C"C"encodings/cp862.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdE<dTdG<dUdV<dWdI<dXdY<dZd[<d\d]<d^d_<d`dX<dadb<dcd`<dRdd<dbde<dfdg<dhdi<djdk<dldm<dndo<dpdq<drds<dtdu<dvdw<dxdy<dzd{<d|dZ<d}df<d~dc<dda<dd<dd\<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ddW<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ddO<dd<dd<dd<dd<dsd<dd<dd<dd<dd<dd<dd<ddQ<dd<dd<dd<dkdU<dd<ddS<dd<dd<dd<dd<did<dd<dwdT<dd<dd<dmd<dd<dPd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<dcdc<dddd<dede<dfdf<dgdg<dhdh<didi<djdj<dkdk<dldl<dmdm<dndn<dodo<dpdp<dqdq<drdr<dsds<dtdt<dudu<ddP<dddR<dFdE<dHdG<dJdI<dYdX<dedb<dXd`<ddi<dUdk<ddm<dds<dTdw<d[dZ<dgdf<d`dc<dbda<d]d\<dIdW<dOd<dPdO<dRdQ<dVdU<dEdS<dd<dGdT<dNdM<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dQd<dd<dd<dd<dd<dd<dd<dd<dd<d d<d"d!<d$d#<d&d%<d(d'<d*d)<d,d+<d.d-<d0d/<d2d1<d4d3<d6d5<d8d7<d:d9<d<d;<d>d=<d@d?<dBdA<dDdC<dd<dLdK<dd<dd<dd<dd<dd<dd<dSd<dd<d_d^<dd<dd<dd<dodn<dd<d\d<dd<dd<dd<dqdp<dd<dd<dd<dd<dZd|<dd<dd<dd<dydx<dwdv<dfd}<dd<dd<dd<dd<dad<dcd~<dd<dd<dd<dsdr<dudt<d{dz<dWd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<didh<dkdj<dmdl<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~אבגדהוזחטיךכלםמןנסעףפץצקרשת¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp862.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8[椼!!encodings/cp863.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdE<dTdG<dUd?<dVdW<dXdO<dYd-<dZdU<d[d\<d]d^<d_d`<dad]<dbdc<d`dd<dedY<dfdg<dhdi<djdk<dldX<dmdQ<dndo<dpd<dqdr<dsdV<dtdu<dvdw<dxde<dyda<dzd_<d{db<d|d}<d~d+<dd<dd<dd<dd<dd<dd<dd<dd1<dd/<dd3<dd7<dd<dd<ddZ<dd9<dd<dd<dd<dd<ddA<dd<dd<dd<dd<ddI<dd<ddK<ddC<dd<dd<dd<dd<dd<dd<dd<dd<dd<dod<dd<dd#<dd<dd<dd!<dd<dd<dd'<dd%<dd<did<dd<ddS<dd5<dd<dd<dd<dgd<dd=<drdT<dd;<dd<dkd<dd<dPd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<ddP<dFdE<dHdG<d@d?<dPdO<d.d-<d?dU<ddd`<d^d]<d-dY<ddg<ddi<ddk<dOdX<dRdQ<ddo<dd<dTdr<dWdV<dYde<d]da<d`d_<dcdb<d,d+<dd<dd<d2d1<d0d/<d4d3<d8d7<dUdZ<d:d9<dBdA<dJdI<dLdK<dDdC<dd<dd<dd<dd<d$d#<dd<d d<d"d!<d(d'<d&d%<dEdS<d6d5<dd<d>d=<dGdT<d<d;<dd<dNdM<dd<dd<dd<d#d<dd<dd<d!d<d'd<dd<dd<dd<dd<d*d)<dd<d=d<d;d<dd<d%d<dd<dd<dSd<dd<d\d[<d5d<dd<dd<dXdl<dd<d}d|<d+d~<dId<dd<dQdm<dd<dd<dd<dd<dwdv<dd<dd<d/d<dVds<drdq<dedx<dAd<dd<d1d<dbd{<d_dz<dady<dd<dd<dd<dodn<ddp<dudt<dd<dd<d7d<d9d<dd<d3d<dd<dd<dZd<dd<dCd<dKd<dd<dd<dgdf<didh<dkdj<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâÂà¶çêëèïî‗À§ÉÈÊôËÏûù¤ÔÜ¢£ÙÛƒ¦´óú¨¸³¯Î⌐¬½¼¾«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp863.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8/"/"encodings/cp864.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<e dG<e dH<dIdJ<dKdL<e dM<dNdO<dPdQ<dRdS<e dT<e dU<dVdW<dXdY<dZd[<d\d?<d]d^<d_dN<d`da<dbdc<ddd<ded7<dfdg<dhdi<djdk<dldm<dndo<dpd<dqdr<dsdt<dudv<dwdA<dxd;<dyd9<dzd{<d|d}<dQd~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dTd<d^d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<e d<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<dcdc<dddd<dede<dfdf<dgdg<dhdh<didi<djdj<dkdk<dldl<dmdm<dndn<dodo<dpdp<dqdq<drdr<dsds<dtdt<dudu<dvdv<dwdw<dxdx<d~dQ<dydy<dzdz<ddT<d@d?<dd^<dOdN<dd<d8d7<dd<dBdA<d<d;<d:d9<dd<dd<d2d1<d6d5<d^d]<dAdw<d}d|<dd<dd<ddd<d7de<dgdf<didh<dkdj<dmdl<dodn<ddp<drdq<dtds<dd<dd<dd<d4d3<d>d=<dd<dd<d,d+<d*d)<d.d-<d0d/<d&d%<d"d!<d$d#<d(d'<d d<dd<dd<dd<dd<dd<dQdP<dd<dSdR<dd<dd<dd<dWdV<dYdX<dd<dd<d[dZ<dd<d?d\<dd<dNd_<dd<dad`<dd<dcdb<dd<dd<dd<dd<dd<d;dx<dd<d9dy<dd<d{dz<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dvdu<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dDdC<dFdE<dJdI<dLdK?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~°·∙√▒─│┼┤┬├┴┐┌└┘β∞φ±½¼≈«»ﻷﻸ￾￾ﻻﻼ￾ ­ﺂ£¤ﺄ￾￾ﺎﺏﺕﺙ،ﺝﺡﺥ٠١٢٣٤٥٦٧٨٩ﻑ؛ﺱﺵﺹ؟¢ﺀﺁﺃﺅﻊﺋﺍﺑﺓﺗﺛﺟﺣﺧﺩﺫﺭﺯﺳﺷﺻﺿﻁﻅﻋﻏ¦¬÷×ﻉـﻓﻗﻛﻟﻣﻧﻫﻭﻯﻳﺽﻌﻎﻍﻡﹽّﻥﻩﻬﻰﻲﻐﻕﻵﻶﻝﻙﻱ■￾iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~iiii(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdatetNoneR R(((sencodings\cp864.pycss                                                                                                                                                                                                                                                                                                                                                                                          PK8(Y¼!!encodings/cp865.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdG<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdZ<dcdd<dedb<dRdf<dddg<dWdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d\<d~d<dde<ddc<dd<dd^<dd<dd<dd<dd<dd+<dd-<dd3<dd<dd<dd/<dd<dd<dd<dd<dd<dd<dd<ddX<dd<dd<dd<dd<ddA<dd<ddI<dd<dd<dd<ddC<dd<dd<dd<dd<ddO<dd<dd<dd<dd<dtd1<dd<dd#<dd<dd<dd!<dd)<ddQ<dd'<dd%<dd<dldV<dd9<ddS<dd5<dd<dd7<dd<djdE<dd=<dxdU<dd;<dd<dnd<dd<dPd?<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d?dP<dfdR<dHdG<dhdW<d[dZ<dgdd<dZdb<dEdj<dVdl<ddn<d1dt<dUdx<d]d\<dbde<dddc<d_d^<d,d+<d.d-<d4d3<dd<d0d/<dYdX<dBdA<dJdI<dDdC<dOd<dd<dPdO<dd<dd<dd<d2d1<dd<d$d#<dd<d d<d"d!<d*d)<dRdQ<d(d'<d&d%<dWdV<d:d9<dTdS<d6d5<d8d7<d7d<dFdE<d>d=<dGdU<d<d;<dd<d@d?<dNdM<dd<dd<dd<d#d<dd<dd<d!d<d'd<dd<dd<dd<dQd<dd<dLdK<d=d<d;d<d)d<d%d<dd<dd<dSd<d9d<dad`<d5d<dd<d+d<dpdo<dd<d^d<dd<dd<dd<drdq<dd<dd<d-d<dd<d\d}<dd<dAd<d/d<dzdy<dxdw<dd~<dd<dd<dd<dd<dcd<ded<d3d<dd<dd<dtds<dvdu<d|d{<dXd<dd<dd<dd<dd<dd<dId<dd<dd<dd<dCd<dd<dd<dd<djdi<dldk<dndm<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø₧ƒáíóúñѪº¿⌐¬½¼¡«¤░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp865.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8n""encodings/cp866.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadb<dcdd<dedf<dgdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dpd<dd<d~d<dd<dd<dXd<dd <dPd <d Z hd d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<dcdc<dddd<dede<dfdf<dgdg<dhdh<didi<djdj<dkdk<dldl<dmdm<dndn<dodo<dpdp<dqdq<drdr<dsds<dtdt<dudu<dvdv<dwdw<dxdx<dydy<dzdz<d{d{<d|d|<d}d}<d~d~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d dP<ddX<ddp<dd~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d<d"d!<d$d#<d&d%<d(d'<d*d)<d,d+<d.d-<d0d/<d2d1<d4d3<d6d5<d8d7<d:d9<d<d;<d>d=<d@d?<dBdA<dDdC<dFdE<dHdG<dJdI<dLdK<dNdM<dPdO<dRdQ<dTdS<dVdU<dXdW<dZdY<d\d[<d^d]<d`d_<dbda<dddc<dfde<dhdg<djdi<dldk<dndm<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dvdu<dd<dd<dd<dd<dd<dxdw<dd<dd<dd<dd<dd<dd<dd<dd<dd<d~d}<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dzdy<d|d{<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dpdo<drdq<dtds<d dii?ii%ii%ii%ii%ii$%iia%iib%iiV%iiU%iic%iiQ%iiW%ii]%ii\%ii[%ii%ii%ii4%ii,%ii%ii%ii<%ii^%ii_%iiZ%iiT%iii%iif%ii`%iiP%iil%iig%iih%iid%iie%iiY%iiX%iiR%iiS%iik%iij%ii%ii %ii%ii%ii%ii%ii%ii@iiAiiBiiCiiDiiEiiFiiGiiHiiIiiJiiKiiLiiMiiNiiOiiiiQiiiiTiiiiWiiii^iii"iii"ii!iii%iiu  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№¤■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\cp866.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8rTad!!encodings/cp869.pyc 5#Dc@s dZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i he d<e d<e d<e d<e d<e d<dd<e d<dd<dd<dd<dd<d d!<d"d#<d$d%<d&d'<d(d)<d*d+<d,d-<e d.<e d/<d0d1<d2d3<d4d5<d6d7<d8d9<d:d;<d<d=<d>d?<d@dA<dBdC<dDdE<dFdG<dHdI<dJdK<dLd><dMdN<dOdP<dQd<dRdS<dTdU<dVd4<dWdX<dYdZ<d[d<d\d]<dZd^<d_d`<dadb<dcdd<ded8<dfd:<dgdh<didj<dkdl<dmd<dndo<dpdq<drds<dtd_<dudv<dwdY<dxdy<dzd{<d|d}<d~d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d]d<ddd<dd<dd<dd<dSd<dd<dd<dbd<dUd<dd<dd<dd<dd<dd<dGd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dVdV<dWdW<dXdX<dYdY<dZdZ<d[d[<d\d\<d]d]<d^d^<d_d_<d`d`<dada<dbdb<dcdc<dddd<dede<dfdf<dgdg<dhdh<didi<djdj<dkdk<dldl<dmdm<dndn<dodo<dpdp<dqdq<drdr<dsds<dtdt<dudu<dvdv<ddG<d?d><dd<ddS<ddU<d5d4<d^dZ<dd<dd]<ddb<ddd<d9d8<d;d:<dd<d`d_<dZdY<dd<dd<dd<d#d"<d'd&<d)d(<d-d,<d1d0<d7d6<dIdH<dNdM<dPdO<ddQ<dSdR<dUdT<d4dV<dXdW<dd[<d]d\<djdi<dldk<ddm<dodn<dYdw<dydx<dd<dd<dd<dd<dd<dd<dd<dd<dd<d+d*<d3d2<d=d<<dAd@<dCdB<dEdD<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dGdF<dd<dKdJ<d>dL<dd<d%d$<dd<d!d <dd<d:df<dd<d{dz<d}d|<dd<dd<dhdg<dd<dd~<dd<dd<dsdr<dd<d_dt<dd<dvdu<dd<dqdp<dd<dd<dd<dd<dd<dd<dbda<dddc<d8de<dd?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~￾￾￾￾￾￾Ά￾·¬¦‘’Έ―ΉΊΪΌ￾￾ΎΫ©Ώ²³ά£έήίϊΐόύΑΒΓΔΕΖΗ½ΘΙ«»░▒▓│┤ΚΛΜΝ╣║╗╝ΞΟ┐└┴┬├─┼ΠΡ╚╔╩╦╠═╬ΣΤΥΦΧΨΩαβγ┘┌█▄δε▀ζηθικλμνξοπρσςτ΄­±υφχ§ψ΅°¨ωϋΰώ■ iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdatetNoneR R(((sencodings\cp869.pycss                                                                                                                                                                                                                                                                                                                                                                                         PK8& encodings/cp874.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(st Python Character Mapping Codec cp874 generated from 'MAPPINGS/VENDORS/MICSFT/WINDOWS/CP874.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp874.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp874.pyctdecodes(t__name__t __module__RR (((sencodings\cp874.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp874.pycRs(R R tFalseR(((sencodings\cp874.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp874.pycR s(R R RR (((sencodings\cp874.pycRst StreamWritercBseZRS((R R (((sencodings\cp874.pycRst StreamReadercBseZRS((R R (((sencodings\cp874.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp874RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp874.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€￾￾￾￾…￾￾￾￾￾￾￾￾￾￾￾‘’“”•–—￾￾￾￾￾￾￾￾ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู￾￾￾￾฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛￾￾￾￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp874.pycss  PK8EL L encodings/cp875.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(ss Python Character Mapping Codec cp875 generated from 'MAPPINGS/VENDORS/MICSFT/EBCDIC/CP875.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\cp875.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\cp875.pyctdecodes(t__name__t __module__RR (((sencodings\cp875.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\cp875.pycRs(R R tFalseR(((sencodings\cp875.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\cp875.pycR s(R R RR (((sencodings\cp875.pycRst StreamWritercBseZRS((R R (((sencodings\cp875.pycRst StreamReadercBseZRS((R R (((sencodings\cp875.pycRscCs@tidddtidtidtdtdtdtS( Ntnametcp875RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\cp875.pyct getregentry!s   u}œ †—Ž …‡’€‚ƒ„ ˆ‰Š‹Œ‘“”•–˜™š›ž ΑΒΓΔΕΖΗΘΙ[.<(+!&ΚΛΜΝΞΟΠΡΣ]$*);^-/ΤΥΦΧΨΩΪΫ|,%_>?¨ΆΈΉ ΊΌΎΏ`:#@'="΅abcdefghiαβγδεζ°jklmnopqrηθικλμ´~stuvwxyzνξοπρσ£άέήϊίόύϋώςτυφχψ{ABCDEFGHI­ωΐΰ‘―}JKLMNOPQR±½·’¦\STUVWXYZ²§«¬0123456789³©»Ÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\cp875.pycss  PK8sffencodings/cp932.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtcp932tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\cp932.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\cp932.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\cp932.pycRst StreamReadercBseZeZRS((RRR(((sencodings\cp932.pycR st StreamWritercBseZeZRS((RRR(((sencodings\cp932.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\cp932.pyct getregentrys   (t _codecs_jpRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\cp932.pycss   ""PK8WDԙffencodings/cp949.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtcp949tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\cp949.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\cp949.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\cp949.pycRst StreamReadercBseZeZRS((RRR(((sencodings\cp949.pycR st StreamWritercBseZeZRS((RRR(((sencodings\cp949.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\cp949.pyct getregentrys   (t _codecs_krRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\cp949.pycss   ""PK8tBFffencodings/cp950.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtcp950tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\cp950.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\cp950.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\cp950.pycRst StreamReadercBseZeZRS((RRR(((sencodings\cp950.pycR st StreamWritercBseZeZRS((RRR(((sencodings\cp950.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\cp950.pyct getregentrys   (t _codecs_twRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\cp950.pycss   ""PK8rencodings/euc_jis_2004.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt euc_jis_2004tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\euc_jis_2004.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\euc_jis_2004.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\euc_jis_2004.pycRst StreamReadercBseZeZRS((RRR(((sencodings\euc_jis_2004.pycR st StreamWritercBseZeZRS((RRR(((sencodings\euc_jis_2004.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\euc_jis_2004.pyct getregentrys   (t _codecs_jpRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\euc_jis_2004.pycss   ""PK8uencodings/euc_jisx0213.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt euc_jisx0213tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\euc_jisx0213.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\euc_jisx0213.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\euc_jisx0213.pycRst StreamReadercBseZeZRS((RRR(((sencodings\euc_jisx0213.pycR st StreamWritercBseZeZRS((RRR(((sencodings\euc_jisx0213.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\euc_jisx0213.pyct getregentrys   (t _codecs_jpRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\euc_jisx0213.pycss   ""PK8(knnencodings/euc_jp.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNteuc_jptCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\euc_jp.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\euc_jp.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\euc_jp.pycRst StreamReadercBseZeZRS((RRR(((sencodings\euc_jp.pycR st StreamWritercBseZeZRS((RRR(((sencodings\euc_jp.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\euc_jp.pyct getregentrys   (t _codecs_jpRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\euc_jp.pycss   ""PK8곰nnencodings/euc_kr.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNteuc_krtCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\euc_kr.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\euc_kr.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\euc_kr.pycRst StreamReadercBseZeZRS((RRR(((sencodings\euc_kr.pycR st StreamWritercBseZeZRS((RRR(((sencodings\euc_kr.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\euc_kr.pyct getregentrys   (t _codecs_krRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\euc_kr.pycss   ""PK8Svvencodings/gb18030.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtgb18030tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\gb18030.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\gb18030.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\gb18030.pycRst StreamReadercBseZeZRS((RRR(((sencodings\gb18030.pycR st StreamWritercBseZeZRS((RRR(((sencodings\gb18030.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\gb18030.pyct getregentrys   (t _codecs_cnRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\gb18030.pycss   ""PK83J#nnencodings/gb2312.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtgb2312tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\gb2312.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\gb2312.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\gb2312.pycRst StreamReadercBseZeZRS((RRR(((sencodings\gb2312.pycR st StreamWritercBseZeZRS((RRR(((sencodings\gb2312.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\gb2312.pyct getregentrys   (t _codecs_cnRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\gb2312.pycss   ""PK8xs   ""PK8$S encodings/hex_codec.pyc 5#Dc@sdZddkZddkZddZddZdeifdYZdeifd YZd eifd YZd eeifd YZdeei fdYZ dZ dS(s Python 'hex_codec' Codec - 2-digit hex content transfer encoding Unlike most of the other codecs which target Unicode, this codec will return Python string objects for both encode and decode. Written by Marc-Andre Lemburg (mal@lemburg.com). iNtstrictcCs3|djptti|}|t|fS(s Encodes the object input and returns a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(tAssertionErrortbinasciitb2a_hextlen(tinputterrorstoutput((sencodings\hex_codec.pyct hex_encode s cCs3|djptti|}|t|fS(s Decodes the object input and returns a tuple (output object, length consumed). input must be an object which provides the bf_getreadbuf buffer slot. Python strings, buffer objects and memory mapped files are examples of objects providing this slot. errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(RRta2b_hexR(RRR((sencodings\hex_codec.pyct hex_decodestCodeccBs eZddZddZRS(RcCs t||S(N(R(tselfRR((sencodings\hex_codec.pyctencode/scCs t||S(N(R (R RR((sencodings\hex_codec.pyctdecode1s(t__name__t __module__R R(((sencodings\hex_codec.pycR -s tIncrementalEncodercBseZedZRS(cCs$|idjptti|S(NR(RRRR(R Rtfinal((sencodings\hex_codec.pycR 5s(RRtFalseR (((sencodings\hex_codec.pycR4stIncrementalDecodercBseZedZRS(cCs$|idjptti|S(NR(RRRR (R RR((sencodings\hex_codec.pycR:s(RRRR(((sencodings\hex_codec.pycR9st StreamWritercBseZRS((RR(((sencodings\hex_codec.pycR>st StreamReadercBseZRS((RR(((sencodings\hex_codec.pycRAscCs4tidddtdtdtdtdtdtS( NtnamethexR Rtincrementalencodertincrementaldecodert streamwritert streamreader(tcodecst CodecInfoRR RRRR(((sencodings\hex_codec.pyct getregentryFs ( t__doc__RRRR R RRRRR(((sencodings\hex_codec.pycss  PK8>҇encodings/hp_roman8.pyc 5#Dc@s*dZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<dd#<d$d%<d&d'<d(d)<d*d+<d+d,<d-d.<d/d0<d,d1<d2d<d3d4<d5d6<d7d8<dd9<d:d;<dd<<dd=<dd><dd?<d@dA<dd:<dBd<dCdD<dEd<dFdG<dHdI<dJdK<dLdM<dNd2<dOd<dPdQ<dRd<dSd<dTdU<dVdW<dXd<dYd<dKdZ<d[d5<d\d]<dMd^<d_d`<dadb<dcdd<dedf<dId\<dgd&<dddh<did(<dQdi<djd-<dkdl<d`dk<dDdO<dGdH<dmdB<dZdm<dndT<dWd_<dUde<d^d3<d]dP<dbdJ<dodC<dpdV<dqdg<dhda<drd[<dsdj<dldn<dtd7<d8dR<d4dL<d6dE<dAdo<dudX<d>dv<d?dc<d"dS<d<dN<d#dF<dwdY<d=d/<d.dt<dds<ei e ZdS(xs Python Character Mapping Codec generated from 'hp_roman8.txt' with gencodec.py. Based on data from ftp://dkuug.dk/i18n/charmaps/HP-ROMAN8 (Keld Simonsen) Original source: LaserJet IIP Printer User's Manual HP part no 33471-90901, Hewlet-Packard, June 1989. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodet encoding_map(tselftinputterrors((sencodings\hp_roman8.pyctencodescCsti||tS(N(Rtcharmap_decodet decoding_map(RRR((sencodings\hp_roman8.pyctdecodes(t__name__t __module__RR (((sencodings\hp_roman8.pycRs tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\hp_roman8.pycRs(R R tFalseR(((sencodings\hp_roman8.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\hp_roman8.pycR s(R R RR (((sencodings\hp_roman8.pycRst StreamWritercBseZRS((R R (((sencodings\hp_roman8.pycRst StreamReadercBseZRS((R R (((sencodings\hp_roman8.pycR!scCs@tidddtidtidtdtdtdtS( Ntnames hp-roman8RR tincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRR RRRR(((sencodings\hp_roman8.pyct getregentry&s   iiiiiiiiiiiiiiiiiiiiiiiiiiiii iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii`iaixiii ii%(t__doc__RRRRRRRtmake_identity_dicttrangeR tupdatetNonetmake_encoding_mapR(((sencodings\hp_roman8.pycss                                                                                                  PK8M)NNencodings/hz.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNthztCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\hz.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\hz.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\hz.pycRst StreamReadercBseZeZRS((RRR(((sencodings\hz.pycR st StreamWritercBseZeZRS((RRR(((sencodings\hz.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\hz.pyct getregentrys   (t _codecs_cnRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\hz.pycss   ""PK8nnencodings/idna.pyc xDDc@sddkZddkZddkZddklZeidZdZeedZ dZ dZ dZ d ei fd YZ d eifd YZd eifdYZde eifdYZde eifdYZdZdS(iN(t ucd_3_2_0u [.。.。]sxn--tasciicCsg}x;|D]3}ti|oq n|iti|q Wdi|}tid|}x|D]}ti|pti|ppti |p`ti |pPti |p@ti |p0ti |p ti|pti|otd|qlqlWtti|}xd|D]\}|oOtti|otdn|d p |d otdqq3q3W|S(NutNFKCsInvalid character %rsViolation of BIDI requirement 2iisViolation of BIDI requirement 3(t stringprept in_table_b1tappendt map_table_b2tjoint unicodedatat normalizet in_table_c12t in_table_c22t in_table_c3t in_table_c4t in_table_c5t in_table_c6t in_table_c7t in_table_c8t in_table_c9t UnicodeErrortmapt in_table_d1tfiltert in_table_d2(tlabeltnewlabeltctRandAL((sencodings\idna.pyctnamepreps:c CsCy|id}Wntj on:Xdt|jo djno|Sntdt|}y|id}Wntj on:Xdt|jo djno|Sntd|itotdn|id}t|}dt|jo djno|SntddS(NRii@slabel empty or too longsLabel starts with ACE prefixtpunycode(tencodeRtlenRt startswitht uace_prefixt ace_prefix(R((sencodings\idna.pyctToASCII>s,$  $  $c Cst|to t}n6y|id}t}Wntj o t}nX|pEt|}y|id}Wqtj otdqXn|itpt |dSn|t t}|i d}t |}|i |jotd||n|S(NRsInvalid character in IDN labelRsIDNA does not round-trip(t isinstancetstrtTrueRRtFalseRR R"tunicodeRtdecodeR#tlower(Rt pure_asciitlabel1tresulttlabel2((sencodings\idna.pyct ToUnicodeis*     tCodeccBs eZddZddZRS(tstrictcCs|djotd|n|pdSng}ti|}|o(t|ddjod}|d=nd}x!|D]}|it|qWdi||t|fS(NR1sunsupported error handling tiit.(R2i(RtdotstsplitRRR#R(tselftinputterrorsR-tlabelst trailing_dotR((sencodings\idna.pycRs  cCs|djotd|n|pd Snt|toti|}n)t|}t|d|id}|o(t|ddjod}|d=nd}g}x!|D]}|it|qWdi ||t|fS( NR1sUnsupported error handling uiRR3iu.(ui( RR$R(R4R5R%RRR/R(R6R7R8R9R:R-R((sencodings\idna.pycR)s$    (t__name__t __module__RR)(((sencodings\idna.pycR0s tIncrementalEncodercBseZdZRS(c Cs|djotd|n|pd Snti|}d}|oC|dpd}|d=q|p|d=|o d}qqng}d}xF|D]>}|it||o|d7}n|t|7}qWdi||}|t|7}||fS( NR1sunsupported error handling R2iuiR3i(R2i(RR4R5RR#RR( R6R7R8tfinalR9R:R-tsizeR((sencodings\idna.pyct_buffer_encodes2   (R;R<R@(((sencodings\idna.pycR=stIncrementalDecodercBseZdZRS(c CsM|djotd|n|pd Snt|toti|}n)t|}t|d|id}d}|oC|dpd}|d=q|p|d=|o d}qqng}d}xF|D]>}|it||o|d 7}n|t|7}qWdi ||}|t|7}||fS( NR1sUnsupported error handling uiRR3iu.i(ui( RR$R(R4R5R%RR/RR( R6R7R8R>R9R:R-R?R((sencodings\idna.pyct_buffer_decodes:     (R;R<RB(((sencodings\idna.pycRAst StreamWritercBseZRS((R;R<(((sencodings\idna.pycRCst StreamReadercBseZRS((R;R<(((sencodings\idna.pycRDscCs@tidddtidtidtdtdtdtS( NtnametidnaRR)tincrementalencodertincrementaldecodert streamwritert streamreader( tcodecst CodecInfoR0RR)R=RARCRD(((sencodings\idna.pyct getregentrys   (RtreRKRRtcompileR4R"R(R!RR#R/R0tBufferedIncrementalEncoderR=tBufferedIncrementalDecoderRARCRDRM(((sencodings\idna.pycss$ 0 + )3"(PK8.L:encodings/iso2022_jp.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt iso2022_jptCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\iso2022_jp.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\iso2022_jp.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\iso2022_jp.pycRst StreamReadercBseZeZRS((RRR(((sencodings\iso2022_jp.pycR st StreamWritercBseZeZRS((RRR(((sencodings\iso2022_jp.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\iso2022_jp.pyct getregentrys   (t_codecs_iso2022Rt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\iso2022_jp.pycss   ""PK8ljencodings/iso2022_jp_1.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt iso2022_jp_1tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\iso2022_jp_1.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\iso2022_jp_1.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\iso2022_jp_1.pycRst StreamReadercBseZeZRS((RRR(((sencodings\iso2022_jp_1.pycR st StreamWritercBseZeZRS((RRR(((sencodings\iso2022_jp_1.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\iso2022_jp_1.pyct getregentrys   (t_codecs_iso2022Rt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\iso2022_jp_1.pycss   ""PK8Xencodings/iso2022_jp_2.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt iso2022_jp_2tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\iso2022_jp_2.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\iso2022_jp_2.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\iso2022_jp_2.pycRst StreamReadercBseZeZRS((RRR(((sencodings\iso2022_jp_2.pycR st StreamWritercBseZeZRS((RRR(((sencodings\iso2022_jp_2.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\iso2022_jp_2.pyct getregentrys   (t_codecs_iso2022Rt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\iso2022_jp_2.pycss   ""PK8 encodings/iso2022_jp_2004.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtiso2022_jp_2004tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\iso2022_jp_2004.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\iso2022_jp_2004.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\iso2022_jp_2004.pycRst StreamReadercBseZeZRS((RRR(((sencodings\iso2022_jp_2004.pycR st StreamWritercBseZeZRS((RRR(((sencodings\iso2022_jp_2004.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\iso2022_jp_2004.pyct getregentrys   (t_codecs_iso2022Rt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\iso2022_jp_2004.pycss   ""PK8<Оencodings/iso2022_jp_3.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt iso2022_jp_3tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\iso2022_jp_3.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\iso2022_jp_3.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\iso2022_jp_3.pycRst StreamReadercBseZeZRS((RRR(((sencodings\iso2022_jp_3.pycR st StreamWritercBseZeZRS((RRR(((sencodings\iso2022_jp_3.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\iso2022_jp_3.pyct getregentrys   (t_codecs_iso2022Rt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\iso2022_jp_3.pycss   ""PK8(#ͳencodings/iso2022_jp_ext.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtiso2022_jp_exttCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\iso2022_jp_ext.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\iso2022_jp_ext.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\iso2022_jp_ext.pycRst StreamReadercBseZeZRS((RRR(((sencodings\iso2022_jp_ext.pycR st StreamWritercBseZeZRS((RRR(((sencodings\iso2022_jp_ext.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\iso2022_jp_ext.pyct getregentrys   (t_codecs_iso2022Rt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\iso2022_jp_ext.pycss   ""PK8Wܓencodings/iso2022_kr.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt iso2022_krtCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\iso2022_kr.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\iso2022_kr.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\iso2022_kr.pycRst StreamReadercBseZeZRS((RRR(((sencodings\iso2022_kr.pycR st StreamWritercBseZeZRS((RRR(((sencodings\iso2022_kr.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\iso2022_kr.pyct getregentrys   (t_codecs_iso2022Rt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\iso2022_kr.pycss   ""PK88:v v encodings/iso8859_1.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_1 generated from 'MAPPINGS/ISO8859/8859-1.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_1.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_1.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_1.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_1.pycRs(R R tFalseR(((sencodings\iso8859_1.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_1.pycR s(R R RR (((sencodings\iso8859_1.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_1.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_1.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-1RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_1.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_1.pycss  PK8J encodings/iso8859_10.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec iso8859_10 generated from 'MAPPINGS/ISO8859/8859-10.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_10.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_10.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_10.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_10.pycRs(R R tFalseR(((sencodings\iso8859_10.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_10.pycR s(R R RR (((sencodings\iso8859_10.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_10.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_10.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-10RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_10.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨĶ§ĻĐŠŦŽ­ŪŊ°ąēģīĩķ·ļđšŧž―ūŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎÏÐŅŌÓÔÕÖŨØŲÚÛÜÝÞßāáâãäåæįčéęëėíîïðņōóôõöũøųúûüýþĸ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_10.pycss  PK8N6 encodings/iso8859_11.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec iso8859_11 generated from 'MAPPINGS/ISO8859/8859-11.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_11.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_11.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_11.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_11.pycRs(R R tFalseR(((sencodings\iso8859_11.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_11.pycR s(R R RR (((sencodings\iso8859_11.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_11.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_11.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-11RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_11.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู￾￾￾￾฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛￾￾￾￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_11.pycss  PK8x) encodings/iso8859_13.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec iso8859_13 generated from 'MAPPINGS/ISO8859/8859-13.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_13.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_13.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_13.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_13.pycRs(R R tFalseR(((sencodings\iso8859_13.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_13.pycR s(R R RR (((sencodings\iso8859_13.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_13.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_13.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-13RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_13.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ”¢£¤„¦§Ø©Ŗ«¬­®Æ°±²³“µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž’( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_13.pycss  PK8i encodings/iso8859_14.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec iso8859_14 generated from 'MAPPINGS/ISO8859/8859-14.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_14.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_14.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_14.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_14.pycRs(R R tFalseR(((sencodings\iso8859_14.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_14.pycR s(R R RR (((sencodings\iso8859_14.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_14.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_14.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-14RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_14.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ḃḃ£ĊċḊ§Ẁ©ẂḋỲ­®ŸḞḟĠġṀṁ¶ṖẁṗẃṠỳẄẅṡÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŴÑÒÓÔÕÖṪØÙÚÛÜÝŶßàáâãäåæçèéêëìíîïŵñòóôõöṫøùúûüýŷÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_14.pycss  PK8i encodings/iso8859_15.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec iso8859_15 generated from 'MAPPINGS/ISO8859/8859-15.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_15.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_15.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_15.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_15.pycRs(R R tFalseR(((sencodings\iso8859_15.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_15.pycR s(R R RR (((sencodings\iso8859_15.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_15.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_15.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-15RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_15.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥Š§š©ª«¬­®¯°±²³Žµ¶·ž¹º»ŒœŸ¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_15.pycss  PK8.8C encodings/iso8859_16.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec iso8859_16 generated from 'MAPPINGS/ISO8859/8859-16.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_16.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_16.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_16.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_16.pycRs(R R tFalseR(((sencodings\iso8859_16.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_16.pycR s(R R RR (((sencodings\iso8859_16.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_16.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_16.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-16RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_16.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄąŁ€„Š§š©Ș«Ź­źŻ°±ČłŽ”¶·žčș»ŒœŸżÀÁÂĂÄĆÆÇÈÉÊËÌÍÎÏĐŃÒÓÔŐÖŚŰÙÚÛÜĘȚßàáâăäćæçèéêëìíîïđńòóôőöśűùúûüęțÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_16.pycss  PK8_\v v encodings/iso8859_2.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_2 generated from 'MAPPINGS/ISO8859/8859-2.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_2.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_2.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_2.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_2.pycRs(R R tFalseR(((sencodings\iso8859_2.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_2.pycR s(R R RR (((sencodings\iso8859_2.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_2.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_2.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-2RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_2.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ą˘Ł¤ĽŚ§¨ŠŞŤŹ­ŽŻ°ą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_2.pycss  PK8~s} } encodings/iso8859_3.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_3 generated from 'MAPPINGS/ISO8859/8859-3.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_3.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_3.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_3.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_3.pycRs(R R tFalseR(((sencodings\iso8859_3.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_3.pycR s(R R RR (((sencodings\iso8859_3.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_3.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_3.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-3RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_3.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ħ˘£¤￾Ĥ§¨İŞĞĴ­￾Ż°ħ²³´µĥ·¸ışğĵ½￾żÀÁÂ￾ÄĊĈÇÈÉÊËÌÍÎÏ￾ÑÒÓÔĠÖ×ĜÙÚÛÜŬŜßàáâ￾äċĉçèéêëìíîï￾ñòóôġö÷ĝùúûüŭŝ˙( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_3.pycss  PK8XMv v encodings/iso8859_4.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_4 generated from 'MAPPINGS/ISO8859/8859-4.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_4.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_4.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_4.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_4.pycRs(R R tFalseR(((sencodings\iso8859_4.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_4.pycR s(R R RR (((sencodings\iso8859_4.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_4.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_4.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-4RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_4.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤ĨĻ§¨ŠĒĢŦ­Ž¯°ą˛ŗ´ĩļˇ¸šēģŧŊžŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎĪĐŅŌĶÔÕÖ×ØŲÚÛÜŨŪßāáâãäåæįčéęëėíîīđņōķôõö÷øųúûüũū˙( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_4.pycss  PK8bw w encodings/iso8859_5.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_5 generated from 'MAPPINGS/ISO8859/8859-5.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_5.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_5.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_5.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_5.pycRs(R R tFalseR(((sencodings\iso8859_5.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_5.pycR s(R R RR (((sencodings\iso8859_5.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_5.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_5.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-5RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_5.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂЃЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђѓєѕіїјљњћќ§ўџ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_5.pycss  PK8; encodings/iso8859_6.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_6 generated from 'MAPPINGS/ISO8859/8859-6.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_6.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_6.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_6.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_6.pycRs(R R tFalseR(((sencodings\iso8859_6.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_6.pycR s(R R RR (((sencodings\iso8859_6.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_6.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_6.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-6RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_6.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ￾￾￾¤￾￾￾￾￾￾￾،­￾￾￾￾￾￾￾￾￾￾￾￾￾؛￾￾￾؟￾ءآأؤإئابةتثجحخدذرزسشصضطظعغ￾￾￾￾￾ـفقكلمنهوىيًٌٍَُِّْ￾￾￾￾￾￾￾￾￾￾￾￾￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_6.pycss  PK8 vm~ ~ encodings/iso8859_7.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_7 generated from 'MAPPINGS/ISO8859/8859-7.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_7.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_7.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_7.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_7.pycRs(R R tFalseR(((sencodings\iso8859_7.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_7.pycR s(R R RR (((sencodings\iso8859_7.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_7.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_7.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-7RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_7.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ‘’£€₯¦§¨©ͺ«¬­￾―°±²³΄΅Ά·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ￾ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_7.pycss  PK8 encodings/iso8859_8.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_8 generated from 'MAPPINGS/ISO8859/8859-8.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_8.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_8.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_8.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_8.pycRs(R R tFalseR(((sencodings\iso8859_8.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_8.pycR s(R R RR (((sencodings\iso8859_8.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_8.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_8.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-8RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_8.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ￾¢£¤¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾￾‗אבגדהוזחטיךכלםמןנסעףפץצקרשת￾￾‎‏￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_8.pycss  PK8v v encodings/iso8859_9.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sj Python Character Mapping Codec iso8859_9 generated from 'MAPPINGS/ISO8859/8859-9.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\iso8859_9.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\iso8859_9.pyctdecodes(t__name__t __module__RR (((sencodings\iso8859_9.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\iso8859_9.pycRs(R R tFalseR(((sencodings\iso8859_9.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\iso8859_9.pycR s(R R RR (((sencodings\iso8859_9.pycRst StreamWritercBseZRS((R R (((sencodings\iso8859_9.pycRst StreamReadercBseZRS((R R (((sencodings\iso8859_9.pycRscCs@tidddtidtidtdtdtdtS( Ntnames iso8859-9RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\iso8859_9.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\iso8859_9.pycss  PK8dfĀffencodings/johab.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtjohabtCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\johab.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\johab.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\johab.pycRst StreamReadercBseZeZRS((RRR(((sencodings\johab.pycR st StreamWritercBseZeZRS((RRR(((sencodings\johab.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\johab.pyct getregentrys   (t _codecs_krRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\johab.pycss   ""PK8U encodings/koi8_r.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sl Python Character Mapping Codec koi8_r generated from 'MAPPINGS/VENDORS/MISC/KOI8-R.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\koi8_r.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\koi8_r.pyctdecodes(t__name__t __module__RR (((sencodings\koi8_r.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\koi8_r.pycRs(R R tFalseR(((sencodings\koi8_r.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\koi8_r.pycR s(R R RR (((sencodings\koi8_r.pycRst StreamWritercBseZRS((R R (((sencodings\koi8_r.pycRst StreamReadercBseZRS((R R (((sencodings\koi8_r.pycRscCs@tidddtidtidtdtdtdtS( Ntnameskoi8-rRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\koi8_r.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ё╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡Ё╢╣╤╥╦╧╨╩╪╫╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\koi8_r.pycss  PK8^)~ ~ encodings/koi8_u.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sf Python Character Mapping Codec koi8_u generated from 'python-mappings/KOI8-U.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\koi8_u.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\koi8_u.pyctdecodes(t__name__t __module__RR (((sencodings\koi8_u.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\koi8_u.pycRs(R R tFalseR(((sencodings\koi8_u.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\koi8_u.pycR s(R R RR (((sencodings\koi8_u.pycRst StreamWritercBseZRS((R R (((sencodings\koi8_u.pycRst StreamReadercBseZRS((R R (((sencodings\koi8_u.pycRscCs@tidddtidtidtdtdtdtS( Ntnameskoi8-uRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\koi8_u.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґ╝╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪Ґ╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\koi8_u.pycss  PK8F??encodings/latin_1.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd eefdYZdZdS(s Python 'latin-1' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecstlatin_1_encodetencodetlatin_1_decodetdecode(((sencodings\latin_1.pycR s tIncrementalEncodercBseZedZRS(cCsti||idS(Ni(RRterrors(tselftinputtfinal((sencodings\latin_1.pycRs(RRtFalseR(((sencodings\latin_1.pycRstIncrementalDecodercBseZedZRS(cCsti||idS(Ni(RRR (R R R ((sencodings\latin_1.pycRs(RRR R(((sencodings\latin_1.pycRst StreamWritercBseZRS((RR(((sencodings\latin_1.pycRst StreamReadercBseZRS((RR(((sencodings\latin_1.pycRstStreamConvertercBseZeiZeiZRS((RRRRRRR(((sencodings\latin_1.pycR"s cCs:tidddtidtidtdtdtdtS( Ntnames iso8859-1RRtincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRRRRRR(((sencodings\latin_1.pyct getregentry)s   ( t__doc__RRRRRRRR(((sencodings\latin_1.pycss PK80 !!encodings/mac_arabic.pyc 5#Dc@sPdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOd<dPdQ<dRdS<dTdU<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdc<ddd'<dedf<dgdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d~<dd<dd<dd?<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd!<dd<dd#<dd<dd<dd)<dd-<dd+<dd/<dd1<dd<dd3<dd7<dd9<dd<dd;<dd<dd=<ddA<dd<ddC<ddE<dd<ddI<ddG<ddK<ddM<dd<dd<dd<dZ hdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d <d d <dd<dd<dd<dd<dOdO<ddO<dPdP<dQdP<dRdR<dSdR<dTdT<dUdT<dVdV<dWdV<dd<dZdZ<d[dZ<d\d\<d]d\<d^d^<d_d^<d`d`<dad`<dbdb<dcdb<dddd<d'dd<dd<dgdg<dhdg<didi<djdi<dkdk<dldk<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d!d!<d"d"<d#d#<d$d$<d%d%<d&d&<d'd'<d(d(<d)d)<d*d*<d+d+<d,d,<d-d-<d.d.<d/d/<d0d0<d1d1<d2d2<d3d3<d4d4<d5d5<d6d6<d7d7<d8d8<d9d9<d:d:<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d;d;<d<d<<d=d=<d>d><d?d?<d@d@<dAdA<dBdB<dCdC<dDdD<dEdE<dFdF<dGdG<dHdH<dIdI<dJdJ<dKdK<dLdL<dMdM<dNdN<dOdO<dPdP<dQdQ<dRdR<dSdS<dTdT<dUdU<dd<dKd<dd<dMd<dd<dd<dVdV<dWdW<dd<d(d'<d@d?<dd<dd<dd<dd<dd<dd<d d<dd<d"d!<d$d#<d*d)<d.d-<d,d+<d0d/<d2d1<d4d3<d8d7<d:d9<d<d;<d>d=<dBdA<dDdC<dFdE<dJdI<dHdG<dLdK<dNdM<dfde<d?d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d!d<dd<d#d<dd<dd<d)d<d-d<d+d<d/d<d1d<dd<d3d<d7d<d9d<dd<d;d<dd<dndm<dpdo<drdq<dtds<dvdu<dxdw<dzdy<d|d{<d~d}<dd<dYdX<dAd<d=d<dd<dId<dGd<dd<dEd<dd<d&d%<dd<dCd<d6d5<ddiiiiJ'ii!ii"ii#ii$i%ii&ii'i(ii)i*ii+ii,ii-ii.ii/ii0ii1i2ii3ii4ii5ii6i7ii8ii9ii:ii[ii\i]ii^ii_ii@iAiBiCiiDiEiiFiiGiHiIiJiKiLiiMiNiOiPiiQiRii~iyiiiiiiiii{i|i}iiiiiuh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Ä ÇÉÑÖÜáàâäں«çéèêëí…îïñó»ôö÷úùûü !"#$٪&'()*+،-./٠١٢٣٤٥٦٧٨٩:؛<=>؟❊ءآأؤإئابةتثجحخدذرزسشصضطظعغ[\]^_ـفقكلمنهوىيًٌٍَُِّْپٹچەڤگڈڑ{|}ژےiiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii%i,i0i1i2i3i4i5i6i7i8i9i;i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi~i(t__doc__RRRRRRRtmake_identity_dicttranget decoding_maptupdateR R(((sencodings\mac_arabic.pycss                                                                                                                                                                                                                                                                                                                                                                                                  PK8; encodings/mac_centeuro.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(su Python Character Mapping Codec mac_centeuro generated from 'MAPPINGS/VENDORS/APPLE/CENTEURO.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_centeuro.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_centeuro.pyctdecodes(t__name__t __module__RR (((sencodings\mac_centeuro.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_centeuro.pycRs(R R tFalseR(((sencodings\mac_centeuro.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_centeuro.pycR s(R R RR (((sencodings\mac_centeuro.pycRst StreamWritercBseZRS((R R (((sencodings\mac_centeuro.pycRst StreamReadercBseZRS((R R (((sencodings\mac_centeuro.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-centeuroRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_centeuro.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_centeuro.pycss  PK8u[ encodings/mac_croatian.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(su Python Character Mapping Codec mac_croatian generated from 'MAPPINGS/VENDORS/APPLE/CROATIAN.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_croatian.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_croatian.pyctdecodes(t__name__t __module__RR (((sencodings\mac_croatian.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_croatian.pycRs(R R tFalseR(((sencodings\mac_croatian.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_croatian.pycR s(R R RR (((sencodings\mac_croatian.pycRst StreamWritercBseZRS((R R (((sencodings\mac_croatian.pycRst StreamReadercBseZRS((R R (((sencodings\mac_croatian.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-croatianRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_croatian.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈Ć«Č… ÀÃÕŒœĐ—“”‘’÷◊©⁄€‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_croatian.pycss  PK8F encodings/mac_cyrillic.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(su Python Character Mapping Codec mac_cyrillic generated from 'MAPPINGS/VENDORS/APPLE/CYRILLIC.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_cyrillic.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_cyrillic.pyctdecodes(t__name__t __module__RR (((sencodings\mac_cyrillic.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_cyrillic.pycRs(R R tFalseR(((sencodings\mac_cyrillic.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_cyrillic.pycR s(R R RR (((sencodings\mac_cyrillic.pycRst StreamWritercBseZRS((R R (((sencodings\mac_cyrillic.pycRst StreamReadercBseZRS((R R (((sencodings\mac_cyrillic.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-cyrillicRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_cyrillic.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю€( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_cyrillic.pycss  PK8ic c encodings/mac_farsi.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(so Python Character Mapping Codec mac_farsi generated from 'MAPPINGS/VENDORS/APPLE/FARSI.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_farsi.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_farsi.pyctdecodes(t__name__t __module__RR (((sencodings\mac_farsi.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_farsi.pycRs(R R tFalseR(((sencodings\mac_farsi.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_farsi.pycR s(R R RR (((sencodings\mac_farsi.pycRst StreamWritercBseZRS((R R (((sencodings\mac_farsi.pycRst StreamReadercBseZRS((R R (((sencodings\mac_farsi.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-farsiRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_farsi.pyct getregentry!s   uh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Ä ÇÉÑÖÜáàâäں«çéèêëí…îïñó»ôö÷úùûü !"#$٪&'()*+،-./۰۱۲۳۴۵۶۷۸۹:؛<=>؟❊ءآأؤإئابةتثجحخدذرزسشصضطظعغ[\]^_ـفقكلمنهوىيًٌٍَُِّْپٹچەڤگڈڑ{|}ژے( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_farsi.pycss  PK8ˋ encodings/mac_greek.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(so Python Character Mapping Codec mac_greek generated from 'MAPPINGS/VENDORS/APPLE/GREEK.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_greek.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_greek.pyctdecodes(t__name__t __module__RR (((sencodings\mac_greek.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_greek.pycRs(R R tFalseR(((sencodings\mac_greek.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_greek.pycR s(R R RR (((sencodings\mac_greek.pycRst StreamWritercBseZRS((R R (((sencodings\mac_greek.pycRst StreamReadercBseZRS((R R (((sencodings\mac_greek.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-greekRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_greek.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦€ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ­( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_greek.pycss  PK8sj encodings/mac_iceland.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(ss Python Character Mapping Codec mac_iceland generated from 'MAPPINGS/VENDORS/APPLE/ICELAND.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_iceland.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_iceland.pyctdecodes(t__name__t __module__RR (((sencodings\mac_iceland.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_iceland.pycRs(R R tFalseR(((sencodings\mac_iceland.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_iceland.pycR s(R R RR (((sencodings\mac_iceland.pycRst StreamWritercBseZRS((R R (((sencodings\mac_iceland.pycRst StreamReadercBseZRS((R R (((sencodings\mac_iceland.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-icelandRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_iceland.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüÝ°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_iceland.pycss  PK8wiiencodings/mac_latin2.pyc 5#Dc@sAdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd<d d!<d"d#<d$d%<d&d'<d(d)<d*d+<d,d-<d.d/<d0d1<d2d3<d4d5<d6d7<d8d9<d:d;<d<d=<d>d?<d@dA<dBdC<dDdE<dFdG<dHdI<dJdK<dLdM<dNdO<dPdQ<dRdS<dTdU<dVdW<dXdY<dZdT<d[d\<d]d^<d_d`<d\da<dbdc<ddd[<dedf<dgdP<dhdi<djdk<dldm<dndo<dpdq<drdX<dsdt<dudv<dwdx<dydz<d{d|<d}d~<dd<dd<dd<dd<dd<dad<dd<dd<dd<dd<d`d<d|d<dd<dOd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ddZ<dd<dd<dd<dd<dd"<dd<dd<dd<dd<dd*<dd<dd<dd<dd2<dd<dd<dd<dd<dd<dd<<dd@<ddD<ddB<dd<dd<dd<ddF<dd<ddL<dd<dd<dd<ei e Z dS(s Python Character Mapping Codec generated from 'LATIN2.TXT' with gencodec.py. Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. (c) Copyright 2000 Guido van Rossum. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodet encoding_map(tselftinputterrors((sencodings\mac_latin2.pyctencodescCsti||tS(N(Rtcharmap_decodet decoding_map(RRR((sencodings\mac_latin2.pyctdecodes(t__name__t __module__RR (((sencodings\mac_latin2.pycRs tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_latin2.pycRs(R R tFalseR(((sencodings\mac_latin2.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_latin2.pycR s(R R RR (((sencodings\mac_latin2.pycRst StreamWritercBseZRS((R R (((sencodings\mac_latin2.pycRst StreamReadercBseZRS((R R (((sencodings\mac_latin2.pycR!scCs@tidddtidtidtdtdtdtS( Ntnames mac-latin2RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_latin2.pyct getregentry&s   iiiiiiiiiiiiiiiiiii iiii iiiiiiiiyiiziiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii iiiiiiii" iiiiiii"!iiiii`"ii#i.ii/i*iid"iie"ii+ii6ii"i"iiBii;ii<ii=ii>ii9ii:iiEiiFiiCiii"iiDiGii"iiii& iiHiiPiiiiQiiLii ii ii ii ii ii ii%iiMiiTiiUiiXii9 i: iiYiiViWii`i ii iiaiZii[iiidiieii}ii~iijiiikiiniiioipiqirisiiii7i{iiAi|i"iii(t__doc__RRRRRRRtmake_identity_dicttrangeR tupdatetmake_encoding_mapR(((sencodings\mac_latin2.pycss                                                                                                                                 PK89 encodings/mac_roman.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(so Python Character Mapping Codec mac_roman generated from 'MAPPINGS/VENDORS/APPLE/ROMAN.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_roman.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_roman.pyctdecodes(t__name__t __module__RR (((sencodings\mac_roman.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_roman.pycRs(R R tFalseR(((sencodings\mac_roman.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_roman.pycR s(R R RR (((sencodings\mac_roman.pycRst StreamWritercBseZRS((R R (((sencodings\mac_roman.pycRst StreamReadercBseZRS((R R (((sencodings\mac_roman.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-romanRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_roman.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_roman.pycss  PK8* encodings/mac_romanian.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(su Python Character Mapping Codec mac_romanian generated from 'MAPPINGS/VENDORS/APPLE/ROMANIAN.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_romanian.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_romanian.pyctdecodes(t__name__t __module__RR (((sencodings\mac_romanian.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_romanian.pycRs(R R tFalseR(((sencodings\mac_romanian.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_romanian.pycR s(R R RR (((sencodings\mac_romanian.pycRst StreamWritercBseZRS((R R (((sencodings\mac_romanian.pycRst StreamReadercBseZRS((R R (((sencodings\mac_romanian.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-romanianRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_romanian.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂȘ∞±≤≥¥µ∂∑∏π∫ªºΩăș¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›Țț‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_romanian.pycss  PK8N encodings/mac_turkish.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(ss Python Character Mapping Codec mac_turkish generated from 'MAPPINGS/VENDORS/APPLE/TURKISH.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\mac_turkish.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\mac_turkish.pyctdecodes(t__name__t __module__RR (((sencodings\mac_turkish.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\mac_turkish.pycRs(R R tFalseR(((sencodings\mac_turkish.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\mac_turkish.pycR s(R R RR (((sencodings\mac_turkish.pycRst StreamWritercBseZRS((R R (((sencodings\mac_turkish.pycRst StreamReadercBseZRS((R R (((sencodings\mac_turkish.pycRscCs@tidddtidtidtdtdtdtS( Ntnames mac-turkishRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\mac_turkish.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙˆ˜¯˘˙˚¸˝˛ˇ( t__doc__RRRRRRRR t charmap_buildR(((sencodings\mac_turkish.pycss  PK8U(=[[encodings/mbcs.pyc Dc@sdZddklZlZddkZeZddZdeifdYZdeifd YZd ei fd YZ d ei fd YZ dZ dS(s Python 'mbcs' Codec for Windows Cloned by Mark Hammond (mhammond@skippinet.com.au) from ascii.py, which was written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. i(t mbcs_encodet mbcs_decodeNtstrictcCst||tS(N(RtTrue(tinputterrors((sencodings\mbcs.pyctdecodestIncrementalEncodercBseZedZRS(cCst||idS(Ni(RR(tselfRtfinal((sencodings\mbcs.pyctencodes(t__name__t __module__tFalseR (((sencodings\mbcs.pycRstIncrementalDecodercBseZeZRS((R R Rt_buffer_decode(((sencodings\mbcs.pycRst StreamWritercBseZeZRS((R R RR (((sencodings\mbcs.pycRst StreamReadercBseZeZRS((R R RR(((sencodings\mbcs.pycR!scCs4tidddtdtdtdtdtdtS( NtnametmbcsR Rtincrementalencodertincrementaldecodert streamreadert streamwriter(tcodecst CodecInfoR RRRRR(((sencodings\mbcs.pyct getregentry&s ( t__doc__RRRR RRtBufferedIncrementalDecoderRRRR(((sencodings\mbcs.pycs s  PK8t t encodings/palmos.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<ei e Z dS(Gsx Python Character Mapping Codec for PalmOS 3.5. Written by Sjoerd Mullender (sjoerd@acm.org); based on iso8859_15.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodet encoding_map(tselftinputterrors((sencodings\palmos.pyctencode scCsti||tS(N(Rtcharmap_decodet decoding_map(RRR((sencodings\palmos.pyctdecodes(t__name__t __module__RR (((sencodings\palmos.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\palmos.pycRs(R R tFalseR(((sencodings\palmos.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\palmos.pycR s(R R RR (((sencodings\palmos.pycRst StreamWritercBseZRS((R R (((sencodings\palmos.pycRst StreamReadercBseZRS((R R (((sencodings\palmos.pycRscCs@tidddtidtidtdtdtdtS( NtnametpalmosRR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\palmos.pyct getregentry"s   ii ii iiii ii& ii ii! iiii0 ii`ii9 iiRiif&iic&iie&ii`&ii ii ii ii ii" ii ii iiii"!iiaiiSiixi(t__doc__RRRRRRRtmake_identity_dicttrangeR tupdatetmake_encoding_mapR(((sencodings\palmos.pycssL                               PK8|HHencodings/ptcp154.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<dCdD<dEdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadb<dcdd<dedf<dgdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<dydz<d{d|<d}d~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ei e Z dS(s Python Character Mapping Codec generated from 'PTCP154.txt' with gencodec.py. Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. (c) Copyright 2000 Guido van Rossum. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodet encoding_map(tselftinputterrors((sencodings\ptcp154.pyctencodescCsti||tS(N(Rtcharmap_decodet decoding_map(RRR((sencodings\ptcp154.pyctdecodes(t__name__t __module__RR (((sencodings\ptcp154.pycRs tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\ptcp154.pycRs(R R tFalseR(((sencodings\ptcp154.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\ptcp154.pycR s(R R RR (((sencodings\ptcp154.pycRst StreamWritercBseZRS((R R (((sencodings\ptcp154.pycRst StreamReadercBseZRS((R R (((sencodings\ptcp154.pycR!scCs@tidddtidtidtdtdtdtS( Ntnametptcp154RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\ptcp154.pyct getregentry&s   iiiiiiiiii ii& iiiiiiiiiiiiiiiiiiiiiiii ii ii ii ii" ii ii iiiiiiiiiiiiiiiiiiii^iiiiiiiiiiiiiiiiiiiiiiViiiiiiQii!iiiiXiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii ii!ii"ii#ii$ii%ii&ii'ii(ii)ii*ii+ii,ii-ii.ii/ii0ii1ii2ii3ii4ii5ii6ii7ii8ii9ii:ii;ii<ii=ii>ii?ii@iiAiiBiiCiiDiiEiiFiiGiiHiiIiiJiiKiiLiiMiiNiiOi(t__doc__RRRRRRRtmake_identity_dicttrangeR tupdatetmake_encoding_mapR(((sencodings\ptcp154.pycss                                                                                                                         PK8zencodings/punycode.pyc HDc@sdZddkZdZdZdZdZdZdZd Zd Z d Z d Z d Z dZ dZdeifdYZdeifdYZdeifdYZdeeifdYZdeeifdYZdZdS(sX Codec for the Punicode encoding, as specified in RFC 3492 Written by Martin v. Lwis. iNcCs}g}h}x<|D]4}t|djo|i|qd||(R0R7RR R ((sencodings\punycode.pyctpunycode_decodes    tCodeccBs eZddZddZRS(R2cCst|}|t|fS(N(R1R(tselftinputR7R((sencodings\punycode.pycRs cCs=|djotd|nt||}|t|fS(NR2treplacetignoresUnsupported error handling (sstrictsreplacesignore(R4RBR(RDRER7R((sencodings\punycode.pyctdecodes (t__name__t __module__RRH(((sencodings\punycode.pycRCs tIncrementalEncodercBseZedZRS(cCs t|S(N(R1(RDREtfinal((sencodings\punycode.pycRs(RIRJtFalseR(((sencodings\punycode.pycRKstIncrementalDecodercBseZedZRS(cCs4|idjotd|int||iS(NR2RFRGsUnsupported error handling (sstrictsreplacesignore(R7R4RB(RDRERL((sencodings\punycode.pycRHs(RIRJRMRH(((sencodings\punycode.pycRNst StreamWritercBseZRS((RIRJ(((sencodings\punycode.pycROst StreamReadercBseZRS((RIRJ(((sencodings\punycode.pycRPscCs@tidddtidtidtdtdtdtS( NtnametpunycodeRRHtincrementalencodertincrementaldecodert streamwritert streamreader( tcodecst CodecInfoRCRRHRKRNRORP(((sencodings\punycode.pyct getregentrys   (t__doc__RWR RRRRR R#R'R.R1R:R>RBRCRKRNRORPRY(((sencodings\punycode.pycss(          PK8<:  encodings/quopri_codec.pyc 5#Dc @sdZddkZddkZyddklZWn#ej oddklZnXddZddZdeifdYZd ei fd YZ d ei fd YZ d eei fdYZ deei fdYZ dZ dS(sgCodec for quoted-printable encoding. Like base64 and rot13, this returns Python strings, not Unicode. iN(tStringIOtstrictcCsX|djptt|}t}ti||d|i}|t|fS(sEncode the input, returning a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. Ri(tAssertionErrorRtquopritencodetgetvaluetlen(tinputterrorstftgtoutput((sencodings\quopri_codec.pyct quopri_encode s    cCsU|djptt|}t}ti|||i}|t|fS(sDecode the input, returning a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(RRRtdecodeRR(RRR R R ((sencodings\quopri_codec.pyct quopri_decodes    tCodeccBs eZddZddZRS(RcCs t||S(N(R (tselfRR((sencodings\quopri_codec.pycR,scCs t||S(N(R(RRR((sencodings\quopri_codec.pycR .s(t__name__t __module__RR (((sencodings\quopri_codec.pycR*s tIncrementalEncodercBseZedZRS(cCst||idS(Ni(R R(RRtfinal((sencodings\quopri_codec.pycR2s(RRtFalseR(((sencodings\quopri_codec.pycR1stIncrementalDecodercBseZedZRS(cCst||idS(Ni(RR(RRR((sencodings\quopri_codec.pycR 6s(RRRR (((sencodings\quopri_codec.pycR5st StreamWritercBseZRS((RR(((sencodings\quopri_codec.pycR9st StreamReadercBseZRS((RR(((sencodings\quopri_codec.pycR<scCs4tidddtdtdtdtdtdtS( NtnameRRR tincrementalencodertincrementaldecodert streamwritert streamreader(tcodecst CodecInfoR RRRRR(((sencodings\quopri_codec.pyct getregentryAs (t__doc__RRt cStringIORt ImportErrorR RRRRRRR (((sencodings\quopri_codec.pycss  PK8 encodings/raw_unicode_escape.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdS(s Python 'raw-unicode-escape' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecstraw_unicode_escape_encodetencodetraw_unicode_escape_decodetdecode(((s encodings\raw_unicode_escape.pycR s tIncrementalEncodercBseZedZRS(cCsti||idS(Ni(RRterrors(tselftinputtfinal((s encodings\raw_unicode_escape.pycRs(RRtFalseR(((s encodings\raw_unicode_escape.pycRstIncrementalDecodercBseZedZRS(cCsti||idS(Ni(RRR (R R R ((s encodings\raw_unicode_escape.pycRs(RRR R(((s encodings\raw_unicode_escape.pycRst StreamWritercBseZRS((RR(((s encodings\raw_unicode_escape.pycRst StreamReadercBseZRS((RR(((s encodings\raw_unicode_escape.pycRscCs:tidddtidtidtdtdtdtS( Ntnamesraw-unicode-escapeRRtincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRRRRRR(((s encodings\raw_unicode_escape.pyct getregentry$s   (t__doc__RRRRRRR(((s encodings\raw_unicode_escape.pycss PK8" encodings/rot_13.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd Zeie dZ e i hdd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<dd<dd<dd<dd<dd<dd<dd<dd<d d<d"d!<d$d#<d&d%<d(d'<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d;d<<d=d><d?d@<dAdB<d*d)<d,d+<d.d-<d0d/<d2d1<d4d3<d6d5<d8d7<d:d9<d<d;<d>d=<d@d?<dBdA<ei e Z dCZedDjo#ddkZeeieindS(Es Python Character Mapping Codec for ROT13. See http://ucsub.colorado.edu/~kominek/rot13/ for details. Written by Marc-Andre Lemburg (mal@lemburg.com). iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodet encoding_map(tselftinputterrors((sencodings\rot_13.pyctencodescCsti||tS(N(Rtcharmap_decodet decoding_map(RRR((sencodings\rot_13.pyctdecodes(t__name__t __module__RR (((sencodings\rot_13.pycRs tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\rot_13.pycRs(R R tFalseR(((sencodings\rot_13.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\rot_13.pycR s(R R RR (((sencodings\rot_13.pycRst StreamWritercBseZRS((R R (((sencodings\rot_13.pycRst StreamReadercBseZRS((R R (((sencodings\rot_13.pycR!scCs@tidddtidtidtdtdtdtS( Ntnamesrot-13RR tincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRR RRRR(((sencodings\rot_13.pyct getregentry&s   iiNiAiOiBiPiCiQiDiRiEiSiFiTiGiUiHiViIiWiJiXiKiYiLiZiMiniaioibipiciqidirieisifitigiuihiviiiwijixikiyilizimcCs |i|iiddS(Nsrot-13(twritetreadR(tinfiletoutfile((sencodings\rot_13.pyctrot13qst__main__(t__doc__RRRRRRRtmake_identity_dicttrangeR tupdatetmake_encoding_mapRRR tsyststdintstdout(((sencodings\rot_13.pycss                                                          PK8?̆encodings/shift_jis.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNt shift_jistCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\shift_jis.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\shift_jis.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\shift_jis.pycRst StreamReadercBseZeZRS((RRR(((sencodings\shift_jis.pycR st StreamWritercBseZeZRS((RRR(((sencodings\shift_jis.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\shift_jis.pyct getregentrys   (t _codecs_jpRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\shift_jis.pycss   ""PK8?baencodings/shift_jis_2004.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtshift_jis_2004tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\shift_jis_2004.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\shift_jis_2004.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\shift_jis_2004.pycRst StreamReadercBseZeZRS((RRR(((sencodings\shift_jis_2004.pycR st StreamWritercBseZeZRS((RRR(((sencodings\shift_jis_2004.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\shift_jis_2004.pyct getregentrys   (t _codecs_jpRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\shift_jis_2004.pycss   ""PK8(encodings/shift_jisx0213.pyc r'Dc@sddkZddkZddkZeidZdeifdYZdeieifdYZdei ei fdYZ d eei ei fd YZ d eei eifd YZd ZdS(iNtshift_jisx0213tCodeccBseZeiZeiZRS((t__name__t __module__tcodectencodetdecode(((sencodings\shift_jisx0213.pycR s tIncrementalEncodercBseZeZRS((RRR(((sencodings\shift_jisx0213.pycRstIncrementalDecodercBseZeZRS((RRR(((sencodings\shift_jisx0213.pycRst StreamReadercBseZeZRS((RRR(((sencodings\shift_jisx0213.pycR st StreamWritercBseZeZRS((RRR(((sencodings\shift_jisx0213.pycR scCs@tidddtidtidtdtdtdtS( NtnameRRRtincrementalencodertincrementaldecodert streamreadert streamwriter( tcodecst CodecInfoRRRRRR R (((sencodings\shift_jisx0213.pyct getregentrys   (t _codecs_jpRt_multibytecodectmbctgetcodecRRtMultibyteIncrementalEncoderRtMultibyteIncrementalDecoderRtMultibyteStreamReaderR tMultibyteStreamWriterR R(((sencodings\shift_jisx0213.pycss   ""PK8nassencodings/string_escape.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdS(sK Python 'escape' Codec Written by Martin v. Lwis (martin@v.loewis.de). iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecst escape_encodetencodet escape_decodetdecode(((sencodings\string_escape.pycR s tIncrementalEncodercBseZedZRS(cCsti||idS(Ni(RRterrors(tselftinputtfinal((sencodings\string_escape.pycRs(RRtFalseR(((sencodings\string_escape.pycRstIncrementalDecodercBseZedZRS(cCsti||idS(Ni(RRR (R R R ((sencodings\string_escape.pycRs(RRR R(((sencodings\string_escape.pycRst StreamWritercBseZRS((RR(((sencodings\string_escape.pycRst StreamReadercBseZRS((RR(((sencodings\string_escape.pycRscCs:tidddtidtidtdtdtdtS( Ntnames string-escapeRRtincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRRRRRR(((sencodings\string_escape.pyct getregentrys   (t__doc__RRRRRRR(((sencodings\string_escape.pycss PK8 encodings/tis_620.pyc Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdZei eZ dS(sh Python Character Mapping Codec tis_620 generated from 'python-mappings/TIS-620.TXT' with gencodec.py. iNtCodeccBs eZddZddZRS(tstrictcCsti||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sencodings\tis_620.pyctencode scCsti||tS(N(Rtcharmap_decodetdecoding_table(RRR((sencodings\tis_620.pyctdecodes(t__name__t __module__RR (((sencodings\tis_620.pycR s tIncrementalEncodercBseZedZRS(cCsti||itdS(Ni(RRRR(RRtfinal((sencodings\tis_620.pycRs(R R tFalseR(((sencodings\tis_620.pycRstIncrementalDecodercBseZedZRS(cCsti||itdS(Ni(RR RR (RRR((sencodings\tis_620.pycR s(R R RR (((sencodings\tis_620.pycRst StreamWritercBseZRS((R R (((sencodings\tis_620.pycRst StreamReadercBseZRS((R R (((sencodings\tis_620.pycRscCs@tidddtidtidtdtdtdtS( Ntnamestis-620RR tincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRR RRRR(((sencodings\tis_620.pyct getregentry!s   u  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ￾กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู￾￾￾￾฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛￾￾￾￾( t__doc__RRRRRRRR t charmap_buildR(((sencodings\tis_620.pycss  PK8X7_ _ encodings/undefined.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdS(s5 Python 'undefined' Codec This codec will always raise a ValueError exception when being used. It is intended for use by the site.py file to switch off automatic string to Unicode coercion. Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtCodeccBs eZddZddZRS(tstrictcCstddS(Nsundefined encoding(t UnicodeError(tselftinputterrors((sencodings\undefined.pyctencodescCstddS(Nsundefined encoding(R(RRR((sencodings\undefined.pyctdecodes(t__name__t __module__RR(((sencodings\undefined.pycRs tIncrementalEncodercBseZedZRS(cCstddS(Nsundefined encoding(R(RRtfinal((sencodings\undefined.pycRs(RR tFalseR(((sencodings\undefined.pycR stIncrementalDecodercBseZedZRS(cCstddS(Nsundefined encoding(R(RRR ((sencodings\undefined.pycRs(RR R R(((sencodings\undefined.pycR st StreamWritercBseZRS((RR (((sencodings\undefined.pycR st StreamReadercBseZRS((RR (((sencodings\undefined.pycR#scCs@tidddtidtidtdtdtdtS( Ntnamet undefinedRRtincrementalencodertincrementaldecodert streamwritert streamreader( tcodecst CodecInfoRRRR R RR(((sencodings\undefined.pyct getregentry(s   (t__doc__RRR R RRR(((sencodings\undefined.pycs s PK8] 'xencodings/unicode_escape.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdS(s Python 'unicode-escape' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecstunicode_escape_encodetencodetunicode_escape_decodetdecode(((sencodings\unicode_escape.pycR s tIncrementalEncodercBseZedZRS(cCsti||idS(Ni(RRterrors(tselftinputtfinal((sencodings\unicode_escape.pycRs(RRtFalseR(((sencodings\unicode_escape.pycRstIncrementalDecodercBseZedZRS(cCsti||idS(Ni(RRR (R R R ((sencodings\unicode_escape.pycRs(RRR R(((sencodings\unicode_escape.pycRst StreamWritercBseZRS((RR(((sencodings\unicode_escape.pycRst StreamReadercBseZRS((RR(((sencodings\unicode_escape.pycRscCs:tidddtidtidtdtdtdtS( Ntnamesunicode-escapeRRtincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRRRRRR(((sencodings\unicode_escape.pyct getregentry$s   (t__doc__RRRRRRR(((sencodings\unicode_escape.pycss PK8 ºencodings/unicode_internal.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdS(s Python 'unicode-internal' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecstunicode_internal_encodetencodetunicode_internal_decodetdecode(((sencodings\unicode_internal.pycR s tIncrementalEncodercBseZedZRS(cCsti||idS(Ni(RRterrors(tselftinputtfinal((sencodings\unicode_internal.pycRs(RRtFalseR(((sencodings\unicode_internal.pycRstIncrementalDecodercBseZedZRS(cCsti||idS(Ni(RRR (R R R ((sencodings\unicode_internal.pycRs(RRR R(((sencodings\unicode_internal.pycRst StreamWritercBseZRS((RR(((sencodings\unicode_internal.pycRst StreamReadercBseZRS((RR(((sencodings\unicode_internal.pycRscCs:tidddtidtidtdtdtdtS( Ntnamesunicode-internalRRtincrementalencodertincrementaldecodert streamwritert streamreader( Rt CodecInfoRRRRRRR(((sencodings\unicode_internal.pyct getregentry$s   (t__doc__RRRRRRR(((sencodings\unicode_internal.pycss PK8,ۡencodings/utf_16.pyc 5#Dc@sdZddkZddkZeiZddZdeifdYZdeifdYZd ei fd YZ d ei fd YZ d Z dS(s Python 'utf-16' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtstrictcCsti||tS(N(tcodecst utf_16_decodetTrue(tinputterrors((sencodings\utf_16.pyctdecodestIncrementalEncodercBs)eZddZedZdZRS(RcCs tii||d|_dS(N(RRt__init__tNonetencoder(tselfR((sencodings\utf_16.pycRscCst|idjoMti||id}tidjoti|_n ti|_|Sn|i||idS(Nitlittle( R R Rt utf_16_encodeRtsyst byteordertutf_16_le_encodetutf_16_be_encode(R Rtfinaltresult((sencodings\utf_16.pyctencodes cCstii|d|_dS(N(RRtresetR R (R ((sencodings\utf_16.pycR!s(t__name__t __module__RtFalseRR(((sencodings\utf_16.pycRs  tIncrementalDecodercBs&eZddZdZdZRS(RcCs tii||d|_dS(N(RtBufferedIncrementalDecoderRR tdecoder(R R((sencodings\utf_16.pycR&scCs|idjoti||d|\}}}|djoti|_n;|djoti|_n|djotdn||fSn|i||i|S(Niiiis%UTF-16 stream does not start with BOM(RR Rtutf_16_ex_decodetutf_16_le_decodetutf_16_be_decodet UnicodeErrorR(R RRRtoutputtconsumedR((sencodings\utf_16.pyct_buffer_decode*s!   cCstii|d|_dS(N(RRRR R(R ((sencodings\utf_16.pycR7s(RRRR"R(((sencodings\utf_16.pycR%s  t StreamWritercBs eZddZddZRS(RcCs#t|_tii|||dS(N(Rt bom_writtenRR#R(R tstreamR((sencodings\utf_16.pycR<s cCsKt|_ti||}tidjoti|_n ti|_|S(NR ( RR$RR RRRRR(R RRR((sencodings\utf_16.pycR@s   (RRRR(((sencodings\utf_16.pycR#;s t StreamReadercBseZdZddZRS(cCs4tii|y |`Wntj onXdS(N(RR&RRtAttributeError(R ((sencodings\utf_16.pycRKs  RcCsti||dt\}}}|djoti|_n8|djoti|_n|djo tdn||fS(Niiiis%UTF-16 stream does not start with BOM(RRRRRRR(R RRtobjectR!R((sencodings\utf_16.pycRRs!    (RRRR(((sencodings\utf_16.pycR&Is cCs4tidddtdtdtdtdtdtS( Ntnamesutf-16RRtincrementalencodertincrementaldecodert streamreadert streamwriter(Rt CodecInfoRRRRR&R#(((sencodings\utf_16.pyct getregentry_s ( t__doc__RRR RRRRRR#R&R/(((sencodings\utf_16.pycss  PK8XP>>encodings/utf_16_be.pyc 5#Dc@sdZddkZeiZddZdeifdYZdeifdYZd eifd YZd ei fd YZ d Z dS(s Python 'utf-16-be' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtstrictcCsti||tS(N(tcodecstutf_16_be_decodetTrue(tinputterrors((sencodings\utf_16_be.pyctdecodestIncrementalEncodercBseZedZRS(cCsti||idS(Ni(Rtutf_16_be_encodeR(tselfRtfinal((sencodings\utf_16_be.pyctencodes(t__name__t __module__tFalseR (((sencodings\utf_16_be.pycRstIncrementalDecodercBseZeiZRS((R R RRt_buffer_decode(((sencodings\utf_16_be.pycRst StreamWritercBseZeiZRS((R R RRR (((sencodings\utf_16_be.pycRst StreamReadercBseZeiZRS((R R RRR(((sencodings\utf_16_be.pycRscCs4tidddtdtdtdtdtdtS( Ntnames utf-16-beR Rtincrementalencodertincrementaldecodert streamreadert streamwriter(Rt CodecInfoR RRRRR(((sencodings\utf_16_be.pyct getregentry!s ( t__doc__RRR RRtBufferedIncrementalDecoderRRRR(((sencodings\utf_16_be.pycss   PK8q>>encodings/utf_16_le.pyc 5#Dc@sdZddkZeiZddZdeifdYZdeifdYZd eifd YZd ei fd YZ d Z dS(s Python 'utf-16-le' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtstrictcCsti||tS(N(tcodecstutf_16_le_decodetTrue(tinputterrors((sencodings\utf_16_le.pyctdecodestIncrementalEncodercBseZedZRS(cCsti||idS(Ni(Rtutf_16_le_encodeR(tselfRtfinal((sencodings\utf_16_le.pyctencodes(t__name__t __module__tFalseR (((sencodings\utf_16_le.pycRstIncrementalDecodercBseZeiZRS((R R RRt_buffer_decode(((sencodings\utf_16_le.pycRst StreamWritercBseZeiZRS((R R RRR (((sencodings\utf_16_le.pycRst StreamReadercBseZeiZRS((R R RRR(((sencodings\utf_16_le.pycRscCs4tidddtdtdtdtdtdtS( Ntnames utf-16-leR Rtincrementalencodertincrementaldecodert streamreadert streamwriter(Rt CodecInfoR RRRRR(((sencodings\utf_16_le.pyct getregentry!s ( t__doc__RRR RRtBufferedIncrementalDecoderRRRR(((sencodings\utf_16_le.pycss   PK8==encodings/utf_7.pyc 5#Dc@sdZddkZdeifdYZdeifdYZdeifdYZd eeifd YZd eeifd YZd ZdS(sF Python 'utf-7' Codec Written by Brian Quinlan (brian@sweetapp.com). iNtCodeccBseZeiZeiZRS((t__name__t __module__tcodecst utf_7_encodetencodet utf_7_decodetdecode(((sencodings\utf_7.pycR s tIncrementalEncodercBseZedZRS(cCsti||idS(Ni(RRterrors(tselftinputtfinal((sencodings\utf_7.pycRs(RRtFalseR(((sencodings\utf_7.pycRstIncrementalDecodercBseZdZRS(cCsti||iS(N(RRR (R R R R ((sencodings\utf_7.pyct_buffer_decodes(RRR(((sencodings\utf_7.pycRst StreamWritercBseZRS((RR(((sencodings\utf_7.pycRst StreamReadercBseZRS((RR(((sencodings\utf_7.pycRscCs:tidddtidtidtdtdtdtS( Ntnamesutf-7RRtincrementalencodertincrementaldecodert streamreadert streamwriter( Rt CodecInfoRRRRRRR(((sencodings\utf_7.pyct getregentry s   ( t__doc__RRRtBufferedIncrementalDecoderRRRR(((sencodings\utf_7.pycss PK8-encodings/utf_8.pyc 5#Dc@sdZddkZeiZddZdeifdYZdeifdYZd eifd YZd ei fd YZ d Z dS(s Python 'utf-8' Codec Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. iNtstrictcCsti||tS(N(tcodecst utf_8_decodetTrue(tinputterrors((sencodings\utf_8.pyctdecodestIncrementalEncodercBseZedZRS(cCsti||idS(Ni(Rt utf_8_encodeR(tselfRtfinal((sencodings\utf_8.pyctencodes(t__name__t __module__tFalseR (((sencodings\utf_8.pycRstIncrementalDecodercBseZeiZRS((R R RRt_buffer_decode(((sencodings\utf_8.pycRst StreamWritercBseZeiZRS((R R RRR (((sencodings\utf_8.pycRst StreamReadercBseZeiZRS((R R RRR(((sencodings\utf_8.pycRscCs4tidddtdtdtdtdtdtS( Ntnamesutf-8R Rtincrementalencodertincrementaldecodert streamreadert streamwriter(Rt CodecInfoR RRRRR(((sencodings\utf_8.pyct getregentry!s ( t__doc__RRR RRtBufferedIncrementalDecoderRRRR(((sencodings\utf_8.pycss   PK8!!encodings/utf_8_sig.pyc Z]Gc@sdZddkZddZddZdeifdYZdeifd YZd eifd YZd eifd YZdZ dS(s Python 'utf-8-sig' Codec This work similar to UTF-8 with the following changes: * On encoding/writing a UTF-8 encoded BOM will be prepended/written as the first three bytes. * On decoding/reading if the first three bytes are a UTF-8 encoded BOM, these bytes will be skipped. iNtstrictcCs'titi||dt|fS(Ni(tcodecstBOM_UTF8t utf_8_encodetlen(tinputterrors((sencodings\utf_8_sig.pyctencodescCsWd}|d tijo|d}d}nti||t\}}|||fS(Nii(RRt utf_8_decodetTrue(RRtprefixtoutputtconsumed((sencodings\utf_8_sig.pyctdecodes   tIncrementalEncodercBs)eZddZedZdZRS(RcCs tii||t|_dS(N(RRt__init__R tfirst(tselfR((sencodings\utf_8_sig.pycRscCsP|io+t|_titi||idSnti||idSdS(Ni(RtFalseRRRR(RRtfinal((sencodings\utf_8_sig.pycRs  "cCstii|t|_dS(N(RRtresetR R(R((sencodings\utf_8_sig.pycR%s(t__name__t __module__RRRR(((sencodings\utf_8_sig.pycRs  tIncrementalDecodercBs&eZddZdZdZRS(RcCs tii||t|_dS(N(RtBufferedIncrementalDecoderRR R(RR((sencodings\utf_8_sig.pycR*scCs|iot|djo(tii|odSqd|_qd|_|d tijo1ti|d||\}}||dfSqnti|||S(Niui(ui(RRRRt startswithtNoneR(RRRRR R ((sencodings\utf_8_sig.pyct_buffer_decode.s   cCstii|t|_dS(N(RRRR R(R((sencodings\utf_8_sig.pycR>s(RRRRR(((sencodings\utf_8_sig.pycR)s  t StreamWritercBseZdZddZRS(cCs4tii|y |`Wntj onXdS(N(RRRRtAttributeError(R((sencodings\utf_8_sig.pycRCs  RcCsti|_t||S(N(RRR(RRR((sencodings\utf_8_sig.pycRJs (RRRR(((sencodings\utf_8_sig.pycRBs t StreamReadercBseZdZddZRS(cCs4tii|y |`Wntj onXdS(N(RRRR R(R((sencodings\utf_8_sig.pycROs  RcCst|djotii|odSqnO|d tijo:ti|_ti|d|\}}||dfSnti|_ti||S(Niui(ui(RRRRRR (RRRR R ((sencodings\utf_8_sig.pycR Vs   (RRRR (((sencodings\utf_8_sig.pycRNs cCs4tidddtdtdtdtdtdtS( Ntnames utf-8-sigRR tincrementalencodertincrementaldecodert streamreadert streamwriter(Rt CodecInfoRR RRRR(((sencodings\utf_8_sig.pyct getregentryfs ( t__doc__RRR RRRRRR%(((sencodings\utf_8_sig.pycs s    PK8볩  encodings/uu_codec.pyc HDc@sdZddkZddkZddddZddZdeifd YZd eifd YZd eifd YZdeeifdYZdeei fdYZ dZ dS(sz Python 'uu_codec' Codec - UU content transfer encoding Unlike most of the other codecs which target Unicode, this codec will return Python string objects for both encode and decode. Written by Marc-Andre Lemburg (mal@lemburg.com). Some details were adapted from uu.py which was written by Lance Ellinghouse and modified by Jack Jansen and Fredrik Lundh. iNtstrictsic Cs|djptddkl}ddkl}||}|}|i}|i} | d|d@|f|d} x(| o | || |d} qW| d|it|fS( s Encodes the object input and returns a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. Ri(tStringIO(tb2a_uus begin %o %s ii-s end ( tAssertionErrort cStringIORtbinasciiRtreadtwritetgetvaluetlen( tinputterrorstfilenametmodeRRtinfiletoutfileRRtchunk((sencodings\uu_codec.pyct uu_encodes       c CsP|djptddkl}ddkl}||}|}|i}|i}x6|}|p tdn|d djoPq^q^x|}| p |djoPny||} WnLtij o=} t |d d d @d dd } ||| } nX|| q|p tdn|i t |fS(s# Decodes the object input and returns a tuple (output object, length consumed). input must be an object which provides the bf_getreadbuf buffer slot. Python strings, buffer objects and memory mapped files are examples of objects providing this slot. errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. Note: filename and file mode information in the input data is ignored. Ri(R(ta2b_uus"Missing "begin" line in input dataitbeginsend ii i?iisTruncated input data( RRRRRtreadlineRt ValueErrortErrortordRR ( R R RRRRRRtstdatatvtnbytes((sencodings\uu_codec.pyct uu_decode+s6        $  tCodeccBs eZddZddZRS(RcCs t||S(N(R(tselfR R ((sencodings\uu_codec.pyctencodeascCs t||S(N(R(RR R ((sencodings\uu_codec.pyctdecodeds(t__name__t __module__RR (((sencodings\uu_codec.pycR_s tIncrementalEncodercBseZedZRS(cCst||idS(Ni(RR (RR tfinal((sencodings\uu_codec.pycRhs(R!R"tFalseR(((sencodings\uu_codec.pycR#gstIncrementalDecodercBseZedZRS(cCst||idS(Ni(RR (RR R$((sencodings\uu_codec.pycR ls(R!R"R%R (((sencodings\uu_codec.pycR&kst StreamWritercBseZRS((R!R"(((sencodings\uu_codec.pycR'ost StreamReadercBseZRS((R!R"(((sencodings\uu_codec.pycR(rscCs4tidddtdtdtdtdtdtS( NtnametuuRR tincrementalencodertincrementaldecodert streamreadert streamwriter(tcodecst CodecInfoRRR#R&R(R'(((sencodings\uu_codec.pyct getregentryws ( t__doc__R/RRRRR#R&R'R(R1(((sencodings\uu_codec.pycs s 4PK8|(ؿencodings/zlib_codec.pyc Ec@sdZddkZddkZddZddZdeifdYZdeifd YZd eifd YZd eeifd YZdeei fdYZ dZ dS(s Python 'zlib_codec' Codec - zlib compression encoding Unlike most of the other codecs which target Unicode, this codec will return Python string objects for both encode and decode. Written by Marc-Andre Lemburg (mal@lemburg.com). iNtstrictcCs3|djptti|}|t|fS(s Encodes the object input and returns a tuple (output object, length consumed). errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(tAssertionErrortzlibtcompresstlen(tinputterrorstoutput((sencodings\zlib_codec.pyct zlib_encodes cCs3|djptti|}|t|fS(s Decodes the object input and returns a tuple (output object, length consumed). input must be an object which provides the bf_getreadbuf buffer slot. Python strings, buffer objects and memory mapped files are examples of objects providing this slot. errors defines the error handling to apply. It defaults to 'strict' handling which is the only currently supported error handling for this codec. R(RRt decompressR(RRR((sencodings\zlib_codec.pyct zlib_decodestCodeccBs eZddZddZRS(RcCs t||S(N(R(tselfRR((sencodings\zlib_codec.pyctencode0scCs t||S(N(R (R RR((sencodings\zlib_codec.pyctdecode2s(t__name__t __module__R R(((sencodings\zlib_codec.pycR .s tIncrementalEncodercBs)eZddZedZdZRS(RcCs0|djpt||_ti|_dS(NR(RRRt compressobj(R R((sencodings\zlib_codec.pyct__init__6s cCsB|o'|ii|}||iiSn|ii|SdS(N(RRtflush(R Rtfinaltc((sencodings\zlib_codec.pycR ;scCsti|_dS(N(RR(R ((sencodings\zlib_codec.pyctresetBs(RRRtFalseR R(((sencodings\zlib_codec.pycR5s  tIncrementalDecodercBs)eZddZedZdZRS(RcCs0|djpt||_ti|_dS(NR(RRRt decompressobj(R R((sencodings\zlib_codec.pycRFs cCsB|o'|ii|}||iiSn|ii|SdS(N(RR R(R RRR((sencodings\zlib_codec.pycRKscCsti|_dS(N(RR(R ((sencodings\zlib_codec.pycRRs(RRRRRR(((sencodings\zlib_codec.pycREs  t StreamWritercBseZRS((RR(((sencodings\zlib_codec.pycRUst StreamReadercBseZRS((RR(((sencodings\zlib_codec.pycRXscCs4tidddtdtdtdtdtdtS( NtnameRR Rtincrementalencodertincrementaldecodert streamreadert streamwriter(tcodecst CodecInfoRR RRRR(((sencodings\zlib_codec.pyct getregentry]s ( t__doc__R"RRR R RRRRR$(((sencodings\zlib_codec.pycss    PK8X҅ getopt.pyc opts, args Parses command line options and parameter list. args is the argument list to be parsed, without the leading reference to the running program. Typically, this means "sys.argv[1:]". shortopts is the string of option letters that the script wants to recognize, with options that require an argument followed by a colon (i.e., the same format that Unix getopt() uses). If specified, longopts is a list of strings with the names of the long options which should be supported. The leading '--' characters should not be included in the option name. Options which require an argument should be followed by an equal sign ('='). The return value consists of two elements: the first is a list of (option, value) pairs; the second is the list of program arguments left after the option list was stripped (this is a trailing slice of the first argument). Each option-and-value pair returned has the option as its first element, prefixed with a hyphen (e.g., '-x'), and the option argument as its second element, or an empty string if the option has no argument. The options occur in the list in the same order in which they were found, thus allowing multiple occurrences. Long and short options may be mixed. Rit-s--ii(ttypetlistt startswithtdo_longst do_shorts(targst shortoptstlongoptstopts((s getopt.pycR4s  , +,c Csjg}g}t|to |g}n t|}|ido|d}t}n$tiido t}nt}x|o|ddjo||d7}Pn|dd djo+t ||dd||d\}}q|dd djo+t ||dd||d\}}q|o||7}Pq|i |d|d}qW||fS(sgetopt(args, options[, long_options]) -> opts, args This function works like getopt(), except that GNU style scanning mode is used by default. This means that option and non-option arguments may be intermixed. The getopt() function stops processing options as soon as a non-option argument is encountered. If the first character of the option string is `+', or if the environment variable POSIXLY_CORRECT is set, then option processing stops as soon as a non-option argument is encountered. t+itPOSIXLY_CORRECTis--iR ( t isinstancetstrRRtTruetostenvirontgettFalseRRtappend(RRRRt prog_argstall_options_first((s getopt.pycR_s4     ++ c Csy|id}Wntj o d}nX|| ||d}}t||\}}|oH|djo7|ptd||n|d|d}}qn|otd||n|id||pdf||fS(Nt=isoption --%s requires argumentis%option --%s must not have an arguments--R(tindext ValueErrortNonet long_has_argsRR (RRRRtitoptargthas_arg((s getopt.pycRs  cCs g}|D]!}|i|o ||q q ~}|ptd||n||jot|fSn |d|jot|fSnt|djotd||nt|djpt|d}|id}|o|d }n||fS(Nsoption --%s not recognizedR#isoption --%s not a unique prefixii(RRRRtlentAssertionErrortendswith(RRt_[1]tot possibilitiest unique_matchR*((s getopt.pycR's5  cCsx|djo|d|d}}t||oU|djo7|ptd||n|d|d}}n|d}}nd}|id||fqW||fS(NRiisoption -%s requires argumentR (t short_has_argRR (Rt optstringRRRR)((s getopt.pycRs    cCsnxTtt|D]@}|||jo djno|id|dSqqWtd||dS(Nt:isoption -%s not recognized(trangeR+RR(RRR(((s getopt.pycR2s "t__main__isa:bsalpha=tbeta(t__doc__t__all__RRRRRRRR'RR2R tsystargv(((s getopt.pycss   + 2      PK8ǁ:: gettext.pyc Cc@sdZddkZddkZddkZddkZddkZddkZddklZdddddd d d d d ddg Z ei i ei ddZ dZdZdZdd'dYZdefdYZddddZhZdddeddZdedddZhahadaddZddZddZdZd Z d!Z!d"Z"d#Z#d$Z$d%Z%d&Z&eZ'dS((sInternationalization and localization support. This module provides internationalization (I18N) and localization (L10N) support for your Python programs by providing an interface to the GNU gettext message catalog library. I18N refers to the operation by which a program is made aware of multiple languages. L10N refers to the adaptation of your program, once internationalized, to the local language and cultural habits. iN(tENOENTtNullTranslationstGNUTranslationstCatalogtfindt translationtinstallt textdomaintbindtextdomaintdgettextt dngettexttgettexttngettexttsharetlocalecCs|o|Sn|SdS(sy Implements the C expression: condition ? true : false Required to correctly interpret plural forms. N((t conditionttruetfalse((s gettext.pycttest=sc syddkl}Wn#tj oddkl}nXddk}ddk}|i||i}yNg}|D]6}|d|ijo|ddjo ||qxqx~}Wn|ij ot dnX|o t dn|i d d }|i d d }t i d i d|}t i dfddg}x|D]} | djo|idqd| djoPt|djo t dni |i} |dcd| 7 ss4Is>IIsBad magic numberisFile is corruptt:is s content-typescharset=s plural-formst;splural=tN(tstructtunpacktgetattrt_catalogR-treadR*tLE_MAGICtBE_MAGICtIOErrortxrangeRIt splitlineststriptsplittlowerRHRJR4RYR9(RNRORntfilenametcatalogtbuftbuflentmagictversiontmsgcountt masteridxttransidxtiiREtmlentmofftmendttlenttoffttendtmsgttmsgtlastktktitemtvR-RURVR/R((s gettext.pycRMsx     " "                  1   cCst}|ii||}||jo&|io|ii|Sn|Sn|io|i|iSn|io|i|iSn|S(N(tobjectRptgetRLR RKtencodeRJ(RNRStmissingR((s gettext.pycR Ws     cCst}|ii||}||jo&|io|ii|Sn|Sn|io|i|iSn|itiS(N( RRpRRLRTRKRRtgetpreferredencoding(RNRSRR((s gettext.pycRTes    cCsy`|i||i|f}|io|i|iSn|io|i|iSn|SWnPtj oD|io|ii|||Sn|djo|Sq|SnXdS(Ni(RpR-RKRRJtKeyErrorRLR (RNRURVRR((s gettext.pycR ps    cCsyQ|i||i|f}|io|i|iSn|itiSWnPtj oD|io|ii|||Sn|djo|Sq|SnXdS(Ni( RpR-RKRRRRRLRW(RNRURVRR((s gettext.pycRWs   cCs[t}|ii||}||jo,|io|ii|Snt|Sn|S(N(RRpRRLRXRY(RNRSRR((s gettext.pycRXs   cCsy |i||i|f}Wn`tj oT|io|ii|||Sn|djot|}qt|}nX|S(Ni(RpR-RRLRZRY(RNRURVRR((s gettext.pycRZs   ( RdReRrRsRMR RTR RWRXRZ(((s gettext.pycRs Q    ic Csf|djo t}n|djofg}x;dD]3}tii|}|o|id}Pq1q1Wd|jo|idqng}xC|D];}x2t|D]$}||jo|i|qqWqW|o g} nd} xr|D]j}|djoPntii ||dd|} tii | o |o| i| q^| SqqW| S( NtLANGUAGEtLC_ALLt LC_MESSAGEStLANGRjtCs%s.mo(sLANGUAGEsLC_ALLs LC_MESSAGESsLANG( RIt_default_localedirtostenvironRRxR)RGtpathtjointexists( tdomaint localedirt languagestalltenvarRFtnelangstlangtnelangtresulttmofile((s gettext.pycRs@          c Cs|djo t}nt|||dd}|p(|o tSnttd|nd}x|D]}tii|} t i | } | djo%t i | |t |d} nt i | } |o| i|n|djo | }qk|i| qkW|S(NRis$No translation file found for domaintrb(RIRRRRtRRRtabspatht _translationsRt setdefaulttopentcopyR^RQ( RRRtclass_RRRAtmofilesRRtkeytt((s gettext.pycRs*    %  cCs/t||dtd|}|i||dS(NRRRA(RtTrueR(RRRYRARcR((s gettext.pycRstmessagescCs|dj o |antS(N(RIt_current_domain(R((s gettext.pycRs  cCs+|dj o|t|s(((t__doc__RRRR'RmtsysterrnoRt__all__RRtprefixRRR4RGRRRIRRRfRRRRRRRRR RR RR RTR RWR(((s gettext.pycs s>&H   7 +T&         PK8Ҵ*6*6gzip.pyc Dc @sdZddkZddkZddkZddkZddkZddgZddddd f\ZZZ Z Z ddf\Z Z d Zd Zd Zd ZdZdddZdfdYZdZedjo endS(sFunctions that read and write gzipped files. The user of the file doesn't have to worry about the compression, but random access is not allowed.iNtGzipFiletopeniiiiicCs|djo|d7}n|S(sReturn i as an unsigned integer, assuming it fits in 32 bits. If it's >= 2GB when viewed as a 32-bit unsigned int, return a long. ili l((ti((sgzip.pyctU32s cCs|d@S(s>Return the low-order 32 bits of an int, as a non-negative int.l((R((sgzip.pyctLOWU32scCs|itid|dS(Ns(treprR-thextid(R0ts((sgzip.pyct__repr__scCsY|ddjo|d}n||_tid|_d|_g|_d|_dS(Nis.gzRi(RR&tcrc32tcrctsizetwritebuftbufsize(R0R((sgzip.pycR%s   cCs|iid|iid|id }d}|o t}n|iit|t|itti|iid|iid|o|ii|dndS(Nssiisst(R-RRtFNAMEtchrR tlongttime(R0tfnametflags((sgzip.pycR/s  cCstid|_d|_dS(NRi(R&R9R:R;(R0((sgzip.pyct _init_readscCs|iid}|djo tdnt|iid}|djo tdnt|iid}|iid|t@oLt|iid}|dt|iid}|ii|n|t@o?x<to0|iid}| p |d joPqqWn|t@o?x<to0|iid}| p |d joPq5q5Wn|t@o|iidndS( NissNot a gzipped fileiisUnknown compression methodiiR>( R-R R,tordtFEXTRAR?RtFCOMMENTtFHCRC(R0tmagictmethodtflagtxlenR7((sgzip.pyct_read_gzip_headers4         cCs|itjo"ddk}t|idn|idjo tdnt|djoc|i t||_ t i ||i |_ |ii |ii||it|7_ndS(Nis$write() on read-only GzipFile objects!write() on closed GzipFile objecti(RR$terrnoR,tEBADFR-Rt ValueErrortlenR;R&R9R:RR+R.(R0tdataRO((sgzip.pycRs  ic Csx|itjo"ddk}t|idn|idjo|idjodSnd}|djoYy6x/to'|i |t |i |d}qsWWq8t j o|i}q8Xnsy?x8||ijo'|i |t |i |d}qWWn0t j o$||ijo |i}q8nX|i | }|i ||_ |i||_|i|7_|S(Nis$read() on write-only GzipFile objectiRii(RRROR,RPR"R-RRt_readtmintmax_read_chunktEOFErrorR!R.(R0R;ROtreadsizetchunk((sgzip.pycR s6      cCs?||i|_t||i|_|it|8_dS(N(R!RRR"R.(R0tbuf((sgzip.pyct_unreadscCsv|idjo tdn|io|ii}|iidd||iijo tdn|ii||i|iti ti |_ t |_n|ii |}|djo3|i i}|i|i|tdn|i i |}|i||i idjo;|iit|i i dd|it|_ndS(Ns Reached EOFiiRii(R-RRWR ttelltseekRERNR&t decompressobjR)t decompresstFalseR tflusht _read_eoft_add_read_datat unused_dataRRR(R0R;tposRZt uncompress((sgzip.pycRTs0           $ cCsXti||i|_|i||_|it||_|it||_dS(N(R&R9R:R!R"RRR;(R0RS((sgzip.pycRc'scCs|iiddt|i}tt|i}t|t|ijo tdn$|t|ijo tdndS(NiisCRC check faileds!Incorrect length of data produced(R-R]RRR:R,RR;(R0R9tisize((sgzip.pycRb-s cCs|itjoX|ii|iit|it|it|it|i d|_n|it jo d|_n|i o|i i d|_ ndS(N(RR$R-RR+RaR RR:R;RRRtclose(R0((sgzip.pycRh;s    cCsTy,|idjo|idjodSnWntj o dSnX|idS(N(RRR-tAttributeErrorRh(R0((sgzip.pyct__del__Ns  cCsA|itjo |ii|ii|n|iidS(N(RR$R-RR+Ra(R0t zlib_mode((sgzip.pycRaWs cCs |iiS(sInvoke the underlying file object's fileno() method. This will raise AttributeError if the underlying file object doesn't support fileno(). (R-tfileno(R0((sgzip.pycRl]scCstS(N(R`(R0((sgzip.pyctisattyescCs|iS(N(R.(R0((sgzip.pycR\hscCsX|itjotdn|iidt|_d|_d|_d|_ dS(s[Return the uncompressed stream file position indicator to the beginning of the filesCan't rewind in write modeiRN( RRR,R-R]RR R!R"R.(R0((sgzip.pyctrewindks   cCs|itjor||ijotdn||i}x)t|dD]}|iddqNW|i|ddny|itjoh||ijo|in||i}x%t|dD]}|idqW|i|dndS(NsNegative seek in write modeiR>( RR$R.R,trangeRRRnR (R0R.tcountR((sgzip.pycR]vs   cCsS|djoti}|i}n|}g}x|djo|i|}|id}||jp |djo!t||jo|d}n|djp |djo/|i||d |i||dPn|i||t|}t||d}q2W||ijo t||idd|_ndi |S(Nis iiRii( tsystmaxintR#R tfindRRtappendR[RUtjoin(R0R;RXtbufstcR((sgzip.pyctreadlines*    -  icCst|djo ti}ng}xM|djo?|i}|djoPn|i||t|}q#W|S(NiR(RqRrRxRtRR(R0tsizehinttLtline((sgzip.pyct readliness      cCs"x|D]}|i|qWdS(N(R(R0RzR{((sgzip.pyct writelinesscCs|S(N((R0((sgzip.pyct__iter__scCs%|i}|o|SntdS(N(Rxt StopIteration(R0R{((sgzip.pyctnexts Ni(i(!t__name__t __module__t__doc__RRRVR1R8R%R/RERNRR R[RTRcRbRhRjR&t Z_SYNC_FLUSHRaRlRmR\RnR]RxR|R}R~R(((sgzip.pycR3s:E    "  2            c Cstid}|o|ddj}|o|d}n|p dg}nxm|D]e}|o|djo+tddddd ti}ti}qF|d d jod Gt|GHqTnt|d}ti|d d }n^|djo+ti}tdddd d ti}n&ti|d}t|d d }x4to,|i d}|pPn|i |qIW|tij o|i n|tij o|i qTqTWdS(Niis-dt-RRRRR-is.gzsfilename doesn't end in .gz:twbi( RqtargvRtstdintstdoutR4RRRR RRh(targsR_targtftgRY((sgzip.pyct_tests@      "t__main__(RRRqRBR&Rt__all__tFTEXTRIRGR?RHRR$RRR R RRRRR(((sgzip.pycss"$   $      & PK8~% hashlib.pyc "Ec @sCdZdZddZddZyddkZeZxedeeD]xZee dZ y&e eeZ e e d dUWqUe j o-ye d dUWqe j oqXqUXqUW[ [[ Wnaej oUeZed Zed Zed ZedZedZedZnXdS(shashlib module - A common interface to many hash functions. new(name, string='') - returns a new hash object implementing the given hash function; initializing the hash using the given string data. Named constructor functions are also available, these are much faster than using new(): md5(), sha1(), sha224(), sha256(), sha384(), and sha512() More algorithms may be available on your platform but the above are guaranteed to exist. Choose your hash function wisely. Some have known collision weaknesses. sha384 and sha512 will be slow on 32 bit platforms. Hash objects have these methods: - update(arg): Update the hash object with the string arg. Repeated calls are equivalent to a single call with the concatenation of all the arguments. - digest(): Return the digest of the strings passed to the update() method so far. This may contain non-ASCII characters, including NUL bytes. - hexdigest(): Like digest() except the digest is returned as a string of double length, containing only hexadecimal digits. - copy(): Return a copy (clone) of the hash object. This can be used to efficiently compute the digests of strings that share a common initial substring. For example, to obtain the digest of the string 'Nobody inspects the spammish repetition': >>> import hashlib >>> m = hashlib.md5() >>> m.update("Nobody inspects") >>> m.update(" the spammish repetition") >>> m.digest() 'dɡ' More condensed: >>> hashlib.sha224("Nobody inspects the spammish repetition").hexdigest() 'a4337bc45a8fc544c03f52dc550cd6e1e87021bc896588bd79e901e2' cCs|djoddk}|iSn|djoddk}|iSn|djoJddk}|d }|d jo |iSq|d jo |iSqnX|djoJddk}|d }|djo |iSq|djo |iSqnt ddS(NtSHA1tsha1itMD5tmd5tSHA256tsha256tSHA224tsha224it256t224tSHA512tsha512tSHA384tsha384t512t384sunsupported hash type(sSHA1ssha1(sMD5smd5(sSHA256ssha256sSHA224ssha224(sSHA512ssha512sSHA384ssha384( t_shatnewt_md5t_sha256RRt_sha512R R t ValueError(tnameRRRtbsR((s hashlib.pyct__get_builtin_constructor7s*                  tcCst||S(s|new(name, string='') - Return a new hashing object using the named algorithm; optionally initialized with a string. (R(Rtstring((s hashlib.pyct__py_newPscCs>yti||SWn#tj ot||SnXdS(s|new(name, string='') - Return a new hashing object using the named algorithm; optionally initialized with a string. N(t_hashlibRRR(RR((s hashlib.pyct __hash_newWsiNcCs |idS(topenssl_(t startswith(tn((s hashlib.pyctjsRs = fs& = __get_builtin_constructor(funcName)RRRRR R (t__doc__RRRRRtfiltertdirtopensslFuncNametlentfuncNametgetattrtfRt ImportErrorRRRRR R (((s hashlib.pycs4s:         PK8** heapq.pyc ϰEc@sdZdZddddddgZdd klZlZlZlZlZl Z dd k l Z l Z dd k Z d Zd ZdZdZdZdZdZdZy2ddklZlZlZlZlZlZWnej onXeZd dZeZd dZedjoygZddddddddd d!g ZxeD]ZeeeqfWgZxeoei eeqWeGHnd S("sHeap queue algorithm (a.k.a. priority queue). Heaps are arrays for which a[k] <= a[2*k+1] and a[k] <= a[2*k+2] for all k, counting elements from 0. For the sake of comparison, non-existing elements are considered to be infinite. The interesting property of a heap is that a[0] is always its smallest element. Usage: heap = [] # creates an empty heap heappush(heap, item) # pushes a new item on the heap item = heappop(heap) # pops the smallest item from the heap item = heap[0] # smallest item on the heap without popping it heapify(x) # transforms list into a heap, in-place, in linear time item = heapreplace(heap, item) # pops and returns smallest item, and adds # new item; the heap size is unchanged Our API differs from textbook heap algorithms as follows: - We use 0-based indexing. This makes the relationship between the index for a node and the indexes for its children slightly less obvious, but is more suitable since Python uses 0-based indexing. - Our heappop() method returns the smallest item, not the largest. These two make it possible to view the heap as a regular Python list without surprises: heap[0] is the smallest item, and heap.sort() maintains the heap invariant! soHeap queues [explanation by Franois Pinard] Heaps are arrays for which a[k] <= a[2*k+1] and a[k] <= a[2*k+2] for all k, counting elements from 0. For the sake of comparison, non-existing elements are considered to be infinite. The interesting property of a heap is that a[0] is always its smallest element. The strange invariant above is meant to be an efficient memory representation for a tournament. The numbers below are `k', not a[k]: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 In the tree above, each cell `k' is topping `2*k+1' and `2*k+2'. In an usual binary tournament we see in sports, each cell is the winner over the two cells it tops, and we can trace the winner down the tree to see all opponents s/he had. However, in many computer applications of such tournaments, we do not need to trace the history of a winner. To be more memory efficient, when a winner is promoted, we try to replace it by something else at a lower level, and the rule becomes that a cell and the two cells it tops contain three different items, but the top cell "wins" over the two topped cells. If this heap invariant is protected at all time, index 0 is clearly the overall winner. The simplest algorithmic way to remove it and find the "next" winner is to move some loser (let's say cell 30 in the diagram above) into the 0 position, and then percolate this new 0 down the tree, exchanging values, until the invariant is re-established. This is clearly logarithmic on the total number of items in the tree. By iterating over all items, you get an O(n ln n) sort. A nice feature of this sort is that you can efficiently insert new items while the sort is going on, provided that the inserted items are not "better" than the last 0'th element you extracted. This is especially useful in simulation contexts, where the tree holds all incoming events, and the "win" condition means the smallest scheduled time. When an event schedule other events for execution, they are scheduled into the future, so they can easily go into the heap. So, a heap is a good structure for implementing schedulers (this is what I used for my MIDI sequencer :-). Various structures for implementing schedulers have been extensively studied, and heaps are good for this, as they are reasonably speedy, the speed is almost constant, and the worst case is not much different than the average case. However, there are other representations which are more efficient overall, yet the worst cases might be terrible. Heaps are also very useful in big disk sorts. You most probably all know that a big sort implies producing "runs" (which are pre-sorted sequences, which size is usually related to the amount of CPU memory), followed by a merging passes for these runs, which merging is often very cleverly organised[1]. It is very important that the initial sort produces the longest runs possible. Tournaments are a good way to that. If, using all the memory available to hold a tournament, you replace and percolate items that happen to fit the current run, you'll produce runs which are twice the size of the memory for random input, and much better for input fuzzily ordered. Moreover, if you output the 0'th item on disk and get an input which may not fit in the current tournament (because the value "wins" over the last output value), it cannot fit in the heap, so the size of the heap decreases. The freed memory could be cleverly reused immediately for progressively building a second heap, which grows at exactly the same rate the first heap is melting. When the first heap completely vanishes, you switch heaps and start a new run. Clever and quite effective! In a word, heaps are useful memory structures to know. I use them in a few applications, and I think it is good to keep a `heap' module around. :-) -------------------- [1] The disk balancing algorithms which are current, nowadays, are more annoying than clever, and this is a consequence of the seeking capabilities of the disks. On devices which cannot seek, like big tape drives, the story was quite different, and one had to be very clever to ensure (far in advance) that each tape movement will be the most effective possible (that is, will best participate at "progressing" the merge). Some tapes were even able to read backwards, and this was also used to avoid the rewinding time. Believe me, real good tape sorts were quite spectacular to watch! From all times, sorting has always been a Great Art! :-) theappushtheappoptheapifyt heapreplacetnlargestt nsmallesti(tislicetrepeattcounttimaptizipttee(t itemgettertnegNcCs+|i|t|dt|ddS(s4Push item onto heap, maintaining the heap invariant.iiN(tappendt _siftdowntlen(theaptitem((s heapq.pycRs cCsB|i}|o%|d}||d heap[0]: item = heapreplace(heap, item) i(R(RRR((s heapq.pycRs   cCs>t|}x+tt|dD]}t||q#WdS(s;Transform list into a heap, in-place, in O(len(heap)) time.iN(RtreversedtxrangeR(txtnti((s heapq.pycRs cCst|}tt||}|p|Snt|t}|d}x9|D]1}||joqQn||||d}qQW|idt|S(sfFind the n largest elements in a dataset. Equivalent to: sorted(iterable, reverse=True)[:n] itreverse(titertlistRRRtsorttTrue(Rtiterabletittresultt _heapreplacetsoltelem((s heapq.pycRs     c Cst|do|dt|jot|}tt|d|}|p|Snti}|i}|d}x@|D]8}||joq}n|||||d}q}W|Snt|}t |t t t |t |t|S(sYFind the n smallest elements in a dataset. Equivalent to: sorted(iterable)[:n] t__len__i ii(thasattrRRtsortedRtbisecttinsortRRRtmapRRtmin( RR!R"R#R+RtlosR&th((s heapq.pycRs&'        cCsg||}xL||jo>|dd?}||}||joPn|||<|}q W|||sB` .     " 4 2  $PK8f/z inspect.pyc Z]Gc@sdZdZdZddkZddkZddkZddkZddkZddkZddk Z ddk Z ddk Z ddk l Z dZdZdZd Zd Zeed o d Zn d Zeedo dZn dZdZdZdZdZdZdZddZdZdZdZ dZ!dZ"dZ#dZ$dZ%d Z&dd!Z'hZ(hZ)dd"Z*d#Z+d$Z,d%e-fd&YZ.d'dFd(YZ/d)Z0d*Z1d+Z2d,Z3d-d.Z4dG\Z5Z6Z7Z8d3Z9d4Z:d5Z;d6Z<e<d7Z=ddde>d8d9d:e<d;Z?e>d<d=d>e<d?Z@d/d@ZAdAZBd/dBZCd/dCZDeiEZFd/dDZGd/dEZHdS(HsuGet useful information from live Python objects. This module encapsulates the interface provided by the internal special attributes (func_*, co_*, im_*, tb_*, etc.) in a friendlier fashion. It also provides some help for examining source code and class layout. Here are some of the useful functions provided by this module: ismodule(), isclass(), ismethod(), isfunction(), istraceback(), isframe(), iscode(), isbuiltin(), isroutine() - check object types getmembers() - get members of an object that satisfy a given condition getfile(), getsourcefile(), getsource() - find an object's source code getdoc(), getcomments() - get documentation on an object getmodule() - determine the module that an object came from getclasstree() - arrange classes so as to represent their hierarchy getargspec(), getargvalues() - get info about function arguments formatargspec(), formatargvalues() - format an argument spec getouterframes(), getinnerframes() - get info about frames currentframe() - get the current stack frame stack(), trace() - get info about frames on the stack or in a traceback sKa-Ping Yee s 1 Jan 2001iN(t attrgettercCst|tiS(sReturn true if the object is a module. Module objects provide these attributes: __doc__ documentation string __file__ filename (missing for built-in modules)(t isinstancettypest ModuleType(tobject((s inspect.pyctismodule#scCs t|tip t|dS(sReturn true if the object is a class. Class objects provide these attributes: __doc__ documentation string __module__ name of module in which this class was definedt __bases__(RRt ClassTypethasattr(R((s inspect.pyctisclass+scCst|tiS(sReturn true if the object is an instance method. Instance method objects provide these attributes: __doc__ documentation string __name__ name with which this method was defined im_class class object in which this method belongs im_func function object containing implementation of method im_self instance to which this method is bound, or None(RRt MethodType(R((s inspect.pyctismethod3s cCsHt|do8t|d o't| ot| o t| S(sReturn true if the object is a method descriptor. But not if ismethod() or isclass() or isfunction() are true. This is new in Python 2.2, and, for example, is true of int.__add__. An object passing this test has a __get__ attribute but not a __set__ attribute, but beyond that the set of attributes varies. __name__ is usually sensible, and __doc__ often is. Methods implemented via descriptors that also pass one of the other tests return false from the ismethoddescriptor() test, simply because the other tests promise more -- you can, e.g., count on having the im_func attribute (etc) when an object passes ismethod().t__get__t__set__(RR t isfunctionR (R((s inspect.pyctismethoddescriptor>s cCst|do t|dS(sReturn true if the object is a data descriptor. Data descriptors have both a __get__ and a __set__ attribute. Examples are properties (defined in Python) and getsets and members (defined in C). Typically, data descriptors will also have __name__ and __doc__ attributes (properties, getsets, and members have both of these attributes), but this is not guaranteed.R R (R(R((s inspect.pyctisdatadescriptorRstMemberDescriptorTypecCst|tiS(sReturn true if the object is a member descriptor. Member descriptors are specialized descriptors defined in extension modules.(RRR(R((s inspect.pyctismemberdescriptor^scCstS(sReturn true if the object is a member descriptor. Member descriptors are specialized descriptors defined in extension modules.(tFalse(R((s inspect.pycRfstGetSetDescriptorTypecCst|tiS(sReturn true if the object is a getset descriptor. getset descriptors are specialized descriptors defined in extension modules.(RRR(R((s inspect.pyctisgetsetdescriptoroscCstS(sReturn true if the object is a getset descriptor. getset descriptors are specialized descriptors defined in extension modules.(R(R((s inspect.pycRwscCst|tiS(sReturn true if the object is a user-defined function. Function objects provide these attributes: __doc__ documentation string __name__ name with which this function was defined func_code code object containing compiled function bytecode func_defaults tuple of any default values for arguments func_doc (same as __doc__) func_globals global namespace in which this function was defined func_name (same as __name__)(RRt FunctionType(R((s inspect.pycR~s cCst|tiS(sbReturn true if the object is a traceback. Traceback objects provide these attributes: tb_frame frame object at this level tb_lasti index of last attempted instruction in bytecode tb_lineno current line number in Python source code tb_next next inner traceback object (called by this level)(RRt TracebackType(R((s inspect.pyct istracebackscCst|tiS(s|Return true if the object is a frame object. Frame objects provide these attributes: f_back next outer frame object (this frame's caller) f_builtins built-in namespace seen by this frame f_code code object being executed in this frame f_exc_traceback traceback if raised in this frame, or None f_exc_type exception type if raised in this frame, or None f_exc_value exception value if raised in this frame, or None f_globals global namespace seen by this frame f_lasti index of last attempted instruction in bytecode f_lineno current line number in Python source code f_locals local namespace seen by this frame f_restricted 0 or 1 if frame is in restricted execution mode f_trace tracing function for this frame, or None(RRt FrameType(R((s inspect.pyctisframescCst|tiS(suReturn true if the object is a code object. Code objects provide these attributes: co_argcount number of arguments (not including * or ** args) co_code string of raw compiled bytecode co_consts tuple of constants used in the bytecode co_filename name of file in which this code object was created co_firstlineno number of first line in Python source code co_flags bitmap: 1=optimized | 2=newlocals | 4=*arg | 8=**arg co_lnotab encoded mapping of line numbers to bytecode indices co_name name with which this code object was defined co_names tuple of names of local variables co_nlocals number of local variables co_stacksize virtual machine stack space required co_varnames tuple of names of arguments and local variables(RRtCodeType(R((s inspect.pyctiscodescCst|tiS(s,Return true if the object is a built-in function or method. Built-in functions and methods provide these attributes: __doc__ documentation string __name__ original name of this function or method __self__ instance to which a method is bound, or None(RRtBuiltinFunctionType(R((s inspect.pyct isbuiltinscCs1t|p$t|pt|p t|S(s<Return true if the object is any kind of function or method.(RRR R(R((s inspect.pyct isroutines   cCsfg}xOt|D]A}t||}| p ||o|i||fqqW|i|S(sReturn all members of an object as (name, value) pairs sorted by name. Optionally, only return members that satisfy a given predicate.(tdirtgetattrtappendtsort(Rt predicatetresultstkeytvalue((s inspect.pyct getmemberss  c Cst|}t|}g}x[|D]S}||ijo|i|}nt||}t|dd}|djo0x-|D]!}||ijo |}PqqWn|dj o!||ijo|i|}nt||}t|to d} n_t|to d} nEt|to d} n+t |p t |o d} nd} |i || ||fq%W|S(sReturn list of attribute-descriptor tuples. For each name in dir(cls), the return list contains a 4-tuple with these elements: 0. The name (a string). 1. The kind of attribute this is, one of these strings: 'class method' created via classmethod() 'static method' created via staticmethod() 'property' created via property() 'method' any other flavor of method 'data' not a method 2. The class which defined this attribute (a class). 3. The object as obtained directly from the defining class's __dict__, not via getattr. This is especially important for data attributes: C.data is just a data object, but C.__dict__['data'] may be a data descriptor with additional info, like a __doc__ string. t __objclass__s static methods class methodtpropertytmethodtdataN( tgetmroR t__dict__R!tNoneRt staticmethodt classmethodR*R RR"( tclstmrotnamestresulttnametobjthomeclstbasetobj_via_getattrtkind((s inspect.pyctclassify_class_attrss<          cCsG||jodSn|i|x|iD]}t||q,WdS(N(R"Rt _searchbases(R2taccumR9((s inspect.pycR=s    cCs<t|do |iSng}t||t|SdS(sHReturn tuple of base classes (including cls) in method resolution order.t__mro__N(RR?R=ttuple(R2R5((s inspect.pycR-#s   cCs,ti|}t|tti|S(sBReturn the indent size, in spaces, at the start of a line of text.(tstringt expandtabstlentlstrip(tlinetexpline((s inspect.pyct indentsize-scCsy |i}Wntj o dSnXt|tipdSnytiti|d}Wnt j o dSn!Xt i }xQ|dD]E}t ti |}|o#t ||}t||}qqW|o|di |dqs N(tostpathtbasenametmaptimpt get_suffixesR#(RktfilenametsuffixestneglenRfRgRh((s inspect.pyct getmoduleinfons  cCs#t|}|o |dSndS(s1Return the module name for a given file, or None.iN(Rs(Rktinfo((s inspect.pyct getmodulenamexs cCst|}ti|ddjo|d d}nxStiD]E\}}}d|jo)ti|t| |jodSqEqEWtii |o|Snt t ||do|SndS( sEReturn the Python source file an object was defined in, if it exists.is.pycs.pyos.pytbt __loader__N(s.pycs.pyo( RdRAtlowerRnRoRCR/RjRktexistsRt getmodule(RRpRfRgR;((s inspect.pyct getsourcefile}s  . cCsF|djot|p t|}ntiitii|S(sReturn an absolute path to the source or compiled file for an object. The idea is for each object to have a unique origin, so this routine normalizes the result as much as possible.N(R/R{RdRjRktnormcasetabspath(Rt _filename((s inspect.pyct getabsfiles c Cs8t|o|Snt|dotii|iSn|dj o%|tjotiit|Snyt||}Wnt j o dSnX|tjotiit|Snxtii D]\}}t|ott|dod|i }|t i|djoqn|t |sl            G   $     . = -'  :       !   PK8Gp2O O linecache.pyc ZDc@spdZddkZddkZdddgZddZhadZddZdd Z dd Z dS( sCache lines from files. This is intended to read lines from modules imported -- hence if a filename is not found, it will look down the module search path for a file by that name. iNtgetlinet clearcachet checkcachecCsKt||}d|jot|jno||dSndSdS(Nit(tgetlinestlen(tfilenametlinenotmodule_globalstlines((s linecache.pycR s$cCs hadS(sClear the cache entirely.N(tcache(((s linecache.pycRscCs.|tjot|dSnt||SdS(ssGet the lines for a file from the cache. Update the cache if it doesn't contain an entry for this file already.iN(R t updatecache(RR((s linecache.pycR!s cCs|djoti}n|tjo |g}ndSx|D]}t|\}}}}|djoqBnyti|}Wn tij ot|=qBnX||ijp||ijo t|=qBqBWdS(sUDiscard cache entries that are out of date. (This is not checked upon each call!)N(tNoneR tkeystoststatterrortst_sizetst_mtime(Rt filenamestsizetmtimeR tfullnameR((s linecache.pycR+s"     cCs|tjo t|=n| p|d|ddjogSn|}yti|}Wntij o}tii|d}|od|jo|id}|d}t|dd }|o|o|i |idddoy||} Wnt t fj oqX| d jogSnt | d g} | i D]} | | d qR~ |ft|it __loader__t__name__t get_sourcet.s itrUN(R RRRtpathtsplittgettgetattrR t startswitht ImportErrortIOErrorRt splitlinestsystjoint TypeErrortAttributeErrortopent readlinestcloseRR(RRRRtmsgtbasenametnametloaderRtdatat_[1]tlinetdirnametfpR RR((s linecache.pycR DsZ  ! !  5     ( t__doc__R$Rt__all__R RR RRRR (((s linecache.pycss     PK8g locale.pyc Z]Gc@s!dZddkZddkZddkZddddddd d d d d ddddddddddddgZyddkTWnpej oddZdZdZ dZ dZ d Z d!Z d"ZeZd#Zdd$Zd%Zd&ZnXed'Zeed(ZddkZddkZeid)Zed*Zeeed+Zd,Z e!d-Z"d.Z#d/Z$eZ%d0Z&d1Z'd2Z(dnd5Z)e d6Z*dd7Zed8Z+ei,dojoed<Z-n7ye.Wne/j oed=Z-nXed>Z-hd?d@<d?dA<dBdC<dDdE<dDdF<dGdH<dBdI<dBdJ<dBdK<dLdM<dNdO<dPdQ<dRdS<dTdU<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdc<ddde<dDdf<dgdh<didj<dGdk<dldm<dndo<dpdq<drds<d?d@<d?dA<d?dB<dCdD<dCdE<dFdG<dHdI<dHdJ<dKdL<dKdM<dNdO<dPdQ<dPdR<dSdT<dUdV<d?dW<d~dX<d~dY<dZd[<d~d\<dZd]<dZd^<dZd_<dZd`<dadb<dadc<dadd<dedf<dedg<dhdi<d?dj<d?dk<dldm<dldn<d?do<d?dp<d~dq<d?dr<d~ds<d~dt<d~du<dvdw<dxdy<dxdz<dvd{<dvd|<d}d~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d}d<d}d<d}d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d*d<dd<dd<d*d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <dd <dd <d d <d d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <dd!<dd"<d#d$<d#d%<d#d&<d'd(<d)d*<d)d+<d,d-<d,d.<d/d0<d/d1<d/d2<d3d4<d5d6<d5d7<dd8<dd9<dd:<d d;<dd<<dd=<d,d><d,d?<d,d@<dAdB<dAdC<d,dD<d,dE<dFdG<dFdH<dFdI<dJdK<dLdM<dLdN<dOdP<dOdQ<dRdS<dOdT<dRdU<dVdW<dVdX<dYdZ<dYd[<dYd\<dd]<dd^<dd_<dd`<dadb<dadc<dadd<dade<dfdg<dfdh<didj<didk<didl<didm<dfdn<dfdo<dfdp<dqdr<dqds<d~dt<dZdu<d~dv<dZdw<d~dx<dZdy<dzd{<d|d}<d|d~<dd<dd<dzd<dzd<dzd<dd<dd<dzd<dzd<dd<dd<dd<dOd<dOd<dOd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d"d<d$d<d$d<d$d<dd<dd<d"d<d"d<d"d<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d <d d<d d<dd<dd<d d<d d<d d<d d<d d<d d<dd<dd<dd<dd<dd<dd <d!d"<d!d#<d$d%<d&d'<d&d(<d)d*<d)d+<d$d,<d$d-<d.d/<d.d0<d1d2<d1d3<d1d4<d5d6<d5d7<d5d8<d5d9<d:d;<d:d<<d=d><d=d?<d?d@<d?dA<dBdC<dBdD<dBdE<d:dF<d=dG<d=dH<d=dI<dJdK<dJdL<d:dM<d:dN<d:dO<dPdQ<dRdS<dPdT<dUdV<dUdW<dUdX<dUdY<dZd[<dZd\<d]d^<dZd_<d`da<d]db<dcdd<dedf<dcdg<dedh<dUdi<dZdj<dkdl<dmdn<dmdo<dpdq<dpdr<dmds<dmdt<dudv<dudw<dudx<dydz<d{d|<dyd}<dyd~<dud<dyd<dyd<dd<dd<d}d<d}d<d}d<d}d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <dd <d?d@<dAdB<dCd <dDdE<dFdG<dHdI<dJdK<dLdM<dNdO<dPdQ<dRdS<dTdU<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdc<ddde<dfdg<dhdi<djdk<dldm<dndo<dpdq<drds<dtdu<dvdw<dxdy<dzd{<d|d}<d~d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d d <d d <d d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d#d'<d(d)<d*d+<d,d-<d.d/<d0d1<d2d3<d4d5<d6d7<d8d9<d:d;<d<d=<d>d?<d@dA<dBdC<dDdE<dFdG<dHdI<dJdK<dLdM<dNdO<dPdQ<dRdS<dTdU<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdc<dbdd<dedf<dgdh dict. Returns numeric and monetary locale-specific parameters. itgroupingttcurrency_symbolt n_sign_posnt p_cs_precedest n_cs_precedest mon_groupingtn_sep_by_spacet.t decimal_pointt negative_signt positive_signtp_sep_by_spacetint_curr_symbolt p_sign_posnt thousands_septmon_thousands_sept frac_digitstmon_decimal_pointtint_frac_digits((((s locale.pycR.s$                cCs|djo tdndS(sd setlocale(integer,string=None) -> string. Activates/queries locale processing. RtCs*_locale emulation only supports "C" localeN(NRR,(tNoneR(tcategorytvalue((s locale.pycRFs  cCs t||S(sb strcoll(string,string) -> int. Compares two strings according to the locale. (tcmp(tatb((s locale.pycRNscCs|S(sd strxfrm(string) -> string. Returns a string that behaves for cmp locale-aware. ((ts((s locale.pycRTsc Cst}||odpd}||odpd}|p|dfSnd}d}d}|ddjo'|id}||}|| }nx|o|o|dtjoPn*|ddjo|d} |d }n|o!|| ||}|d 7}n || }|| }|o'|dd jo||||fSqqW|p|||fSn|o|||}|d 7}n|||fS( NR(R'RRiRit it 0123456789(RtfindR( R3tmonetarytconvR'Rtresulttsepstspacestsptgroup((s locale.pyct_group`s@     c GsP|ddjotdn|o||f|}n ||}|ddjod}|id}|o$t|dd|\|d<}nt|odpd }|i|}x|oE|id } | djoPn|| || d }|d 8}qWn7|dd jo%|ot|d|d}qLn|S( sReturns the locale-aware substitution of a %? specifier (percent). additional is for format strings which contain one or more '*' modifiers.it%s9format() must be given exactly one %char format specifieriteEfFgGR R7R*R!R4itdiu(t ValueErrortsplitR>RtjoinR6( tpercentR/RR7t additionalt formattedR:tpartsR!R<((s locale.pycR s0 $ sG%(?:\((?P.*?)\))?(?P[-#0-9 +*.hlL]*?)[eEfFgGdiouxXcrs%]c CsWtti|}tid|}t|tot|}d}x|D]{}|idid}t|i|||t ||d|d|!||<||d|d|5|d|7}qPWt|}nqt i |oDx]|D]5}|id} t|i|| ||| R%RiRRRR$R4RRR&R"R#t(t)iiii(RRBR tabstTruetreplace( RVtsymbolRt internationalR8tdigitsR3tsmbtprecedest separatedtsign_postsign((s locale.pycRs6  "        cCs td|S(s9Convert float to integer, taking the locale into account.s%.12g(R (RV((s locale.pycR scCs^td}|o|i|d}ntd}|o|i|d}n||S(s<Parses a string as a float according to the locale settings.R'RR!R (RRc(tstringtfuncttstdd((s locale.pycR s  cCs t|tS(sAConverts a string to an integer according to the locale settings.(R tint(R ((s locale.pycR scCsUttdtddd}|GdGt|GHtd}|GdGt|GHdS(NRs%di[itisgQ @(RRR R R R (ts1((s locale.pyct_tests   cCs|i}d|jo|idd}nd|jo+|idd \}}|d|}n |}d}|idd}|idd}|d|}ti|d}|dj o|Snti|d}|dj od|jo|id\}}n |}d}|o=ti|}tiii||}t i||}n|}|o|d|Sq|Sn|SdS(s Returns a normalized locale code for the given locale name. The returned locale code is formatted for use with setlocale(). If normalization fails, the original name is returned unchanged. If the given encoding is not known, the function defaults to the default encoding for the locale code just like setlocale() does. t:R iRt-t_N( tlowerRcRCt locale_aliastgetR-t encodingstnormalize_encodingtaliasestlocale_encoding_alias(t localenametfullnametlangnametencodingt norm_encodingt lookup_nametcodetdefenc((s locale.pycRs>         cCst|}d|joA|id\}}|djod|jo|dfSqZnd|jot|idd Sn|djod Sntd|dS( s Parses the locale code for localename and returns the result as tuple (language code, encoding). The localename is normalized and passed through the locale alias engine. A ValueError is raised in case the locale name cannot be parsed. The language code corresponds to RFC 1766. code and encoding can be None in case the values cannot be determined or are unknown to this implementation. t@teuroR s iso-8859-15iR,sunknown locale: %sN(NN(RRCRPR-RB(R~Rtmodifier((s locale.pyct_parse_localename[s    cCsH|\}}|djo d}n|djo|Sn |d|SdS(s Builds a locale code from the given tuple (language code, encoding). No aliasing or normalizing takes place. R,R N(R-(t localetupletlanguageR((s locale.pyct_build_localenameys     tLANGtLANGUAGEc Csy"ddk}|i\}}Wnttfj onPXtidjo4|o-|d djotit|d}n||fSddk }|i i}xS|D]E}||d}|o)|djo|i dd}nPqqWd }t |S( s Tries to determine the default locale settings and returns them as tuple (language code, encoding). According to POSIX, a program which has not called setlocale(LC_ALL, "") runs using the portable 'C' locale. Calling setlocale(LC_ALL, "") lets it use the default locale as defined by the LANG variable. Since we don't want to interfere with the current locale setting we thus emulate the behavior in the way described above. To maintain compatibility with other platforms, not only the LANG variable is tested, but a list of variables given as envvars parameter. The first found to be defined will be used. envvars defaults to the search path used in GNU gettext; it must always contain the variable name 'LANG'. Except for the code 'C', the language code corresponds to RFC 1766. code and encoding can be None in case the values cannot be determined. iNtwin32it0xiRRtR,(t_localet_getdefaultlocalet ImportErrortAttributeErrortsystplatformtwindows_localeRyRptostenvironR-RCR(tenvvarsRRRRtlookuptvariableR~((s locale.pycRs& (     cCs=t|}|tjod|jo tdnt|S(sp Returns the current setting for the given locale category as tuple (language code, encoding). category may be one of the LC_* value except LC_ALL. It defaults to LC_CTYPE. Except for the code 'C', the language code corresponds to RFC 1766. code and encoding can be None in case the values cannot be determined. t;s category LC_ALL is not supported(t _setlocaleRt TypeErrorR(R.R~((s locale.pycRs  cCsC|o/t|tdj ott|}nt||S(sE Set the locale for the given category. The locale can be a string, a locale tuple (language code, encoding), or None. Locale tuples are converted to strings the locale aliasing engine. Locale strings are passed directly to the C lib. category may be given as one of the LC_* values. R(ttypeRRR(R.tlocale((s locale.pycRs cCst|ttdS(s Sets the locale for category to the default setting. The default setting is determined by calling getdefaultlocale(). category defaults to LC_ALL. N(RRR(R.((s locale.pycRsRtdarwintmaccCsddk}|idS(s1Return the charset that the user is likely using.iNi(RR(t do_setlocaleR((s locale.pycRs cCs tdS(sbReturn the charset that the user is likely using, by looking at environment variables.i(R(R((s locale.pycRscCsO|o:tt}ttdtt}tt||Sn ttSdS(sdReturn the charset that the user is likely using, according to the system configuration.RN(RRt nl_langinfotCODESET(RtoldlocR9((s locale.pycRs    R,t437tcs ISO8859-1tentJIS7tjistjis7teucJPtajectasciitlatin_1t iso8859_1s ISO8859-10t iso8859_10s ISO8859-11t iso8859_11s ISO8859-13t iso8859_13s ISO8859-14t iso8859_14s ISO8859-15t iso8859_15s ISO8859-2t iso8859_2s ISO8859-3t iso8859_3s ISO8859-4t iso8859_4s ISO8859-5t iso8859_5s ISO8859-6t iso8859_6s ISO8859-7t iso8859_7s ISO8859-8t iso8859_8s ISO8859-9t iso8859_9t iso2022_jptSJISt shift_jistTACTISttactisteuc_jpteucKRteuc_krtUTF8tutf_8sKOI8-Rtkoi8_rsKOI8-Utkoi8_us a3_AZ.KOI8-Cta3ta3_azs a3_az.koi8csaf_ZA.ISO8859-1taftaf_zasaf_za.iso88591s am_ET.UTF-8tamsen_US.ISO8859-1tamericansamerican.iso88591sar_AA.ISO8859-6tartar_aasar_aa.iso88596sar_AE.ISO8859-6tar_aesar_BH.ISO8859-6tar_bhsar_DZ.ISO8859-6tar_dzsar_EG.ISO8859-6tar_egsar_eg.iso88596sar_IQ.ISO8859-6tar_iqsar_JO.ISO8859-6tar_josar_KW.ISO8859-6tar_kwsar_LB.ISO8859-6tar_lbsar_LY.ISO8859-6tar_lysar_MA.ISO8859-6tar_masar_OM.ISO8859-6tar_omsar_QA.ISO8859-6tar_qasar_SA.ISO8859-6tar_sasar_sa.iso88596sar_SD.ISO8859-6tar_sdsar_SY.ISO8859-6tar_sysar_TN.ISO8859-6tar_tnsar_YE.ISO8859-6tar_yetarabicsarabic.iso88596saz_AZ.ISO8859-9Etaztaz_azsaz_az.iso88599es be_BY.CP1251tbetbe_bys be_by.cp1251sbe_by.microsoftcp1251s bg_BG.CP1251tbgtbg_bgs bg_bg.cp1251sbg_BG.ISO8859-5sbg_bg.iso88595s bg_BG.KOI8-Rs bg_bg.koi8rsbg_bg.microsoftcp1251snb_NO.ISO8859-1tbokmalsbokmlsbr_FR.ISO8859-1tbrtbr_frsbr_fr.iso88591sbr_FR.ISO8859-14sbr_fr.iso885914sbr_FR.ISO8859-15sbr_fr.iso885915s br_fr@eurot bulgariansfr_CA.ISO8859-1sc-frenchsc-french.iso88591sc.ens c.iso88591tc_csc_c.csca_ES.ISO8859-1tcatca_essca_es.iso88591sca_ES.ISO8859-15sca_es.iso885915s ca_es@eurotcatalantcextends cextend.ens zh_CN.eucCNs chinese-ss zh_TW.eucTWs chinese-tshr_HR.ISO8859-2tcroatianscs_CZ.ISO8859-2tcstcs_csscs_cs.iso88592tcs_czscs_cz.iso88592scy_GB.ISO8859-1tcytcy_gbscy_gb.iso88591scy_GB.ISO8859-14scy_gb.iso885914scy_GB.ISO8859-15scy_gb.iso885915s cy_gb@eurotcztcz_cztczechsda_DK.ISO8859-1tdatda_dks da_dk.88591sda_DK.ISO8859-15s da_dk.885915sda_dk.iso88591sda_dk.iso885915s da_dk@eurotdanishsdanish.iso88591tdansksde_DE.ISO8859-1tdesde_AT.ISO8859-1tde_atsde_at.iso88591sde_AT.ISO8859-15sde_at.iso885915s de_at@eurosde_BE.ISO8859-1tde_besde_be.iso88591sde_BE.ISO8859-15sde_be.iso885915s de_be@eurosde_CH.ISO8859-1tde_chsde_ch.iso88591sde_CH.ISO8859-15sde_ch.iso885915s de_ch@eurotde_des de_de.88591sde_DE.ISO8859-15s de_de.885915sde_de.885915@eurosde_de.iso88591sde_de.iso885915s de_de@eurosde_LU.ISO8859-1tde_lusde_lu.iso88591sde_LU.ISO8859-15sde_lu.iso885915s de_lu@eurotdeutschsnl_NL.ISO8859-1tdutchsnl_BE.ISO8859-1sdutch.iso88591see_EE.ISO8859-4teetee_eesee_ee.iso88594set_EE.ISO8859-1teestisel_GR.ISO8859-7teltel_grsel_gr.iso88597sel_GR.ISO8859-15s el_gr@euros en.iso88591sen_AU.ISO8859-1ten_ausen_au.iso88591sen_BE.ISO8859-1ten_besen_BE.ISO8859-15s en_be@eurosen_BW.ISO8859-1ten_bwsen_CA.ISO8859-1ten_casen_ca.iso88591sen_GB.ISO8859-1ten_gbs en_gb.88591sen_gb.iso88591sen_GB.ISO8859-15sen_gb.iso885915s en_gb@eurosen_HK.ISO8859-1ten_hksen_IE.ISO8859-1ten_iesen_ie.iso88591sen_IE.ISO8859-15sen_ie.iso885915s en_ie@eurosen_IN.ISO8859-1ten_insen_NZ.ISO8859-1ten_nzsen_nz.iso88591sen_PH.ISO8859-1ten_phsen_SG.ISO8859-1ten_sgten_ukten_uss en_us.88591sen_US.ISO8859-15s en_us.885915sen_us.iso88591sen_us.iso885915sen_us.iso885915@euros en_us@eurosen_us@euro@eurosen_ZA.ISO8859-1ten_zas en_za.88591sen_za.iso88591sen_ZA.ISO8859-15sen_za.iso885915s en_za@eurosen_ZW.ISO8859-1ten_zwteng_gbs eng_gb.8859sen_EN.ISO8859-1tenglishsenglish.iso88591t english_uksenglish_uk.8859senglish_united-statessenglish_united-states.437t english_ussenglish_us.8859senglish_us.asciiseo_XX.ISO8859-3teoseo_EO.ISO8859-3teo_eoseo_eo.iso88593teo_xxseo_xx.iso88593ses_ES.ISO8859-1tesses_AR.ISO8859-1tes_arses_ar.iso88591ses_BO.ISO8859-1tes_boses_bo.iso88591ses_CL.ISO8859-1tes_clses_cl.iso88591ses_CO.ISO8859-1tes_coses_co.iso88591ses_CR.ISO8859-1tes_crses_cr.iso88591ses_DO.ISO8859-1tes_doses_do.iso88591ses_EC.ISO8859-1tes_ecses_ec.iso88591tes_ess es_es.88591ses_es.iso88591ses_ES.ISO8859-15ses_es.iso885915s es_es@euroses_GT.ISO8859-1tes_gtses_gt.iso88591ses_HN.ISO8859-1tes_hnses_hn.iso88591ses_MX.ISO8859-1tes_mxses_mx.iso88591ses_NI.ISO8859-1tes_nises_ni.iso88591ses_PA.ISO8859-1tes_pases_pa.iso88591ses_PA.ISO8859-15ses_pa.iso885915s es_pa@euroses_PE.ISO8859-1tes_peses_pe.iso88591ses_PE.ISO8859-15ses_pe.iso885915s es_pe@euroses_PR.ISO8859-1tes_prses_pr.iso88591ses_PY.ISO8859-1tes_pyses_py.iso88591ses_PY.ISO8859-15ses_py.iso885915s es_py@euroses_SV.ISO8859-1tes_svses_sv.iso88591ses_SV.ISO8859-15ses_sv.iso885915s es_sv@euroses_US.ISO8859-1tes_usses_UY.ISO8859-1tes_uyses_uy.iso88591ses_UY.ISO8859-15ses_uy.iso885915s es_uy@euroses_VE.ISO8859-1tes_veses_ve.iso88591ses_VE.ISO8859-15ses_ve.iso885915s es_ve@eurotestonianset_EE.ISO8859-15tettet_eeset_ee.iso88591set_EE.ISO8859-13set_ee.iso885913set_ee.iso885915set_EE.ISO8859-4set_ee.iso88594s et_ee@euroseu_ES.ISO8859-1teuteu_esseu_es.iso88591seu_ES.ISO8859-15seu_es.iso885915s eu_es@euros fa_IR.UTF-8tfatfa_irsfa_IR.ISIRI-3342sfa_ir.isiri3342sfi_FI.ISO8859-15tfitfi_fisfi_FI.ISO8859-1s fi_fi.88591sfi_fi.iso88591sfi_fi.iso885915s fi_FI.UTF-8sfi_fi.utf8@euros fi_fi@eurotfinnishsfinnish.iso88591sfo_FO.ISO8859-1tfotfo_fosfo_fo.iso88591sfo_FO.ISO8859-15sfo_fo.iso885915s fo_fo@eurosfr_FR.ISO8859-1tfrsfr_BE.ISO8859-1tfr_bes fr_be.88591sfr_be.iso88591sfr_BE.ISO8859-15sfr_be.iso885915s fr_be@eurotfr_cas fr_ca.88591sfr_ca.iso88591sfr_CA.ISO8859-15sfr_ca.iso885915s fr_ca@eurosfr_CH.ISO8859-1tfr_chs fr_ch.88591sfr_ch.iso88591sfr_CH.ISO8859-15sfr_ch.iso885915s fr_ch@eurotfr_frs fr_fr.88591sfr_fr.iso88591sfr_FR.ISO8859-15sfr_fr.iso885915s fr_fr@eurosfr_LU.ISO8859-1tfr_lus fr_lu.88591sfr_lu.iso88591sfr_LU.ISO8859-15sfr_lu.iso885915s fr_lu@eurosfranaistfre_frs fre_fr.8859tfrenchsfrench.iso88591t french_francesfrench_france.8859sga_IE.ISO8859-1tgatga_iesga_ie.iso88591sga_IE.ISO8859-14sga_ie.iso885914sga_IE.ISO8859-15sga_ie.iso885915s ga_ie@eurosgl_ES.ISO8859-1tgalegotgaliciansgd_GB.ISO8859-1tgdtgd_gbsgd_gb.iso88591sgd_GB.ISO8859-14sgd_gb.iso885914sgd_GB.ISO8859-15sgd_gb.iso885915s gd_gb@eurotger_des ger_de.8859tgermansgerman.iso88591tgerman_germanysgerman_germany.8859tgltgl_essgl_es.iso88591sgl_ES.ISO8859-15sgl_es.iso885915s gl_es@eurotgreeksgreek.iso88597sgv_GB.ISO8859-1tgvtgv_gbsgv_gb.iso88591sgv_GB.ISO8859-14sgv_gb.iso885914sgv_GB.ISO8859-15sgv_gb.iso885915s gv_gb@euroshe_IL.ISO8859-8thethe_ils he_IL.CP1255s he_il.cp1255she_il.iso88598she_il.microsoftcp1255siw_IL.ISO8859-8thebrewshebrew.iso88598shi_IN.ISCII-DEVthithi_inshi_in.isciidevthrthr_hrshr_hr.iso88592thrvatskishu_HU.ISO8859-2thuthu_hushu_hu.iso88592t hungariansis_IS.ISO8859-1t icelandicsicelandic.iso88591sid_ID.ISO8859-1tidtid_idtintin_idRqtis_issis_is.iso88591sis_IS.ISO8859-15sis_is.iso885915s is_is@euros iso-8859-1s iso-8859-15s iso8859-1s iso8859-15t iso_8859_1t iso_8859_15sit_IT.ISO8859-1titsit_CH.ISO8859-1tit_chsit_ch.iso88591sit_CH.ISO8859-15sit_ch.iso885915s it_ch@eurotit_its it_it.88591sit_it.iso88591sit_IT.ISO8859-15sit_it.iso885915s it_it@eurotitaliansitalian.iso88591siu_CA.NUNACOM-8tiutiu_casiu_ca.nunacom8tiwtiw_ilsiw_il.iso88598s ja_JP.eucJPtjas ja_JP.JIS7sja.jiss ja_JP.SJISsja.sjistja_jps ja_jp.ajecs ja_jp.eucs ja_jp.eucjpsja_jp.iso-2022-jpsja_jp.iso2022jps ja_jp.jiss ja_jp.jis7s ja_jp.mscodes ja_jp.sjiss ja_jp.ujistjapantjapaneses japanese-eucs japanese.eucs japanese.sjistjp_jpska_GE.GEORGIAN-ACADEMYtkatka_geska_ge.georgianacademyska_GE.GEORGIAN-PSska_ge.georgianpsska_ge.georgianrsskl_GL.ISO8859-1tkltkl_glskl_gl.iso88591skl_GL.ISO8859-15skl_gl.iso885915s kl_gl@euros ko_KR.eucKRtkotko_krs ko_kr.eucs ko_kr.euckrtkoreans korean.eucskw_GB.ISO8859-1tkwtkw_gbskw_gb.iso88591skw_GB.ISO8859-14skw_gb.iso885914skw_GB.ISO8859-15skw_gb.iso885915s kw_gb@euroslt_LT.ISO8859-13t lithuanianslo_LA.MULELAO-1tlotlo_laslo_LA.IBM-CP1133s lo_la.cp1133slo_la.ibmcp1133slo_la.mulelao1tlttlt_ltslt_lt.iso885913slt_LT.ISO8859-4slt_lt.iso88594slv_LV.ISO8859-13tlvtlv_lvslv_lv.iso885913slv_LV.ISO8859-4slv_lv.iso88594smi_NZ.ISO8859-1tmitmi_nzsmi_nz.iso88591smk_MK.ISO8859-5tmktmk_mks mk_MK.CP1251s mk_mk.cp1251smk_mk.iso88595smk_mk.microsoftcp1251sms_MY.ISO8859-1tmstms_mysms_my.iso88591smt_MT.ISO8859-3tmttmt_mtsmt_mt.iso88593tnbtnb_nos nb_no.88591snb_no.iso88591snb_NO.ISO8859-15snb_no.iso885915s nb_no@eurotnltnl_bes nl_be.88591snl_be.iso88591snl_BE.ISO8859-15snl_be.iso885915s nl_be@eurotnl_nls nl_nl.88591snl_nl.iso88591snl_NL.ISO8859-15snl_nl.iso885915s nl_nl@eurosnn_NO.ISO8859-1tnntnn_nos nn_no.88591snn_no.iso88591snn_NO.ISO8859-15snn_no.iso885915s nn_no@eurosno_NO.ISO8859-1tnosny_NO.ISO8859-1s no@nynorsktno_nos no_no.88591sno_no.iso88591sno_NO.ISO8859-15sno_no.iso885915s no_no@eurot norwegiansnorwegian.iso88591tnytny_nos ny_no.88591sny_no.iso88591sny_NO.ISO8859-15sny_no.iso885915s ny_no@eurotnynorsksoc_FR.ISO8859-1toctoc_frsoc_fr.iso88591soc_FR.ISO8859-15soc_fr.iso885915s oc_fr@eurospd_US.ISO8859-1tpdspd_DE.ISO8859-1tpd_despd_de.iso88591spd_DE.ISO8859-15spd_de.iso885915s pd_de@eurotpd_usspd_us.iso88591spd_US.ISO8859-15spd_us.iso885915s pd_us@eurosph_PH.ISO8859-1tphtph_phsph_ph.iso88591spl_PL.ISO8859-2tpltpl_plspl_pl.iso88592tpolishspt_PT.ISO8859-1t portuguesesportuguese.iso88591spt_BR.ISO8859-1tportuguese_brazilsportuguese_brazil.8859tposixs posix-utf2spp_AN.ISO8859-1tpptpp_anspp_an.iso88591tpttpt_brs pt_br.88591spt_br.iso88591spt_BR.ISO8859-15spt_br.iso885915s pt_br@eurotpt_pts pt_pt.88591spt_pt.iso88591spt_PT.ISO8859-15spt_pt.iso885915s pt_PT.UTF-8spt_pt.utf8@euros pt_pt@eurosro_RO.ISO8859-2trotro_rosro_ro.iso88592tromaniansru_RU.ISO8859-5trutru_rus ru_RU.CP1251s ru_ru.cp1251sru_ru.iso88595s ru_RU.KOI8-Rs ru_ru.koi8rsru_ru.microsoftcp1251s ru_UA.KOI8-Utru_uas ru_UA.CP1251s ru_ua.cp1251s ru_ua.koi8usru_ua.microsoftcp1251trumaniantrussians se_NO.UTF-8tse_nossh_YU.ISO8859-2t serbocroatiantshssh_HR.ISO8859-2tsh_hrssh_hr.iso88592tsh_sptsh_yussk_SK.ISO8859-2tsktsk_skssk_sk.iso88592ssl_SI.ISO8859-2tslssl_CS.ISO8859-2tsl_cstsl_sissl_si.iso88592tslovaktslovenet slovenianssp_YU.ISO8859-5R<tsp_yutspanishsspanish.iso88591t spanish_spainsspanish_spain.8859ssq_AL.ISO8859-2tsqtsq_alssq_al.iso88592ssr_YU.ISO8859-5tsrs sr@cyrillicssr_SP.ISO8859-2tsr_sptsr_yus sr_YU.CP1251ssr_yu.cp1251@cyrillicssr_YU.ISO8859-2ssr_yu.iso88592ssr_yu.iso88595ssr_yu.iso88595@cyrillicssr_yu.microsoftcp1251@cyrillics sr_YU.UTF-8ssr_yu.utf8@cyrillicssr_yu@cyrillicssv_SE.ISO8859-1tsvssv_FI.ISO8859-1tsv_fissv_fi.iso88591ssv_FI.ISO8859-15ssv_fi.iso885915s sv_fi@eurotsv_ses sv_se.88591ssv_se.iso88591ssv_SE.ISO8859-15ssv_se.iso885915s sv_se@eurotswedishsswedish.iso88591s ta_IN.TSCII-0ttatta_ins ta_in.tsciis ta_in.tscii0s tg_TJ.KOI8-Cttgttg_tjs tg_tj.koi8csth_TH.ISO8859-11tthtth_thsth_th.iso885911s th_TH.TIS620s th_th.tactiss th_th.tis620tthaistl_PH.ISO8859-1ttlttl_phstl_ph.iso88591str_TR.ISO8859-9ttrttr_trstr_tr.iso88599stt_RU.TATAR-CYRtttttt_rus tt_RU.KOI8-Cs tt_ru.koi8cstt_ru.tatarcyrtturkishsturkish.iso88599s uk_UA.KOI8-Utuktuk_uas uk_UA.CP1251s uk_ua.cp1251suk_UA.ISO8859-5suk_ua.iso88595s uk_ua.koi8usuk_ua.microsoftcp1251s en_US.utftunivt universals en_US.UTF-8suniversal.utf8@ucs4s ur_PK.CP1256turtur_pks ur_pk.cp1256sur_pk.microsoftcp1256s uz_UZ.UTF-8tuztuz_uzs vi_VN.TCVNtvitvi_vns vi_vn.tcvnsvi_vn.tcvn5712s vi_VN.VISCIIs vi_vn.visciisvi_vn.viscii111swa_BE.ISO8859-1twatwa_beswa_be.iso88591swa_BE.ISO8859-15swa_be.iso885915s wa_be@euros yi_US.CP1255tyityi_uss yi_us.cp1255syi_us.microsoftcp1255tzhs zh_CN.gb2312tzh_cns zh_TW.big5s zh_cn.big5s zh_cn.eucs zh_CN.gb18030s zh_cn.gb18030s zh_cn.gb2312s zh_CN.gbks zh_cn.gbkszh_HK.big5hkscstzh_hks zh_HK.big5s zh_hk.big5szh_hk.big5hkscstzh_tws zh_tw.big5s zh_tw.euctaf_ZAi6tsq_ALitar_SAitar_IQitar_EGi tar_LYitar_DZitar_MAitar_TNitar_OMi tar_YEi$tar_SYi(tar_JOi,tar_LBi0tar_KWi4tar_AEi8tar_BHi<tar_QAi@thy_AMi+taz_AZi,i,teu_ESi-tbe_BYi#tbn_INiEtbs_BAi itbr_FRi~tbg_BGitca_ESitzh_CHStzh_TWitzh_CNitzh_HKi tzh_SGitzh_MOitzh_CHTi|thr_HRithr_BAitcs_CZitda_DKitgbz_AFitdiv_MVietnl_NLitnl_BEiten_USi ten_GBi ten_AUi ten_CAi ten_NZi ten_IEi ten_ZAi ten_JAi ten_CBi $ten_BZi (ten_TTi ,ten_ZWi 0ten_PHi 4tet_EEi%tfo_FOi8tfil_PHidtfi_FIi tfr_FRi tfr_BEi tfr_CAi tfr_CHi tfr_LUi tfr_MCi tfy_NLibtgl_ESiVtka_GEi7tde_DEitde_CHitde_ATi tde_LUitde_LIitel_GRitgu_INiGthe_ILi thi_INi9thu_HUitis_ISitid_IDi!tiu_CAi]i]tga_IEi<txh_ZAi4tzu_ZAi5tit_ITitit_CHitja_JPitkn_INiKtkk_KZi?tkok_INiWtko_KRitky_KGi@tlv_LVi&tlt_LTi'tlb_LUintmk_MKi/tms_MYi>tms_BNi>tml_INiLtmt_MTi:tmi_NZitarn_CLiztmr_INiNtmoh_CAi|tmn_MNiPtne_NPiatnb_NOitnn_NOitoc_FRitor_INiHtps_AFictfa_IRi)tpl_PLitpt_BRitpt_PTitpa_INiFtquz_BOiktquz_ECiktquz_PEik tro_ROitrm_CHitru_RUitsmn_FIi;$tsmj_NOi;tsmj_SEi;tse_NOi;tse_SEi;tse_FIi; tsms_FIi; tsma_NOi;tsma_SEi;tsa_INiOtsr_SPi tsr_BAiiitns_ZAilttn_ZAi2tsk_SKitsl_SIi$tes_ESi tes_MXi i tes_GTi tes_CRi tes_PAi tes_DOi tes_VEi tes_COi $tes_PEi (tes_ARi ,tes_ECi 0tes_CLi 4tes_URi 8tes_PYi <tes_BOi @tes_SVi Dtes_HNi Htes_NIi Ltes_PRi Ptsw_KEiAtsv_SEitsv_FIitsyr_SYiZtta_INiIttt_RUiDtte_INiJtth_THittr_TRituk_UAi"tur_PKi tur_INi tuz_UZiCiCtvi_VNi*tcy_GBiRc Csh}|d}||d=dGHddGHt\}}dG|pdGHdG|pdGHHd GHddGHxV|iD]H\}}|Gd GHt|\}}d G|pdGHd G|pdGHHqyWHd GHddGHtxV|iD]H\}}|Gd GHt|\}}d G|pdGHd G|pdGHHqWyttdWndGHdGHdGHniXHdGHddGHxV|iD]H\}}|Gd GHt|\}}d G|pdGHd G|pdGHHqzWdS(s Test function. cSsCx<tiD]+\}}|d djo|||R treRStcompileRLR RbRR tfloatR R RsRRRRRRRRRRt NameErrorR}RxRRtappendt__name__(((s locale.pycs sh$     &! -    B   5                                  /                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       :  PK85#U$U$ macpath.pyc Z!d?e"fd@YZ#dAZ$dBZ%dCZ&dDZ'e(Z)dS(Es7Pathname and path-related operations for the Macintosh.iN(t*tnormcasetisabstjoint splitdrivetsplittsplitexttbasenametdirnamet commonprefixtgetsizetgetmtimetgetatimetgetctimetislinktexiststlexiststisdirtisfiletwalkt expandusert expandvarstnormpathtabspathtcurdirtpardirtseptpathseptdefpathtaltseptextseptdevnulltrealpathtsupports_unicode_filenamest:s::t.s sDev:NullcCs |iS(N(tlower(tpath((s macpath.pycRscCsd|jo|ddjS(sReturn true if a path is absolute. On the Mac, relative paths begin with a colon, but as a special case, paths with no colons at all are also relative. Anything else is absolute (the string up to the first colon is the volume name).R"i((ts((s macpath.pycRscGs|}x|D]}| p t|o |}q n|d djo|d}nd|jod|}n|ddjo|d}n||}q W|S(NiR"i(R(R&tpR%tt((s macpath.pycR's cCsd|jod|fSnd}x9tt|D]%}||djo|d}q4q4W||d ||}}|od|jo|d}n||fS(sSplit a pathname into two parts: the directory leading up to the final bit, and the basename (the filename, without colons, in that directory). The result (s, t) is such that join(s, t) yields the original argument.R"tii(trangetlen(R&tcolontiR%tfile((s macpath.pycR7s cCsI|id}||idjo|dfSn|| ||fSdS(sSplit a path into root and extension. The extension is everything starting at the last dot in the last pathname component; the root is everything before that. It is always true that root + ext == p.R#R"R)N(trfind(R'R-((s macpath.pycRFscCs d|fS(s@Split a pathname into a drive specification and the rest of the path. Useful on DOS/Windows/NT; on the Mac, the drive is always empty (don't use the volume name -- it doesn't have the same syntactic and semantic oddities as DOS drive letters, such as there being a separate current directory per drive).R)((R'((s macpath.pycRSscCst|dS(Ni(R(R&((s macpath.pycR_scCst|dS(Ni(R(R&((s macpath.pycR`scCsBt|ptSnt|}t|djo|ddjS(NiiR)(RtFalseRR+(R&t components((s macpath.pyctismountbs  cCs=yti|}Wntij o dSnXt|iS(s<Return true if the pathname refers to an existing directory.i(toststatterrortS_ISDIRtst_mode(R&tst((s macpath.pycRhs  cCsti|iS(s1Return the size of a file, reported by os.stat().(R3R4tst_size(tfilename((s macpath.pycR tscCsti|iS(sCReturn the last modification time of a file, reported by os.stat().(R3R4tst_mtime(R:((s macpath.pycR xscCsti|iS(s=Return the last access time of a file, reported by os.stat().(R3R4tst_atime(R:((s macpath.pycR |scCs9y'ddk}|ii|ddSWn tSnXdS(s6Return true if the pathname refers to a symbolic link.iNii(t Carbon.FiletFiletResolveAliasFileR0(R&tCarbon((s macpath.pycRs  cCs=yti|}Wntij o tSnXt|iS(s?Return true if the pathname refers to an existing regular file.(R3R4R5R0tS_ISREGR7(R&R8((s macpath.pycRs  cCsti|iS(s:Return the creation time of a file, reported by os.stat().(R3R4tst_ctime(R:((s macpath.pycR scCs4yti|}Wntij o tSnXtS(sDTest whether a path exists. Returns False for broken symbolic links(R3R4R5R0tTrue(R&R8((s macpath.pycRs  cCs4yti|}Wntij o tSnXtS(sCTest whether a path exists. Returns True for broken symbolic links(R3tlstatR5R0RC(R%R8((s macpath.pycRs  cCs|pdSnt|}t|}tt|t|}x5t|D]'}||||jo || SqOqOW|| S(sGGiven a list of pathnames, returns the longest common leading componentR)(tmintmaxR+txrange(tmts1ts2tnR-((s macpath.pycR s   cCs|S(sEDummy to retain interface-compatibility with other operating systems.((R%((s macpath.pycRscCs|S(sEDummy to retain interface-compatibility with other operating systems.((R%((s macpath.pycRst norm_errorcBseZdZRS(sPath cannot be normalized(t__name__t __module__t__doc__(((s macpath.pycRLscCsd|jo d|Sn|id}d}x|t|djon||djoO||ddjo:|djo ||d|d5|d}qtdq1|d}q1Wdi|}|ddjo8t|djo%|dt|jo|d }n|S(sLNormalize a pathname. Will return the same result for equivalent paths.R"iR)s+Cannot use :: immediately after volume nameii(RR+RLR(R&tcompsR-((s macpath.pycRs   &  ;cCsyti|}Wntij o dSnX||||xL|D]D}t||}t|o"t| ot|||qGqGWdS(sIDirectory tree walk with callback function. For each directory in the directory tree rooted at top (including top itself, but excluding '.' and '..'), call func(arg, dirname, fnames). dirname is the name of the directory, and fnames a list of the names of the files and subdirectories in dirname (excluding '.' and '..'). func may modify the fnames list in-place (e.g. via del or slice assignment), and walk will only recurse into the subdirectories whose names remain in fnames; this can be used to implement a filter, or to impose a specific order of visiting. No semantics are defined for, or required of, arg, beyond that arg is always passed to func. It can be used, e.g., to pass a filename pattern, or a mutable object designed to accumulate statistics. Passing None for arg is common.N(R3tlistdirR5RRRR(ttoptfunctargtnamestname((s macpath.pycRs cCs0t|ptti|}nt|S(sReturn an absolute path.(RRR3tgetcwdR(R%((s macpath.pycRs c Cst|}yddk}Wntj o |SnX|p|Sn|id}|dd}x@|dD]4}t||}|ii|ddi}qmW|S(NiR"ii(RR=t ImportErrorRRR>tFSResolveAliasFilet as_pathname(R%R@R1tc((s macpath.pycR s   #(*ROR3R4t__all__RRRRRRtNoneRRRRRRRRRRR2RR R R RRR RRR RRt ExceptionRLRRRR R0R!(((s macpath.pycssV                  PK8Anew.pyc sPK86 ?-?- ntpath.pyc :ODc&@s>dZddkZddkZddkZddddddd d d d d ddddddddddddddddddd d!d"d#d$d%g#Zd&Zd'Zd&Zd(Zd)Z d*Z d+Z d,ei jo d-Z nd.ei jo d*Z nd/Z d0Zd1Zd2Zd3Zd4Zd5Zd6Zd7Zd8Zd9Zd:Zd;Zd<Zd=Zd>Zd?ZeZd@ZdAZ dBZ!dCZ"dDZ#dEZ$dFZ%yddGk&l'Z'Wne(j odHZ)n XdIZ)e)Z*e+edJoei,dKdLjZ-dS(MsCommon pathname manipulations, WindowsNT/95 version. Instead of importing this module directly, import os and refer to this module as os.path. iNtnormcasetisabstjoint splitdrivetsplittsplitexttbasenametdirnamet commonprefixtgetsizetgetmtimetgetatimetgetctimetislinktexiststlexiststisdirtisfiletismounttwalkt expandusert expandvarstnormpathtabspathtsplitunctcurdirtpardirtseptpathseptdefpathtaltseptextseptdevnulltrealpathtsupports_unicode_filenamest.s..s\t;t/s.;C:\bintces\Windowstos2tnulcCs|iddiS(saNormalize case of pathname. Makes all characters lowercase and all slashes into backslashes.R%s\(treplacetlower(ts((s ntpath.pycR&scCs+t|d}|djo|d djS(sTest whether a path is absoluteits/\(R(R+((s ntpath.pycR3scGs|}x|D]|}d}|djo d}nt|ow|dd!djp|dd!djo d}qt|djp$t|djo|ddjo d}qn|o |}q t|djpt|ddjo8|o#|ddjo||d7}q||7}q |ddjo||7}q |o1|ddjo||7}q|d |7}q |d 7}q W|S( s=Join two or more pathname components, inserting "\" as needediR,iit:iis/\s\(RtlentAssertionError(tatptpathtbtb_wins((s ntpath.pycR;s6   ( & cCs7|dd!djo|dd!|dfSnd|fS(slSplit a pathname into drive and path specifiers. Returns a 2-tuple "(drive,path)"; either part may be emptyiiR-iR,((R1((s ntpath.pycRtscCs|dd!djod|fSn|dd!}|djp |djot|}|idd}|d jod|fSn|id|d}|d jot|}n|| ||fSnd|fS( s@Split a pathname into UNC mount point and relative path specifiers. Return a 2-tuple (unc, rest); either part may be empty. If unc is not empty, it has the form '//host/mount' (or similar using backslashes). unc+rest is always the input path. Paths containing drive letters never have an UNC part. iiR-R,is//s\\s\i(RtfindR.(R1tfirstTwotnormptindex((s ntpath.pycR}s    cCst|\}}t|}x+|o#||ddjo|d}q!W|| ||}}|}x'|o|ddjo|d }qjW|p|}|||fS(s~Split a pathname. Return tuple (head, tail) where tail is everything after the final slash. Either part may be empty.is/\i(RR.(R1tdtitheadttailthead2((s ntpath.pycRs  cCs[|id}|t|id|idjo|dfSn|| ||fSdS(sSplit the extension from a pathname. Extension is everything from the last dot to the end. Return (root, ext), either part may be empty.R#R%s\R,N(trfindtmax(R1R:((s ntpath.pycRs(cCst|dS(s)Returns the final component of a pathnamei(R(R1((s ntpath.pycRscCst|dS(s-Returns the directory component of a pathnamei(R(R1((s ntpath.pycRscCs|pdSnt|}t|}tt|t|}x5t|D]'}||||jo || SqOqOW|| S(sGGiven a list of pathnames, returns the longest common leading componentR,(tminR?R.txrange(tmts1ts2tnR:((s ntpath.pycRs   cCsti|iS(s0Return the size of a file, reported by os.stat()(toststattst_size(tfilename((s ntpath.pycR scCsti|iS(sBReturn the last modification time of a file, reported by os.stat()(RFRGtst_mtime(RI((s ntpath.pycR scCsti|iS(s<Return the last access time of a file, reported by os.stat()(RFRGtst_atime(RI((s ntpath.pycR scCsti|iS(s:Return the creation time of a file, reported by os.stat().(RFRGtst_ctime(RI((s ntpath.pycR scCstS(s=Test for symbolic link. On WindowsNT/95 always returns false(tFalse(R2((s ntpath.pycR scCs4yti|}Wntij o tSnXtS(sTest whether a path exists(RFRGterrorRMtTrue(R2tst((s ntpath.pycRs  cCs@yti|}Wntij o tSnXti|iS(s"Test whether a path is a directory(RFRGRNRMtS_ISDIRtst_mode(R2RP((s ntpath.pycR s  cCs@yti|}Wntij o tSnXti|iS(s%Test whether a path is a regular file(RFRGRNRMtS_ISREGRR(R2RP((s ntpath.pycRs  cCsXt|\}}|o|djSnt|d}t|djo|ddjS(s?Test whether a path is a mount point (defined as root of drive)R,R%s\iis/\(R,R%s\(RRR.(R2tunctrestR1((s ntpath.pycR$s cCsyti|}Wntij o dSnX||||d}xO|D]G}||jo4t||}t|ot|||qqMqMWdS(sIDirectory tree walk with callback function. For each directory in the directory tree rooted at top (including top itself, but excluding '.' and '..'), call func(arg, dirname, fnames). dirname is the name of the directory, and fnames a list of the names of the files and subdirectories in dirname (excluding '.' and '..'). func may modify the fnames list in-place (e.g. via del or slice assignment), and walk will only recurse into the subdirectories whose names remain in fnames; this can be used to implement a filter, or to impose a specific order of visiting. No semantics are defined for, or required of, arg, beyond that arg is always passed to func. It can be used, e.g., to pass a filename pattern, or a mutable object designed to accumulate statistics. Passing None for arg is common.NR#s..(R#s..(RFtlistdirRNRRR(ttoptfunctargtnamest exceptionstname((s ntpath.pycR5s   cCs|d djo|Sndt|}}x-||jo||djo|d}q/W|djodtijotid}qdtijo|Sqytid}Wntj o d}nXt|tid}n|S|||S(sLExpand ~ and ~user constructs. If user or $HOME is unknown, do nothing.it~s/\tHOMEtHOMEPATHt HOMEDRIVER,(R.RFtenvirontKeyErrorR(R2R:REtuserhometdrive((s ntpath.pycRZs$  c Csd|jo|Snddk}|i|id}d}d}t|}xA||jo3||}|djoq||d}t|}y)|id}|d||d }Wqtj o||}|d}qXn|djo||d|d !djo||}|d}q||d|d !d jo||d }t|}yB|id }|| }|tijo|ti|}nWqttj o||}|d}qtXqd}|d}|||d!}xD|djo6||jo)||}|d}|||d!}qW|tijo|ti|}n|djo||}qn ||}|d}qPW|S( sZExpand shell variables of form $var and ${var}. Unknown variables are left unchanged.t$iNs_-R,is'iit{t}(tstringt ascii_letterstdigitsR.R8t ValueErrorRFRa(R2RhtvarcharstresR8tpathlentctvar((s ntpath.pycR|sb                  cCs|idd}t|\}}|djo1x[|d djo|d}|d}q4Wn.|ido|d}|id}n|id}d}x|t|jo||djo ||=q||djox|djo5||ddjo ||d|d5|d8}qi|djo|ido ||=qi|d7}q|d7}qW| o| o|idn|di|S( s0Normalize path, eliminating double slashes, etc.R%s\R,iiR#s..(R#R,( R)Rt startswithtlstripRR.tendswithtappendR(R2tprefixtcompsR:((s ntpath.pycRs6    " (t_getfullpathnamecCs0t|ptti|}nt|S(s&Return the absolute version of a path.(RRRFtgetcwdR(R2((s ntpath.pycRs cCsG|o*yt|}Wq=tj oq=Xn ti}t|S(s&Return the absolute version of a path.(Rwt WindowsErrorRFRxR(R2((s ntpath.pycRs  tgetwindowsversionii(.t__doc__RFRGtsyst__all__RRRRRRRtbuiltin_module_namesR RRRRRRRRRRR R R R R RRRRRRRRRtntRwt ImportErrorRR!thasattrRzR"(((s ntpath.pycssj       9 !             % " ; - PK8|m opcode.pyc Z Dc @sdZddddddddd d d d g ZdZgZgZgZgZgZgZgZ hZ dgdZ x%e dD]Z de fe e d?ed@dAedBdCedDdEedFdGedHdIedJdKedLdMedNdOedPdQedRdSedTdUedVdWedXdYedZd[ed\d]ed^d_ed`daedbdcedddeedfdgedhdiedjdkedldmedndoedpdqedrdsedtduedvdwedxdyedzd{ed|d}ed~deddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddeddedddZeddeddeddeddeddeddeddeddeddeddeideddeddeddeddeddeddeideddeddeddeddeddeddeddeddeddeddeddeddeideddeideddeideddeddeddeddeddedde idedde idedde ideddeddedded ddZ[[[[dS(sy opcode module - potentially shared between dis and other modules which operate on bytecodes (e.g. peephole optimizers). tcmp_opthasconstthasnamethasjrelthasjabsthaslocalt hascomparethasfreetopnametopmapt HAVE_ARGUMENTt EXTENDED_ARGts>=tinsnot intissis notsexception matchtBADtis<%r>cCs|t|<|t|t BINARY_RSHIFTi?t BINARY_ANDi@t BINARY_XORiAt BINARY_ORiBt INPLACE_POWERiCtGET_ITERiDt PRINT_EXPRiFt PRINT_ITEMiGt PRINT_NEWLINEiHt PRINT_ITEM_TOiItPRINT_NEWLINE_TOiJtINPLACE_LSHIFTiKtINPLACE_RSHIFTiLt INPLACE_ANDiMt INPLACE_XORiNt INPLACE_ORiOt BREAK_LOOPiPt WITH_CLEANUPiQt LOAD_LOCALSiRt RETURN_VALUEiSt IMPORT_STARiTt EXEC_STMTiUt YIELD_VALUEiVt POP_BLOCKiWt END_FINALLYiXt BUILD_CLASSiYiZt STORE_NAMEt DELETE_NAMEi[tUNPACK_SEQUENCEi\tFOR_ITERi]t STORE_ATTRi_t DELETE_ATTRi`t STORE_GLOBALiat DELETE_GLOBALibtDUP_TOPXict LOAD_CONSTidt LOAD_NAMEiet BUILD_TUPLEift BUILD_LISTigt BUILD_MAPiht LOAD_ATTRiit COMPARE_OPijt IMPORT_NAMEikt IMPORT_FROMilt JUMP_FORWARDint JUMP_IF_FALSEiot JUMP_IF_TRUEipt JUMP_ABSOLUTEiqt LOAD_GLOBALitt CONTINUE_LOOPiwt SETUP_LOOPixt SETUP_EXCEPTiyt SETUP_FINALLYizt LOAD_FASTi|t STORE_FASTi}t DELETE_FASTi~t RAISE_VARARGSit CALL_FUNCTIONit MAKE_FUNCTIONit BUILD_SLICEit MAKE_CLOSUREit LOAD_CLOSUREit LOAD_DEREFit STORE_DEREFitCALL_FUNCTION_VARitCALL_FUNCTION_KWitCALL_FUNCTION_VAR_KWiiN( R s<=s==s!=R s>=sinsnot insissis notsexception matchsBAD(t__doc__t__all__RRRRRRRRR RtrangeRRRRRR RR (((s opcode.pycss"                                                                                                                               PK8p optparse.pyc NֱGc@sdZdZdddddddd d d d d dddgZdZddkZddkZddkZddkZdZyddk l Z Wne j odZ nXe Z d e fdYZ d e fdYZdefdYZde fdYZde fdYZdefdYZd fdYZd efdYZd efd YZd!Zd"Zd#Zhee d$fd%<ee d&fd'<ee d(fd)<ee d*fd* Originally distributed as Optik; see http://optik.sourceforge.net/ . If you have problems with this module, please do not file bugs, patches, or feature requests with Python; instead, use Optik's SourceForge project page: http://sourceforge.net/projects/optik For support, use the optik-users@lists.sourceforge.net mailing list (http://lists.sourceforge.net/lists/listinfo/optik-users). s1.5.3tOptiont SUPPRESS_HELPtSUPPRESS_USAGEtValuestOptionContainert OptionGroupt OptionParsert HelpFormattertIndentedHelpFormattertTitledHelpFormattert OptParseErrort OptionErrortOptionConflictErrortOptionValueErrortBadOptionErrors" Copyright (c) 2001-2006 Gregory P. Ward. All rights reserved. Copyright (c) 2002-2006 Python Software Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. iNcCsd|iit||fS(Ns<%s at 0x%x: %s>(t __class__t__name__tid(tself((s optparse.pyct_reprIs(tgettextcCs|S(N((tmessage((s optparse.pycRVscBseZdZdZRS(cCs ||_dS(N(tmsg(RR((s optparse.pyct__init__\scCs|iS(N(R(R((s optparse.pyct__str___s(Rt __module__RR(((s optparse.pycR [s cBs eZdZdZdZRS(s] Raised if an Option instance is created with invalid or inconsistent arguments. cCs||_t||_dS(N(Rtstrt option_id(RRtoption((s optparse.pycRis cCs-|iod|i|ifSn|iSdS(Ns option %s: %s(RR(R((s optparse.pycRms (RRt__doc__RR(((s optparse.pycR cs cBseZdZRS(sE Raised if conflicting options are added to an OptionParser. (RRR(((s optparse.pycR sscBseZdZRS(sS Raised if an invalid option value is encountered on the command line. (RRR(((s optparse.pycR xscBs eZdZdZdZRS(sB Raised if an invalid option is seen on the command line. cCs ||_dS(N(topt_str(RR((s optparse.pycRscCstd|iS(Nsno such option: %s(t_R(R((s optparse.pycRs(RRRRR(((s optparse.pycR~s tAmbiguousOptionErrorcBs eZdZdZdZRS(sD Raised if an ambiguous option is seen on the command line. cCsti||||_dS(N(RRt possibilities(RRR!((s optparse.pycRscCs#td|idi|ifS(Nsambiguous option: %s (%s?)s, (RRtjoinR!(R((s optparse.pycRs (RRRRR(((s optparse.pycR s cBseZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZRS(s Abstract base class for formatting option help. OptionParser instances should use one of the HelpFormatter subclasses for formatting help; by default IndentedHelpFormatter is used. Instance attributes: parser : OptionParser the controlling OptionParser instance indent_increment : int the number of columns to indent per nesting level max_help_position : int the maximum starting column for option help text help_position : int the calculated starting column for option help text; initially the same as the maximum width : int total number of columns for output (pass None to constructor for this value to be taken from the $COLUMNS environment variable) level : int current indentation level current_indent : int current indentation level (in columns) help_width : int number of columns available for option help text (calculated) default_tag : str text to replace with each option's default value, "%default" by default. Set to false value to disable default value expansion. option_strings : { Option : str } maps Option instances to the snippet of help text explaining the syntax of that option, e.g. "-h, --help" or "-fFILE, --file=FILE" _short_opt_fmt : str format string controlling how short options with values are printed in help text. Must be either "%s%s" ("-fFILE") or "%s %s" ("-f FILE"), because those are the two syntaxes that Optik supports. _long_opt_fmt : str similar but for long options; must be either "%s %s" ("--file FILE") or "%s=%s" ("--file=FILE"). tnonecCsd|_||_||_|_|djoGyttid}Wntt fj o d}nX|d8}n||_ d|_ d|_ d|_ ||_d|_h|_d|_d|_dS(NtCOLUMNSiPiis%defaults%s %ss%s=%s(tNonetparsertindent_incrementt help_positiontmax_help_positiontinttostenvirontKeyErrort ValueErrortwidthtcurrent_indenttlevelt help_widtht short_firstt default_tagtoption_stringst_short_opt_fmtt _long_opt_fmt(RR'R)R/R3((s optparse.pycRs$            cCs ||_dS(N(R&(RR&((s optparse.pyct set_parserscCs6|djotd|nd|d|_dS(Ntt s/invalid metavar delimiter for short options: %rs%s(R9R:(R.R6(Rtdelim((s optparse.pyctset_short_opt_delimiters cCs6|djotd|nd|d|_dS(Nt=R:s.invalid metavar delimiter for long options: %rs%s(R=R:(R.R7(RR;((s optparse.pyctset_long_opt_delimiters cCs%|i|i7_|id7_dS(Ni(R0R'R1(R((s optparse.pyctindentscCs?|i|i8_|idjp td|id8_dS(NisIndent decreased below 0.i(R0R'tAssertionErrorR1(R((s optparse.pyctdedentscCs tddS(Nssubclasses must implement(tNotImplementedError(Rtusage((s optparse.pyct format_usagescCs tddS(Nssubclasses must implement(RB(Rtheading((s optparse.pyctformat_headingscCs9|i|i}d|i}ti||d|d|S(s Format a paragraph of free-form text for inclusion in the help output at the current indentation level. R:tinitial_indenttsubsequent_indent(R/R0ttextwraptfill(Rttextt text_widthR?((s optparse.pyct _format_texts   cCs$|o|i|dSndSdS(Ns R9(RM(Rt description((s optparse.pyctformat_descriptionscCs(|od|i|dSndSdS(Ns R9(RM(Rtepilog((s optparse.pyct format_epilog scCs|idjp |i o |iSn|iii|i}|tjp |djo |i}n|ii |it |S(N( R&R%R4thelptdefaultstgettdestt NO_DEFAULTtNO_DEFAULT_VALUEtreplaceR(RRt default_value((s optparse.pyctexpand_defaults   c CsDg}|i|}|i|id}t||jo#d|id|f}|i}n d|id||f}d}|i||io|i|}ti||i }|id|d|df|i g}|dD]} |d|id| fq~n#|ddjo|idndi |S( Nis%*s%s R9s %*s%-*s iiis ( R5R(R0tlentappendRRRZRItwrapR2textendR"( RRtresulttoptst opt_widtht indent_firstt help_textt help_linest_[1]tline((s optparse.pyct format_options$     3cCs |id}xI|iD]>}|i|}||i|}|i|}||i|s&        $  c Cs|io|ip |ii}g}|iD]}||i||fq4~}g}|iD]}||i||fqe~}n|i}|i}|io||} n ||} di | S(s@Return a comma-separated list of option strings & metavariables.s, ( t takes_valuetmetavarRUtuppert _short_optsR6t _long_optsR7R3R"( RRRsRetsoptt short_optst_[2]tloptt long_optsR`((s optparse.pycRiPs *.    (RRRRWRR8R<R>R?RARDRFRMRORQRZRgRqRi(((s optparse.pycRs")           # cBs5eZdZdddddZdZdZRS(s.Format help with indented section bodies. iiicCsti|||||dS(N(RR(RR'R)R/R3((s optparse.pycRgscCstd|S(Ns Usage: %s (R(RRC((s optparse.pycRDoscCsd|id|fS(Ns%*s%s: R9(R0(RRE((s optparse.pycRFrsN(RRRR%RRDRF(((s optparse.pycRcs  cBs5eZdZdddddZdZdZRS(s1Format help with underlined section headers. iicCsti|||||dS(N(RR(RR'R)R/R3((s optparse.pycRzscCsd|itd|fS(Ns%s %s tUsage(RFR(RRC((s optparse.pycRDscCsd|d|it|fS(Ns%s %s s=-(R1R[(RRE((s optparse.pycRFsN(RRRR%RRDRF(((s optparse.pycR vs  cCs|d idjo d}nT|d idjod}|dpd}n"|d djo d}nd}|||S( Nit0xit0bt0iii (tlower(tvalttypetradix((s optparse.pyct _parse_nums  cCs t|tS(N(RR*(R((s optparse.pyct _parse_intscCs t|tS(N(Rtlong(R((s optparse.pyct _parse_longstintegerR*s long integerRsfloating-pointtfloattcomplexcCsZt|i\}}y||SWn2tj o&ttd|||fnXdS(Nsoption %s: invalid %s value: %r(t _builtin_cvtRR.R R(RRntvaluetcvttwhat((s optparse.pyct check_builtins cCsV||ijo|Sn;ditt|i}ttd|||fdS(Ns, s.option %s: invalid choice: %r (choose from %s)(tchoicesR"tmaptreprR R(RRnRR((s optparse.pyct check_choices  tNOtDEFAULTc BsXeZdZddddddddd d d d g Zd-Zd.Zd/Zd0Zd1Zd2Z he d<e d<e d<e d<e dinvalid option string %r: must be at least two characters longit-isMinvalid short option string %r: must be of the form -x, (x any non-dash char)s--sGinvalid long option string %r: must start with --, followed by non-dash(R[R RuR\Rv(RR`Rn((s optparse.pycRFs&" % cCsxq|iD]f}|i|ot||||||=q |djot||tq t||dq W|o6|i}|itddi||ndS(NRsinvalid keyword arguments: %ss, ( tATTRSthas_keytsetattrRVR%tkeystsortR R"(RRtattr((s optparse.pycR[s     cCsN|idjo d|_n.|i|ijotd|i|ndS(NRsinvalid action: %r(RR%tACTIONSR (R((s optparse.pyct _check_actionos cCs9|idjoA|i|ijo*|idj o d|_qMd|_q5nddk}t|itijp5t|ido5t ||ii d|ijo|ii |_n|idjo d|_n|i|i jot d|i|n|i|i jot d|i|ndS(NRRiRRsinvalid option type: %rs$must not supply a type for action %r(RR%RtALWAYS_TYPED_ACTIONSRt __builtin__ttypestTypeTypethasattrtgetattrRtTYPESR t TYPED_ACTIONS(RR((s optparse.pyct _check_typeus"  " cCs|idjo||idjotd|qt|ititifjo3tdtt|iidd|qn+|idj otd|i|ndS(NRs/must supply a list of choices for type 'choice's1choices must be a list of strings ('%s' supplied)t'is#must not supply choices for type %r( RRR%R Rt TupleTypetListTypeRtsplit(R((s optparse.pyct _check_choices"1cCs|i|ijp |idj }|idjoM|oF|io$|iddidd|_q|idd|_ndS(NiiRRi(Rt STORE_ACTIONSRR%RURvRXRu(RRr((s optparse.pyct _check_dests  $cCsA|i|ijo*|idj otd|i|ndS(Ns*'const' must not be supplied for action %r(Rt CONST_ACTIONSRR%R (R((s optparse.pyct _check_consts# cCsb|i|ijo!|idjo d|_q^n+|idj otd|i|ndS(Nis*'nargs' must not be supplied for action %r(RRRR%R (R((s optparse.pyct _check_nargss cCs8|idjot|iptd|i|n|idj o3t|itij otd|i|n|i dj o3t|i ti j otd|i |q4nq|idj otd|i|n|idj otd|n|i dj otd|ndS(NRscallback not callable: %rs3callback_args, if supplied, must be a tuple: not %rs4callback_kwargs, if supplied, must be a dict: not %rs.callback supplied (%r) for non-callback options.callback_args supplied for non-callback options0callback_kwargs supplied for non-callback option( RtcallableRR RR%RRRRtDictType(R((s optparse.pyct_check_callbacks0cCsdi|i|iS(Nt/(R"RuRv(R((s optparse.pycRscCs |idj S(N(RR%(R((s optparse.pycRrscCs(|io|idSn |idSdS(Ni(RvRu(R((s optparse.pyctget_opt_strings cCs>|ii|i}|djo|Sn||||SdS(N(t TYPE_CHECKERRTRR%(RRnRR((s optparse.pyct check_values cCsj|dj oY|idjo|i||Sqftg}|D]}||i||q?~SndS(Ni(R%RRttuple(RRnRRetv((s optparse.pyct convert_values cCs4|i||}|i|i|i||||S(N(Rt take_actionRRU(RRnRtvaluesR&((s optparse.pyctprocesssc Cs|djot|||n|djot|||inr|djot||tnQ|djot||tn0|djo|i|gi|n|djo |i|gi|in|djo$t|||i|dd n|d jo@|ipd}|iph}|i||||||n[|d jo|i |i n6|d jo|i |i nt d |i d S(NRRRRR\RRiiRRRRsunknown action %r((RRtTruetFalset ensure_valueR\RRRt print_helptexitt print_versiont RuntimeErrorR( RRRURnRRR&targstkwargs((s optparse.pycRs4        $      ( sstores store_consts store_trues store_falsesappends append_constscountscallbackshelpsversion(sstores store_consts store_trues store_falsesappends append_constscount(sstoresappendscallback(sstoresappend(s store_consts append_const(sstringsintslongsfloatscomplexschoiceN(#RRRRRRRRRRRRRR%RRRRRRRRRRRRRRt__repr__RrRRRRR(((s optparse.pycRs                    tSUPPRESStHELPtUSAGEiicCst|titifS(N(t isinstanceRt StringTypet UnicodeType(tx((s optparse.pyct isbasestring=scCs t|tS(N(Rt basestring(R((s optparse.pycR@scBsheZd dZdZeZdZdZdZ dZ ddZ ddZ d Z RS( cCs<|o1x.|iD]\}}t|||qWndS(N(titemsR(RRSRR((s optparse.pycRFs cCs t|iS(N(Rt__dict__(R((s optparse.pycRKscCsVt|tot|i|iSn,t|tiot|i|SndSdS(Ni(RRtcmpRRR(Rtother((s optparse.pyct__cmp__Ps cCsZxSt|D]E}|i|o/||}|dj ot|||qRq q WdS(s Update the option values from an arbitrary dictionary, but only use keys from dict that already have a corresponding attribute in self. Any keys in dict without a corresponding attribute are silently ignored. N(tdirRR%R(RtdictRtdval((s optparse.pyct_update_carefulXs    cCs|ii|dS(s Update the option values from an arbitrary dictionary, using all keys from the dictionary regardless of whether they have a corresponding attribute in self or not. N(Rtupdate(RR((s optparse.pyct _update_looseescCsM|djo|i|n,|djo|i|ntd|dS(Ntcarefultloosesinvalid update mode: %r(RRR.(RRtmode((s optparse.pyct_updatems   RcCs1t|ti|}|it||dS(N(t __import__tsystmodulesRtvars(RtmodnameRtmod((s optparse.pyct read_moduleus  cCs'h}t|||i||dS(N(texecfileR(RtfilenameRR((s optparse.pyct read_filezs cCsHt|| pt||djot|||nt||S(N(RRR%R(RRR((s optparse.pycRs'N(RRR%RRRRRRRRRRR(((s optparse.pycRDs       cBseZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZRS(s Abstract base class. Class attributes: standard_option_list : [Option] list of standard options that will be accepted by all instances of this parser class (intended to be overridden by subclasses). Instance attributes: option_list : [Option] the list of Option objects contained by this OptionContainer _short_opt : { string : Option } dictionary mapping short option strings, eg. "-f" or "-X", to the Option instances that implement them. If an Option has multiple short option strings, it will appears in this dictionary multiple times. [1] _long_opt : { string : Option } dictionary mapping long option strings, eg. "--file" or "--exclude", to the Option instances that implement them. Again, a given Option can occur multiple times in this dictionary. [1] defaults : { string : any } dictionary mapping option destination names to default values for each destination [1] [1] These mappings are common to (shared by) all components of the controlling OptionParser, where they are initially created. cCs1|i||_|i||i|dS(N(t_create_option_listt option_classtset_conflict_handlertset_description(RRtconflict_handlerRN((s optparse.pycRs   cCsh|_h|_h|_dS(N(t _short_optt _long_optRS(R((s optparse.pyct_create_option_mappingss  cCs(|i|_|i|_|i|_dS(N(RR RS(RR&((s optparse.pyct_share_option_mappingss  cCs+|djotd|n||_dS(Nterrortresolves$invalid conflict_resolution value %r(serrorsresolve(R.R(Rthandler((s optparse.pycRs cCs ||_dS(N(RN(RRN((s optparse.pycRscCs|iS(N(RN(R((s optparse.pyctget_descriptionscCs|`|`|`dS(ssee OptionParser.destroy().N(RR RS(R((s optparse.pyctdestroysc Csg}xB|iD]7}|ii|o|i||i|fqqWxB|iD]7}|ii|o|i||i|fqUqUW|o|i}|djo?tddig}|D]}||dq~|q|djox|D]\}}|i do|ii ||i|=n|ii ||i|=|ip|ip|i i i |qqWqndS(NR s conflicting option string(s): %ss, iR s--( RuRRR\RvR RR R"t startswithtremovet containerRh(RRt conflict_optsRnRRetcotc_option((s optparse.pyct_check_conflicts4 " "  ,    cOsTt|dtijo|i||}nTt|djo7| o/|d}t|tptd|qn td|i||i i |||_ x|i D]}||i | (values : Values, args : [string]) Parse the command-line options found in 'args' (default: sys.argv[1:]). Any errors result in a call to 'error()', which by default prints the usage message to stderr and calls sys.exit() with an error message. On success returns a pair (values, args) where 'values' is an Values instance (with all your option values) and 'args' is the list of arguments left over after parsing options. N( R;R%R7R-R.Rt _process_argsRR R Rt check_values(RRRR-R.tstopterr((s optparse.pyct parse_argsIs     cCs ||fS(s check_values(values : Values, args : [string]) -> (values : Values, args : [string]) Check that the supplied option values and leftover arguments are valid. Returns the option values and leftover arguments (possibly adjusted, possibly completely new -- whatever you like). Default implementation just returns the passed-in values; subclasses may override as desired. ((RRR((s optparse.pycR=ps cCsx|o|d}|djo|d=dSq|dd!djo|i||q|d djo't|djo|i||q|io|i||d=qdSqWdS(s_process_args(largs : [string], rargs : [string], values : Values) Process command-line arguments and populate 'values', consuming options and arguments from 'rargs'. If 'allow_interspersed_args' is false, stop at the first non-option argument. If true, accumulate any interspersed non-option arguments in 'largs'. is--NiiR(t_process_long_optR[t_process_short_optsR%R\(RR.R-Rtarg((s optparse.pycR<}s   $   cCst||iS(s_match_long_opt(opt : string) -> string Determine which long option string 'opt' matches, ie. which one it is an unambiguous abbrevation for. Raises BadOptionError if 'opt' doesn't unambiguously match any long option string. (t _match_abbrevR (RRn((s optparse.pyct_match_long_optsc Csk|id}d|jo2|idd\}}|id|t}n |}t}|i|}|i|}|io|i}t ||joI|djo|i t d|q%|i t d||fqQ|djo|id} qQt |d|!} |d|5n)|o|i t d|nd} |i|| ||dS(NiR=is%s option requires an arguments%s option requires %d argumentss%s option does not take a value(tpopRtinsertRRRER RrRR[R RRR%R( RR-RRCRntnext_argthad_explicit_valueRRR((s optparse.pycRAs0       c Cs}|id}t}d}x[|dD]O}d|}|ii|}|d7}|pt|n|io|t|jo|id||t}n|i } t|| joI| djo|i t d|qI|i t d|| fqS| djo|id} qSt |d| !} |d| 5nd} |i|| |||oPq&q&WdS(NiiRs%s option requires an arguments%s option requires %d arguments(RFRRRTRRrR[RGRRR RRR%R( RR-RRCR>titchRnRRR((s optparse.pycRBs8        cCs6|idjotiitidSn|iSdS(Ni(R$R%R+tpathtbasenameRR:(R((s optparse.pyct get_prog_namescCs|id|iS(Ns%prog(RXRN(Rts((s optparse.pyctexpand_prog_namescCs|i|iS(N(RPRN(R((s optparse.pycRsicCs,|otii|nti|dS(N(RtstderrtwriteR(RtstatusR((s optparse.pycRscCs4|iti|idd|i|fdS(serror(msg : string) Print a usage message incorporating 'msg' to stderr and exit. If you override this in a subclass, it should not return -- it should either exit or raise an exception. is%s: error: %s N(t print_usageRRQRRN(RR((s optparse.pycR scCs2|io |ii|i|iSndSdS(NR9(RCRRDRP(R((s optparse.pyct get_usage#s  cCs"|io||iIJndS(s`print_usage(file : file = stdout) Print the usage message for the current program (self.usage) to 'file' (default stdout). Any occurence of the string "%prog" in self.usage is replaced with the name of the current program (basename of sys.argv[0]). Does nothing if self.usage is empty or not defined. N(RCRU(Rtfile((s optparse.pycRT*s cCs&|io|i|iSndSdS(NR9(RRP(R((s optparse.pyct get_version6s cCs"|io||iIJndS(sDprint_version(file : file = stdout) Print the version message for this program (self.version) to 'file' (default stdout). As with print_usage(), any occurence of "%prog" in self.version is replaced by the current program's name. Does nothing if self.version is empty or undefined. N(RRW(RRV((s optparse.pycR<s cCs|djo |i}n|i|g}|i|itd|i|io*|iti |||idnx4|i D])}|i|i ||idqW|i di |d S(NtOptionss R9i(R%RRqR\RFRR?RhRRRkRRAR"(RRR_Rp((s optparse.pycRGs       cCs|i|iS(N(RQRP(RR((s optparse.pycRQXscCs|djo |i}ng}|io|i|idn|io|i|i|dn|i|i||i|i|di |S(Ns R9( R%RRCR\RURNRORRQR"(RRR_((s optparse.pycR[s    cCs-t|dd}|pti}n|S(Ntencoding(RR%Rtgetdefaultencoding(RRVRY((s optparse.pyct _get_encodinghscCsL|djo ti}n|i|}|i|ii|ddS(sprint_help(file : file = stdout) Print an extended help message, listing all options and any help text provided with them, to 'file' (default stdout). RXN(R%RtstdoutR[RRRtencode(RRVRY((s optparse.pycRns  N(-RRRR,R%RRRRRR*R+R'R(R#R/R0R1R2R3R5R7R8R9R;R@R=R<RERARBRNRPRRR RURTRWRRRQRR[R(((s optparse.pycR_sb?              ' 3 % *        cCs|i|o|Sng}|iD]!}|i|o ||q)q)~}t|djo |dSn1|pt|n|it||dS(s_match_abbrev(s : string, wordmap : {string : Option}) -> string Return the string key in 'wordmap' for which 's' is an unambiguous abbreviation. If 's' is found to be ambiguous or doesn't match any of 'words', raise BadOptionError. iiN(RRRR[RRR (ROtwordmapRetwordR!((s optparse.pycRD|s$  (-Rt __version__t__all__t __copyright__RR+RRIRRt ImportErrorRt ExceptionR R R R RR RRR RRRRRRRRRVRRRRRt NameErrorRRRRRRRDt make_option(((s optparse.pycss          {   A PK8vi\\os.pyc Gc@sdZddkZddkZeiZddddddd d d d d ddg ZdZdejordZdZddk Tyddk l Z Wne j onXddk Z ddk Z eiee [ ndejordZdZddkTyddkl Z Wne j onXddkZ ddkZeiee[n?dejodZdZddkTyddkl Z Wne j onXeiiddjoddkZ nddkZ ddklZddkZeiee[ndejordZdZddkTyddkl Z Wne j onXddkZ ddkZeiee[ndejordZdZddkTyddkl Z Wne j onXddkZ ddkZeiee[ndejordZdZddkTyddkl Z Wne j onXddkZ ddkZeiee[n e de eidfd=YZ=nd<e:i>fd>YZ=e=e0Z0dd?Z?ei/d@dAZ@e@dBo\e@dC oNe@dDoAd!ZAd"ZBZCdEZDdFZEdGZFdHZGdIZHne@dCo/dJZIdKZJeidCdLdMdNgne@dOo/dPZKdQZLeidOdRdSdTgne@dBoe@dUp dVddWZMei/dUne@dXp dVddYZNei/dXne@dZp dVdd[ZOei/dZqnddkPZQd\ZRd]ZSyeQiTeUeSeRWne1j onXd^ZVd_ZWyeQiTeXeWeVWne1j onXe@d`p daZYndS(dsOS routines for Mac, NT, or Posix depending on what system we're on. This exports: - all functions from posix, nt, os2, mac, or ce, e.g. unlink, stat, etc. - os.path is one of the modules posixpath, ntpath, or macpath - os.name is 'posix', 'nt', 'os2', 'mac', 'ce' or 'riscos' - os.curdir is a string representing the current directory ('.' or ':') - os.pardir is a string representing the parent directory ('..' or '::') - os.sep is the (or a most common) pathname separator ('/' or ':' or '\\') - os.extsep is the extension separator ('.' or '/') - os.altsep is the alternate pathname separator (None or '/') - os.pathsep is the component separator used in $PATH etc - os.linesep is the line separator in text files ('\r' or '\n' or '\r\n') - os.defpath is the default search path for executables - os.devnull is the file path of the null device ('/dev/null', etc.) Programs that import and use 'os' stand a better chance of being portable between different platforms. Of course, they must then only use functions that are defined by all platforms (e.g., unlink and opendir), and leave all pathname manipulation to os.path (e.g., split and join). iNtaltseptcurdirtpardirtseptpathseptlineseptdefpathtnametpathtdevnulltSEEK_SETtSEEK_CURtSEEK_ENDcCseyt|iSWnMtj oAg}t|D]"}|ddjo ||q3q3~SnXdS(Nit_(tlistt__all__tAttributeErrortdir(tmodulet_[1]tn((sos.pyct_get_exports_list#stposixs (t*(t_exittnts tos2sEMX GCC(tlinktmacs tcetriscossno os specific module foundsos.path(RRRRRtextsepRR iiiicCsti|\}}|pti|\}}n|ot|omti| o\yt||Wn/tj o#}|itijoqnX|tjodSqnt||dS(smakedirs(path [, mode=0777]) Super-mkdir; create a leaf directory and all intermediate ones. Works like mkdir, except that any intermediate path segment (not just the rightmost) will be created if it does not exist. This is recursive. N( RtsplittexiststmakedirstOSErrorterrnotEEXISTRtmkdir(Rtmodetheadttailte((sos.pycR"s    cCst|ti|\}}|pti|\}}nxM|oE|o>yt|Wntj oPnXti|\}}qBWdS(sremovedirs(path) Super-rmdir; remove a leaf directory and all empty intermediate ones. Works like rmdir except that, if the leaf directory is successfully removed, directories corresponding to rightmost path segments will be pruned away until either the whole path is consumed or an error occurs. Errors during this latter phase are ignored -- they generally mean that a directory was not empty. N(trmdirRR terror(RR(R)((sos.pyct removedirss cCsti|\}}|o&|oti| ot|nt||ti|\}}|o/|o(yt|Wqtj oqXndS(s@renames(old, new) Super-rename; create directories as necessary and delete any left empty. Works like rename, except creation of any intermediate directories needed to make the new pathname good is attempted first. After the rename, directories corresponding to rightmost path segments of the old name will be pruned way until either the whole path is consumed or a nonempty directory is found. Note: this function can fail with the new directory structure made if you lack permissions needed to unlink the leaf directory or file. N(RR R!R"trenameR-R,(toldtnewR(R)((sos.pyctrenamess R"R-R1c cs>ddkl}l}l}yt|}Wn4tj o(}|dj o||ndSnXgg}} xB|D]:} |||| o|i| qw| i| qwW|o||| fVnxP|D]H} ||| } || p&x#t| ||D] } | Vq WqqW|p||| fVndS(se Directory tree generator. For each directory in the directory tree rooted at top (including top itself, but excluding '.' and '..'), yields a 3-tuple dirpath, dirnames, filenames dirpath is a string, the path to the directory. dirnames is a list of the names of the subdirectories in dirpath (excluding '.' and '..'). filenames is a list of the names of the non-directory files in dirpath. Note that the names in the lists are just names, with no path components. To get a full path (which begins with top) to a file or directory in dirpath, do os.path.join(dirpath, name). If optional arg 'topdown' is true or not specified, the triple for a directory is generated before the triples for any of its subdirectories (directories are generated top down). If topdown is false, the triple for a directory is generated after the triples for all of its subdirectories (directories are generated bottom up). When topdown is true, the caller can modify the dirnames list in-place (e.g., via del or slice assignment), and walk will only recurse into the subdirectories whose names remain in dirnames; this can be used to prune the search, or to impose a specific order of visiting. Modifying dirnames when topdown is false is ineffective, since the directories in dirnames have already been generated by the time dirnames itself is generated. By default errors from the os.listdir() call are ignored. If optional arg 'onerror' is specified, it should be a function; it will be called with one argument, an os.error instance. It can report the error to continue with the walk, or raise the exception to abort the walk. Note that the filename is available as the filename attribute of the exception object. Caution: if you pass a relative pathname for top, don't change the current working directory between resumptions of walk. walk never changes the current directory, and assumes that the client doesn't either. Example: from os.path import join, getsize for root, dirs, files in walk('python/Lib/email'): print root, "consumes", print sum([getsize(join(root, name)) for name in files]), print "bytes in", len(files), "non-directory files" if 'CVS' in dirs: dirs.remove('CVS') # don't visit CVS directories i(tjointisdirtislinkN( tos.pathR2R3R4tlistdirR,tNonetappendtwalk( ttopttopdowntonerrorR2R3R4tnamesterrtdirstnondirsRRtx((sos.pycR9s04    R9cGst||dS(spexecl(file, *args) Execute the executable file with argument list args, replacing the current process. N(texecv(tfiletargs((sos.pyctexecl<scGs"|d}t||d |dS(sexecle(file, *args, env) Execute the executable file with argument list args and environment env, replacing the current process. iN(texecve(RCRDtenv((sos.pyctexecleCs cGst||dS(sexeclp(file, *args) Execute the executable file (which is searched for along $PATH) with argument list args, replacing the current process. N(texecvp(RCRD((sos.pyctexeclpKscGs"|d}t||d |dS(sexeclpe(file, *args, env) Execute the executable file (which is searched for along $PATH) with argument list args and environment env, replacing the current process. iN(texecvpe(RCRDRG((sos.pyctexeclpeRs cCst||dS(sexecp(file, args) Execute the executable file (which is searched for along $PATH) with argument list args, replacing the current process. args may be a list or tuple of strings. N(t_execvpe(RCRD((sos.pycRI[scCst|||dS(sexecvpe(file, args, env) Execute the executable file (which is searched for along $PATH) with argument list args and environment env , replacing the current process. args may be a list or tuple of strings. N(RM(RCRDRG((sos.pycRKcsRERHRJRLRIRKcCsk|dj ot}||f}nt}|f}t}ti|\}}|o|||dSnd|jo|d}nt}|it}d} d} x|D]} ti| |} y|| |Wqt j o\} t i d}| i t i jo0| i t ijo| djo| } |} q@qXqW| ot | | nt | |dS(NtPATHi(R7RFRBtenvironRR RRR2R,tsystexc_infoR$tENOENTtENOTDIR(RCRDRGtfunctargrestR(R)tenvpathRNt saved_exctsaved_tbRtfullnameR*ttb((sos.pycRMns<    & cCst|ddS(Nt(tputenv(tkey((sos.pyctunsetenvs(t_EnvironR_cBseZdZdZdZyeWnej odZn XdZdZdZ d dZ d dZ d Z RS( cCsJtii||i}x*|iD]\}}|||i integer Execute file with arguments from args in a subprocess. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. N(RR7RB(R'RCRD((sos.pycR+scCst||||tS(s:spawnve(mode, file, args, env) -> integer Execute file with arguments from args in a subprocess with the specified environment. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. (RRF(R'RCRDRG((sos.pyctspawnve4scCst|||dtS(s8spawnvp(mode, file, args) -> integer Execute file (which is looked for along $PATH) with arguments from args in a subprocess. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. N(RR7RI(R'RCRD((sos.pyctspawnvp@scCst||||tS(s\spawnvpe(mode, file, args, env) -> integer Execute file (which is looked for along $PATH) with arguments from args in a subprocess with the supplied environment. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. (RRK(R'RCRDRG((sos.pyctspawnvpeJscGst|||S(sspawnl(mode, file, *args) -> integer Execute file with arguments from args in a subprocess. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. (R(R'RCRD((sos.pyctspawnlXscGs!|d}t|||d |S(s:spawnle(mode, file, *args, env) -> integer Execute file with arguments from args in a subprocess with the supplied environment. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. i(R(R'RCRDRG((sos.pyctspawnleas RRRRcGst|||S(sWspawnlp(mode, file, *args) -> integer Execute file (which is looked for along $PATH) with arguments from args in a subprocess with the supplied environment. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. (R(R'RCRD((sos.pyctspawnlpsscGs!|d}t|||d |S(s]spawnlpe(mode, file, *args, env) -> integer Execute file (which is looked for along $PATH) with arguments from args in a subprocess with the supplied environment. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it. i(R(R'RCRDRG((sos.pyctspawnlpe}s RRRtpopen2ttcCs.ddk}|i||\}}||fS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdin, child_stdout) are returned.iN(R(tcmdR'tbufsizeRtstdouttstdin((sos.pycRs tpopen3cCs4ddk}|i||\}}}|||fS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdin, child_stdout, child_stderr) are returned.iN(RR(RR'RRRRtstderr((sos.pycRs tpopen4cCs.ddk}|i||\}}||fS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdin, child_stdout_stderr) are returned.iN(RR(RR'RRRR((sos.pycRs cCs t||S(N(t stat_result(ttupRr((sos.pyct_make_stat_resultscCs|i\}}t|fS(N(t __reduce__R(tsrttypeRD((sos.pyct_pickle_stat_resultscCs t||S(N(tstatvfs_result(RRr((sos.pyct_make_statvfs_resultscCs|i\}}t|fS(N(RR(RRRD((sos.pyct_pickle_statvfs_resultsturandomc Csytdt}Wn%ttfj otdnXd}x5t||jo!|t||t|7}qDWt||S(sfurandom(n) -> str Return a string of n random bytes suitable for cryptographic use. s /dev/urandoms&/dev/urandom (or equivalent) not foundR[(topentO_RDONLYR#tIOErrortNotImplementedErrortlentreadtclose(Rt _urandomfdtbytes((sos.pycRs" (sos2snt(sos2snt(Zt__doc__RPR$tbuiltin_module_namest_namesRRRRRRt ImportErrort posixpathRtextendRtntpathRtversiontfindt os2emxpatht _emx_linkRRtmacpathRRt riscospathtmodulesR5RRRRRRRR R R R R"R-R1R{R7R9R8RORwRERHRJRLRIRKRMR\R`R^t riscosenvironR_tIterableUserDictRyR}tP_WAITRt P_NOWAITORRRRRRRRRRRRtcopy_regt _copy_regRRtpickleRRRRR(((sos.pycssH                             :   U        #     .#    (                     PK8F&~'~'os2emxpath.pyc Zd?Zd@Z dAZ!dBZ"dCZ#dDZ$e$Z%e&Z'dS(EsCommon pathname manipulations, OS/2 EMX version. Instead of importing this module directly, import os and refer to this module as os.path. iNtnormcasetisabstjoint splitdrivetsplittsplitexttbasenametdirnamet commonprefixtgetsizetgetmtimetgetatimetgetctimetislinktexiststlexiststisdirtisfiletismounttwalkt expandusert expandvarstnormpathtabspathtsplitunctcurdirtpardirtseptpathseptdefpathtaltseptextseptdevnulltrealpathtsupports_unicode_filenamest.s..t/s\t;s.;C:\bintnulcCs|iddiS(sZNormalize case of pathname. Makes all characters lowercase and all altseps into seps.s\R$(treplacetlower(ts((sos2emxpath.pycR scCs+t|d}|djo|d djS(sTest whether a path is absoluteits/\(R(R)((sos2emxpath.pycR-scGsl|}x_|D]W}t|o |}q |djp|ddjo||}q |d|}q W|S(s=Join two or more pathname components, inserting sep as neededR*is/\:R$(R(tatptpathtb((sos2emxpath.pycR5s  cCs7|dd!djo|dd!|dfSnd|fS(slSplit a pathname into drive and path specifiers. Returns a 2-tuple "(drive,path)"; either part may be emptyiit:iR*((R,((sos2emxpath.pycREscCs|dd!djod|fSn|dd!}|d jp |d jot|}|idd}|djod|fSn|id|d}|djot|}n|| ||fSnd|fS( s@Split a pathname into UNC mount point and relative path specifiers. Return a 2-tuple (unc, rest); either part may be empty. If unc is not empty, it has the form '//host/mount' (or similar using backslashes). unc+rest is always the input path. Paths containing drive letters never have an UNC part. iiR/R*iR$s\is//s\\(Rtfindtlen(R,tfirstTwotnormptindex((sos2emxpath.pycRNs    cCst|\}}t|}x+|o#||ddjo|d}q!W|| ||}}|}x'|o|ddjo|d }qjW|p|}|||fS(s~Split a pathname. Return tuple (head, tail) where tail is everything after the final slash. Either part may be empty.is/\i(RR1(R,tdtitheadttailthead2((sos2emxpath.pycRos  cCsd\}}x|D]~}|djo|||d}}q|djo&|o|||}}q|}q|o||}q||}qW||fS(sSplit the extension from a pathname. Extension is everything from the last dot to the end. Return (root, ext), either part may be empty.R*R$s\R#(R*R*(R$s\((R,troottexttc((sos2emxpath.pycRs    cCst|dS(s)Returns the final component of a pathnamei(R(R,((sos2emxpath.pycRscCst|dS(s-Returns the directory component of a pathnamei(R(R,((sos2emxpath.pycRscCs|pdSnt|}t|}tt|t|}x5t|D]'}||||jo || SqOqOW|| S(sGGiven a list of pathnames, returns the longest common leading componentR*(tmintmaxR1txrange(tmts1ts2tnR6((sos2emxpath.pycRs   cCsti|iS(s0Return the size of a file, reported by os.stat()(toststattst_size(tfilename((sos2emxpath.pycR scCsti|iS(sBReturn the last modification time of a file, reported by os.stat()(RDREtst_mtime(RG((sos2emxpath.pycR scCsti|iS(s<Return the last access time of a file, reported by os.stat()(RDREtst_atime(RG((sos2emxpath.pycR scCsti|iS(s:Return the creation time of a file, reported by os.stat().(RDREtst_ctime(RG((sos2emxpath.pycR scCstS(s5Test for symbolic link. On OS/2 always returns false(tFalse(R-((sos2emxpath.pycR scCs4yti|}Wntij o tSnXtS(sTest whether a path exists(RDREterrorRKtTrue(R-tst((sos2emxpath.pycRs  cCs@yti|}Wntij o tSnXti|iS(s"Test whether a path is a directory(RDRERLRKtS_ISDIRtst_mode(R-RN((sos2emxpath.pycRs  cCs@yti|}Wntij o tSnXti|iS(s%Test whether a path is a regular file(RDRERLRKtS_ISREGRP(R-RN((sos2emxpath.pycRs  cCsXt|\}}|o|djSnt|d}t|djo|ddjS(s?Test whether a path is a mount point (defined as root of drive)R*R$s\iis/\(R*R$s\(RRR1(R-tunctrestR,((sos2emxpath.pycRs cCsyti|}Wntij o dSnX||||d}xO|D]G}||jo4t||}t|ot|||qqMqMWdS(sDirectory tree walk whth callback function. walk(top, func, arg) calls func(arg, d, files) for each directory d in the tree rooted at top (including top itself); files is a list of all the files and subdirs in directory d.NR#s..(R#s..(RDtlistdirRLRRR(ttoptfunctargtnamest exceptionstname((sos2emxpath.pycR s   cCs|d djo|Sndt|}}x-||jo||djo|d}q/W|djodtijotid}qdtijo|Sqytid}Wntj o d}nXt|tid}n|S|||S(sLExpand ~ and ~user constructs. If user or $HOME is unknown, do nothing.it~s/\tHOMEtHOMEPATHt HOMEDRIVER*(R1RDtenvirontKeyErrorR(R-R6RCtuserhometdrive((sos2emxpath.pycR)s$  c Csd|jo|Snddk}|i|id}d}d}t|}xA||jo3||}|djoq||d}t|}y)|id}|d||d }Wqtj o||}|d}qXn|djo||d|d !djo||}|d}q||d|d !d jo||d }t|}yB|id }|| }|tijo|ti|}nWqttj o||}|d}qtXqd}|d}|||d!}xD|djo6||jo)||}|d}|||d!}qW|tijo|ti|}n|djo||}qn ||}|d}qPW|S( sZExpand shell variables of form $var and ${var}. Unknown variables are left unchanged.t$iNs_-R*is'iit{t}(tstringtletterstdigitsR1R4t ValueErrorRDR_(R-RftvarcharstresR4tpathlenR<tvar((sos2emxpath.pycRKsb                  cCsj|idd}t|\}}x*|d djo|d}|d}q'W|id}d}x|t|jo||djo ||=qi||djoB|djo5||ddjo ||d|d5|d}qi||djo-|djo ||ddjo ||=qi|d}qiW| o| o|idn|di|S( s0Normalize path, eliminating double slashes, etc.s\R$iiR#s..R*(R*s..(R'RRR1tappendR(R-tprefixtcompsR6((sos2emxpath.pycRs*  33 cCs0t|ptti|}nt|S(s%Return the absolute version of a path(RRRDtgetcwdR(R-((sos2emxpath.pycRs ((t__doc__RDREt__all__RRRRRRRR RRRRRRRRRRR R R R R RRRRRRRRRRR!RKR"(((sos2emxpath.pycssV     !              " 9  PK8[pdb.pyc tGc@shdZddkZddkZddkZddkZddklZddkZddkZddk Z ddk Z eZ de _ e iZ ddddd d d d d g ZdZdZdeieifdYZeedZeedZdZdZdZdZdZdZdZdZdZe djo endS(sA Python debugger.iN(tRepritruntpmtPdbtrunevaltrunctxtruncallt set_tracet post_mortemthelpcCstid|}yt|}Wntj o dSnXd}d}xO|i}|djoPn|i|o|||f}Pn|d}qL|i|S(Nsdef\s+%s\s*[(]it(tretcompiletopentIOErrortNonetreadlinetmatchtclose(tfuncnametfilenametcretfptlinenotanswertline((spdb.pyct find_functions"     s -> cBseZddfdfdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZeiiZdZddZdZeZdZdZdZdZdZdZdZ dZ!e!Z"dZ#e#Z$e#Z%dZ&e&Z'dZ(e(Z)dZ*e*Z+d Z,e,Z-d!Z.e.Z/d"Z0e0Z1Z2d#Z3e3Z4d$Z5d%Z6e6Z7e6Z8d&Z9d'Z:e:Z;d(Z<e<Z=d)Z>d*Z?d+Z@d,ZAeAZBd-ZCd.ZDd/ZEd0d1d2d3d4d5gZFd6ZGeHd7ZId8ZJd9ZKd:ZLd;ZMeMZNd<ZOd=ZPd>ZQd?ZRd@ZSdAZTdBZUdCZVdDZWdEZXdFZYdGZZdHZ[dIZ\dJZ]dKZ^dLZ_dMZ`dNZadOZbdPZcdQZddRZedSZfdTZgdUZhdVZidWZjdXZkdYZldZZmd[Znd\Zod]ZpepZqd^Zrd_Zsd`ZtdaZudbZvdcZwddZxdeZyRS(gttabcCstii|tii|||||o d|_nd|_h|_d|_d|_ yddk }Wnt j onXg|_ dt ijowt id}ytt ii|d}Wntj oqXx$|iD]}|i i|qW|inytd}Wntj on3Xx$|iD]}|i i|qJW|ih|_h|_h|_t|_d|_dS(Nis(Pdb) R itHOMEs.pdbrc(tbdbtBdbt__init__tcmdtCmdt use_rawinputtprompttaliasest mainpyfilet_wait_for_mainpyfileRt ImportErrortrcLinestostenvironR tpathtjoinRt readlinestappendRtcommandstcommands_doprompttcommands_silenttFalsetcommands_definingRt commands_bnum(tselft completekeytstdintstdoutRtenvHometrcFileR((spdb.pycR7sH              cCstii||idS(N(RRtresettforget(R5((spdb.pycR;ascCs(d|_g|_d|_d|_dS(Ni(RRtstacktcurindextcurframe(R5((spdb.pycR<es   cCsM|i|i||\|_|_|i|id|_|idS(Ni(R<t get_stackR=R>R?t execRcLines(R5tftt((spdb.pyctsetupks cCst|iof|i}g|_xQ|D]E}|d }t|djo"|ddjo|i|q#q#WndS(Niit#(R(tlentonecmd(R5R(R((spdb.pycRArs    $cCsG|iodSn|i|o!|idIJ|i|dndS(snThis method is called when there is the remote possibility that we ever need to stop in this function.Ns--Call--(R&t stop_hereR8t interactionR(R5tframet argument_list((spdb.pyct user_calls   cCsv|ioD|i|i|iijp|idjodSnd|_n|i|o|i|dndS(s;This function is called when we stop or break at this line.iN( R&R%tcanonictf_codet co_filenametf_linenot bp_commandsRIR(R5RJ((spdb.pyct user_lines  cCst|dto|i|ijo|i}d|_|i}|i|dx"|i|D]}|i|q_W||_|i|p|i |i |i n|i |o|i n|idSndS(s Call every command that was set for the current active breakpoint (if there is one) Returns True if the normal interaction function must be called, False otherwise t currentbpiNi(tgetattrR2RSR/tlastcmdRDRRGR1tprint_stack_entryR=R>R0tcmdloopR<(R5RJRSt lastcmd_backR((spdb.pycRQs &     cCs.||id<|idIJ|i|ddS(s7This function is called when a return trap is set here.t __return__s --Return--N(tf_localsR8RIR(R5RJt return_value((spdb.pyct user_returns  cCs|\}}}||f|idRWR<(R5RJt traceback((spdb.pycRIs c Bs|d djo|d}n|ii}|ii}y$e|ddd}|||UWnfeid \}}e|edjo |}n |i}|idI|d I|IJnXdS( Nit!s stsingleiR s***R^( R?RZt f_globalsR tsystexc_infoR_R`R8(R5RtlocalstglobalstcodeRCtvRf((spdb.pyctdefaults    cCs'|ip|Sn|i}x|d|ijo|i|d}d}x8|dD],}|idt||}|d}qZW|iddi|d}|i}q$W|ddjoX|id}|djo8||di}|ii ||| i }q#n|S( s*Handle alias expansion and ';;' separator.iit%s%*t taliass;;i( tstriptsplitR$treplacetstrR,tfindtlstriptcmdqueueR.trstrip(R5RtargstiittmpArgtmarkertnext((spdb.pyctprecmds*     cCs2|iptii||Sn|i|SdS(sInterpret the argument as though it had been typed in response to the prompt. Checks whether this line is typed at the normal prompt or in a breakpoint command list definition. N(R3R R!RGthandle_command_def(R5R((spdb.pycRGs cCs|i|\}}}|djot|i|i(R?RNROR%(R5R((spdb.pycRys cCs|i|ddS(Ni(R(R5R((spdb.pyct do_tbreaksc Cs7d}|id}t|djo|di}n,t|djo|di}n|S|djo|Sn|id}|ddjo&|d=t|djo|Sqn|i}t|djo|d}n/|i|d}|o |}n|d}t||} | p|S( Nt'iiiR t.R5(NNN(RRwRFRvRRR( R5t identifiertfailedtidstringtidtpartstfnametitemRBR((spdb.pycRs.     cCsti||}|p|idIJdSn|i}| p3|ddjp"|d djp|d djo|idIJdSn|S(sCheck whether specified line seems to be executable. Return `lineno` if it is, 0 if not (e.g. a docstring, comment, blank line or EOF). Warning: testing is not comprehensive. s End of fileiREis"""s'''s*** Blank or comment(t linecachetgetlineR8Rv(R5RRR((spdb.pycRs  " cCs|i}x|D]}yt|}Wn'tj o|id|IJqnXd|jottiijnp|idI|IJqntii|}|o|iqqWdS(Ns#Breakpoint index %r is not a numberisNo breakpoint numbered( RwRRR8RFRRRtenable(R5RR~tiR((spdb.pyct do_enables *cCs|i}x|D]}yt|}Wn'tj o|id|IJqnXd|jottiijnp|idI|IJqntii|}|o|iqqWdS(Ns#Breakpoint index %r is not a numberisNo breakpoint numbered( RwRRR8RFRRRtdisable(R5RR~RR((spdb.pyct do_disables *c Cs|idd}yt|di}Wn,tj o |id|dIJdSnXy|d}Wn d}nXytii|}Wn,t j o |id|dIJdSnX|o8||_ |p$|idI|I|idIJqndS(NRtiis#Breakpoint index %r is not a numbers Breakpoint index %r is not validRsis now unconditional.( RwRRvRR8RRRRt IndexErrorR(R5RR~tbpnumRR((spdb.pyct do_conditions*    cCsO|i}yt|di}Wn,tj o |id|dIJdSnXyt|di}Wn d}nXytii|}Wn,tj o |id|dIJdSnX|o||_ |djoHd}|djo|d|}n |d}|i|d |IJqK|id I|i|Id IJndS( s*arg is bp number followed by ignore count.is#Breakpoint index %r is not a numberNis Breakpoint index %r is not validsWill ignore next s %d crossingss 1 crossings of breakpoint %d.sWill stop next time breakpoints is reached.( RwRRvRR8RRRRtignore(R5RR~RtcountRtreply((spdb.pyct do_ignores4         cCs|paytd}Wntj o d}nX|ii}|djo|indSnd|jo|id}|| }||d}yt|}Wntj od|}nX|i||}|o|i d I|IJndSn|i }x|D]}yt|}Wn'tj o|i d |IJqnXd |jot t i ijnp|i d I|IJqn|i|}|o|i d I|IJq|i d I|IJqWdS(sThree possibilities, tried in this order: clear -> clear all breaks, ask for confirmation clear file:lineno -> clear all breaks at file:lineno clear bpno bpno ... -> clear breakpoints by numbersClear all breaks? tnotytyesNR^isInvalid line number (%s)s***s#Breakpoint index %r is not a numberisNo breakpoint numberedsDeleted breakpoint(Rsyes(t raw_inputtEOFErrorRvtlowertclear_all_breaksRRRt clear_breakR8RwRFRRRtclear_bpbynumber(R5RRRRRRt numberlist((spdb.pyctdo_clearsH     *cCs|idS(N(tprint_stack_trace(R5R((spdb.pyctdo_where@scCsl|idjo|idIJnH|id|_|i|id|_|i|i|id|_dS(Nis*** Oldest framei(R>R8R=R?RVRR(R5R((spdb.pyctdo_upEs cCsy|idt|ijo|idIJnH|id|_|i|id|_|i|i|id|_dS(Nis*** Newest framei(R>RFR=R8R?RVRR(R5R((spdb.pyctdo_downOs cCs|idS(Ni(tset_step(R5R((spdb.pyctdo_stepYs cCs|i|idS(Ni(tset_nextR?(R5R((spdb.pyctdo_next^scCs|i|idS(Ni(t set_returnR?(R5R((spdb.pyct do_returncscCs|idS(Ni(t set_continue(R5R((spdb.pyct do_continuehs c Cs|idt|ijo|idIJdSnyt|}Wn tj o|idIJnxXyK||i_|i|id|f|i|i<|i|i|iWn(tj o}|idI|IJnXdS(Nis-*** You can only jump within the bottom frames.*** The 'jump' command requires a line number.is*** Jump failed:( R>RFR=R8RRR?RPRV(R5Rte((spdb.pyctdo_jumpms  $cCstid|ii}|ii}t|i|i|i }d|i i |_ |i dIJti |i |||f|i dIJti|i|i|_dS(Ns(%s) sENTERING RECURSIVE DEBUGGERsLEAVING RECURSIVE DEBUGGER(RltsettraceRR?RkRZRR6R7R8R#Rvt call_tracingRttrace_dispatchRU(R5RRoRntp((spdb.pyctdo_debugs     cCsd|_|idS(Ni(t_user_requested_quittset_quit(R5R((spdb.pyctdo_quits  cCs|iJd|_|idS(Ni(R8RR(R5R((spdb.pyctdo_EOFs  cCs|i}|i}|i}|i}|id@o|d}n|id@o|d}nxct|D]U}|i|}|i|IdI||jo|i||IJqi|idIJqiWdS(Niiit=s*** undefined ***(R?RNRZt co_argcounttco_flagstranget co_varnamesR8(R5RRBtcotdicttnRtname((spdb.pyctdo_argss       cCs?d|iijo|i|iidIJn|idIJdS(NRYs*** Not yet returned!(R?RZR8(R5R((spdb.pyct do_retvalscCsy t||ii|iiSWnftid \}}t|to |}n |i}|i dI|dIt |IJnXdS(Nis***R^( RR?RkRZRlRmt isinstanceRyR`R8R(R5RRCRqRf((spdb.pyct_getvals  #cCs.y |it|i|IJWnnXdS(N(R8RR(R5R((spdb.pyctdo_ps cCs.y ti|i||iWnnXdS(N(tpprintRR8(R5R((spdb.pyctdo_pps c Cs@d|_d}|oyt|hh}t|td joC|\}}t|}t|}||jo||}qntdt|d}Wq|idIt|IJdSqXn;|idjotd|i i d}n|id}|djo|d}n|i i i }|i |}yxt||dD]}ti||}|p|idIJPqVt|id} t| djo| d } n||jo| d } n | d } ||i i jo| d } n|i| d |I||_qVWWntj onXdS(Ntlistiis*** Error in argument:i s[EOF]iiRttBs->s ((RURRR_RtmaxR8RRR?RPRNROtget_file_breaksRRRtrjustRFtKeyboardInterrupt( R5RtlasttxtfirstRt breaklistRRts((spdb.pyctdo_listsR           c Cs-y"t||ii|ii}Wnptid \}}t|tdjo |}n |i}|idI|dIt |IJdSnXd}y |i }WnnX|o|idI|i IJdSny|i i }WnnX|o|idI|i IJdSn|it|IJdS(NiR s***R^tFunctiontMethod(RR?RkRZRlRmR_R`R8RRRRR(R5RtvalueRCRqRfRp((spdb.pyct do_whatiss4  # c Cs|i}t|djoP|ii}|ix,|D]$}|id||i|fIJq?WdSn|d|ijo=t|djo*|id|d|i|dfIJndi|d|i|dRt(R?R8tformat_stack_entry(R5Rt prompt_prefixRJR((spdb.pycRV5s   cCs|idS(N(thelp_h(R5((spdb.pyct help_helpAscCs|idIJdS(Nsh(elp) Without argument, print the list of available commands. With a command name as argument, print help about that command "help pdb" pipes the full documentation file to the $PAGER "help exec" gives help on the ! command(R8(R5((spdb.pycRDscCs|idS(N(thelp_w(R5((spdb.pyct help_whereKscCs|idIJdS(Nsw(here) Print a stack trace, with the most recent frame at the bottom. An arrow indicates the "current frame", which determines the context of most commands. 'bt' is an alias for this command.(R8(R5((spdb.pycRNscCs|idS(N(thelp_d(R5((spdb.pyct help_downVscCs|idIJdS(NsSd(own) Move the current frame one level down in the stack trace (to a newer frame).(R8(R5((spdb.pycRYscCs|idS(N(thelp_u(R5((spdb.pycthelp_up^scCs|idIJdS(NsPu(p) Move the current frame one level up in the stack trace (to an older frame).(R8(R5((spdb.pycRascCs|idS(N(thelp_b(R5((spdb.pyct help_breakfscCs|idIJdS(NsFb(reak) ([file:]lineno | function) [, condition] With a line number argument, set a break there in the current file. With a function name, set a break at first executable line of that function. Without argument, list all breaks. If a second argument is present, it is a string specifying an expression which must evaluate to true before the breakpoint is honored. The line number may be prefixed with a filename and a colon, to specify a breakpoint in another file (probably one that hasn't been loaded yet). The file is searched for on sys.path; the .py suffix may be omitted.(R8(R5((spdb.pycRis cCs|idS(N(thelp_cl(R5((spdb.pyct help_clearvscCs|idIJ|idIJdS(Nscl(ear) filename:linenoscl(ear) [bpnumber [bpnumber...]] With a space separated list of breakpoint numbers, clear those breakpoints. Without argument, clear all breaks (but first ask confirmation). With a filename:lineno argument, clear all breaks at that line in that file. Note that the argument is different from previous versions of the debugger (in python distributions 1.5.1 and before) where a linenumber was used instead of either filename:lineno or breakpoint numbers.(R8(R5((spdb.pycR ys  cCs|idIJdS(NsJtbreak same arguments as break, but breakpoint is removed when first hit.(R8(R5((spdb.pyct help_tbreakscCs|idIJdS(Nseenable bpnumber [bpnumber ...] Enables the breakpoints given as a space separated list of bp numbers.(R8(R5((spdb.pyct help_enablescCs|idIJdS(Nsgdisable bpnumber [bpnumber ...] Disables the breakpoints given as a space separated list of bp numbers.(R8(R5((spdb.pyct help_disablescCs|idIJdS(Ns(ignore bpnumber count Sets the ignore count for the given breakpoint number. A breakpoint becomes active when the ignore count is zero. When non-zero, the count is decremented each time the breakpoint is reached and the breakpoint is not disabled and any associated condition evaluates to true.(R8(R5((spdb.pyct help_ignorescCs|idIJdS(Nscondition bpnumber str_condition str_condition is a string specifying an expression which must evaluate to true before the breakpoint is honored. If str_condition is absent, any existing condition is removed; i.e., the breakpoint is made unconditional.(R8(R5((spdb.pycthelp_conditionscCs|idS(N(thelp_s(R5((spdb.pyct help_stepscCs|idIJdS(Nss(tep) Execute the current line, stop at the first possible occasion (either in a function that is called or in the current function).(R8(R5((spdb.pycR'scCs|idS(N(thelp_n(R5((spdb.pyct help_nextscCs|idIJdS(Ns_n(ext) Continue execution until the next line in the current function is reached or it returns.(R8(R5((spdb.pycR)scCs|idS(N(thelp_r(R5((spdb.pyct help_returnscCs|idIJdS(Ns?r(eturn) Continue execution until the current function returns.(R8(R5((spdb.pycR+scCs|idS(N(thelp_c(R5((spdb.pyct help_continuescCs|idS(N(R-(R5((spdb.pyct help_contscCs|idIJdS(NsLc(ont(inue)) Continue execution, only stop when a breakpoint is encountered.(R8(R5((spdb.pycR-scCs|idS(N(thelp_j(R5((spdb.pyct help_jumpscCs|idIJdS(Ns6j(ump) lineno Set the next line that will be executed.(R8(R5((spdb.pycR0scCs|idIJdS(Nsdebug code Enter a recursive debugger that steps through the code argument (which is an arbitrary expression or statement to be executed in the current environment).(R8(R5((spdb.pyct help_debugscCs|idS(N(thelp_l(R5((spdb.pyct help_listscCs|idIJdS(Ns8l(ist) [first [,last]] List source code for the current file. Without arguments, list 11 lines around the current line or continue the previous listing. With one argument, list 11 lines starting at that line. With two arguments, list the given range; if the second argument is less than the first, it is a count.(R8(R5((spdb.pycR3scCs|idS(N(thelp_a(R5((spdb.pyct help_argsscCs|idIJdS(Ns3a(rgs) Print the arguments of the current function.(R8(R5((spdb.pycR5scCs|idIJdS(Ns/p expression Print the value of the expression.(R8(R5((spdb.pycthelp_pscCs|idIJdS(Ns7pp expression Pretty-print the value of the expression.(R8(R5((spdb.pycthelp_ppscCs|idIJdS(Ns[(!) statement Execute the (one-line) statement in the context of the current stack frame. The exclamation point can be omitted unless the first word of the statement resembles a debugger command. To assign to a global variable you must always prefix the command with a 'global' command, e.g.: (Pdb) global list_options; list_options = ['-l'] (Pdb)(R8(R5((spdb.pyct help_execscCs|idS(N(thelp_q(R5((spdb.pyct help_quitscCs|idIJdS(NsOq(uit) or exit - Quit from the debugger. The program being executed is aborted.(R8(R5((spdb.pycR:scCs|idIJdS(Ns+whatis arg Prints the type of the argument.(R8(R5((spdb.pyct help_whatisscCs|idIJdS(Ns,EOF Handles the receipt of EOF as a command.(R8(R5((spdb.pycthelp_EOFscCs|idIJdS(Nsalias [name [command [parameter parameter ...] ]] Creates an alias called 'name' the executes 'command'. The command must *not* be enclosed in quotes. Replaceable parameters are indicated by %1, %2, and so on, while %* is replaced by all the parameters. If no command is given, the current alias for name is shown. If no name is given, all aliases are listed. Aliases may be nested and can contain anything that can be legally typed at the pdb prompt. Note! You *can* override internal pdb commands with aliases! Those internal commands are then hidden until the alias is removed. Aliasing is recursively applied to the first word of the command line; all other words in the line are left alone. Some useful aliases (especially when placed in the .pdbrc file) are: #Print instance variables (usage "pi classInst") alias pi for k in %1.__dict__.keys(): print "%1.",k,"=",%1.__dict__[k] #Print instance variables in self alias ps pi self (R8(R5((spdb.pyct help_aliasscCs|idIJdS(Ns)unalias name Deletes the specified alias.(R8(R5((spdb.pyct help_unalias scCs|idIJdS(Nscommands [bpnumber] (com) ... (com) end (Pdb) Specify a list of commands for breakpoint number bpnumber. The commands themselves appear on the following lines. Type a line containing just 'end' to terminate the commands. To remove all commands from a breakpoint, type commands and follow it immediately with end; that is, give no commands. With no bpnumber argument, commands refers to the last breakpoint set. You can use breakpoint commands to start your program up again. Simply use the continue command, or step, or any other command that resumes execution. Specifying any command resuming execution (currently continue, step, next, return, jump, quit and their abbreviations) terminates the command list (as if that command was immediately followed by end). This is because any time you resume execution (even with a simple next or step), you may encounter another breakpoint--which could have its own command list, leading to ambiguities about which list to execute. If you use the 'silent' command in the command list, the usual message about stopping at a breakpoint is not printed. This may be desirable for breakpoints that are to print a specific message and then continue. If none of the other commands print anything, you see no sign that the breakpoint was reached. (R8(R5((spdb.pyct help_commands$s cCs tdS(N(R (R5((spdb.pycthelp_pdbGscCs>tii|otii|o|Sntiitid|}tii|o!|i||ijo|Sntii|\}}|djo|d}ntii|o|SnxktiD]`}x'tii |oti |}qWtii||}tii|o|SqqWdS(sHelper function for break/clear parsing -- may be overridden. lookupmodule() translates (possibly incomplete) file or module name into an absolute file name. iR s.pyN( R)R+tisabstexistsR,RlRMR%tsplitexttislinktreadlinkR(R5RRBtroottexttdirnametfullname((spdb.pycRJs&&,   cCsihdd<|d<}|}d|_|i||_d|_d|}|i|d|d|dS( Nt__main__R`t__file__iisexecfile( "%s")RoRn(R&RMR%RR(R5Rtglobals_tlocals_t statement((spdb.pyct _runscriptbs   N(zR`t __module__RRR;R<RDRARLRRRQR\RgRIRrRRGRR R!tdo_helptdo_hRRRtdo_bRRRRRRRRtdo_clRtdo_wtdo_btRtdo_uRtdo_dRtdo_sRtdo_nRtdo_rRtdo_ctdo_contRtdo_jRRtdo_qtdo_exitRRtdo_aRtdo_rvRRRR tdo_lR RRRRt line_prefixRVRRRRthelp_btRRRRRRR!R R"R#R$R%R&R(R'R*R)R,R+R.R/R-R1R0R2R4R3R6R5R7R8R9R;R:t help_exitR<R=R>R?R@RARRP(((spdb.pycR5s*            S   !     +                +                                           #  cCsti|||dS(N(RR(RORoRn((spdb.pycRvscCsti|||S(N(RR(t expressionRoRn((spdb.pycRyscCst|||dS(N(R(RORoRn((spdb.pycR|scOsti||S(N(RR(R~tkwds((spdb.pycRscCstitiidS(N(RRRlt _getframetf_back(((spdb.pycRscCsKt}|ix|idj o |i}qW|i|i|dS(N(RR;ttb_nextRRIttb_frame(RCR((spdb.pycRs   cCsttidS(N(RRltlast_traceback(((spdb.pycRssimport x; x.main()cCsttdS(N(RtTESTCMD(((spdb.pycttestscCsuxntiD]Z}tii|d}tii|o,tid|}|o dG|GHnPq q WdGdGHdS(Nspdb.docs${PAGER-more} s*** Pager exit status:s)Sorry, can't find the help file "pdb.doc"salong the Python search path(RlR+R)R,RCtsystem(RIRJtsts((spdb.pycR s   cCsQtidpdGHtidntid}tii|pdG|GdGHtidntid=tii|tidsD             E       + PK8_ pickle.pyc d>Z?d?Z@d@ZAdAZBdBZCdCZDdDZEdEZFdFZGdGZHdHZIdIZJdJZKdKZLdLZMdMZNdNZOdOZPdPZQdQZRdRZSeCeMeNeOgZTe iUgZVeWD]$ZXe iYdSeXo eVeXnq[V[Xd fdTYZZdUZ[hZ\dVZ]d fdWYZ^dXfdYYZ_ddk`ZadZZbd[Zcydd\kdleZeWn#ej odd\keleZenXed]Zfed^Zgd_Zhd`ZdaZiejdbjo eindS(csCreate portable serialized representations of Python objects. See module cPickle for a (much) faster implementation. See module copy_reg for a mechanism for registering custom picklers. See module pickletools source for extensive comments. Classes: Pickler Unpickler Functions: dump(object, file) dumps(object) -> string load(file) -> object loads(string) -> object Misc variables: __version__ format_version compatible_formats s$Revision: 38432 $i(t*(tdispatch_table(t_extension_registryt_inverted_registryt_extension_cacheNt PickleErrort PicklingErrortUnpicklingErrortPicklert Unpicklertdumptdumpstloadtloadss2.0s1.0s1.1s1.2s1.3icBseZdZRS(s6A common base class for the other pickling exceptions.(t__name__t __module__t__doc__(((s pickle.pycR:scBseZdZRS(s]This exception is raised when an unpicklable object is passed to the dump() method. (RRR(((s pickle.pycR>scBseZdZRS(sThis exception is raised when there is a problem unpickling an object, such as a security violation. Note that other exceptions may also be raised during unpickling, including (but not necessarily limited to) AttributeError, EOFError, ImportError, and IndexError. (RRR(((s pickle.pycREst_StopcBseZdZRS(cCs ||_dS(N(tvalue(tselfR((s pickle.pyct__init__Ss(RRR(((s pickle.pycRRs(t PyStringMapt(t.t0t1t2tFtItJtKtLtMtNtPtQtRtStTtUtVtXtatbtctdt}tetgthtitjtlt]totptqtrtsttt)tutGsI01 sI00 sssssssssssss[A-Z][A-Z0-9_]+$cBseZddZdZdZdZeidZ eidZ dZ dZ dZ ddddd ZhZd Zeeet|d|Sntt|dS(Nist|d|Sntt|dS(Nisds (RFRBtBINFLOATtFLOATRZ(RRPR[((s pickle.pyct save_floats cCs|ioZt|}|djo|itt||q|it|d||n|itt|d|i|dS(Nis          # N(0RRR?RRKR RVtstructR[RTR_RNRbRcRmReRtNoneTypeRtboolRtIntTypeRtLongTypeRt FloatTypeRRkRt UnicodeTypeRRlRRtListTypeRRRtDictionaryTypeRRRt InstanceTypeRit ClassTypet FunctionTypetBuiltinFunctionTypeRg(((s pickle.pycRs` $    @  N           3      # & (   cCsHy|t|i|Wn&tj o|g|t|dii(RR(Rtunpack((s pickle.pyct load_binfloatscCs|id }xcdD]R}|i|o<|i|p tdn|t|t| !}PqqWtd|i|iddS(Nis"'sinsecure string pickles string-escape(Rt startswithtendswithRARSRtdecode(RtrepR8((s pickle.pyct load_strings   cCs3td|id}|i|i|dS(NR2i(R RR(RRS((s pickle.pyctload_binstringscCs$|it|id ddS(Nisraw-unicode-escape(RRR(R((s pickle.pyct load_unicodescCs<td|id}|it|i|ddS(NR2isutf-8(R RRR(RRS((s pickle.pyctload_binunicodescCs/t|id}|i|i|dS(Ni(RRR(RRS((s pickle.pyctload_short_binstringscCs1|i}t|i|dg|i|)dS(Ni(RttupleR(RR((s pickle.pyct load_tuples cCs|iiddS(N((RR(R((s pickle.pyctload_empty_tuplescCs|idf|idRR?RR@RRAtDUPRBR^RCR\RDR]RERYRFRWRGRXRIRRKRRMRRNRRURRVRRWRO(((s pickle.pycR ;s                                                                                                            R.cBseZRS((RR(((s pickle.pycR.scCs9|djodSn|djot|}|idptd|id}t||}|d@od|d}qt|ddd jod |d}qnt| }|idptd|id}t||}|d@o|d7}n|d }|d |>7}|djptt|}d|id}t||}||jodd |||d}nt|ddd jod|d}n|ido|dd!}n |d}t|d@djpt||fti|}|dddS(sEncode a long to a two's complement little-endian binary string. Note that 0L is a special case, returning an empty string, to save a byte in the LONG1 pickling context. >>> encode_long(0L) '' >>> encode_long(255L) '\xff\x00' >>> encode_long(32767L) '\xff\x7f' >>> encode_long(-256L) '\x00\xff' >>> encode_long(-32768L) '\x00\x80' >>> encode_long(-128L) '\x80' >>> encode_long(127L) '\x7f' >>> iRwt0xiRit0x0iit0x00ilRt0xffiN(thexRRRRRSRDt _binasciit unhexlify(Rotashext njunkcharstnibblestnbitst newnibblestbinary((s pickle.pycRsB          'cCswt|}|djodSnti|ddd}t|d}|ddjo|d|d>8}n|S( s\Decode a long from a two's complement little-endian binary string. >>> decode_long('') 0L >>> decode_long("\xff\x00") 255L >>> decode_long("\xff\x7f") 32767L >>> decode_long("\x00\xff") -256L >>> decode_long("\x00\x80") -32768L >>> decode_long("\x80") -128L >>> decode_long("\x7f") 127L ilNiisli(RSRathexlifyR (R tnbytesRcR((s pickle.pycR.s  (tStringIOcCst||i|dS(N(RR (RPRHRI((s pickle.pycR QscCs)t}t||i||iS(N(RkRR tgetvalue(RPRIRH((s pickle.pycR Ts cCst|iS(N(R R (RH((s pickle.pycR YscCst|}t|iS(N(RkR R (RvRH((s pickle.pycR \s cCsddk}|iS(Ni(tdoctestttestmod(Rm((s pickle.pyct_testbs R(kRt __version__ttypestcopy_regRRRRtmarshalRRtret__all__tformat_versiontcompatible_formatsR@R R t ExceptionRRRRtorg.python.coreRRR?Rt NameErrorRRORRR[RRRRRRRRuRtRRRRRRRRRRRRR^R\RR]RRRRYRWRXRRRRRRRRLR~RRRRXRYRZRRRRRRJt_[1]tdirRotmatchRRRRR R.tbinasciiRaRRt cStringIORkR R R RoR(((s pickle.pycss           B`    B       PK8kk%% popen2.pyc Dc @sZdZddkZddkZdddgZyeidZWneefj o dZnXgZdZ d dd YZ d e fd YZ ei d djpei djo7[ [ dddZ dddZdddZnAdddZ dddZdddZeid d gdZedjo endS(snSpawn a command with pipes to its stdin, stdout, and optionally stderr. The normal os.popen(cmd, mode) call spawns a shell command and provides a file interface to just the input or output of the process depending on whether mode is 'r' or 'w'. This module provides the functions popen2(cmd) and popen3(cmd) which return two or three pipes to the spawned command. iNtpopen2tpopen3tpopen4t SC_OPEN_MAXicCs]xVtD]M}|idtidjo+yti|WqUtj oqUXqqWdS(Nt _deadstatei(t_activetpolltsystmaxinttremovet ValueError(tinst((s popen2.pyct_cleanupstPopen3cBsJeZdZdZeddZdZdZddZ dZ RS(swClass representing a child process. Normally instances are created by the factory functions popen2() and popen3().ic CsCt||_ti\}}ti\}}|oti\}} nti|_|idjoLti|dti|d|oti| dn|i|nti|ti |d||_ ti|ti |d||_ |o)ti| ti |d||_ n d|_ dS(sdThe parameter 'cmd' is the shell command to execute in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). The 'capturestderr' flag, if true, specifies that the object should capture standard error output of the child process. The default is false. If the 'bufsize' parameter is specified, it specifies the size of the I/O buffers to/from the child process.iiitwtrN(R tcmdtostpipetforktpidtdup2t _run_childtclosetfdopenttochildt fromchildtchilderrtNone( tselfRt capturestderrtbufsizetp2creadtp2cwritetc2preadtc2pwriteterroutterrin((s popen2.pyct__init__%s*     cCsI|idti|idjo"tdj oti|qEndS(NRi(RRRtstsRRtappend(R((s popen2.pyct__del__Gs cCst|todd|g}nx>tdtD]-}yti|Wq3tj oq3Xq3Wzti|d|WdtidXdS(Ns/bin/shs-ciii( t isinstancet basestringtxrangetMAXFDRRtOSErrortexecvpt_exit(RRti((s popen2.pycROs cCs|idjovy?ti|iti\}}||ijo ||_nWqtij o!|dj o ||_qqXn|iS(shReturn the exit status of the child process if it has finished, or -1 if it hasn't finished yet.iN(R'RtwaitpidRtWNOHANGterrorR(RRRR'((s popen2.pycR\s cCsV|idjo?ti|id\}}||ijpt||_n|iS(s9Wait for and return the exit status of the child process.i(R'RR2RtAssertionError(RRR'((s popen2.pyctwaitjs  N( t__name__t __module__t__doc__R'tFalseR&R)RRRR6(((s popen2.pycR s"  tPopen4cBseZdZddZRS(icCst||_ti\}}ti\}}ti|_|idjoAti|dti|dti|d|i|nti|ti |d||_ ti|ti |d||_ dS(NiiiRR( R RRRRRRRRRRR(RRRR R!R"R#((s popen2.pycR&xs   N(R7R8RRR&(((s popen2.pycR;usitwintos2emxttcCs%ti|||\}}||fS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdout, child_stdin) are returned.(RR(RRtmodeRR((s popen2.pycRscCs+ti|||\}}}|||fS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdout, child_stdin, child_stderr) are returned.(RR(RRR?RRte((s popen2.pycRscCs%ti|||\}}||fS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdout_stderr, child_stdin) are returned.(RR(RRR?RR((s popen2.pycRscCs"t|t|}|i|ifS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdout, child_stdin) are returned.(R R:RR(RRR?R ((s popen2.pycRscCs(t|t|}|i|i|ifS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdout, child_stdin, child_stderr) are returned.(R tTrueRRR(RRR?R ((s popen2.pycRscCst||}|i|ifS(sExecute the shell command 'cmd' in a sub-process. On UNIX, 'cmd' may be a sequence, in which case arguments will be passed directly to the program without shell intervention (as with os.spawnv()). If 'cmd' is a string it will be passed to the shell (as with os.system()). If 'bufsize' is specified, it sets the buffer size for the I/O pipes. The file objects (child_stdout_stderr, child_stdin) are returned.(R;RR(RRR?R ((s popen2.pycRsc Cstt p2tdtg}tD]}||iq#~d}d}tidjo d}n|i}dGHt|\}}|i ||i |i }|i|jot d||fndGHyt |g\}}}Wnt |\}}}nX|i ||i |i }|i|jot d||fn|i }|ot d |fnxtD]} | iqWttot d nd GHdS( NsActive pipes when test starts tcatsab cd tnttmorestesting popen2...swrote %r read %rstesting popen3...sunexpected %r on stderrs_active not emptysAll OK(R RR5treprRRtnametstripRtwriteRtreadR RR6( t_[1]tcRtteststrtexpectedRRtgotR@R ((s popen2.pyct_testsD:         t__main__((R9RRt__all__tsysconfR-tAttributeErrorR RR R R;tplatformRRRtextendROR7(((s popen2.pycss.    V$       ' PK8{IV'.'. posixpath.pyc Gc'@sdZddkZddkZddddddd d d d d ddddddddddddddddddd d!d"d#d$d%d&d'g%Zd(Zd)Zd(Zd*Zd+Zd,Z dZ d-Z d.Z d/Zd0Zd1Zd2Zd3Zd4Zd5Zd6Zd7Zd8Zd9Zd:Zd;Zd<Zd=Zd>Zd?Zd@ZdAZ dBZ!dCZ"dDZ#dEZ$da%dFZ&dGZ'dHZ(dIZ)dJZ*e+Z,dS(KsCommon operations on Posix pathnames. Instead of importing this module directly, import os and refer to this module as os.path. The "os.path" name is an alias for this module on Posix systems; on other systems (e.g. Mac, Windows), os.path provides the same operations in a manner specific to that platform, and is an alias to another module (e.g. macpath, ntpath). Some of this can actually be useful on non-Posix systems too, e.g. for manipulation of the pathname component of URLs. iNtnormcasetisabstjoint splitdrivetsplittsplitexttbasenametdirnamet commonprefixtgetsizetgetmtimetgetatimetgetctimetislinktexiststlexiststisdirtisfiletismounttwalkt expandusert expandvarstnormpathtabspathtsamefilet sameopenfiletsamestattcurdirtpardirtseptpathseptdefpathtaltseptextseptdevnulltrealpathtsupports_unicode_filenamest.s..t/t:s:/bin:/usr/bins /dev/nullcCs|S(s6Normalize case of pathname. Has no effect under Posix((ts((s posixpath.pycR'scCs |idS(sTest whether a path is absoluteR&(t startswith(R(((s posixpath.pycR/scGsn|}xa|D]Y}|ido |}q |djp|ido||7}q |d|7}q W|S(s=Join two or more pathname components, inserting '/' as neededR&t(R)tendswith(tatptpathtb((s posixpath.pycR8s cCsc|idd}|| ||}}|o*|dt|jo|id}n||fS(sSplit a pathname. Returns tuple "(head, tail)" where "tail" is everything after the final slash. Either part may be empty.R&i(trfindtlentrstrip(R-titheadttail((s posixpath.pycRJs cCsI|id}||idjo|dfSn|| ||fSdS(sSplit the extension from a pathname. Extension is everything from the last dot to the end. Returns "(root, ext)", either part may be empty.R%R&R*N(R0(R-R3((s posixpath.pycRYscCs d|fS(sJSplit a pathname into drive and path. On Posix, drive is always empty.R*((R-((s posixpath.pycRfscCst|dS(s)Returns the final component of a pathnamei(R(R-((s posixpath.pycRnscCst|dS(s-Returns the directory component of a pathnamei(R(R-((s posixpath.pycRuscCs|pdSnt|}t|}tt|t|}x5t|D]'}||||jo || SqOqOW|| S(sGGiven a list of pathnames, returns the longest common leading componentR*(tmintmaxR1txrange(tmts1ts2tnR3((s posixpath.pycR|s   cCsti|iS(s1Return the size of a file, reported by os.stat().(toststattst_size(tfilename((s posixpath.pycR scCsti|iS(sCReturn the last modification time of a file, reported by os.stat().(R=R>tst_mtime(R@((s posixpath.pycR scCsti|iS(s=Return the last access time of a file, reported by os.stat().(R=R>tst_atime(R@((s posixpath.pycR scCsti|iS(sAReturn the metadata change time of a file, reported by os.stat().(R=R>tst_ctime(R@((s posixpath.pycR scCsFyti|}Wn titfj o tSnXti|iS(s&Test whether a path is a symbolic link(R=tlstatterrortAttributeErrortFalseR>tS_ISLNKtst_mode(R.tst((s posixpath.pycR s  cCs4yti|}Wntij o tSnXtS(sDTest whether a path exists. Returns False for broken symbolic links(R=R>RERGtTrue(R.RJ((s posixpath.pycRs  cCs4yti|}Wntij o tSnXtS(sCTest whether a path exists. Returns True for broken symbolic links(R=RDRERGRK(R.RJ((s posixpath.pycRs  cCs@yti|}Wntij o tSnXti|iS(s"Test whether a path is a directory(R=R>RERGtS_ISDIRRI(R.RJ((s posixpath.pycRs  cCs@yti|}Wntij o tSnXti|iS(s%Test whether a path is a regular file(R=R>RERGtS_ISREGRI(R.RJ((s posixpath.pycRs  cCs+ti|}ti|}t||S(s9Test whether two pathnames reference the same actual file(R=R>R(tf1tf2R:R;((s posixpath.pycRscCs+ti|}ti|}t||S(s:Test whether two open file objects reference the same file(R=tfstatR(tfp1tfp2R:R;((s posixpath.pycRscCs#|i|ijo|i|ijS(s5Test whether two stat buffers reference the same file(tst_inotst_dev(R:R;((s posixpath.pycRscCsy+ti|}tit|d}Wntij o tSnX|i}|i}||jotSn|i}|i}||jotSntS(s$Test whether a path is a mount points..(R=RDRRERGRTRKRS(R.R:R;tdev1tdev2tino1tino2((s posixpath.pycRs       c Csyti|}Wntij o dSnX||||xs|D]k}t||}yti|}Wntij o qGnXti|iot|||qGqGWdS(sIDirectory tree walk with callback function. For each directory in the directory tree rooted at top (including top itself, but excluding '.' and '..'), call func(arg, dirname, fnames). dirname is the name of the directory, and fnames a list of the names of the files and subdirectories in dirname (excluding '.' and '..'). func may modify the fnames list in-place (e.g. via del or slice assignment), and walk will only recurse into the subdirectories whose names remain in fnames; this can be used to implement a filter, or to impose a specific order of visiting. No semantics are defined for, or required of, arg, beyond that arg is always passed to func. It can be used, e.g., to pass a filename pattern, or a mutable object designed to accumulate statistics. Passing None for arg is common.N( R=tlistdirRERRDR>RLRIR(ttoptfunctargtnamestnameRJ((s posixpath.pycRs cCs|idp|Sn|idd}|djot|}n|djoIdtijo(ddk}|itii}qtid}nJddk}y|i |d|!}Wnt j o |SnX|i}|i d}|||S(sOExpand ~ and ~user constructions. If user or $HOME is unknown, do nothing.t~R&iitHOMEiN( R)tfindR1R=tenvirontpwdtgetpwuidtgetuidtpw_dirtgetpwnamtKeyErrorR2(R.R3Rctuserhometpwent((s posixpath.pycR6s$      cCsd|jo|Sntpddk}|idand}xtoti||}|pPn|id\}}|id}|ido!|ido|dd!}n|t i jo9||}|| t i |}t |}||7}qD|}qDW|S( sZExpand shell variables of form $var and ${var}. Unknown variables are left unchanged.t$iNs\$(\w+|\{[^}]*\})iit{t}( t_varprogtretcompileRKtsearchtspantgroupR)R+R=RbR1(R.RoR3R9tjR^R5((s posixpath.pycRUs,      cCs$|djodSn|id}|o+|ido|id o d}n|id}g}x}|D]u}|d joqrn|djp(| o| p|o"|ddjo|i|qr|o|iqrqrW|}di|}|od||}n|pdS( s0Normalize path, eliminating double slashes, etc.R*R%R&s//s///is..i(R*R%(R)RtappendtpopR(R.tinitial_slashestcompst new_compstcomp((s posixpath.pycRus, !  cCs0t|ptti|}nt|S(sReturn an absolute path.(RRR=tgetcwdR(R.((s posixpath.pycRs cCst|odg|idd}ndg|id}xtdt|dD]}t|d|!}t|o]t|}|djott|g||Sqt|g||}t |Sq[q[Wt|S(slReturn the canonical path of the specified filename, eliminating any symbolic links encountered in the path.R&iR*iiN( RRtrangeR1RR t _resolve_linktNoneRR#(R@tbitsR3t componenttresolvedtnewpath((s posixpath.pycR#s    cCsg}xt|os||jodSn|i|ti|}t|p%t|}tt||}q t|}q W|S(sInternal helper function. Takes a path and follows symlinks until we either arrive at something that isn't a symlink, or encounter a path we've seen before (meaning that there's a loop). N( R R~RuR=treadlinkRRRR(R.t paths_seenRtdir((s posixpath.pycR}s     (-t__doc__R=R>t__all__RRR!RRRR~R R"RRRRRRRRRR R R R R RRRRRRRRRRRnRRRR#R}RGR$(((s posixpath.pycs s`               '    PK8P## pprint.pyc Dc@sdZddkZddklZdddddd gZd iZe Z e Z e Zdd d dd Zd d ddZdZdZdZd ddYZdZdZddZedjo endS(s/Support to pretty-print lists, tuples, & dictionaries recursively. Very simple, but useful, especially in debugging data structures. Classes ------- PrettyPrinter() Handle pretty-printing operations onto a stream using a configured set of formatting parameters. Functions --------- pformat() Format a Python object into a pretty-printed representation. pprint() Pretty-print a Python object to a stream [default is sys.stdout]. saferepr() Generate a 'standard' repr()-like value, but protect against recursive data structures. iN(tStringIOtpprinttpformatt isreadablet isrecursivetsafereprt PrettyPrinters, iiPc Cs2td|d|d|d|}|i|dS(sAPretty-print a Python object to a stream [default is sys.stdout].tstreamtindenttwidthtdepthN(RR(tobjectRRR R tprinter((s pprint.pycR3scCs"td|d|d|i|S(s<Format a Python object into a pretty-printed representation.RR R (RR(R RR R ((s pprint.pycR9scCst|hdddS(s=Version of repr() which can handle recursive data structures.iN(t _safe_reprtNone(R ((s pprint.pycR=scCst|hdddS(s4Determine if saferepr(object) is readable by eval().iiN(R R(R ((s pprint.pycRAscCst|hdddS(s8Determine if object requires a recursive representation.iiN(R R(R ((s pprint.pycREscBs\eZddd d dZdZdZdZdZdZdZ d Z RS( iiPcCst|}t|}|djp td|djp|djp td|p td||_||_||_|dj o ||_n ti|_dS(sHandle pretty printing operations onto a stream using a set of configured parameters. indent Number of spaces to indent for each level of nesting. width Attempted maximum number of columns in the output. depth The maximum depth to print out nested structures. stream The desired output stream. If omitted (or false), the standard output stream available at construction will be used. isindent must be >= 0sdepth must be > 0swidth must be != 0N( tinttAssertionErrorRt_deptht_indent_per_levelt_widtht_streamt_syststdout(tselfRR R R((s pprint.pyct__init__Js  $     cCs3|i||iddhd|iiddS(Nis (t_formatRtwrite(RR ((s pprint.pycRiscCs/t}|i||ddhd|iS(Ni(t _StringIORtgetvalue(RR tsio((s pprint.pycRms cCs|i|hdddS(Nii(tformat(RR ((s pprint.pycRrscCs-|i|hdd\}}}|o| S(Ni(R(RR tstreadablet recursive((s pprint.pycRus!c Cs |d}t|}||jo-|it|t|_t|_dSn|i|||d}t|} t ||i d||j} |i} | oYt | dd} t | to| tijo| d|idjo| |iddnt |} | o3d||<||i}|i}|i|d\}}|i|||}| || d|i|||t |d|d||| djozxw|dD]g\}}|i|||}| dd||f|i|||t |d|d||qWn||i}||=n| d dSnt | to| tijp t | toh| tijoXt | to| d d }n| d d }|idjo| |iddnt |} | od||<||i}|i|d|||d||| djoKxH|dD]8}| dd||i||||d||qfWn||i}||=nt | to| djo| dn| |dSqn| |dS(Nit__repr__t{t is: is, %s%s: t}t[t]t(t)s, t,(t_idRt _recursiontTruet _recursivetFalset _readablet_reprt_typet_lenRtgetattrRt issubclasstdictR"RtitemstsortRtlistttuple(RR RRt allowancetcontexttleveltobjidtrepttyptsepLinesRtrtlengthR7tkeytenttendchar((s pprint.pycRys      !                              cCsV|i||i|i|\}}}|p t|_n|o t|_n|S(N(RtcopyRR/R0R-R.(RR R<R=treprR R!((s pprint.pycR1s  cCst||||S(sFormat object for a specific context, returning a string and flags indicating whether the representation is 'readable' and whether the object represents a recursive construct. (R (RR R<t maxlevelsR=((s pprint.pycRsN( t__name__t __module__RRRRRRRR1R(((s pprint.pycRIs     H c Cst|}|tjodtijot|ttfSnd|jo&d|jod}hdd<}nd}hdd<}|i}t}|i } xI|D]A} | i o| | q| || t| dd!qWd||i |fttfSnt |d d} t|toy| tijoi|pd ttfSnt|} |o$||jod t| |jfSn| |jot|ttfSnd|| R R!t componentsRTRtktvtkreprt kreadabletkrecurtvreprt vreadabletvrecurRtotoreprt oreadabletorecurR?((s pprint.pycR s      $$                   cCsdt|it|fS(Ns(R2RJR+(R ((s pprint.pycR,(scCsddk}|djo5ddddghdd<d d #s&       T  PK8Õ/XX quopri.pyc t | t jo*|| t d  d d | t d } q:W| }q^|dj o||d | ndS( sRead 'input', apply quoted-printable encoding, and write to 'output'. 'input' and 'output' are files with readline() and write() methods. The 'quotetabs' flag indicates whether embedded tabs and spaces should be quoted. Note that line-ending tabs and spaces are always encoded, as per RFC 1521. The 'header' flag indicates whether we are encoding spaces as _ as per RFC 1522. RRNs cSs||o8|ddjo'|i|d t|d|n:|djo|it||n|i||dS(Nis t.(twriteR(tstoutputtlineEnd((s quopri.pycR;s ' RiR R iRs= ( RtNonetreadRtreadlineRRtappendt EMPTYSTRINGtjointlent MAXLINESIZE( tinputRRRtdatatodataRtprevlinetlinetoutlinetstrippedR tthisline((s quopri.pycR*sB          cCsitdj ot|d|d|Snddkl}||}|}t|||||iS(NRRi(tStringIO(RRt cStringIOR*Rtgetvalue(RRRR*tinfptoutfp((s quopri.pycRis   c Csytdj o3|i}t|d|}|i|dSnd}x|i}|pPndt|}}|djo]||ddjoHd} |d}x;|djo#||ddjo|d}qWnd} xQ||joC||} | djo|o|d }|d}q| tjo|| }|d}q|d|jo| o d} Pq|d|jo-||dtjo|t}|d }q|d |jo]t||doHt||d o3|tt ||d|d !}|d }q|| }|d}qW| p|i|dd}qIqI|o|i|ndS( sRead 'input', apply quoted-printable decoding, and write to 'output'. 'input' and 'output' are files with readline() and write() methods. If 'header' is true, decode underscore as space (per RFC 1522).RNRiis s R R ii( RRRRRR R tishextchrtunhex( R"RRR#R$tnewR&RtntpartialR ((s quopri.pycRtsV    " "     & ;%  cCsctdj ot|d|Snddkl}||}|}t||d||iS(NRi(R*(RRR+R*RR,(RRR*R-R.((s quopri.pycRs   cCsWd|jo djnp9d|jo djnpd|jo djnS(s8Return true if the character 'c' is a hexadecimal digit.t0t9tatftAtF((R ((s quopri.pycR/scCsd}x|D]}d|jo djnotd}nfd|jo djnotdd}n4d|jo djnotdd}nP|d t||}q W|S( s.Get the integer value of a hexadecimal number.iR5R6R7R8i R9R:i(R(RtbitsR R((s quopri.pycR1sc Csddk}ddk}y#|i|idd\}}WnE|ij o6}|i|_|GHdGHdGHdGH|idnXd}d}xB|D]:\}}|d jo d}n|d jo d}qqW|o)|o"|i|_d GH|idn|p d g}nd} x|D]} | d jo |i} nLyt| } Wn8t j o,}|ii d | |fd} q%nX|ot | |int | |i|| |ij o| i q%q%W| o|i| ndS(Niittds"usage: quopri [-t | -d] [file] ...s-t: quote tabss-d: decode; default encodeiis-ts-ds -t and -d are mutually exclusivet-s%s: can't open (%s) (tsystgetopttargvterrortstderrtstdouttexittstdintopentIOErrorRRRtclose( R>R?toptstargstmsgtdecottabstoR7tststfiletfp((s quopri.pyctmainsV  #        t__main__N(t__doc__t__all__R R!RRtbinasciiRRt ImportErrorRRRRRRRR/R1RRt__name__(((s quopri.pycss*    ? +   , PK8iZiZ random.pyc Fc@s}dZddklZddklZlZddk l Z l Z lZlZlZddk lZlZlZlZddklZddkl Z!dd d d d d ddddddddddddddddddgZ"d e d!ed"Z#d"eZ$e d#Z%d$e d%Z&d&Z'd'e' Z(dd(k)Z)de)i*fd)YZ*de*fd*YZ+de*fd+YZ,d,Z-d-d.Z.e*Z/e/i0Z0e/i1Z1e/i2Z2e/i3Z3e/i4Z4e/i5Z5e/i6Z6e/i7Z7e/i8Z8e/i9Z9e/i:Z:e/i;Z;e/i<Z<e/i=Z=e/i>Z>e/i?Z?e/i@Z@e/iAZAe/iBZBe/iCZCe/iDZDeEd/jo e.nd(S(0s:Random variable generators. integers -------- uniform within range sequences --------- pick random element pick random sample generate random permutation distributions on the real line: ------------------------------ uniform normal (Gaussian) lognormal negative exponential gamma beta pareto Weibull distributions on the circle (angles 0 to 2pi) --------------------------------------------- circular uniform von Mises General notes on the underlying Mersenne Twister core generator: * The period is 2**19937-1. * It is one of the most extensively tested generators in existence. * Without a direct way to compute N steps forward, the semantics of jumpahead(n) are weakened to simply jump to another distant state and rely on the large period to avoid overlapping sequences. * The random() method is implemented in C, executes in a single Python step, and is, therefore, threadsafe. i(twarn(t MethodTypetBuiltinMethodType(tlogtexptpitetceil(tsqrttacostcostsin(turandom(thexlifytRandomtseedtrandomtuniformtrandinttchoicetsamplet randrangetshufflet normalvariatetlognormvariatet expovariatetvonmisesvariatet gammavariatetgausst betavariatet paretovariatetweibullvariatetgetstatetsetstatet jumpaheadt WichmannHillt getrandbitst SystemRandomigg@g@g?g@i5iNcBseZdZdZddZddZdZdZdZ dZ dZ dd e dd e >d Zd Zee d e >eed ZdZde dZdZdZdZdZdZdZdZdZdZdZdZ RS(sRandom number generator base class used by bound module functions. Used to instantiate instances of Random to get generators that don't share state. Especially useful for multi-threaded programs, creating a different instance of Random for each thread, and using the jumpahead() method to ensure that the generated sequences seen by each thread don't overlap. Class Random can also be subclassed if you want to use a different basic generator of your own devising: in that case, override the following methods: random(), seed(), getstate(), setstate() and jumpahead(). Optionally, implement a getrandombits() method so that randrange() can cover arbitrarily large ranges. icCs|i|d|_dS(seInitialize an instance. Optional argument x controls seeding, as for Random.seed(). N(RtNonet gauss_next(tselftx((s random.pyct__init__Xs cCs|djo[ytttdd}Wqhtj o)ddk}t|id}qhXntt|i|d|_ dS(sInitialize internal state from hashable object. None or no argument seeds from current time or from an operating system specific randomness source if available. If a is not None or an int or long, hash(a) is used instead. iiNi( R&tlongt_hexlifyt_urandomtNotImplementedErrorttimetsuperRRR'(R(taR/((s random.pycRas  cCs"|itt|i|ifS(s9Return internal state; can be passed to setstate() later.(tVERSIONR0RR R'(R(((s random.pycR tscCs`|d}|djo,|\}}|_tt|i|ntd||ifdS(s:Restore internal state from object returned by getstate().iis?state with version %s passed to Random.setstate() of version %sN(R'R0RR!t ValueErrorR2(R(tstatetversiont internalstate((s random.pycR!xs   cCs |iS(N(R (R(((s random.pyct __getstate__scCs|i|dS(N(R!(R(R4((s random.pyct __setstate__scCs|id|ifS(N((t __class__R (R(((s random.pyct __reduce__silc Cs||}||jo tdn||joP|djo6||jo|i|Sn||i|Sntdn||}||jo tdn||} |djoW| djoJ| |jo|||i| Sn||||i| Sn|djotd||| fn||} | |jo tdn| djo| | d| } n-| djo| | d| } n td| djo tdn| |jo|| |i| Sn|| ||i| S( sChoose a random item from range(start, stop[, step]). This fixes the problem with randint() which includes the endpoint; in Python this is usually not what you want. Do not supply the 'int', 'default', and 'maxwidth' arguments. s!non-integer arg 1 for randrange()isempty range for randrange()s non-integer stop for randrange()is'empty range for randrange() (%d,%d, %d)s non-integer step for randrange()szero step for randrange()(R3t _randbelowR( R(tstarttstoptsteptinttdefaulttmaxwidthtistarttistoptwidthtisteptn((s random.pycRs@            "          cCs|i||dS(sJReturn random integer in range [a, b], including both end points. i(R(R(R1tb((s random.pycRsc Csy |i}Wntj on}Xt|i|jpt||joR|d||dd}||} x| |jo||} qxW| Sn||jotdn||i|S(sReturn a random int in the range [0,n) Handles the case where n has more bits than returned by a single call to the underlying generator. grZ| ?ig@sgUnderlying random() generator does not supply enough bits to choose from a population range this large(R$tAttributeErrorttypeRt_warn( R(RFt_logR?t _maxwidtht_Methodt_BuiltinMethodR$tktr((s random.pycR;s )   cCs|t|it|S(s2Choose a random element from a non-empty sequence.(R?Rtlen(R(tseq((s random.pycRscCsx|djo |i}nxWttdt|D]:}|||d}||||||<|| shuffle list x in place; return None. Optional arg random is a 0-argument function returning a random float in [0.0, 1.0); by default, the standard random.random. iN(R&RtreversedtxrangeRQ(R(R)RR?titj((s random.pycRs   c Cst|}d|jo |jnp tdn|i}t}d g|}d}|djo%|dtt|dd7}n||jpt|dobt|}xt |D]A} |||| } || || <||| d|| (RRK(R(tlambdRtu((s random.pycR}s   cCs:|i}|djot|Sndtdd||}|td|d|}d||d|}x~|}tt|}d||||} ||| } |} | | d| jp| | td| joPqvqv|} | djo|tt| } n|tt| } | S(sFCircular data distribution. mu is the mean angle, expressed in radians between 0 and 2*pi, and kappa is the concentration parameter, which must be greater than or equal to zero. If kappa is equal to zero, this distribution reduces to a uniform random angle over the range 0 to 2*pi. gư>g?g@g@g?(RtTWOPIt_sqrtt_cost_piRot_acos(R(RitkappaRR1RGRPRkRmtftcRltu3ttheta((s random.pycRs&    0  cCs%|djp |djo tdn|i}|djotd|d}|t}||}x|}d|jo djnpqhnd|}t|d||} |t| } |||} ||| | } | td| djp| t| jo | |Sqhqhn|djo:|} x| djo |} qCWt|  |Snx|} t|t}|| }|djo|d|} nt||| } |}|djo|| |djoPqqt|t| joPqtqt| |SdS( sxGamma distribution. Not the gamma function! Conditions on the parameters are alpha > 0 and beta > 0. gs*gammavariate: alpha and beta must be > 0.0g?g@gHz>gP?g@N(R3RRstLOG4RKRot SG_MAGICCONSTt_e(R(talphatbetaRtainvtbbbtcccRkRltvR)RmRPRqRGtp((s random.pycRsL        ,         cCs|i}|i}d|_|djoQ|t}tdtd|}t||}t|||_n|||S(sGaussian distribution. mu is the mean, and sigma is the standard deviation. This is slightly faster than the normalvariate() function. Not thread-safe without a lock around calls. gg?N(RR'R&RrRsRKRtt_sin(R(RiRjRRmtx2pitg2rad((s random.pycRs     cCsC|i|d}|djodSn|||i|dSdS(sBeta distribution. Conditions on the parameters are alpha > 0 and beta > 0. Returned values range between 0 and 1. g?igN(R(R(RRty((s random.pycR9s  cCs%d|i}dt|d|S(s3Pareto distribution. alpha is the shape parameter.g?(Rtpow(R(RRq((s random.pycRKscCs,d|i}|tt| d|S(sfWeibull distribution. alpha is the scale parameter and beta is the shape parameter. g?(RRRK(R(RRRq((s random.pycRTsN(!t__name__t __module__t__doc__R2R&R*RR R!R7R8R:R?tBPFRRRKt _MethodTypet_BuiltinMethodTypeR;RRRRRRRRRRRRR(((s random.pycREs6       ?    J    2 B 5  cBs\eZdZd dZdZdZdZdZddddZ d dZ RS( icCs |djo[ytttdd}Wqhtj o)ddk}t|id}qhXnt|ttfpt|}nt |d\}}t |d\}}t |d\}}t|dt|dt|df|_ d|_ dS( sInitialize internal state from hashable object. None or no argument seeds from current time or from an operating system specific randomness source if available. If a is not None or an int or long, hash(a) is used instead. If a is an int or long, a is used directly. Distinct values between 0 and 27814431486575L inclusive are guaranteed to yield distinct internal states (this guarantee is specific to the default Wichmann-Hill generator). iiNii= 0ii=viicviisvN(R3RR?R(R(RFR)RRm((s random.pycR"s    icCst|t|jot|jo tjnptdnd|jo djno9d|jo djnod|jo djnptdnd|jo|jo |jno}ddk}t|id}t|d@|d?A}t|d\}}t|d\}}t|d\}}n|pd |pd |pd f|_d|_ dS( sjSet the Wichmann-Hill seed from (x, y, z). These must be integers in the range [0, 256). sseeds must be integersiisseeds must be in range(0, 256)iNiii( RIR?R]R3R/R+RRR&R'(R(R)RRmR/tt((s random.pyct__whseeds<Z* 'cCs|djo|idSnt|}t|d\}}t|d\}}t|d\}}||dpd}||dpd}||dpd}|i|||dS(sbSeed from hashable object's hash code. None or no argument seeds from current time. It is not guaranteed that objects with distinct hash codes lead to distinct internal states. This is obsolete, provided for compatibility with the seed routine used prior to Python 2.1. Use the .seed() method instead. Nii(R&t_WichmannHill__whseedRR(R(R1R)RRm((s random.pyctwhseeds   N( RRR2R&RRR R!R"RR(((s random.pycR#as    cBsFeZdZdZdZdZeZZdZeZ Z RS(sAlternate random number generator using sources provided by the operating system (such as /dev/urandom on Unix or CryptGenRandom on Windows). Not available on all systems (see os.urandom() for details). cCs!tttddd?tS(s3Get the next random number in the range [0.0, 1.0).iii(R+R,R-t RECIP_BPF(R(((s random.pycRscCsy|djotdn|t|jotdn|dd}ttt|d}||d|?S(s>getrandbits(k) -> x. Generates a long int with k random bits.is(number of bits must be greater than zeros#number of bits should be an integeriii(R3R?R]R+R,R-(R(ROtbytesR)((s random.pycR$s cOsdS(s<Stub method. Not used for a system random number generator.N(R&(R(targstkwds((s random.pyct_stub scOstddS(sAMethod should not be called for a system random number generator.s*System entropy source does not have state.N(R.(R(RR((s random.pyct_notimplementeds( RRRRR$RRR"RR R!(((s random.pycR%s    cCsddk}|GdG|iGHd}d}d}d}|i}xVt|D]H} ||} || 7}|| | }t| |}t| |}qMW|i} t| |dGdG||} t||| | } d| | ||fGHdS( Nittimesgg _Bg _issec,s!avg %g, stddev %g, min %g, max %g(R/RtrangetmintmaxtroundRs(RFtfuncRR/ttotaltsqsumtsmallesttlargesttt0RUR)tt1tavgtstddev((s random.pyct_test_generators(       icCst|td t|td t|td t|tdt|tdt|tdt|tdt|tdt|tdt|tdt|tdt|tdt|tdt|tdt|tddS(Ngg?g{Gz?g?g@g?g?g4@gi@g@((gg?(gg?(gg?(g{Gz?g?(g?g?(g?g@(g?g?(g?g?(g?g?(g@g?(g4@g?(gi@g?(gg?(g@g@(RRRRRRRR(tN((s random.pyct_test/st__main__(FRtwarningsRRJttypesRRRRtmathRRKRRoRRuRR~RRXRRsR RvR RtR RtosR R-tbinasciiR R,t__all__RhRrR|R}RRt_randomRR#R%RRt_instRRRRRRRRRRRRRRRRRR R!R"R$R(((s random.pycs'sd("        "                         PK8X$00re.pyc NֱGc@s8dZddkZddkZddkZddddddd d d d d ddddddddddddgZdZeiZZei Z Z ei Z ZeiZZeiZZeiZZeiZZeiZeiZddZddZddZ ddZ!dd Z"dd!Z#ei$d"joei%d#dd$Z&ndd%Z'd&Z(dd'Z)hZ*xd(D]Z+d)e*e+...) The substring matched by the group is accessible by name. (?P=name) Matches the text matched earlier by the group named name. (?#...) A comment; ignored. (?=...) Matches if ... matches next, but doesn't consume the string. (?!...) Matches if ... doesn't match next. (?<=...) Matches if preceded by ... (must be fixed length). (?R((RRRA((sre.pyct_subx s # cCst|i|iffS(N(RRR(R:((sre.pyct_picklestScannercBseZddZdZRS(ic Csddkl}l}||_g}ti}||_xR|D]J\}}|iti||t |dti ||ffgqAWt |d|_ ti||d|ffg}t i||_dS(Ni(tBRANCHt SUBPATTERNi(t sre_constantsRERFtlexiconR<tPatternRtappendt SubPatternR(tparsetgroupsR1R4Rtscanner( tselfRHRRERFR:R*tphrasetaction((sre.pyct__init__"s    3!c Csg}|i}|ii|i}d}x|}|pPn|i}||joPn|i|idd}t|o"||_|||i}n|dj o||n|}q-|||fS(Nii( RJRNRtendRHt lastindextcallabletgroupR1( RORtresultRJRR,tmtjRQ((sre.pyctscan0s&        (t__name__t __module__RRRZ(((sre.pycRD!s ((:t__doc__tsysR4R<t__all__t __version__tSRE_FLAG_IGNORECASER RtSRE_FLAG_LOCALER RtSRE_FLAG_UNICODERRtSRE_FLAG_MULTILINER RtSRE_FLAG_DOTALLR RtSRE_FLAG_VERBOSERRtSRE_FLAG_TEMPLATER"tTEMPLATEtSRE_FLAG_DEBUGtDEBUGRRRRRRRt hexversionRJRRRRR&R-R RR!R/R3R7RR>R@RBtcopy_regRCtpickleRD(((sre.pycsfs^                            PK8repr.pyc Z]Gc@s`dZddgZddkZddklZdddYZdZeZeiZdS( sGRedo the builtin repr() (representation) but with limits on most sizes.tReprtrepriN(tislicecBseZdZdZdZddZdZdZdZdZ d Z d Z d Z d Z d ZdZRS(cCsgd|_d|_d|_d|_d|_d|_d|_d|_d|_d|_ d|_ dS(Niiiii(i( tmaxleveltmaxtupletmaxlisttmaxarraytmaxdicttmaxsett maxfrozensettmaxdequet maxstringtmaxlongtmaxother(tself((srepr.pyct__init__ s          cCs|i||iS(N(trepr1R(Rtx((srepr.pycRscCst|i}d|jo|i}di|}nt|d|ot|d|||Snti|}t||i joXt d|i dd}t d|i d|}|| d|t||}n|SdS(Nt t_trepr_iiis...( ttypet__name__tsplittjointhasattrtgetattrt __builtin__RtlenR tmax(RRtlevelttypenametpartststitj((srepr.pycRs  $tcCst|}|djo|o d}n|d} |i} g} t||D]} | | | | qQ~ } ||jo| idndi| }|djo|o||}nd|||fS(Nis...is, s%s%s%s(RRRtappendR(RRRtlefttrighttmaxiterttrailtnR!tnewlevelRt_[1]telemtpieces((srepr.pyct_repr_iterable)s    3 cCs|i||dd|idS(Nt(t)t,(R/R(RRR((srepr.pyct repr_tuple6scCs|i||dd|iS(Nt[t](R/R(RRR((srepr.pyct repr_list9scCs)d|i}|i|||d|iS(Ns array('%s', [s])(ttypecodeR/R(RRRtheader((srepr.pyct repr_array<s cCs(t|}|i||dd|iS(Nsset([s])(t_possibly_sortedR/R(RRR((srepr.pyctrepr_set@s cCs(t|}|i||dd|iS(Ns frozenset([s])(R:R/R (RRR((srepr.pyctrepr_frozensetDs cCs|i||dd|iS(Nsdeque([s])(R/R (RRR((srepr.pyct repr_dequeIsc Cst|}|djodSn|djodSn|d}|i}g}xYtt||iD]?}|||}||||} |id|| fqhW||ijo|idndi|} d| fS( Nis{}s{...}is%s: %ss...s, s{%s}(RRRR:RR%R( RRRR*R+RR.tkeytkeyreprtvalreprR!((srepr.pyct repr_dictLs"     cCsti||i }t||ijo}td|idd}td|id|}ti|| |t||}|| d|t||}n|S(Niiis...(RRR RR(RRRR!R"R#((srepr.pyctrepr_str[s%$cCsti|}t||ijoXtd|idd}td|id|}|| d|t||}n|S(Niiis...(RRRR R(RRRR!R"R#((srepr.pyct repr_longds $cCsyti|}Wn-tj o!d|iit|fSnXt||ijoXtd|idd}td|id|}|| d|t||}n|S(Ns<%s instance at %x>iiis...( RRt Exceptiont __class__RtidRR R(RRRR!R"R#((srepr.pyct repr_instancels$(Rt __module__RRRR/R3R6R9R;R<R=RARBRCRG(((srepr.pycRs          cCs2yt|SWntj ot|SnXdS(N(tsortedRDtlist(R((srepr.pycR:zs(( t__doc__t__all__Rt itertoolsRRR:taReprR(((srepr.pycss  r PK8zrBsha.pyc sPK8f44 shutil.pyc Dc@sdZddkZddkZddkZddklZdddddd d d d d g Zd efdYZddZ dZ dZ dZ dZ dZdZedZeddZdZdZdS(sUtility functions for copying files and directory trees. XXX The functions here don't copy the resource fork or other metadata on Mac. iN(tabspatht copyfileobjtcopyfiletcopymodetcopystattcopytcopy2tcopytreetmovetrmtreetErrorcBseZRS((t__name__t __module__(((s shutil.pycR siicCs2x+|i|}|pPn|i|qdS(s=copy data from file-like object fsrc to file-like object fdstN(treadtwrite(tfsrctfdsttlengthtbuf((s shutil.pycRs cCsttido5ytii||SWqHtj o tSqHXntiitii|tiitii|jS(Ntsamefile(thasattrtostpathRtOSErrortFalsetnormcaseR(tsrctdst((s shutil.pyct _samefiles cCst||otd||fnd}d}z/t|d}t|d}t||Wd|o|in|o|inXdS(sCopy data from src to dsts`%s` and `%s` are the same filetrbtwbN(RR tNonetopenRtclose(RRRR((s shutil.pycR&scCsIttdo5ti|}ti|i}ti||ndS(sCopy mode bits from src to dsttchmodN(RRtstattS_IMODEtst_modeR"(RRtsttmode((s shutil.pycR7scCsyti|}ti|i}ttdo ti||i|ifnttdoti||ndS(s?Copy all stat info (mode bits, atime and mtime) from src to dsttutimeR"N( RR#R$R%RR(tst_atimetst_mtimeR"(RRR&R'((s shutil.pycR>s  cCsVtii|o%tii|tii|}nt||t||dS(sVCopy data and mode bits ("cp src dst"). The destination may be a directory. N(RRtisdirtjointbasenameRR(RR((s shutil.pycRHs% cCsVtii|o%tii|tii|}nt||t||dS(s]Copy data and all stat info ("cp -p src dst"). The destination may be a directory. N(RRR+R,R-RR(RR((s shutil.pycRSs% c Csti|}ti|g}x|D] }tii||}tii||}yu|o6tii|o#ti|}ti||n5tii|ot |||nt ||Wq)t ti fj o%} |i ||t| fq)tj o} |i| idq)Xq)Wyt||WnCtj on2tj o%} |i||t| fnX|o t|ndS(sRecursively copy a directory tree using copy2(). The destination directory must not already exist. If exception(s) occur, an Error is raised with a list of reasons. If the optional symlinks flag is true, symbolic links in the source tree result in symbolic links in the destination tree; if it is false, the contents of the files pointed to by symbolic links are copied. XXX Consider this example code rather than the ultimate tool. iN(RtlistdirtmakedirsRR,tislinktreadlinktsymlinkR+RRtIOErrorterrortappendtstrR textendtargsRt WindowsErrorR( RRtsymlinkstnamesterrorstnametsrcnametdstnametlinktotwhyterr((s shutil.pycR_s4  !c Cs|o d}n|djo d}ng}yti|}Wn1tij o"}|ti|tinXx|D]}tii||}yti|i }Wntij o d}nXt i |ot |||qyti |Wqtij o"}|ti |tiqXqWyti|Wn/tij o |ti|tinXdS(sRecursively delete a directory tree. If ignore_errors is set, errors are ignored; otherwise, if onerror is set, it is called to handle the error with arguments (func, path, exc_info) where func is os.listdir, os.remove, or os.rmdir; path is the argument to that function that caused it to fail; and exc_info is a tuple returned by sys.exc_info(). If ignore_errors is false and onerror is None, an exception is raised. cWsdS(N((R8((s shutil.pyctonerrorscWsdS(N((R8((s shutil.pycRCsiN(RRR.R4tsystexc_infoRR,tlstatR%R#tS_ISDIRR tremovetrmdir(Rt ignore_errorsRCR;RBR=tfullnameR'((s shutil.pycR s4     "cCsyti||Wntj o|tii|oHt||otd||fnt||dtt |qt ||ti |nXdS(s=Recursively move a file or directory to another location. If the destination is on our current filesystem, then simply use rename. Otherwise, copy src to the dst and then remove src. A lot more could be done here... A look at a mv.c shows a lot of the issues this implementation glosses over. s.Cannot move a directory '%s' into itself '%s'.R:N( RtrenameRRR+t destinsrcR RtTrueR Rtunlink(RR((s shutil.pycRs  cCst|it|S(N(Rt startswith(RR((s shutil.pycRMsi@(t__doc__RRDR#tos.pathRt__all__tEnvironmentErrorR RRRRRRRRRRR RRM(((s shutil.pycss$       -( PK87&z00zipextimporter.pyc dTHc@s\dZddkZddkZddkZddkZdeifdYZdZdS(szipextimporter - an importer which can import extension modules from zipfiles This file and also _memimporter.pyd is part of the py2exe package. Overview ======== zipextimporter.py contains the ZipExtImporter class which allows to load Python binary extension modules contained in a zip.archive, without unpacking them to the file system. Call the zipextimporter.install() function to install the import hook, add a zip-file containing .pyd or .dll extension modules to sys.path, and import them. It uses the _memimporter extension which uses code from Joachim Bauch's MemoryModule library. This library emulates the win32 api function LoadLibrary. Sample usage ============ You have to prepare a zip-archive 'lib.zip' containing your Python's _socket.pyd for this example to work. >>> import zipextimporter >>> zipextimporter.install() >>> import sys >>> sys.path.insert(0, "lib.zip") >>> import _socket >>> print _socket >>> _socket.__file__ 'lib.zip\\_socket.pyd' >>> _socket.__loader__ >>> # Reloading also works correctly: >>> _socket is reload(_socket) True >>> iNtZipExtensionImportercBsreZgZeiD])Zedeijoeedqq[ZddZ dZ dZ dZ RS(iicCstii|||}|o|Sn|djoG|dtid }|iddd}||ijo|SqnC|idd}x-|iD]"}|||ijo|SqqWdS( Nt pywintypest pythoncoms%d%dit.s\s.dll(s pywintypess pythoncom( t zipimportt zipimportert find_moduletsyst version_infotreplacet_filest _suffixestNone(tselftfullnametpathtresultts((szipextimporter.pycR2s    cCs%||ijo|i|SndS(N(R tget_dataR (R tname((szipextimporter.pyctlocate_dll_imageBsc Cstii|oCti|}tio!tiid||ifn|Snti|i yt i i ||SWnt i j onXd|idd}|idd}|djo|dtid }d}n |i}x|D]}||}||ijotio!tiid ||ifn|i|}ti||||}d |i|f|_||_tio!tiid ||ifn|SqqWt i d|dS(Ns.import %s # previously loaded from zipfile %s tinitRis\RRs%d%dis.dlls# found %s in zipfile %s s%s\%ss#import %s # loaded from zipfile %s scan't find module %s(s pywintypess pythoncom(s.dll(Rtmodulesthas_keyt _memimportertget_verbose_flagtstderrtwritetarchivet set_find_procRRRt load_moduletZipImportErrortsplitR RR R Rt import_modulet__file__t __loader__( R RtmodtinitnametfilenametsuffixesRRtcode((szipextimporter.pycRJs<  !     !  ! cCsd|ii|ifS(Ns<%s object %r>(t __class__t__name__R(R ((szipextimporter.pyct__repr__jsN( R*t __module__t_[1]timpt get_suffixesRt C_EXTENSIONR R RRRR+(((szipextimporter.pycR/s C   cCs$tiidttiidS(sInstall the zipextimporteriN(Rt path_hookstinsertRtpath_importer_cachetclear(((szipextimporter.pyctinstallms(t__doc__R.RRRRRR5(((szipextimporter.pycs*s   >PK8U 00 socket.pyc Fc@sRdZddkZddkTeZy ddkZddkTeZWnej onXddkZddkZyddk l Z Wnej o dZ nXdgZ e i ei eeoe i ei eneZeoeZdddZneiiidohZd ed socket object Return a new socket object connected to the same system resource.R(R4R(R;((s socket.pyctdupstricCst|i||S(smakefile([mode[, bufsize]]) -> file object Return a regular file object corresponding to the socket. The mode and bufsize arguments are as for the built-in open() function.(t _fileobjectR(R;tmodetbufsize((s socket.pyctmakefilescCs |iiS((RR<(R;((s socket.pyctstdocsthe socket familycCs |iiS((RR=(R;((s socket.pycRKssthe socket typecCs |iiS((RR>(R;((s socket.pycRKssthe socket protocolsVdef %s(self, *args): return self._sock.%s(*args) %s.__doc__ = _realsocket.%s.__doc__ N(R0R1R7t__doc__tlistR8R2tAF_INETt SOCK_STREAMR6R@RBRCRERJtpropertyR<R=R>t_st_socketmethodst_m(((s socket.pycR4s"    RGc BseZdZdZdZddddddd d d g Zd d edZdZe eddZ dZ dZ dZ dZdZdZdZd dZd dZddZdZdZRS(s-Faux file object attached to a socket object.i sRHRIt softspaceRt _rbufsizet _wbufsizet_rbuft_wbuft_closetrbicCs||_||_|djo |i}n||_t|_|djo d|_n'|djo|i|_n ||_||_d|_g|_ ||_ dS(NiiR ( RRHtdefault_bufsizeRItFalseRURVRWRXRYRZ(R;RRHRIRB((s socket.pycR@s             cCs |idjS(N(RR6(R;((s socket.pyct _getclosedsRLsTrue if the file is closedcCsHz|io|inWd|io|iind|_XdS(N(RtflushRZRBR6(R;((s socket.pycRBs   cCsy|iWnnXdS(N(RB(R;((s socket.pyct__del__scCs=|io/di|i}g|_|ii|ndS(NR (RYtjoinRR (R;tbuffer((s socket.pycR_s  cCs |iiS(N(RR(R;((s socket.pycRscCst|}|pdSn|ii||idjp3|idjo d|jp|i|ijo|indS(Niis (tstrRYtappendRWt _get_wbuf_lenR_(R;tdata((s socket.pyctwrites cCsZ|iitdtt||idjp|i|ijo|indS(Ni( RYtextendtfilterR6tmapRcRWReR_(R;RN((s socket.pyct writeliness"cCs.d}x!|iD]}|t|7}qW|S(Ni(RYtlen(R;tbuf_lentx((s socket.pycRes  cCs|i}|djog}|o|i|nd|_|idjo |i}n |i}x7to/|ii|}|pPn|i|qfWdi|Snt|}||jo|||_|| Sng}|o|i|nd|_xto||}t |i|}|ii|}|pPn|i|t|}||jo |||_|| |d+sj                       0 PK8؜sre.pyc Fc@sSdZddkZeidedddkTddklZddklZdS(sThis file is only retained for backwards compatibility. It will be removed in the future. sre was moved to re in version 2.5. iNs/The sre module is deprecated, please import re.i(t*(t__all__(t_compile(t__doc__twarningstwarntDeprecationWarningtreRR(((ssre.pycss     PK8Т++sre_compile.pyc Gc @sndZddkZddkZddkTeiejp tdeidjo dZndZdZd Z e e e gZ e e eegZe eegZe eegZd Zdd Zd Zd ZdZdZdZyeWn"e j oe!dfZ"n Xe!de!edfZ"dZ#dZ$ddZ%dS(sInternal support module for sreiN(t*sSRE module mismatchiilcCs|S(N((tx((ssre_compile.pyct_identityfunctionscCs%h}x|D]}d|| s6      3 + 5  j  PK8sre_constants.pyc Z>d?Z?d@Z@dAZAdBZBdCZCdDZDeeeee e e e eeee eeeeeeeeeeeee e!ee"e#e$e%e&g ZEe'e(e)e*e+e,e-e.e/e0e1e2g ZFe3e4e5e6e7e8e9e:e;e<e=e>e?e@eAeBeCeDgZGdEZHeHeEZEeHeFZFeHeGZGhee<ee<ee<e!e e4<e?e5<e@e6<eAe7<eBe8<eCe9<eDe:ss#define %s_%s %s (titemstsorttwritetupper(tfRDtprefixRLtktv((ssre_constants.pyctdumps   ssre_constants.htwso/* * Secret Labs' Regular Expression Engine * * regular expression matching engine * * NOTE: This file is generated by sre_constants.py. If you need * to change anything in here, edit sre_constants.py and run it. * * Copyright (c) 1997-2001 by Secret Labs AB. All rights reserved. * * See the _sre.c file for information on usage and redistribution. */ s#define SRE_MAGIC %d tSRE_OPtSREs#define SRE_FLAG_TEMPLATE %d s#define SRE_FLAG_IGNORECASE %d s#define SRE_FLAG_LOCALE %d s#define SRE_FLAG_MULTILINE %d s#define SRE_FLAG_DOTALL %d s#define SRE_FLAG_UNICODE %d s#define SRE_FLAG_VERBOSE %d s#define SRE_INFO_PREFIX %d s#define SRE_INFO_LITERAL %d s#define SRE_INFO_CHARSET %d tdoneN(`t__doc__tMAGICt MAXREPEATt ExceptionRtFAILUREtSUCCESStANYtANY_ALLtASSERTt ASSERT_NOTtATt BIGCHARSETtBRANCHtCALLtCATEGORYtCHARSETtGROUPREFtGROUPREF_IGNOREtGROUPREF_EXISTStINt IN_IGNOREtINFOtJUMPtLITERALtLITERAL_IGNOREtMARKt MAX_REPEATt MAX_UNTILt MIN_REPEATt MIN_UNTILtNEGATEt NOT_LITERALtNOT_LITERAL_IGNOREtRANGEtREPEATt REPEAT_ONEt SUBPATTERNtMIN_REPEAT_ONEt AT_BEGINNINGtAT_BEGINNING_LINEtAT_BEGINNING_STRINGt AT_BOUNDARYtAT_NON_BOUNDARYtAT_ENDt AT_END_LINEt AT_END_STRINGtAT_LOC_BOUNDARYtAT_LOC_NON_BOUNDARYtAT_UNI_BOUNDARYtAT_UNI_NON_BOUNDARYtCATEGORY_DIGITtCATEGORY_NOT_DIGITtCATEGORY_SPACEtCATEGORY_NOT_SPACEt CATEGORY_WORDtCATEGORY_NOT_WORDtCATEGORY_LINEBREAKtCATEGORY_NOT_LINEBREAKtCATEGORY_LOC_WORDtCATEGORY_LOC_NOT_WORDtCATEGORY_UNI_DIGITtCATEGORY_UNI_NOT_DIGITtCATEGORY_UNI_SPACEtCATEGORY_UNI_NOT_SPACEtCATEGORY_UNI_WORDtCATEGORY_UNI_NOT_WORDtCATEGORY_UNI_LINEBREAKtCATEGORY_UNI_NOT_LINEBREAKtOPCODEStATCODEStCHCODESRGt OP_IGNOREt AT_MULTILINEt AT_LOCALEt AT_UNICODEt CH_LOCALEt CH_UNICODEtSRE_FLAG_TEMPLATEtSRE_FLAG_IGNORECASEtSRE_FLAG_LOCALEtSRE_FLAG_MULTILINEtSRE_FLAG_DOTALLtSRE_FLAG_UNICODEtSRE_FLAG_VERBOSEtSRE_FLAG_DEBUGtSRE_INFO_PREFIXtSRE_INFO_LITERALtSRE_INFO_CHARSETRRTtopenRPRNtclose(((ssre_constants.pycs sR                                             PK8KJJ sre_parse.pyc Z5d?Z6d@Z7dS(AsInternal support module for sreiN(t*cCs%h}x|D]}d||scCs|ii|dS(N(R%R(RR9((s sre_parse.pycRsc Cs|io |iSnd}}ttttttf}ttf}x|i D]\}}|t jolt i }d}xB|dD]6}|i \} } t|| }t|| }qW||}||}qM|tjo*|i \}}||}||}qM|tjo.|di \}}||}||}qM||joJ|di \}}|t||d}|t||d}qM||jo|d}|d}qM|tjoPqMqMWtt|t i tt|t i f|_|iS(Nliii(R&tANYtRANGEtINtLITERALt NOT_LITERALtCATEGORYt MIN_REPEATt MAX_REPEATR%tBRANCHtsystmaxinttgetwidthtmintmaxtCALLt SUBPATTERNtlongtSUCCESStint( Rtlothit UNITCODESt REPEATCODESR0R1Rtjtlth((s sre_parse.pycRJsH                  3N(R!R"RRR+R3R5R7R8R:R=R>RRJ(((s sre_parse.pycR#^s          t TokenizercBsAeZdZdZddZdZdZdZRS(cCs ||_d|_|idS(Ni(tstringR6t_Tokenizer__next(RRZ((s sre_parse.pycRs  cCs|it|ijod|_dSn|i|i}|ddjoEy|i|id}Wntj otdnX||}n|it||_||_dS(Nis\isbogus escape (end of line)(R6R4RZRtnextt IndexErrorR(Rtchartc((s sre_parse.pyct__nexts icCs1||ijo|o|indSndS(Nii(R\R[(RR^tskip((s sre_parse.pyctmatchs cCs|i}|i|S(N(R\R[(Rtthis((s sre_parse.pycRs  cCs|i|ifS(N(R6R\(R((s sre_parse.pycttellscCs|\|_|_dS(N(R6R\(RR6((s sre_parse.pyctseeks(R!R"RR[RbRRdRe(((s sre_parse.pycRYs     cCsFd|jo djnp(d|jo djnp |djS(NR2tztAtZt_((R^((s sre_parse.pyctisidentscCsd|jo djnS(Nt0t9((R^((s sre_parse.pyctisdigitscCsVt|dptSnx6|dD]*}t| ot| otSq$q$WtS(Nii(RjtFalseRmtTrue(RR^((s sre_parse.pyctisnames  c Csti|}|o|Snti|}|o|Snyh|dd!}|djox8|itjo't|djo||i}q\W|d}t|djotdtd|ntt |dd@fSn|t jo`x8|it jo't|djo||i}qW|d}tt |d d@fSn%|t jotdt|nt|djott |dfSnWnt j onXtdt|dS( NiiR isbogus escape: %ss\iii(tESCAPESRt CATEGORIESR\t HEXDIGITSR4RRRBRQt OCTDIGITStDIGITStordt ValueError(tsourcetescapeR9R_((s sre_parse.pyct _class_escapes:  #  #  c Cswti|}|o|Snti|}|o|Sny|dd!}|djowx8|itjo't|djo||i}q\Wt|djo tntt|ddd@fSnO|djoZx8|it jo't|djo||i}qWtt|ddd@fSn|t jo|it jou||i}|dt joP|dt jo?|it jo/||i}tt|ddd@fSqnt|d}||i jo+|i |p t d nt|fSntnt|djott|dfSnWntj onXt d t|dS( NiiR iiiRkiscannot refer to open groupsbogus escape: %s(RrRRqR\RsR4RwRBRQRtRuRR RtGROUPREFRvR(RxRytstateR9R_tgroup((s sre_parse.pyct_escapesL  #  # "#  ic Csg}|i}|i}x_|t|||doqn|pPn|i p|ddoPqtdqt|djo |dSnt|}|i}x}d}xp|D]C} | pPn|djo| d}q| d|joPqqWx|D] } | d=q W||qPqx}|D]3} t| djp| ddtjoPq5q5Wg} | i} x|D]} | | dqW|t | f|S|it d|ff|S(Nt|t)ispattern not properly closedi( RRbt_parseR\RR4R#RRBRARG( RxR|tnestedtitemst itemsappendt sourcematcht subpatterntsubpatternappendtprefixtitemRt setappend((s sre_parse.pyct _parse_sub3sZ           (  cCst||}|ido0t||}|ido tdqUnd}|io!|idd o tdnt|}|it|||ff|S(NRs/conditional backref with more than two branchesRispattern not properly closed(RRbRRR\R#RtGROUPREF_EXISTS(RxR|t condgrouptitem_yestitem_noR((s sre_parse.pyct_parse_sub_condns  s|)s=!sbad character in group namet=Rsunknown group namesunexpected end of patternsunknown specifier: ?P%st:sunbalanced parenthesiss syntax errorsunknown extensiont$s parser error(Ns (ii(0R#RRRbR4t_PATTERNENDERSt _ASSERTCHARSt_LOOKBEHINDASSERTCHARSt _REPEATCODESR\RRtSRE_FLAG_VERBOSEt WHITESPACEt SPECIAL_CHARSRBRvtNEGATERzRRAR@RCt REPEAT_CHARSt MAXREPEATRdRuReRQtATRERFR?RpRR{RtASSERTt ASSERT_NOTRwtFLAGSRRRRNt AT_BEGINNINGtAT_ENDR~( RxR|RRt sourcegetRt_lent PATTERNENDERSt ASSERTCHARStLOOKBEHINDASSERTCHARSRURcRRR;tcode1tcode2RRRSRKRLthereRR}RRR^RtdirtptcondnameR9((s sre_parse.pycRs                    "       (=            0                                                               icCst|}|djo t}n||_||_t||d}|i}|djo tdn|o tdn|t@o|i n|t @ o(|i it @ot ||i iSn|S(NiRsunbalanced parenthesiss-bogus characters at end of regular expression( RYRRRtstrRRRtSRE_FLAG_DEBUGR+RR$tparse(RRR$RxRttail((s sre_parse.pycRs           cCst|}|i}g}|i}||d}|d }t|tdjo t}nt}x|} | djoPn| o| ddjo| dd!} | djod} |idoIxF|} | djo td n| d joPn| | } qn| p td ny*t | } | djo td nWn]t j oQt | p td ny|i | } Wqt j otdqXnX|t| fqD| djog|itjo2| |} |itjo| |} qn||t | ddd@qD| tjot}|itjow| |} | tjoY| dtjoH|itjo8| |} t}||t | ddd@qn|p|tt | dfq6qDy|t| d} Wnt j onX|| qi|| qid}g}|i}dgt|}xI|D]A\} }| tjo|||fn |||<|d}qvW||fS(NcSsP|o5|ddtjo t|dd|f|d sp              Y!   , ;      WPK8;/}stat.pyc sZ          PK8@@ string.pyc oDc@sdZdZdZdZeeZeZeZeeZdZeddZ dZ dZ eee eZ e eed Zed ieZ[dd Zdad Zd dkZdd2dYZdefdYZdd3dYZeZeZ eZ!eZ"dZ#dZ$dZ%ddZ&ddZ'ddZ(dd dZ)e)Z*dd dZ+ddZeZ,dZ-d Z.d!Z/d"Z0d#Z1e2Z3e4Z5e6Z7d$Z8d%d&Z9d%d'Z:d(Z;d)Z<d*Z=d+Z>d,d-Z?d d.Z@d/ZAd d0ZBy0d d1kClZlZlZlZeeZWneDj onXdS(4sA collection of string operations (most are no longer used). Warning: most of the code you see here isn't normally used nowadays. Beginning with Python 1.6, many of these functions are implemented as methods on the standard string object. They used to be implemented by a built-in module called strop, but strop is now obsolete itself. Public module variables: whitespace -- a string containing all characters considered whitespace lowercase -- a string containing all characters considered lowercase letters uppercase -- a string containing all characters considered uppercase letters letters -- a string containing all characters considered letters digits -- a string containing all characters considered decimal digits hexdigits -- a string containing all characters considered hexadecimal digits octdigits -- a string containing all characters considered octal digits punctuation -- a string containing all characters considered punctuation printable -- a string containing all characters considered printable s tabcdefghijklmnopqrstuvwxyztABCDEFGHIJKLMNOPQRSTUVWXYZt 0123456789tabcdeftABCDEFt01234567s !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~itcCs>|pdig}|i|D]}||iq!~S(scapwords(s, [sep]) -> string Split the argument into words using split, capitalize each word using capitalize, and join the capitalized words using join. Note that this replaces runs of whitespace characters by a single space. t (tjointsplitt capitalize(tstsept_[1]tx((s string.pyctcapwords-s cCst|t|jo tdntptdtant}tt|}x,tt|D]}||||| string Return a translation table (a string of 256 bytes long) suitable for use in string.translate. The strings frm and to must be of the same length. s)maketrans arguments must have same lengthRN( tlent ValueErrort_idmapLtmaptNonet_idmaptordtrangeR(tfromstrttostrtLti((s string.pyct maketrans;s iNt _multimapcBs eZdZdZdZRS(sHelper class for combining multiple mappings. Used by .{safe_,}substitute() to combine the mapping and keyword arguments. cCs||_||_dS(N(t_primaryt _secondary(tselftprimaryt secondary((s string.pyct__init__Ys cCs4y|i|SWntj o|i|SnXdS(N(RtKeyErrorR(R tkey((s string.pyct __getitem__]s(t__name__t __module__t__doc__R#R&(((s string.pycRSs t_TemplateMetaclasscBseZdZdZRS(s/ %(delim)s(?: (?P%(delim)s) | # Escape sequence of two delimiters (?P%(id)s) | # delimiter and a Python identifier {(?P%(id)s)} | # delimiter and a braced identifier (?P) # Other ill-formed delimiter exprs ) cCstt|i|||d|jo |i}n/tihti|id<|id<}ti|ti ti B|_dS(Ntpatterntdelimtid( tsuperR*R#R+t_retescapet delimitert idpatterntcompilet IGNORECASEtVERBOSE(tclstnametbasestdctR+((s string.pycR#ns   (R'R(R+R#(((s string.pycR*dstTemplatecBsDeZdZeZdZdZdZdZdZ dZ RS(s.A string class for supporting $-substitutions.t$s[_a-z][_a-z0-9]*cCs ||_dS(N(ttemplate(R R<((s string.pycR#scCs|id}|i| it}|pd}d}n*|tdi|d }t|}td||fdS(NtinvalidiRis.Invalid placeholder in string: line %d, col %d(tstartR<t splitlinestTrueRRR(R tmoRtlinestcolnotlineno((s string.pyct_invalids  cst|djotdn|p |n)|ot||dn |dfd}ii|iS(NisToo many positional argumentsics|idp |id}|dj o|}d|fSn|iddj o iSn|iddj oi|ntdidS(Ntnamedtbraceds%stescapedR=s#Unrecognized named group in pattern(tgroupRR1RERR+(RARFtval(tmappingR (s string.pyctconverts   (Rt TypeErrorRR+tsubR<(R targstkwsRL((R RKs string.pyct substitutes  cst|djotdn|p |n)|ot||dn |dfd}ii|iS(NisToo many positional argumentsic s|id}|dj o8yd|fSWqTtj oi|SqTXn|id}|dj o@yd|fSWqtj oid|dSqXn|iddj o iSn|iddj o iSntdidS( NRFs%sRGt{t}RHR=s#Unrecognized named group in pattern(RIRR$R1RR+(RARFRG(RKR (s string.pycRLs$    (RRMRR+RNR<(R RORPRL((R RKs string.pyctsafe_substitutes  ( R'R(R)R*t __metaclass__R1R2R#RERQRT(((s string.pycR:zs  cCs |iS(sSlower(s) -> string Return a copy of the string s converted to lowercase. (tlower(R ((s string.pycRVscCs |iS(sSupper(s) -> string Return a copy of the string s converted to uppercase. (tupper(R ((s string.pycRWscCs |iS(sswapcase(s) -> string Return a copy of the string s with upper case characters converted to lowercase and vice versa. (tswapcase(R ((s string.pycRXscCs |i|S(sstrip(s [,chars]) -> string Return a copy of the string s with leading and trailing whitespace removed. If chars is given and not None, remove characters in chars instead. If chars is unicode, S will be converted to unicode before stripping. (tstrip(R tchars((s string.pycRYs cCs |i|S(slstrip(s [,chars]) -> string Return a copy of the string s with leading whitespace removed. If chars is given and not None, remove characters in chars instead. (tlstrip(R RZ((s string.pycR[scCs |i|S(srstrip(s [,chars]) -> string Return a copy of the string s with trailing whitespace removed. If chars is given and not None, remove characters in chars instead. (trstrip(R RZ((s string.pycR\ scCs|i||S(srsplit(s [,sep [,maxsplit]]) -> list of strings Return a list of the words in the string s, using sep as the delimiter string. If maxsplit is given, splits at no more than maxsplit places (resulting in at most maxsplit+1 words). If sep is not specified or is None, any whitespace string is a separator. (split and splitfields are synonymous) (R (R R tmaxsplit((s string.pycR s cCs|i||S(sWrsplit(s [,sep [,maxsplit]]) -> list of strings Return a list of the words in the string s, using sep as the delimiter string, starting at the end of the string and working to the front. If maxsplit is given, at most maxsplit splits are done. If sep is not specified or is None, any whitespace string is a separator. (trsplit(R R R]((s string.pycR^&s RcCs |i|S(sjoin(list [,sep]) -> string Return a string composed of the words in list, with intervening occurrences of sep. The default separator is a single space. (joinfields and join are synonymous) (R(twordsR ((s string.pycR2s cGs |i|S(spindex(s, sub [,start [,end]]) -> int Like find but raises ValueError when the substring is not found. (tindex(R RO((s string.pycR`@scGs |i|S(srrindex(s, sub [,start [,end]]) -> int Like rfind but raises ValueError when the substring is not found. (trindex(R RO((s string.pycRaIscGs |i|S(scount(s, sub[, start[,end]]) -> int Return the number of occurrences of substring sub in string s[start:end]. Optional arguments start and end are interpreted as in slice notation. (tcount(R RO((s string.pycRbRscGs |i|S(sfind(s, sub [,start [,end]]) -> in Return the lowest index in s where substring sub is found, such that sub is contained within s[start,end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure. (tfind(R RO((s string.pycRc]s cGs |i|S(srfind(s, sub [,start [,end]]) -> int Return the highest index in s where substring sub is found, such that sub is contained within s[start,end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure. (trfind(R RO((s string.pycRdjs cCs t|S(sYatof(s) -> float Return the floating point number represented by the string s. (t_float(R ((s string.pyctatof|si cCs t||S(ssatoi(s [,base]) -> int Return the integer represented by the string s in the given base, which defaults to 10. The string s must consist of one or more digits, possibly preceded by a sign. If base is 0, it is chosen from the leading characters of s, 0 for octal, 0x or 0X for hexadecimal. If base is 16, a preceding 0x or 0X is accepted. (t_int(R tbase((s string.pyctatois cCs t||S(satol(s [,base]) -> long Return the long integer represented by the string s in the given base, which defaults to 10. The string s must consist of one or more digits, possibly preceded by a sign. If base is 0, it is chosen from the leading characters of s, 0 for octal, 0x or 0X for hexadecimal. If base is 16, a preceding 0x or 0X is accepted. A trailing L or l is not accepted, unless base is 0. (t_long(R Rh((s string.pyctatols cGs|i||S(sljust(s, width[, fillchar]) -> string Return a left-justified version of s, in a field of the specified width, padded with spaces as needed. The string is never truncated. If specified the fillchar is used instead of spaces. (tljust(R twidthRO((s string.pycRlscGs|i||S(srjust(s, width[, fillchar]) -> string Return a right-justified version of s, in a field of the specified width, padded with spaces as needed. The string is never truncated. If specified the fillchar is used instead of spaces. (trjust(R RmRO((s string.pycRnscGs|i||S(scenter(s, width[, fillchar]) -> string Return a center version of s, in a field of the specified width. padded with spaces as needed. The string is never truncated. If specified the fillchar is used instead of spaces. (tcenter(R RmRO((s string.pycRoscCs-t|tpt|}n|i|S(szfill(x, width) -> string Pad a numeric string x with zeros on the left, to fill a field of the specified width. The string x is never truncated. (t isinstancet basestringtreprtzfill(RRm((s string.pycRssicCs |i|S(sexpandtabs(s [,tabsize]) -> string Return a copy of the string s with all tab characters replaced by the appropriate number of spaces, depending on the current column, and the tabsize (default 8). (t expandtabs(R ttabsize((s string.pycRtscCs4|o|i||Sn|i||d SdS(sgtranslate(s,table [,deletions]) -> string Return a copy of the string s, where all characters occurring in the optional argument deletions are removed, and the remaining characters have been mapped through the given translation table, which must be a string of length 256. The deletions argument is not allowed for Unicode strings. iN(t translate(R ttablet deletions((s string.pycRvs cCs |iS(socapitalize(s) -> string Return a copy of the string s with only its first character capitalized. (R (R ((s string.pycR scCs|i|||S(sreplace (str, old, new[, maxsplit]) -> string Return a copy of string str with all occurrences of substring old replaced by new. If the optional argument maxsplit is given, only the first maxsplit occurrences are replaced. (treplace(R toldtnewR]((s string.pycRys(Rt lowercaset uppercaset whitespace(((ER)R~R|R}tletterstascii_lowercasetascii_uppercaset ascii_letterstdigitst hexdigitst octdigitst punctuationt printableRtchrtxrangetltstrRRRRRRtreR/RttypeR*R:Rt index_errort atoi_errort atof_errort atol_errorRVRWRXRYR[R\R t splitfieldsR^t joinfieldsR`RaRbRcRdtfloatRetintRgtlongRjRfRiRkRlRnRoRsRtRvR Rytstropt ImportError(((s string.pycssz     Z        "PK8>\<\<stringprep.pyc Dc @sdZddklZeidjptdZeddddd d d d d ddg eddZdZ hdd<dd<dd<dd<dd<dd<dd <d!d"<d#d$<d%d&<d'd(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d'd;<d<d=<d>d?<d@dA<dBdC<dDdE<dFdG<dHdI<dJdK<dLdM<dNdO<dPdQ<dRdS<dTdU<dVdW<dXdY<dZd[<d\d]<d^d_<d`da<dbdc<dTdd<dVde<dXdf<dZdg<d\dh<d^di<d`dj<dbdk<dldm<dndo<dpdq<drds<dtdu<dvdw<dxdy<dzd{<dld|<dnd}<dpd~<drd<dtd<dvd<dxd<dzd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d#d<dd<dd<dd<d%d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d5d<dd<dd<dd<dd <d d <d d <dd<dd<dd<dd<dd<dd<dd<dd<dd<d d!<d"d#<d$d%<d&d'<d(d)<d d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d6<d7d8<d9d:<d7d;<d<d=<d>d?<d@dA<dBdC<dDdE<dBdF<dGdH<dIdJ<dKdL<dMdN<dOdP<dQdR<dSdT<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadb<dcdd<dedf<dgdh<didj<dkdl<dmdn<dodp<dodq<drds<dtdu<dvdw<dxdy<dzd{<d|d}<dd~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd <dd <dd <dd <dd <dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <dd!<dd"<dd#<dd$<dd%<dd&<dd'<dd(<d|d)<dd*<dd+<dd,<dd-<dd.<dd/<dd0<dd1<dd2<dd3<dd4<dd5<dd6<dd7<dd8<dd9<dd:<dd;<dd<<dd=<dd><dd?<dd@<ddA<ddB<d|dC<ddD<ddE<ddF<ddG<ddH<ddI<ddJ<ddK<ddL<ddM<ddN<ddO<ddP<ddQ<ddR<ddS<ddT<ddU<ddV<ddW<ddX<ddY<ddZ<dd[<dd\<d|d]<dd^<dd_<dd`<dda<ddb<ddc<ddd<dde<ddf<ddg<ddh<ddi<ddj<ddk<ddl<ddm<ddn<ddo<ddp<ddq<ddr<dds<ddt<ddu<ddv<d|dw<ddx<ddy<ddz<dd{<dd|<dd}<dd~<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d|d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d)d<dd<dd<d<d<dd<dd<d+d<dd<d7d<dd<dd<dd<dd<dd<d5d<d9d<d+d<d'd<dd<d-d<d3d<dd<dd<dd<d'd<dd<d)d<dd<dd<d<d<dd<dd<d+d<dd<d7d<dd<dd<dd<dd<dd<d5d<d9d<d+d<d'd<dd<d-d<d3d<dd<dd<dd<d'd<dd<d)d<dd<dd<d<d <dd <dd <d+d <dd <d7d<dd<dd<dd<dd<dd<d5d<d9d<d+d<d'd<dd<d-d<d3d<dd<dd<dd<d'd<dd<d)d <dd!<dd"<d<d#<dd$<dd%<d+d&<dd'<d7d(<dd)<dd*<dd+<dd,<dd-<d5d.<d9d/<d+d0<d'd1<dd2<d-d3<d3d4<dd5<dd6<dd7<d'd8<dd9<d)d:<dd;<dd<<d<d=<dd><dd?<d+d@<ddA<d7dB<ddC<ddD<ddE<ddF<ddG<d5dH<d9dI<d+dJ<d'dK<ddL<d-dM<d3dN<ddO<ddP<ddQ<d'dR!i?!udiE!uhpaiq3uauis3uoviu3upai3unai3uμai3umai3ukai3ukbi3umbi3ugbi3upfi3unfi3uμfi3uhzi3ukhzi3umhzi3ughzi3uthzi3i3ukpai3umpai3ugpai3upvi3unvi3uμvi3umvi3ukvi3i3upwi3unwi3uμwi3umwi3ukwi3i3ukωi3umωi3ubqi3uc∕kgi3uco.i3udbi3ugyi3uhpi3ukki3ukmi3uphi3uppmi3upri3usvi3uwbi3uffiufiiufliuffiiuffliustiiuմնiuմեiuմիiuվնiuմխiuaiiiiiiugiiiuji uki i i i uoiiiiiutiuuiuviuwiuxiuyiii4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii i i iiiiiiiiiiiiiii8i9i;i<i=i>i@iAiBiCiDiFiJiKiLiMiNiOiPiliminioipiqirisitiuiviwixiyizi{i|i}i~iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUipiqirisitiuiviwixiyizi{i|i}i~iiiiiiiiiiiuαiiiuδiiuζiuηiiiiuλiiuνiuξiuοiiiiiuτiiiuχiuψiuωiiiiiiiiiiiiiiiiiiiiiiiiiiii iiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4iGiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminiiiiiiiiiiiiiiiiiiiiiiiiiiicCs4tit|}|dj o|Sn|iS(N(t b3_exceptionstgetRtNonetlower(Rtr((sstringprep.pyct map_table_b3s cCs}t|}tid|}dig}|D]}|t|q/~}tid|}||jo|Sn|SdS(NtNFKCu(RRt normalizetjoin(tataltbt_[1]tchtblR((sstringprep.pyct map_table_b2s 0 cCs |djS(Nu ((R((sstringprep.pyct in_table_c11scCs ti|djo |djS(NtZsu (RR(R((sstringprep.pyct in_table_c12scCsti|djS(NR(RR(R((sstringprep.pyctin_table_c11_c12scCs&t|djoti|djS(NitCc(RRR(R((sstringprep.pyct in_table_c21siiii( i) id ij ip iiisi{cCsIt|}|djotSnti|djotSn|tjS(NiR(RRRRtTruet c22_specials(RR((sstringprep.pyct in_table_c22s   cCs&ti|djpt|tjS(NR(RRRR"(R((sstringprep.pyctin_table_c21_c22scCsti|djS(NtCo(RR(R((sstringprep.pyct in_table_c3scCsJt|}|djotSn|djotSnt|d@djS(Niiii(ii(RRR!(RR((sstringprep.pyct in_table_c4s    cCsti|djS(NtCs(RR(R((sstringprep.pyct in_table_c5sicCst|tjS(N(Rtc6_set(R((sstringprep.pyct in_table_c6si/i/cCst|tjS(N(Rtc7_set(R((sstringprep.pyct in_table_c7si@iAi i i* i/ cCst|tjS(N(Rtc8_set(R((sstringprep.pyct in_table_c8sii icCst|tjS(N(Rtc9_set(R((sstringprep.pyct in_table_c9scCsti|djS(NtRtAL(R2sAL(Rt bidirectional(R((sstringprep.pyct in_table_d1 scCsti|djS(NtL(RR4(R((sstringprep.pyct in_table_d2sN(!t__doc__RRtunidata_versiontAssertionErrorRtsettrangeR R R RRRRRR R"R#R$R&R'R)R*R+R,R-R.R/R0R1R5R7(((sstringprep.pycss~ : $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$     X       2   PK81z struct.pyc Dc@skdZdZddklZlZdZhZdZdZdZ dZ d Z d d Z d S( s Functions to convert between Python values and C structs. Python strings are used to hold the data representing the C struct and also as format strings to describe the layout of data in the C struct. The optional first format char indicates byte order, size and alignment: @: native order, size & alignment (default) =: native order, std. size & alignment <: little-endian, std. size & alignment >: big-endian, std. size & alignment !: same as > The remaining chars indicate types of args and must match exactly; these can be preceded by a decimal repeat count: x: pad byte (no data); c:char; b:signed byte; B:unsigned byte; h:short; H:unsigned short; i:int; I:unsigned int; l:long; L:unsigned long; f:float; d:double. Special cases (preceding decimal count indicates length): s:string (array of char); p: pascal string (with count byte). Special case (only available in native format): P:an integer type that is wide enough to hold a pointer. Special case (not in native mode unless 'long long' in platform C): q:long long; Q:unsigned long long Whitespace between formats is ignored. The variable struct.error is an exception raised on errors. s0.1i(tStructterroridcCs;tttjotint|}|t|<|S(N(tlent_cachet _MAXCACHEtclearR(tfmtts((s struct.pyct_compile#s   cCs7yt|}Wntj ot|}nX|iS(st Return size of C struct described by format string fmt. See struct.__doc__ for more on format strings. (RtKeyErrorRtsize(Rto((s struct.pyctcalcsize+s cGs=yt|}Wntj ot|}nX|i|S(s Return string containing values v1, v2, ... packed according to fmt. See struct.__doc__ for more on format strings. (RR Rtpack(RtargsR ((s struct.pycR 6s cGsCyt|}Wntj ot|}nX|i|||S(s Pack the values v1, v2, ... according to fmt, write the packed bytes into the writable buffer buf starting at offset. See struct.__doc__ for more on format strings. (RR Rt pack_into(RtbuftoffsetRR ((s struct.pycRAs cCs=yt|}Wntj ot|}nX|i|S(s Unpack the string, containing packed C structure data, according to fmt. Requires len(string)==calcsize(fmt). See struct.__doc__ for more on format strings. (RR Rtunpack(RRR ((s struct.pycRMs icCs@yt|}Wntj ot|}nX|i||S(s Unpack the buffer, containing packed C structure data, according to fmt starting at offset. Requires len(buffer[offset:]) >= calcsize(fmt). See struct.__doc__ for more on format strings. (RR Rt unpack_from(RRRR ((s struct.pycRYs N( t__doc__t __version__t_structRRRRRR R RRR(((s struct.pycss  PK8GA%kxkxsubprocess.pyc Gc@sdZddkZeidjZddkZddkZddkZddkZdefdYZ eoLddk Z ddk Z ddk TdfdYZ d fd YZn1ddkZddkZddkZddkZd d d dddgZyeidZWn dZnXyeWnej odZdZnXgZdZdZdZdZdZdZd e fdYZ!dZ"dZ#e$djoeo e#ne"ndS(s7+subprocess - Subprocesses with accessible I/O streams This module allows you to spawn processes, connect to their input/output/error pipes, and obtain their return codes. This module intends to replace several other, older modules and functions, like: os.system os.spawn* os.popen* popen2.* commands.* Information about how the subprocess module can be used to replace these modules and functions can be found below. Using the subprocess module =========================== This module defines one class called Popen: class Popen(args, bufsize=0, executable=None, stdin=None, stdout=None, stderr=None, preexec_fn=None, close_fds=False, shell=False, cwd=None, env=None, universal_newlines=False, startupinfo=None, creationflags=0): Arguments are: args should be a string, or a sequence of program arguments. The program to execute is normally the first item in the args sequence or string, but can be explicitly set by using the executable argument. On UNIX, with shell=False (default): In this case, the Popen class uses os.execvp() to execute the child program. args should normally be a sequence. A string will be treated as a sequence with the string as the only item (the program to execute). On UNIX, with shell=True: If args is a string, it specifies the command string to execute through the shell. If args is a sequence, the first item specifies the command string, and any additional items will be treated as additional shell arguments. On Windows: the Popen class uses CreateProcess() to execute the child program, which operates on strings. If args is a sequence, it will be converted to a string using the list2cmdline method. Please note that not all MS Windows applications interpret the command line the same way: The list2cmdline is designed for applications using the same rules as the MS C runtime. bufsize, if given, has the same meaning as the corresponding argument to the built-in open() function: 0 means unbuffered, 1 means line buffered, any other positive value means use a buffer of (approximately) that size. A negative bufsize means to use the system default, which usually means fully buffered. The default value for bufsize is 0 (unbuffered). stdin, stdout and stderr specify the executed programs' standard input, standard output and standard error file handles, respectively. Valid values are PIPE, an existing file descriptor (a positive integer), an existing file object, and None. PIPE indicates that a new pipe to the child should be created. With None, no redirection will occur; the child's file handles will be inherited from the parent. Additionally, stderr can be STDOUT, which indicates that the stderr data from the applications should be captured into the same file handle as for stdout. If preexec_fn is set to a callable object, this object will be called in the child process just before the child is executed. If close_fds is true, all file descriptors except 0, 1 and 2 will be closed before the child process is executed. if shell is true, the specified command will be executed through the shell. If cwd is not None, the current directory will be changed to cwd before the child is executed. If env is not None, it defines the environment variables for the new process. If universal_newlines is true, the file objects stdout and stderr are opened as a text files, but lines may be terminated by any of '\n', the Unix end-of-line convention, '\r', the Macintosh convention or '\r\n', the Windows convention. All of these external representations are seen as '\n' by the Python program. Note: This feature is only available if Python is built with universal newline support (the default). Also, the newlines attribute of the file objects stdout, stdin and stderr are not updated by the communicate() method. The startupinfo and creationflags, if given, will be passed to the underlying CreateProcess() function. They can specify things such as appearance of the main window and priority for the new process. (Windows only) This module also defines two shortcut functions: call(*popenargs, **kwargs): Run command with arguments. Wait for command to complete, then return the returncode attribute. The arguments are the same as for the Popen constructor. Example: retcode = call(["ls", "-l"]) check_call(*popenargs, **kwargs): Run command with arguments. Wait for command to complete. If the exit code was zero then return, otherwise raise CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute. The arguments are the same as for the Popen constructor. Example: check_call(["ls", "-l"]) Exceptions ---------- Exceptions raised in the child process, before the new program has started to execute, will be re-raised in the parent. Additionally, the exception object will have one extra attribute called 'child_traceback', which is a string containing traceback information from the childs point of view. The most common exception raised is OSError. This occurs, for example, when trying to execute a non-existent file. Applications should prepare for OSErrors. A ValueError will be raised if Popen is called with invalid arguments. check_call() will raise CalledProcessError, if the called process returns a non-zero return code. Security -------- Unlike some other popen functions, this implementation will never call /bin/sh implicitly. This means that all characters, including shell metacharacters, can safely be passed to child processes. Popen objects ============= Instances of the Popen class have the following methods: poll() Check if child process has terminated. Returns returncode attribute. wait() Wait for child process to terminate. Returns returncode attribute. communicate(input=None) Interact with process: Send data to stdin. Read data from stdout and stderr, until end-of-file is reached. Wait for process to terminate. The optional input argument should be a string to be sent to the child process, or None, if no data should be sent to the child. communicate() returns a tuple (stdout, stderr). Note: The data read is buffered in memory, so do not use this method if the data size is large or unlimited. The following attributes are also available: stdin If the stdin argument is PIPE, this attribute is a file object that provides input to the child process. Otherwise, it is None. stdout If the stdout argument is PIPE, this attribute is a file object that provides output from the child process. Otherwise, it is None. stderr If the stderr argument is PIPE, this attribute is file object that provides error output from the child process. Otherwise, it is None. pid The process ID of the child process. returncode The child return code. A None value indicates that the process hasn't terminated yet. A negative value -N indicates that the child was terminated by signal N (UNIX only). Replacing older functions with the subprocess module ==================================================== In this section, "a ==> b" means that b can be used as a replacement for a. Note: All functions in this section fail (more or less) silently if the executed program cannot be found; this module raises an OSError exception. In the following examples, we assume that the subprocess module is imported with "from subprocess import *". Replacing /bin/sh shell backquote --------------------------------- output=`mycmd myarg` ==> output = Popen(["mycmd", "myarg"], stdout=PIPE).communicate()[0] Replacing shell pipe line ------------------------- output=`dmesg | grep hda` ==> p1 = Popen(["dmesg"], stdout=PIPE) p2 = Popen(["grep", "hda"], stdin=p1.stdout, stdout=PIPE) output = p2.communicate()[0] Replacing os.system() --------------------- sts = os.system("mycmd" + " myarg") ==> p = Popen("mycmd" + " myarg", shell=True) pid, sts = os.waitpid(p.pid, 0) Note: * Calling the program through the shell is usually not required. * It's easier to look at the returncode attribute than the exitstatus. A more real-world example would look like this: try: retcode = call("mycmd" + " myarg", shell=True) if retcode < 0: print >>sys.stderr, "Child was terminated by signal", -retcode else: print >>sys.stderr, "Child returned", retcode except OSError, e: print >>sys.stderr, "Execution failed:", e Replacing os.spawn* ------------------- P_NOWAIT example: pid = os.spawnlp(os.P_NOWAIT, "/bin/mycmd", "mycmd", "myarg") ==> pid = Popen(["/bin/mycmd", "myarg"]).pid P_WAIT example: retcode = os.spawnlp(os.P_WAIT, "/bin/mycmd", "mycmd", "myarg") ==> retcode = call(["/bin/mycmd", "myarg"]) Vector example: os.spawnvp(os.P_NOWAIT, path, args) ==> Popen([path] + args[1:]) Environment example: os.spawnlpe(os.P_NOWAIT, "/bin/mycmd", "mycmd", "myarg", env) ==> Popen(["/bin/mycmd", "myarg"], env={"PATH": "/usr/bin"}) Replacing os.popen* ------------------- pipe = os.popen(cmd, mode='r', bufsize) ==> pipe = Popen(cmd, shell=True, bufsize=bufsize, stdout=PIPE).stdout pipe = os.popen(cmd, mode='w', bufsize) ==> pipe = Popen(cmd, shell=True, bufsize=bufsize, stdin=PIPE).stdin (child_stdin, child_stdout) = os.popen2(cmd, mode, bufsize) ==> p = Popen(cmd, shell=True, bufsize=bufsize, stdin=PIPE, stdout=PIPE, close_fds=True) (child_stdin, child_stdout) = (p.stdin, p.stdout) (child_stdin, child_stdout, child_stderr) = os.popen3(cmd, mode, bufsize) ==> p = Popen(cmd, shell=True, bufsize=bufsize, stdin=PIPE, stdout=PIPE, stderr=PIPE, close_fds=True) (child_stdin, child_stdout, child_stderr) = (p.stdin, p.stdout, p.stderr) (child_stdin, child_stdout_and_stderr) = os.popen4(cmd, mode, bufsize) ==> p = Popen(cmd, shell=True, bufsize=bufsize, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True) (child_stdin, child_stdout_and_stderr) = (p.stdin, p.stdout) Replacing popen2.* ------------------ Note: If the cmd argument to popen2 functions is a string, the command is executed through /bin/sh. If it is a list, the command is directly executed. (child_stdout, child_stdin) = popen2.popen2("somestring", bufsize, mode) ==> p = Popen(["somestring"], shell=True, bufsize=bufsize stdin=PIPE, stdout=PIPE, close_fds=True) (child_stdout, child_stdin) = (p.stdout, p.stdin) (child_stdout, child_stdin) = popen2.popen2(["mycmd", "myarg"], bufsize, mode) ==> p = Popen(["mycmd", "myarg"], bufsize=bufsize, stdin=PIPE, stdout=PIPE, close_fds=True) (child_stdout, child_stdin) = (p.stdout, p.stdin) The popen2.Popen3 and popen2.Popen4 basically works as subprocess.Popen, except that: * subprocess.Popen raises an exception if the execution fails * the capturestderr argument is replaced with the stderr argument. * stdin=PIPE and stdout=PIPE must be specified. * popen2 closes all filedescriptors by default, but you have to specify close_fds=True with subprocess.Popen. iNtwin32tCalledProcessErrorcBs eZdZdZdZRS(sThis exception is raised when a process run by check_call() returns a non-zero exit status. The exit status will be stored in the returncode attribute.cCs||_||_dS(N(t returncodetcmd(tselfRR((ssubprocess.pyct__init__ps cCsd|i|ifS(Ns-Command '%s' returned non-zero exit status %d(RR(R((ssubprocess.pyct__str__ss(t__name__t __module__t__doc__RR(((ssubprocess.pycRls (t*t STARTUPINFOcBs&eZdZdZdZdZdZRS(iN(RRtdwFlagstNonet hStdInputt hStdOutputt hStdErrort wShowWindow(((ssubprocess.pycR s t pywintypescBseZeZRS((RRtIOErrorterror(((ssubprocess.pycRstPopentPIPEtSTDOUTtcallt check_callt SC_OPEN_MAXiiicCs]xVtD]M}|idtidjo+yti|WqUtj oqUXqqWdS(Nt _deadstatei(t_activetpolltsystmaxinttremovet ValueError(tinst((ssubprocess.pyct_cleanupsicOst||iS(sRun command with arguments. Wait for command to complete, then return the returncode attribute. The arguments are the same as for the Popen constructor. Example: retcode = call(["ls", "-l"]) (Rtwait(t popenargstkwargs((ssubprocess.pycRscOsWt||}|id}|djo|d}n|ot||n|S(sSRun command with arguments. Wait for command to complete. If the exit code was zero then return, otherwise raise CalledProcessError. The CalledProcessError object will have the return code in the returncode attribute. The arguments are the same as for the Popen constructor. Example: check_call(["ls", "-l"]) targsiN(RtgetR R(R%R&tretcodeR((ssubprocess.pycRs  cCs\g}t}x@|D]8}g}|o|idnd|jpd|jp |dj}|o|idnx|D]}|djo|i|q||djo2|idt|dg}|idq||o|i|g}n|i|q|W|o|i|n|o|i||idqqWdi|S(s Translate a sequence of arguments into a command line string, using the same rules as the MS C runtime: 1) Arguments are delimited by white space, which is either a space or a tab. 2) A string surrounded by double quotation marks is interpreted as a single argument, regardless of white space contained within. A quoted string can be embedded in an argument. 3) A double quotation mark preceded by a backslash is interpreted as a literal double quotation mark. 4) Backslashes are interpreted literally, unless they immediately precede a double quotation mark. 5) If backslashes immediately precede a double quotation mark, every pair of backslashes is interpreted as a literal backslash. If the number of backslashes is odd, the last backslash escapes the next double quotation mark as described in rule 3. t s tt"s\is\"(tFalsetappendtlentextendtjoin(tseqtresultt needquotetargtbs_buftc((ssubprocess.pyct list2cmdlines8&     cBseZddddddeeddeddd ZdZedZddZe oOdZ dZ dZ dZ dd Zd Zd Zd ZnLd Z dZdZdZ dZddZdZdZRS(icCstt|_t|ttfptdnto8|d j ot dn|ot dqn;| d j ot dn|djot dnd |_ d |_ d |_ d |_ d |_| |_|i|||\}}}}}}|i||||| | | | || ||||||to|d jo$|d j oti|d }n|d jo$|d j oti|d }n|d jo$|d j oti|d }qn|oti|d||_ n|o?| oti|d||_ qMti|d ||_ n|o?| oti|d||_ qti|d ||_ nd S( sCreate new Popen instance.sbufsize must be an integers0preexec_fn is not supported on Windows platformss/close_fds is not supported on Windows platformss2startupinfo is only supported on Windows platformsis4creationflags is only supported on Windows platformstwbtrUtrbN(R#R-t_child_createdt isinstancetinttlongt TypeErrort mswindowsR R!tstdintstdouttstderrtpidRtuniversal_newlinest _get_handlest_execute_childtostclosetfdopen(RR'tbufsizet executableRBRCRDt preexec_fnt close_fdstshelltcwdtenvRFt startupinfot creationflagstp2creadtp2cwritetc2preadtc2pwriteterrreadterrwrite((ssubprocess.pycRs\          '        cCs(|idd}|idd}|S(Ns s s (treplace(Rtdata((ssubprocess.pyct_translate_newlinesrscCsW|ipdSn|id|i|idjotdj oti|ndS(NR(R<RRRR RR.(RR((ssubprocess.pyct__del__xs  cCs|i|i|igiddjod}d}|io,|o|ii|n|iin;|io|ii}n|io|ii}n|i||fSn|i |S(sfInteract with process: Send data to stdin. Read data from stdout and stderr, until end-of-file is reached. Wait for process to terminate. The optional input argument should be a string to be sent to the child process, or None, if no data should be sent to the child. communicate() returns a tuple (stdout, stderr).iN( RBRCRDtcountR twriteRJtreadR$t _communicate(RtinputRCRD((ssubprocess.pyct communicates (    c Cs|djo"|djo|djodSnd\}}d\}}d\}} |djott}n|dj on|djp |tjo7tdd\}}|i}ti|d}n9t|t oti |}nti |i }|i |}|djott }n|dj on|djp |tjo7tdd\}}|i}ti|d}n9t|t oti |}nti |i }|i |}|djott} n| dj on|djp |tjo7tdd\}} |i}ti|d}nP|tjo |} n9t|t oti |} nti |i } |i | } |||||| fS(s|Construct and return tupel with IO objects: p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite iN(NNNNNN(NN(NN(NN(R t GetStdHandletSTD_INPUT_HANDLERt CreatePipetDetachtmsvcrttopen_osfhandleR=R>t get_osfhandletfilenot_make_inheritabletSTD_OUTPUT_HANDLEtSTD_ERROR_HANDLER( RRBRCRDRURVRWRXRYRZ((ssubprocess.pycRGs\'              cCstt|tddtS(s2Return a duplicate of handle, which is inheritableii(tDuplicateHandletGetCurrentProcesstDUPLICATE_SAME_ACCESS(Rthandle((ssubprocess.pycRms  cCstiitiitdd}tii|pKtiitiitid}tii|ptdqn|S(s,Find and return absolut path to w9xpopen.exeis w9xpopen.exesZCannot locate w9xpopen.exe, which is needed for Popen to work with your shell or platform.( RItpathR1tdirnametGetModuleFileNametexistsRt exec_prefixt RuntimeError(Rtw9xpopen((ssubprocess.pyct_find_w9xpopens  c Cst|tipt|}n|djo t}nd| ||fjo.|itO_| |_||_ ||_ n| o|it O_t |_ tiidd}|d|}tdjptii|idjo*|i}d||f}| tO} q ny4t||ddd| ||| \}}}}Wn'tij o}t|inXt|_||_||_|i | dj o| i n|dj o|i n|dj o|i ndS( s$Execute program (MS Windows version)tCOMSPECscmd.exes /c ls command.coms"%s" %siN(!R=ttypest StringTypesR8R R R tSTARTF_USESTDHANDLESRRRtSTARTF_USESHOWWINDOWtSW_HIDERRItenvironR(t GetVersionRttbasenametlowerR{tCREATE_NEW_CONSOLEt CreateProcessRRt WindowsErrorR'tTrueR<t_handleREtClose(RR'RMRNRORQRRRFRSRTRPRURVRWRXRYRZtcomspecRzthpthtREttidte((ssubprocess.pycRHsN               cCsJ|idjo3t|idtjot|i|_qCn|iS(sQCheck if child process has terminated. Returns returncode attribute.iN(RR tWaitForSingleObjectRt WAIT_OBJECT_0tGetExitCodeProcess(RR((ssubprocess.pycRLscCs?|idjo(t|it}t|i|_n|iS(sOWait for child process to terminate. Returns returncode attribute.N(RR RRtINFINITER(Rtobj((ssubprocess.pycR$UscCs|i|idS(N(R.Ra(Rtfhtbuffer((ssubprocess.pyct _readerthread^scCsd}d}|ioEg}tid|id|i|f}|it|in|ioEg}tid|id|i|f}|it|in|i o2|dj o|i i |n|i i n|io|i n|io|i n|dj o|d}n|dj o|d}n|i oHttdo8|o|i|}n|o|i|}qn|i||fS(NttargetR'itnewlines(R RCt threadingtThreadRt setDaemonRtstartRDRBR`RJR1RFthasattrtfileR]R$(RRcRCRDt stdout_threadt stderr_thread((ssubprocess.pycRbbsB           c Cs_d\}}d\}}d\}} |djonJ|tjoti\}}n't|to |}n |i}|djonJ|tjoti\}}n't|to |}n |i}|djona|tjoti\}} n>|tjo |} n't|to |} n |i} |||||| fS(s|Construct and return tupel with IO objects: p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite N(NN(NN(NN(R RRItpipeR=R>RlR( RRBRCRDRURVRWRXRYRZ((ssubprocess.pycRGs:                 cCs\y ti}Wntj o d}nXti|ti}ti|ti||BdS(Ni(tfcntlt FD_CLOEXECtAttributeErrortF_GETFDtF_SETFD(Rtfdt cloexec_flagtold((ssubprocess.pyct_set_cloexec_flags   cCsMxFtdtD]5}||joqnyti|WqqXqWdS(Ni(txrangetMAXFDRIRJ(Rtbutti((ssubprocess.pyct _close_fdss c Cst|tio |g}n t|}| oddg|}n|d jo|d}nti\}}|i|ti }ti yti |_ Wn|oti nnXt|_|i djoy| oti| n| oti| n|oti|nti|| oti| dn|oti|dn|oti|dn| o| d joti| n|o$|| dfjoti|n|o'|| |dfjoti|n|o|id|n|d j oti|n|ot|n|d joti||nti|||Wn\ti\}}}ti|||}di||_ti|ti|nXti dn|oti nti|| o| oti| n|o| oti|n|o|oti|nti!|d }ti||djo,ti"|i dti#|}|nd S( sExecute program (POSIX version)s/bin/shs-ciiiRR+iiN(i($R=R}R~tlistR RIRRtgct isenabledtdisabletforkREtenableRR<RJtdup2RtchdirtapplytexecvptexecvpeRtexc_infot tracebacktformat_exceptionR1tchild_tracebackR`tpickletdumpst_exitRatwaitpidtloads(RR'RMRNRORQRRRFRSRTRPRURVRWRXRYRZt errpipe_readt errpipe_writetgc_was_enabledtexc_typet exc_valuettbt exc_linesR\tchild_exception((ssubprocess.pycRHs               cCs]ti|oti| |_n3ti|oti||_n tddS(NsUnknown child exit status!(RIt WIFSIGNALEDtWTERMSIGRt WIFEXITEDt WEXITSTATUSRy(Rtsts((ssubprocess.pyct_handle_exitstatusFs cCs|idjozyCti|iti\}}||ijo|i|nWqtij o!|dj o ||_qqXn|iS(sQCheck if child process has terminated. Returns returncode attribute.N(RR RIRREtWNOHANGRR(RRRER((ssubprocess.pycRPs cCsC|idjo,ti|id\}}|i|n|iS(sOWait for child process to terminate. Returns returncode attribute.iN(RR RIRRER(RRER((ssubprocess.pycR$^sc Csg}g}d}d}|io9|ii|o|i|iq[|iin|io|i|ig}n|io|i|ig}nd}x~|p|ooti||g\}}} |i|joiti |ii t ||d} || 7}|t |jo!|ii|i |iqQn|i|joZti|ii d} | djo!|ii|i |in|i| n|i|joZti|ii d} | djo!|ii|i |in|i| qqW|dj odi|}n|dj odi|}n|ioHttdo8|o|i|}n|o|i|}qn|i||fS(NiiiR+R(R RBtflushR.RJRCRDtselectRIR`RlRR/R RaR1RFRRR]R$( RRctread_sett write_setRCRDt input_offsettrlisttwlisttxlistt bytes_writtenR\((ssubprocess.pycRbgs`      '         N(RRR R-RR]RR^RdRARGRmR{RHRR$RRbRRR(((ssubprocess.pycRs2   W   B   P  2 - q  cCs.tdgdtid}dGH|GHtidjo&tdgdd}|indGHtd gdt}td d gd |idt}t|idGHHd GHytdgiGHWnJtj o>}|i t i jodGHdGH|i GHq*dG|i GHnXt i dIJdS(NtpsRCis Process list:tidRNcSs tidS(id(RItsetuid(((ssubprocess.pyctssLooking for 'hda'...tdmesgtgrepthdaRBsTrying a weird file...s/this/path/does/not/exists'The file didn't exist. I thought so...sChild traceback:tErrorsGosh. No error.(RRRdRItgetuidR$RCtreprtOSErrorterrnotENOENTRRRD(tplisttptp1tp2R((ssubprocess.pyct _demo_posixs*! cCsldGHtddtdt}tdd|idt}t|idGHdGHtd }|idS( Ns%Looking for 'PROMPT' in set output...tsetRCRPs find "PROMPT"RBisExecuting calc...tcalc(RRRRCRRdR$(RRR((ssubprocess.pyct _demo_windowss t__main__(%R RtplatformRARIR}RRt ExceptionRRRit _subprocessR RRRRRt__all__tsysconfRR-t NameErrorRRR#RRRRR8tobjectRRRR(((ssubprocess.pycsasV                  D )   PK8 s7s7 tempfile.pyc NֱGc@sdZddddddddd g Zd d kZd d kZd d klZei d jo"d d k i Z d d k iZnyd d kZWnej odZn XdZyd d kZWnej od d kZnXeiZeieiBeiBZeedoeeiOZneedoeeiOZneZ eedoe ei!OZ needo ei"Z"ndZ"dZ#d a%eZ&eedo ei'Z(n'eedo ei)Z(n dZ(dZ*dd,dYZ+dZ,dZ-d a.dZ/dZ0dZ1d a%d Z2d!e#d e3d"Z4d!e#d d#Z5d!e#d d$Z6d%d-d&YZ7d'd d!e#d d(Z8ei d)jpei9i:d*jo e8Z;nd'd d!e#d d+Z;d S(.sTemporary files. This module provides generic, low- and high-level interfaces for creating temporary files and directories. The interfaces listed as "safe" just below can be used without fear of race conditions. Those listed as "unsafe" cannot, and are provided for backward compatibility only. This module also provides some data items to the user: TMP_MAX - maximum number of names that will be tried before giving up. template - the default prefix for all temporary names. You may change this to control the default prefix. tempdir - If this is set to a string before the first use of any routine from this module, it will be considered as another candidate location to store temporary files. tNamedTemporaryFilet TemporaryFiletmkstemptmkdtemptmktemptTMP_MAXt gettempprefixttempdirt gettempdiriN(tRandomtmaccCsdS(N((tfd((s tempfile.pyct _set_cloexec*scCsYyti|tid}Wntj on%X|tiO}ti|ti|dS(Ni(t_fcntltfcntltF_GETFDtIOErrort FD_CLOEXECtF_SETFD(R tflags((s tempfile.pycR -s  t O_NOINHERITt O_NOFOLLOWtO_BINARYi'ttmptlstattstatcCs=yt|}Wntj otinX|idS(N(topenRt_osterrortclose(tfntf((s tempfile.pyct_stat\s cCs3yt|Wntij o tSnXtSdS(N(R RRtFalsetTrue(R((s tempfile.pyct_existscs  t_RandomNameSequencecBs7eZdZdddZdZdZdZRS(s*An instance of _RandomNameSequence generates an endless sequence of unpredictable strings which can safely be incorporated into file names. Each string is six characters long. Multiple threads can safely use the same instance at the same time. _RandomNameSequence is an iterator.tabcdefghijklmnopqrstuvwxyztABCDEFGHIJKLMNOPQRSTUVWXYZs 0123456789-_cCs+t|_t|_tii|_dS(N(t_allocate_locktmutext_RandomtrngRtpathtnormcase(tself((s tempfile.pyct__init__ws  cCs|S(N((R-((s tempfile.pyct__iter__|scCsw|i}|i}|ii}|iz+g}dD]}|||q6~}Wd|iX|idi|S(Nt123456t(R(t charactersR*tchoicetacquiretreleaseR,tjoin(R-tmtctchooset_[1]tdummytletters((s tempfile.pyctnexts    + (t__name__t __module__t__doc__R2R.R/R=(((s tempfile.pycR$ks   c Cskg}x5dD]-}ti|}|o|i|q q WtidjoUy8tititid}|i }|i|Wq!ti j oq!Xntidjo+tid}|o|i|q!nDtidjo|i d d d d gn|i d ddgy|iti Wn,t ti fj o|itinX|S(s[Generate a list of candidate temporary directories which _get_default_tempdir will try.tTMPDIRtTEMPtTMPR itriscoss Wimp$ScrapDirtntsc:\tempsc:\tmps\temps\tmps/tmps/var/tmps/usr/tmp(sTMPDIRsTEMPsTMP(Rtgetenvtappendtnamet_Foldert FSFindFoldert_Folderst kOnSystemDisktkTemporaryFolderTypet as_pathnameRtextendtgetcwdtAttributeErrortcurdir(tdirlisttenvnametdirnametfsr((s tempfile.pyct_candidate_tempdir_lists4   c Cs=t}t}t}x|D]}|tijo"tiitii|}nxtdD]}|i }tii ||}yYti ||d}ti |d}|i d|iti|~~|SWqdttfj o"} | dtijoPqqdXqdWqWttid|fdS(sqCalculate the default directory to use for temporary files. This routine should be called exactly once. We determine whether or not a candidate temp dir is usable by trying to create and write to a file in that directory. If this is successful, the test file is deleted. To prevent denial of service, the name of the test file must be randomized.iditwtblatis)No usable temporary directory found in %sN(R$RWt_text_openflagsRRRR+R,tabspathtxrangeR=R6RtfdopentwriteRtunlinktOSErrorRt_errnotEEXISTtENOENT( tnamerRSRtdirtseqRHtfilenameR tfpte((s tempfile.pyct_get_default_tempdirs2  "       cCsKtdjo:tiztdjo tanWdtiXntS(s7Common setup sequence for all user-callable interfaces.N(t_name_sequencetNonet _once_lockR4R$R5(((s tempfile.pyct_get_candidate_namess   c Cst}xttD]}|i}tii||||}y9ti||d}t||tii |fSWqt j o&} | i t i joqnqXqWtt i dfdS(s>Code common to mkstemp, TemporaryFile, and NamedTemporaryFile.is#No usable temporary file name foundN(RnR\RR=RR+R6RR R[R`terrnoRaRbR( RetpretsufRtnamesRfRHtfileR Ri((s tempfile.pyct_mkstemp_inners     cCstS(sAccessor for tempdir.template.(ttemplate(((s tempfile.pycRscCsKtdjo:tiztdjo tanWdtiXntS(sAccessor for tempdir.tempdir.N(RRlRmR4RjR5(((s tempfile.pycRs   R1cCsD|djo t}n|o t}nt}t||||S(sVmkstemp([suffix, [prefix, [dir, [text]]]]) User-callable function to create and return a unique temporary file. The return value is a pair (fd, name) where fd is the file descriptor returned by os.open, and name is the filename. If 'suffix' is specified, the file name will end with that suffix, otherwise there will be no suffix. If 'prefix' is specified, the file name will begin with that prefix, otherwise a default prefix is used. If 'dir' is specified, the file will be created in that directory, otherwise a default directory is used. If 'text' is specified and true, the file is opened in text mode. Else (the default) the file is opened in binary mode. On some operating systems, this makes no difference. The file is readable and writable only by the creating user ID. If the operating system uses permission bits to indicate whether a file is executable, the file is executable by no one. The file descriptor is not inherited by children of this process. Caller is responsible for deleting the file when done with it. N(RlRRZt_bin_openflagsRt(tsuffixtprefixRettextR((s tempfile.pycR s    cCs|djo t}nt}xttD]|}|i}tii||||}yti |d|SWq0t j o&}|i t i joq0nq0Xq0Wtt i dfdS(smkdtemp([suffix, [prefix, [dir]]]) User-callable function to create and return a unique temporary directory. The return value is the pathname of the directory. Arguments are as for mkstemp, except that the 'text' argument is not accepted. The directory is readable, writable, and searchable only by the creating user. Caller is responsible for deleting the directory when done with it. is(No usable temporary directory name foundN(RlRRnR\RR=RR+R6tmkdirR`RoRaRbR(RwRxReRrRfRHRsRi((s tempfile.pycR1s      cCs|djo t}nt}xRttD]D}|i}tii||||}t |p|Sq0q0Wt t i dfdS(smktemp([suffix, [prefix, [dir]]]) User-callable function to return a unique temporary file name. The file is not created. Arguments are as for mkstemp, except that the 'text' argument is not accepted. This function is unsafe and should not be used. The file name refers to a file that did not exist at some point, but by the time you get around to creating it, someone else may have beaten you to the punch. s"No usable temporary filename foundN( RlRRnR\RR=RR+R6R#RRaRb(RwRxReRrRfRHRs((s tempfile.pycRQs       t_TemporaryFileWrappercBsaeZdZdZdZdZeidjo(eiZdZ dZ dZ nRS(sTemporary file wrapper This class provides a wrapper around files opened for temporary use. In particular, it seeks to automatically remove the file when it is no longer needed. cCs||_||_t|_dS(N(RsRHR!t close_called(R-RsRH((s tempfile.pycR.ws  cCsM|id}t||}t|tdjot|||n|S(NRsi(t__dict__tgetattrttypetsetattr(R-RHRsta((s tempfile.pyct __getattr__|s  cCs|ii|S(N(Rst __enter__(R-((s tempfile.pycRs REcCs8|ip*t|_|ii|i|indS(N(R|R"RsRR_RH(R-((s tempfile.pycRs   cCs|idS(N(R(R-((s tempfile.pyct__del__scCs&|ii|||}|i|S(N(Rst__exit__R(R-texctvaluettbtresult((s tempfile.pycRs ( R>R?R@R.RRRRHR_RRR(((s tempfile.pycR{os     sw+bc Cs|djo t}nd|jo t}nt}tidjo|tiO}nt||||\}}ti|||}t ||S(sCreate and return a temporary file. Arguments: 'prefix', 'suffix', 'dir' -- as for mkstemp. 'mode' -- the mode argument to os.fdopen (default "w+b"). 'bufsize' -- the buffer size argument to os.fdopen (default -1). The file is created as mkstemp() would do it. Returns an object with a file-like interface; the name of the file is accessible as file.name. The file will be automatically deleted when it is closed. tbREN( RlRRvRZRRHt O_TEMPORARYRtR]R{( tmodetbufsizeRwRxReRR RHRs((s tempfile.pycRs    tposixtcygwincCs|djo t}nd|jo t}nt}t||||\}}y$ti|ti|||SWnti|nXdS(sCreate and return a temporary file. Arguments: 'prefix', 'suffix', 'dir' -- as for mkstemp. 'mode' -- the mode argument to os.fdopen (default "w+b"). 'bufsize' -- the buffer size argument to os.fdopen (default -1). The file is created as mkstemp() would do it. Returns an object with a file-like interface. The file has no name, and will cease to exist when it is closed. RN( RlRRvRZRtRR_R]R(RRRwRxReRR RH((s tempfile.pycRs      (((<R@t__all__tosRRoRatrandomR R)RHt Carbon.FoldertFolderRItCarbon.FolderstFoldersRKRR t ImportErrorR tthreadt_threadt dummy_threadt allocate_lockR'tO_RDWRtO_CREATtO_EXCLRZthasattrRRRvRRRuRlRRmRR RR#R$RWRjRkRnRtRRR!RRRR{RtsystplatformR(((s tempfile.pycssx           ! $ #    & 9 #  PK8$)) textwrap.pyc XDc@sdZdZddkZddkZyeefWn%ej oddf\ZZnXdddgZd Zdfd YZ d d Z d d Z ei dei Zei dei ZdZedjoedGHndS(sText wrapping and filling. s8$Id: textwrap.py 46863 2006-06-11 19:42:51Z tim.peters $iNiit TextWrappertwraptfills c BseZdZeiedeeZhZe dZ x!e e eD]Z e ee string Munge whitespace in text: expand tabs and convert all other whitespace characters to spaces. Eg. " foo bar baz" becomes " foo bar baz". ( Rt expandtabsR t isinstancetstrt translatetwhitespace_transtunicodetunicode_whitespace_trans(R ttext((s textwrap.pyct_munge_whitespacers  cCs%|ii|}td|}|S(s_split(text : string) -> [string] Split the text to wrap into indivisible chunks. Chunks are not quite the same as words; see wrap_chunks() for full details. As an example, the text Look, goof-ball -- use the -b option! breaks into the following chunks: 'Look,', ' ', 'goof-', 'ball', ' ', '--', ' ', 'use', ' ', 'the', ' ', '-b', ' ', 'option!' N(t wordsep_retsplittfiltertNone(R Rtchunks((s textwrap.pyct_splits cCsd}|i}xk|t|djoS||ddjo0|i||od||d<|d7}q|d7}qWdS(sf_fix_sentence_endings(chunks : [string]) Correct for sentence endings buried in 'chunks'. Eg. when the original text contains "... foo. Bar ...", munge_whitespace() and split() will convert that to [..., "foo.", " ", "Bar", ...] which has one too few spaces; this method simply changes the one space to two. iiRs iN(tsentence_end_retlentsearch(R Rtitpat((s textwrap.pyct_fix_sentence_endingss  )cCsjt||d}|io+|i|d| |d||d [string] Wrap a sequence of text chunks and return a list of lines of length 'self.width' or less. (If 'break_long_words' is false, some lines may be longer than this.) Chunks correspond roughly to words and the whitespace between them: each chunk is indivisible (modulo 'break_long_words'), but a line break can come between any two chunks. Chunks should not have internal whitespace; ie. a chunk is either all whitespace or a "word". Whitespace chunks will be removed from the beginning and end of lines, but apart from that whitespace is preserved. isinvalid width %r (must be > 0)iR( Rt ValueErrortreverseRRRtstripR$R%R*tjoin(R RtlinesR'R(tindentRtl((s textwrap.pyct _wrap_chunkss8      #cCsF|i|}|i|}|io|i|n|i|S(s^wrap(text : string) -> [string] Reformat the single paragraph in 'text' so it fits in lines of no more than 'self.width' columns, and return a list of wrapped lines. Tabs in 'text' are expanded with string.expandtabs(), and all other whitespace characters (including newline) are converted to space. (RRR R"R2(R RR((s textwrap.pycR s  cCsdi|i|S(sfill(text : string) -> string Reformat the single paragraph in 'text' to fit in lines of no more than 'self.width' columns, and return a new string containing the entire wrapped paragraph. s (R.R(R R((s textwrap.pycRs(t__name__t __module__t__doc__tstringt maketranst _whitespaceRRRtordtuspacetmaptxtretcompileRt lowercaseRtTruetFalseR RRR"R*R2RR(((s textwrap.pycR s2"         I iFcKstd||}|i|S(sWrap a single paragraph of text, returning a list of wrapped lines. Reformat the single paragraph in 'text' so it fits in lines of no more than 'width' columns, and return a list of wrapped lines. By default, tabs in 'text' are expanded with string.expandtabs(), and all other whitespace characters (including newline) are converted to space. See TextWrapper class for available keyword args to customize wrapping behaviour. R(RR(RRtkwargstw((s textwrap.pycR$s cKstd||}|i|S(sFill a single paragraph of text, returning a new string. Reformat the single paragraph in 'text' to fit in lines of no more than 'width' columns, and return a new string containing the entire wrapped paragraph. As with wrap(), tabs are expanded and other whitespace characters converted to space. See TextWrapper class for available keyword args to customize wrapping behaviour. R(RR(RRRBRC((s textwrap.pycR1s s^[ ]+$s(^[ ]*)(?:[^ ])cCsd}tid|}ti|}xZ|D]R}|djo |}q.|i|oq.|i|o |}q.d}Pq.WdoQ|oJxG|idD]2}| p$|i|ptd||fqWn|otid|d|}n|S(s9Remove any common leading whitespace from every line in `text`. This can be used to make triple-quoted strings line up with the left edge of the display, while still presenting them in the source code in indented form. Note that tabs and spaces are both treated as whitespace, but they are not equal: the lines " hello" and " hello" are considered to have no common leading whitespace. (This behaviour is new in Python 2.5; older versions of this module incorrectly expanded tabs before searching for common leading whitespace.) Ris sline = %r, margin = %rs(?m)^N( Rt_whitespace_only_retsubt_leading_whitespace_retfindallt startswithRtAssertionErrorR=(RtmargintindentsR0tline((s textwrap.pyctdedentCs*   t__main__s Hello there. This is indented.(R5t __revision__R6R=R@RAt NameErrort__all__R8RRRR>t MULTILINERDRFRMR3(((s textwrap.pycss"   0 PK8y]] threading.pyc NֱGc@sdZddkZyddkZWn ej oeie=nXddklZl Z ddk l Z ddklZdddd d d d d dddddddgZeiZeiZeiZeiZ[eZdefdYZdadadZ dZ!eZ"dZ#defdYZ$dZ%defdYZ&dZ'd efd!YZ(d"Z)d#e(fd$YZ*d%Z+d&efd'YZ,d(a-d)d*Z.eZ/hZ0hZ1defd+YZ2d,Z3d-e2fd.YZ4d/e2fd0YZ5d1Z6d2e2fd3YZ7d4Z8d5Z9d6Z:dd7kl;Z;e5i<Z=ydd8kl>Z?Wn#ej odd9k@l?Z?nXd:ZAed;jo eAndS(<s;Thread module emulating a subset of Java's threading model.iN(ttimetsleep(t format_exc(tdequet activeCountt Conditiont currentThreadt enumeratetEventtLocktRLockt SemaphoretBoundedSemaphoretThreadtTimert setprofiletsettracetlocalt stack_sizet_VerbosecBseZddZdZRS(cCs$|djo t}n||_dS(N(tNonet_VERBOSEt_Verbose__verbose(tselftverbose((s threading.pyct__init__'s  cGsE|io7||}dti|f}tii|ndS(Ns%s: %s (RRtgetNamet_syststderrtwrite(Rtformattargs((s threading.pyct_note,s   N(t__name__t __module__RRR (((s threading.pycR%s cCs |adS(N(t _profile_hook(tfunc((s threading.pycR@scCs |adS(N(t _trace_hook(R$((s threading.pycRDscOs t||S(N(t_RLock(Rtkwargs((s threading.pycR LsR&cBs\eZd dZdZddZeZdZdZdZ dZ dZ RS( cCs2ti||t|_d|_d|_dS(Ni(RRt_allocate_lockt _RLock__blockRt _RLock__ownert _RLock__count(RR((s threading.pycRQs  cCs0|i}d|ii|o |i|ifS(Ns <%s(%s, %d)>(R*t __class__R!RR+(Rtowner((s threading.pyct__repr__Ws   icCst}|i|jo+|id|_|id||dSn|ii|}|o)||_d|_|id||n|id|||S(Nis!%s.acquire(%s): recursive successs%s.acquire(%s): initial successs%s.acquire(%s): failure(RR*R+R R)tacquire(Rtblockingtmetrc((s threading.pycR/^s   cCs||itj otdn|id|_}|p*d|_|ii|id|n|id|dS(Nscannot release un-aquired lockis%s.release(): final releases%s.release(): non-final release(R*Rt RuntimeErrorR+RR)treleaseR (Rtcount((s threading.pycR4rs  cCs|idS(N(R4(Rtttvttb((s threading.pyct__exit__scCs?|\}}|ii||_||_|id|dS(Ns%s._acquire_restore()(R)R/R+R*R (Rt.1R5R-((s threading.pyct_acquire_restores     cCsK|id||i}d|_|i}d|_|ii||fS(Ns%s._release_save()i(R R+R*RR)R4(RR5R-((s threading.pyct _release_saves     cCs|itjS(N(R*R(R((s threading.pyct _is_ownedsN( R!R"RRR.R/t __enter__R4R9R;R<R=(((s threading.pycR&Os      cOs t||S(N(t _Condition(RR'((s threading.pycRsR?cBsneZd d dZdZdZdZdZdZdZ d dZ dd Z d Z RS( c Csti|||djo t}n||_|i|_|i|_y|i|_Wntj onXy|i |_ Wntj onXy|i |_ Wntj onXg|_ dS(N( RRRR t_Condition__lockR/R4R<tAttributeErrorR;R=t_Condition__waiters(RtlockR((s threading.pycRs&     cCs |iiS(N(R@R>(R((s threading.pycR>scGs|ii|S(N(R@R9(RR((s threading.pycR9scCsd|it|ifS(Ns(R@tlenRB(R((s threading.pycR.scCs|iidS(N(R@R4(R((s threading.pycR<scCs|iidS(N(R@R/(Rtx((s threading.pycR;scCs0|iido|iitSntSdS(Ni(R@R/R4tFalsetTrue(R((s threading.pycR=s c Csg|iptdnt}|i|ii||i}z|djo|i|id|nt |}d}xft o^|id}|oPn|t }|djoPnt |d|d}t |qW|pA|id||y|ii |WqQtj oqQXn|id||Wd|i|XdS( Nscannot wait on un-aquired locks%s.wait(): got itgMb@?iig?s%s.wait(%s): timed outs%s.wait(%s): got it(R=R3R(R/RBtappendR<RR t_timeRGtmint_sleeptremovet ValueErrorR;(Rttimeouttwaitert saved_statetendtimetdelaytgotitt remaining((s threading.pyctwaits<          icCs|iptdn|i}|| }|p|id|dSn|id|||djodpdx?|D]7}|iy|i|Wqtj oqXqWdS(Ns cannot notify on un-aquired locks%s.notify(): no waiterss"%s.notify(): notifying %d waiter%sitst(R=R3RBR R4RLRM(RtnRBtwaitersRO((s threading.pyctnotifys     cCs|it|idS(N(RZRDRB(R((s threading.pyct notifyAll sN( R!R"RRR>R9R.R<R;R=RURZR[(((s threading.pycR?s      * cOs t||S(N(t _Semaphore(RR'((s threading.pycR sR\cBs;eZdddZddZeZdZdZRS(icCsL|djotdnti||tt|_||_dS(Nis$semaphore initial value must be >= 0(RMRRRR t_Semaphore__condt_Semaphore__value(RtvalueR((s threading.pycRs  cCst}|iixs|idjo6|pPn|id|||i|iiqW|id|_|id||it}|ii|S(Nis)%s.acquire(%s): blocked waiting, value=%sis%s.acquire: success, value=%s(RFR]R/R^R RURGR4(RR0R2((s threading.pycR/s     cCsQ|ii|id|_|id||i|ii|iidS(Nis%s.release: success, value=%s(R]R/R^R RZR4(R((s threading.pycR42s     cCs|idS(N(R4(RR6R7R8((s threading.pycR9;sN(R!R"RRR/R>R4R9(((s threading.pycR\s   cOs t||S(N(t_BoundedSemaphore(RR'((s threading.pycR ?sR`cBs&eZdZdddZdZRS(s6Semaphore that checks that # releases is <= # acquiresicCs ti|||||_dS(N(R\Rt_initial_value(RR_R((s threading.pycRDscCs-|i|ijo tdnti|S(Ns!Semaphore released too many times(R^RaRMR\R4(R((s threading.pycR4Hs N(R!R"t__doc__RRR4(((s threading.pycR`BscOs t||S(N(t_Event(RR'((s threading.pycRNsRccBs;eZddZdZdZdZddZRS(cCs/ti||tt|_t|_dS(N(RRRR t _Event__condRFt _Event__flag(RR((s threading.pycRUscCs|iS(N(Re(R((s threading.pyctisSetZscCs<|iizt|_|iiWd|iiXdS(N(RdR/RGReR[R4(R((s threading.pyctset]s   cCs/|iiz t|_Wd|iiXdS(N(RdR/RFReR4(R((s threading.pyctcleares  cCsD|iiz"|ip|ii|nWd|iiXdS(N(RdR/ReRUR4(RRN((s threading.pycRUls   N(R!R"RRRfRgRhRU(((s threading.pycRcQs     is Thread-%dcCstda|tS(Ni(t_counter(ttemplate((s threading.pyct_newnamevs cBseZeZeiZdddddddZdZ dZ dZ dZ dZ dZdZdZdd Zd Zd Zd Zd ZdZRS(cCs|djp tdti|||djo h}n||_t|pt|_||_||_ |i |_ t |_ t |_tt|_t|_ti|_dS(Ns#group argument must be None for now(RtAssertionErrorRRt_Thread__targettstrRkt _Thread__namet _Thread__argst_Thread__kwargst _set_daemont_Thread__daemonicRFt_Thread__startedt_Thread__stoppedRR t_Thread__blockRGt_Thread__initializedRRt_Thread__stderr(RtgroupttargettnameRR'R((s threading.pycRs        cCs tiS(N(RtisDaemon(R((s threading.pycRrscCst|ip tdd}|io d}n|io d}n|io|d}nd|ii|i|fS(Ns Thread.__init__() was not calledtinitialtstartedtstoppeds daemons <%s(%s, %s)>(RwRlRtRuRsR,R!Ro(Rtstatus((s threading.pycR.s     cCs|iptdn|iotdn|id|ti|t|(( RwR3RtR t_active_limbo_lockR/t_limboR4t_start_new_threadt_Thread__bootstrapRGRK(R((s threading.pyctstarts      cCs(|io|i|i|indS(N(RmRpRq(R((s threading.pyctruns cCs>y|iWn)|iotdjodSnnXdS(N(t_Thread__bootstrap_innerRsRR(R((s threading.pyct __bootstraps cCszt|_ti|tt(RRRRRRK(RRtcounter((s threading.pycR,s  (R!R"RR(((s threading.pycR%s tConsumerThreadcBseZdZdZRS(cSs)ti|dd||_||_dS(NR{tConsumer(R RRR5(RRR5((s threading.pycR7s cSs@x9|idjo(|ii}|GH|id|_qWdS(Nii(R5RR(RR((s threading.pycR<s (R!R"RR(((s threading.pycR5s iiis Producer-%digư>(RR trangeRRHRRKR( RRRtNPtQLtNItQtPtiR6tC((s threading.pyct_tests.      t__main__(BRbtsysRtthreadt ImportErrorRR!RRIRRKt tracebackRRt collectionsRt__all__tstart_new_threadRt allocate_lockR(t get_identRterrort ThreadErrorRFRtobjectRRR#R%RRR R R&RR?R R\R R`RRcRiRkRRRR RRRRRRRRRRt _shutdownRRt_threading_localR(((s threading.pycssr          J s -  $         R PK8o token.pyc d9Z?d:Z@d;ZAeBd<jo eAnd=S(>s!Token constants (from "token.h").iiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5icCs |tjS(N(t NT_OFFSET(tx((s token.pyct ISTERMINALLscCs |tjS(N(R(R((s token.pyct ISNONTERMINALOscCs |tjS(N(t ENDMARKER(R((s token.pyctISEOFRscCsddk}ddk}|id}|o |dpd}d}t|djo|d}nyt|}Wn<tj o0}|iidt||i dnX|i i d}|i |i d|i}h} xV|D]N} |i| } | o2| idd \} } t| } | | | s      6 PK8MgH?,?, tokenize.pyc oDc@sdZdZdZddkZddkZddkTddkZgZeeD]"Zeddjo eeqQqQ[dd d d d gZ [[e Z de e <e3d?<e2d@<e3dA<e2dB<e3dC<e2dD<e3dE<e2dF<e3dG<ddH<ddI<ddJ<ddKdcZ?ddZ@deZAeBdfjoTddkCZCeDeCiEd joe>eFeCiEd iGqe>eCiHiGndS(isTokenization help for Python programs. generate_tokens(readline) is a generator that breaks a stream of text into Python tokens. It accepts a readline-like method which is called repeatedly to get the next line of input (or "" for EOF). It generates 5-tuples with these members: the token type (see token.py) the token (a string) the starting (row, column) indices of the token (a 2-tuple of ints) the ending (row, column) indices of the token (a 2-tuple of ints) the original line (string) It is designed to match the working of the Python tokenizer exactly, except that it produces COMMENT tokens for comments and gives type OP for all operators Older entry points tokenize_loop(readline, tokeneater) tokenize(readline, tokeneater=printtoken) are the same, except instead of generating tokens, tokeneater is a callback function to which the 5 fields described above are passed as 5 arguments, each time a new token is found.sKa-Ping Yee s@GvR, ESR, Tim Peters, Thomas Wouters, Fred Drake, Skip MontanaroiN(t*it_tCOMMENTttokenizetgenerate_tokenstNLt untokenizeiicGsddi|dS(Nt(t|t)(tjoin(tchoices((s tokenize.pyctgroup,scGst|dS(NR(R (R ((s tokenize.pyctany-scGst|dS(Nt?(R (R ((s tokenize.pyctmaybe.ss[ \f\t]*s #[^\r\n]*s\\\r?\ns [a-zA-Z_]\w*s0[xX][\da-fA-F]*[lL]?s 0[0-7]*[lL]?s [1-9]\d*[lL]?s [eE][-+]?\d+s\d+\.\d*s\.\d+s\d+s\d+[jJ]s[jJ]s[^'\\]*(?:\\.[^'\\]*)*'s[^"\\]*(?:\\.[^"\\]*)*"s%[^'\\]*(?:(?:\\.|'(?!''))[^'\\]*)*'''s%[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""s [uU]?[rR]?'''s [uU]?[rR]?"""s&[uU]?[rR]?'[^\n'\\]*(?:\\.[^\n'\\]*)*'s&[uU]?[rR]?"[^\n"\\]*(?:\\.[^\n"\\]*)*"s\*\*=?s>>=?s<<=?s<>s!=s//=?s[+\-*/%&|^=<>]=?t~s[][(){}]s\r?\ns[:;.,`@]s%[uU]?[rR]?'[^\n'\\]*(?:\\.[^\n'\\]*)*t's%[uU]?[rR]?"[^\n"\\]*(?:\\.[^\n"\\]*)*t"s'''s"""sr'''sr"""su'''su"""sur'''sur"""sR'''sR"""sU'''sU"""suR'''suR"""sUr'''sUr"""sUR'''sUR"""trtRtutUsr'sr"sR'sR"su'su"sU'sU"sur'sur"sUr'sUr"suR'suR"sUR'sUR"it TokenErrorcBseZRS((t__name__t __module__(((s tokenize.pycRstStopTokenizingcBseZRS((RR(((s tokenize.pycRsc CsA|\}}|\}}d||||t|t|fGHdS(Ns%d,%d-%d,%d: %s %s(ttok_nametrepr( ttypettokent.2t.3tlinetsrowtscolterowtecol((s tokenize.pyct printtokenscCs+yt||Wntj onXdS(s: The tokenize() function accepts two parameters: one representing the input stream, and one providing an output mechanism for tokenize(). The first parameter, readline, must be a callable object which provides the same interface as the readline() method of built-in file objects. Each call to the function should return one line of input as a string. The second parameter, tokeneater, must also be a callable object. It is called once for each token, with five arguments, corresponding to the tuples generated by generate_tokens(). N(t tokenize_loopR(treadlinet tokeneater((s tokenize.pycRs cCs%xt|D]}||q WdS(N(R(R(R)t token_info((s tokenize.pycR's cCst}g}g}|i}x|D]}|d \}}|ttfjo|d7}n|tjo|i|q"ne|tjo|iq"nG|ttt fjo t }n'|o|o||dt}n||q"Wdi |S(sTransform tokens back into Python source code. Each element returned by the iterable must be a token sequence with at least two elements, a token number and token value. Round-trip invariant: # Output text will tokenize the back to the input t1 = [tok[:2] for tok in generate_tokens(f.readline)] newcode = untokenize(t1) readline = iter(newcode.splitlines(1)).next t2 = [tok[:2] for tokin generate_tokens(readline)] assert t1 == t2 it it( tFalsetappendtNAMEtNUMBERtINDENTtDEDENTtpoptNEWLINERRtTrueR (titerablet startlinetindentsttokst toks_appendttokttoknumttokval((s tokenize.pycRs,       c csd}}}tidd}}d\}}d}dg} x@y |} Wntj o d} nX|d}dt| } } |o| ptd| fn|i| }|oO|id} }t|| | | ||f|| fVd\}}d}qv|oY| ddjoH| d d jo7t || | |t| f|fVd}d}q@qv|| }|| }q@n|djo| o| pPnd}x~| | jop| | d jo|d}nD| | d jo|t dt }n| | d jo d}nP| d} qW| | joPn| | djoEt t f| | dj| | || f|t| f| fVq@n|| djo5| i |t| | |df|| f| fVnx|| djoZ|| jotdd|| | fn| d } td|| f|| f| fVqWn'| ptd|dffnd}x| | joti| | }|o|id\}}||f||f|}}} | ||!| |}}||jp|djo%|djot|||| fVqx|djo,|djot pt|||| fVqx|djot |||| fVqx|tjo~t|}|i| | }|o:|id} | || !}t|||| f| fVqB||f} | |}| }Pqx|tjp"|d tjp|d tjoy|ddjoP||f} t|pt|dp t|d}| |d}}| }PqBt|||| fVqx||jot|||| fVqx|djo d}qx|djo|d}n|djo|d}nt|||| fVqyt | | || f|| df| fV| d} qyWq@x2| dD]&}td|df|dfdfVqWtd|df|dfdfVdS(sS The generate_tokens() generator requires one argment, readline, which must be a callable object which provides the same interface as the readline() method of built-in file objects. Each call to the function should return one line of input as a string. Alternately, readline can be a callable function terminating with StopIteration: readline = open(myfile).next # Example of alternate readline The generator produces 5-tuples with these members: the token type; the token string; a 2-tuple (srow, scol) of ints specifying the row and column where the token begins in the source; a 2-tuple (erow, ecol) of ints specifying the row and column where the token ends in the source; and the line on which the token was found. The line passed is the logical line; continuation lines are included. iRt 0123456789R,isEOF in multi-line stringis\ is\ R+s s s# t#is3unindent does not match any outer indentation levels sEOF in multi-line statementt.s iis s\s([{s)]}N(R,i(R,i(tstringt ascii_letterstNonet StopIterationtlenRtmatchtendtSTRINGt ERRORTOKENttabsizeRRR.R1tIndentationErrorR2t pseudoprogtspanR0R4t triple_quotedtendprogst single_quotedR/tOPt ENDMARKER(R(tlnumtparenlevt continuedt namecharstnumcharstcontstrtneedconttcontlineR8R!tpostmaxtstrstarttendprogtendmatchRGtcolumnt pseudomatchtstarttsposteposRtinitialtindent((s tokenize.pycRs       )        (  )                   $t__main__(s'''s"""sr'''sr"""sR'''sR"""su'''su"""sU'''sU"""sur'''sur"""sUr'''sUr"""suR'''suR"""sUR'''sUR"""(RRsr'sr"sR'sR"su'su"sU'sU"sur'sur"sUr'sUr"suR'suR"sUR'sUR"(It__doc__t __author__t __credits__RAtreRt_[1]tdirtxt__all__tN_TOKENSRRRR R Rt WhitespacetCommenttIgnoretNamet Hexnumbert Octnumbert Decnumbert IntnumbertExponentt PointfloattExpfloatt Floatnumbert ImagnumbertNumbertSingletDoubletSingle3tDouble3tTripletStringtOperatortBrackettSpecialtFunnyt PlainTokentTokentContStrt PseudoExtrast PseudoTokentmaptcompilet tokenprogRLt single3progt double3progRCRORNttRPRJt ExceptionRRR&RR'RRRtsysREtargvtopenR(tstdin(((s tokenize.pycss  ?            '(&    (  PK8t>h+h+ traceback.pyc Ec@sBdZddkZddkZddkZddddddd d d d d dddgZdddZddZdZdddZ ddZ ddZ dddZ ddZ dZdZdZdddZddZddd Zdddd!Zddd"Zddd#Zd$ZdS(%s@Extract, format and print information about Python stack traces.iNt extract_stackt extract_tbtformat_exceptiontformat_exception_onlyt format_listt format_stackt format_tbt print_exct format_exctprint_exceptiont print_lastt print_stacktprint_tbt tb_linenots cCs|i||dS(N(twrite(tfiletstrt terminator((s traceback.pyct_print scCsw|djo ti}nxV|D]N\}}}}t|d|||f|ot|d|iq!q!WdS(syPrint the list of tuples as returned by extract_tb() or extract_stack() as a formatted stack trace to the given file.s File "%s", line %d, in %ss %sN(tNonetsyststderrRtstrip(textracted_listRtfilenametlinenotnametline((s traceback.pyct print_lists  cCsfg}xY|D]Q\}}}}d|||f}|o|d|i}n|i|q W|S(sFormat a list of traceback entry tuples for printing. Given a list of tuples as returned by extract_tb() or extract_stack(), return a list of strings ready for printing. Each string in the resulting list corresponds to the item with the same index in the argument list. Each string ends in a newline; the strings may contain internal newlines as well, for those items whose source text line is not None. s File "%s", line %d, in %s s %s (Rtappend(RtlistRRRRtitem((s traceback.pycRs c Cs"|djo ti}n|djo!ttdo ti}qHnd}x|dj o|djp ||jo|i}|i}|i}|i}|i }t |d|||ft i |t i |||i} | ot |d| in|i}|d}qQWdS(sPrint up to 'limit' stack trace entries from the traceback 'tb'. If 'limit' is omitted or None, all entries are printed. If 'file' is omitted or None, the output goes to sys.stderr; otherwise 'file' should be an open file or file-like object with a write() method. ttracebacklimitis File "%s", line %d, in %ss iN(RRRthasattrR!ttb_frameR tf_codet co_filenametco_nameRt linecachet checkcachetgetlinet f_globalsRttb_next( ttbtlimitRtntfRtcoRRR((s traceback.pycR .s*   '       cCstt||S(s6A shorthand for 'format_list(extract_stack(f, limit)).(RR(R,R-((s traceback.pycRJsc Cs|djo!ttdo ti}q.ng}d}x|dj o|djp ||jo|i}|i}|i}|i}|i}t i |t i |||i } | o| i } nd} |i|||| f|i}|d}q=W|S(sReturn list of up to limit pre-processed entries from traceback. This is useful for alternate formatting of stack traces. If 'limit' is omitted or None, all entries are extracted. A pre-processed stack trace entry is a quadruple (filename, line number, function name, text) representing the information that is usually printed for a stack trace. The text is a string with leading and trailing whitespace stripped; if the source is not available it is None. R!iiN(RR"RR!R#R R$R%R&R'R(R)R*RRR+( R,R-RR.R/RR0RRR((s traceback.pycRNs* '       cCs|djo ti}n|o!t|dt|||nt||}x"|d D]}t||dq\Wt||dddS(sPrint exception up to 'limit' stack trace entries from 'tb' to 'file'. This differs from print_tb() in the following ways: (1) if traceback is not None, it prints a header "Traceback (most recent call last):"; (2) it prints the exception type and value after the stack trace; (3) if type is SyntaxError and value has the appropriate format, it prints the line where the syntax error occurred with a caret on the next line indicating the approximate position of the error. s"Traceback (most recent call last):it RN(RRRRR R(tetypetvalueR,R-RtlinesR((s traceback.pycR ns    cCsD|o dg}|t||}ng}|t||}|S(szFormat a stack trace and the exception information. The arguments have the same meaning as the corresponding arguments to print_exception(). The return value is a list of strings, each ending in a newline and some containing internal newlines. When these lines are concatenated and printed, exactly the same text is printed as does print_exception(). s#Traceback (most recent call last): (RR(R2R3R,R-R((s traceback.pycRs  c Csst|tp3t|tip |djpt|tjot||gSn|i}t |t pt||gSng}y|\}\}}}}Wnt j onX|pd}|i d||f|dj ol|i d|i |dj o>|| i} d| D} |i ddi| n|}n|i t|||S(sFormat the exception part of a traceback. The arguments are the exception type and value such as given by sys.last_type and sys.last_value. The return value is a list of strings, each ending in a newline. Normally, the list contains a single string; however, for SyntaxError exceptions, it contains several lines that (when printed) display detailed information about where the syntax error occurred. The message indicating which exception occurred is always the last string in the list. ss File "%s", line %d s %s css-x&|]}|io|pdVqWdS(R1N(tisspace(t.0tc((s traceback.pycs s s %s^ RN(t isinstancet BaseExceptionttypest InstanceTypeRttypeRt_format_final_exc_linet__name__t issubclasst SyntaxErrort ExceptionRRtlstriptjoin( R2R3tstypeR4tmsgRRtoffsettbadlinet caretspace((s traceback.pycRs.      cCsCt|}|djp| od|}nd||f}|S(sGReturn a list of a single line -- normal case for format_exception_onlys%s s%s: %s N(t _some_strR(R2R3tvaluestrR((s traceback.pycR=s  cCs-yt|SWndt|iSnXdS(Ns(RR<R>(R3((s traceback.pycRIsc Cs_|djo ti}nz/ti\}}}t|||||Wdd}}}XdS(sShorthand for 'print_exception(sys.exc_type, sys.exc_value, sys.exc_traceback, limit, file)'. (In fact, it uses sys.exc_info() to retrieve the same information in a thread-safe way.)N(RRRtexc_infoR (R-RR2R3R,((s traceback.pycRs   c CsKz5ti\}}}dit||||SWdd}}}XdS(s%Like print_exc() but return a string.RN(RRKRCRR(R-R2R3R,((s traceback.pycRs cCs=|djo ti}nttititi||dS(snThis is a shorthand for 'print_exception(sys.last_type, sys.last_value, sys.last_traceback, limit, file)'.N(RRRR t last_typet last_valuetlast_traceback(R-R((s traceback.pycR s  cCsa|djo:y tWqGtj otidii}qGXntt|||dS(sPrint a stack trace from its invocation point. The optional 'f' argument can be used to specify an alternate stack frame at which to start. The optional 'limit' and 'file' arguments have the same meaning as for print_exception(). iN(RtZeroDivisionErrorRRKR#tf_backRR(R/R-R((s traceback.pycR s   cCsZ|djo:y tWqGtj otidii}qGXntt||S(s5Shorthand for 'format_list(extract_stack(f, limit))'.iN(RRORRKR#RPRR(R/R-((s traceback.pycRs   c CsP|djo:y tWqGtj otidii}qGXn|djo!ttdo ti}qung}d}x|dj o|djp ||jo|i}|i }|i }|i }t i |t i|||i}|o|i}nd}|i||||f|i}|d}qW|i|S(ssExtract the raw traceback from the current stack frame. The return value has the same format as for extract_tb(). The optional 'f' and 'limit' arguments have the same meaning as for print_stack(). Each item in the list is a quadruple (filename, line number, function name, text), and the entries are in order from oldest to newest stack frame. iR!iiN(RRORRKR#RPR"R!tf_linenoR$R%R&R'R(R)R*RRtreverse( R/R-RR.RR0RRR((s traceback.pycRs4   '       cCs|iS(sRCalculate correct line number of traceback given in tb. Obsolete in 2.3. (R (R,((s traceback.pycR 3s(t__doc__R'RR:t__all__RRRRR RRR RRR=RIRRR R RRR (((s traceback.pycss2           7    "PK8J<( ( types.pyc Dc@sdZddkZedZeZeZeZ e Z e Z eZy eZWnej onXeZyeZeefZWnej oefZnXeZeZeZeZZ dZ!ee!Z"edZ#yee!i$Z%Wne&j onXdZ'ee'Z(dd dYZ)ee)Z*ee)i+Z,e)Z-ee-Z.ee-i+Z/ee0Z1egi2Z3eeZ4e5Z6e7Z8y e9Wnae9j oUy/ei:dZ;ee;Z<ee;i=Z>Wne?j onXdZ;[;nXe@ZAeeBZCeeiDZEeeFZGyddkHZHWneIj on)XeeHiJiKZLeeHiJiMZN[H[[!['[)[-dS( sDefine names for all type symbols known in the standard interpreter. Types that are part of optional modules (e.g. array) are not listed. iNcCsdS(N((((s types.pyct_f*scCsdS(N(tNone(((s types.pyct,sccs dVdS(Ni((((s types.pyct_g3st_CcBseZdZRS(cCsdS(N((tself((s types.pyct_m8s(t__name__t __module__R(((s types.pycR7si((Ot__doc__tsysttypeRtNoneTypetTypeTypetobjectt ObjectTypetinttIntTypetlongtLongTypetfloatt FloatTypetboolt BooleanTypetcomplext ComplexTypet NameErrortstrt StringTypetunicodet UnicodeTypet StringTypestbuffert BufferTypettuplet TupleTypetlisttListTypetdicttDictTypetDictionaryTypeRt FunctionTypet LambdaTypet func_codetCodeTypet RuntimeErrorRt GeneratorTypeRt ClassTypeRtUnboundMethodTypet_xt InstanceTypet MethodTypetlentBuiltinFunctionTypetappendtBuiltinMethodTypet ModuleTypetfiletFileTypetxranget XRangeTypet TypeErrortexc_infottbt TracebackTypettb_framet FrameTypetAttributeErrortslicet SliceTypetEllipsist EllipsisTypet__dict__t DictProxyTypetNotImplementedtNotImplementedTypet_typest ImportErrortHelpertgettertGetSetDescriptorTypetmembertMemberDescriptorType(((s types.pycss                PK8!A7yxyx unittest.pyc Fc@sdZdZdZddd!ZddkZddkZddkZddkZddkZdd d d d d ddgZ e i dddgei d d+jod,\Z Z dZneZdZdZdd-dYZd d.dYZd d/dYZd efdYZd d0dYZeZddZedZdeed Zdeed!Zd"d1d#YZd$efd%YZ d d2d&YZ!d'd3d(YZ"e"Z#e$d)joe#d*dndS(4sw Python unit testing framework, based on Erich Gamma's JUnit and Kent Beck's Smalltalk testing framework. This module contains the core framework classes that form the basis of specific test cases and suites (TestCase, TestSuite etc.), and also a text-based utility class for running the tests and reporting the results (TextTestRunner). Simple usage: import unittest class IntegerArithmenticTestCase(unittest.TestCase): def testAdd(self): ## test method names begin 'test*' self.assertEquals((1 + 2), 3) self.assertEquals(0 + 1, 1) def testMultiply(self): self.assertEquals((0 * 10), 0) self.assertEquals((5 * 8), 40) if __name__ == '__main__': unittest.main() Further information is available in the bundled documentation, and from http://pyunit.sourceforge.net/ Copyright (c) 1999-2003 Steve Purcell This module is free software, and you may redistribute it and/or modify it under the same terms as Python itself, so long as this copyright message and disclaimer are retained in their original form. IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. s Steve Purcells stephen_purcell at yahoo dot coms#Revision: 1.63 $i iiNt TestResulttTestCaset TestSuitetTextTestRunnert TestLoadertFunctionTestCasetmaintdefaultTestLoadertgetTestCaseNamest makeSuitet findTestCasesiiicCsddk}t|ttfjoNxC|D];}|tjo ti}n|i||odSq,q,WdSn|i||SdS(Niii(t __builtin__ttypettupletlistttypest ClassTypet isinstance(tobjtclsinfoR tcls((s unittest.pycRHs   cCsd|i|ifS(Ns%s.%s(t __module__t__name__(R((s unittest.pyct _strclassZscBszeZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d ZRS( sHolder for test result information. Test results are automatically managed by the TestCase and TestSuite classes, and do not need to be explicitly manipulated by writers of tests. Each instance holds the total number of tests run, and collections of failures and errors that occurred among those test runs. The collections contain tuples of (testcase, exceptioninfo), where exceptioninfo is the formatted traceback of the error that occurred. cCs(g|_g|_d|_d|_dS(Ni(tfailuresterrorsttestsRunt shouldStop(tself((s unittest.pyct__init__js   cCs|id|_dS(s-Called when the given test is about to be runiN(R(Rttest((s unittest.pyct startTestpscCsdS(s'Called when the given test has been runN((RR((s unittest.pyctstopTesttscCs&|ii||i||fdS(smCalled when an error has occurred. 'err' is a tuple of values as returned by sys.exc_info(). N(Rtappendt_exc_info_to_string(RRterr((s unittest.pyctaddErrorxscCs&|ii||i||fdS(sdCalled when an error has occurred. 'err' is a tuple of values as returned by sys.exc_info().N(RR!R"(RRR#((s unittest.pyct addFailure~scCsdS(s-Called when a test has completed successfullyN((RR((s unittest.pyct addSuccessscCs-t|it|ijo djnS(s.Tells whether or not this result was a successi(tlenRR(R((s unittest.pyct wasSuccessfulscCs t|_dS(s*Indicates that the tests should be abortedN(tTrueR(R((s unittest.pyctstopscCs|\}}}x%|o|i|o |i}qW||ijo2|i|}diti||||Snditi|||S(s>Converts a sys.exc_info()-style tuple of values into a string.t(t_is_relevant_tb_levelttb_nexttfailureExceptiont_count_relevant_tb_levelstjoint tracebacktformat_exception(RR#Rtexctypetvaluettbtlength((s unittest.pycR"s#cCs|iiidS(Nt __unittest(ttb_framet f_globalsthas_key(RR5((s unittest.pycR,scCs=d}x0|o(|i| o|d7}|i}q W|S(Nii(R,R-(RR5R6((s unittest.pycR/s  cCs2dt|i|it|it|ifS(Ns!<%s run=%i errors=%i failures=%i>(Rt __class__RR'RR(R((s unittest.pyct__repr__s(RRt__doc__RRR R$R%R&R(R*R"R,R/R<(((s unittest.pycR_s           cBs0eZdZeZddZdZdZdZdZ dZ dZ d Z d Z dd Zd Zd ZdZddZddZddZdZddZddZdddZdddZeZZeZZeZZ eZ!Z"eZ#eZ$Z%eZ&RS(sA class whose instances are single test cases. By default, the test code itself should be placed in a method named 'runTest'. If the fixture may be used for many test cases, create as many test methods as are needed. When instantiating such a TestCase subclass, specify in the constructor arguments the name of the test method that the instance is to execute. Test authors should subclass TestCase for their own tests. Construction and deconstruction of the test's environment ('fixture') can be implemented by overriding the 'setUp' and 'tearDown' methods respectively. If it is necessary to override the __init__ method, the base class __init__ method must always be called. It is important that subclasses should not change the signature of their __init__ method, since instances of the classes are instantiated automatically by parts of the framework in order to be run. trunTestcCsXy(||_t||}|i|_Wn)tj otd|i|fnXdS(sCreate an instance of the class that will use the named test method when executed. Raises a ValueError if the instance does not have a method with the specified name. sno such test method in %s: %sN(t_testMethodNametgetattrR=t_testMethodDoctAttributeErrort ValueErrorR;(Rt methodNamet testMethod((s unittest.pycRs cCsdS(sAHook method for setting up the test fixture before exercising it.N((R((s unittest.pyctsetUpscCsdS(sAHook method for deconstructing the test fixture after testing it.N((R((s unittest.pycttearDownscCsdS(Ni((R((s unittest.pyctcountTestCasesscCstS(N(R(R((s unittest.pyctdefaultTestResultscCs.|i}|o|iddipdS(sReturns a one-line description of the test, or None if no description has been provided. The default implementation of this method returns the first line of the specified test method's docstring. s iN(RAtsplittstriptNone(Rtdoc((s unittest.pyctshortDescriptions cCsdt|i|ifS(Ns%s.%s(RR;R?(R((s unittest.pyctidscCsd|it|ifS(Ns%s (%s)(R?RR;(R((s unittest.pyct__str__scCsdt|i|ifS(Ns<%s testMethod=%s>(RR;R?(R((s unittest.pycR<scCst|djo|i}n|i|t||i}z#y|iWn6tj o n"|i||idSnXt }y|t }Wn]|i j o|i ||in3tj o n|i||inXy|i Wn8tj o n$|i||it }nX|o|i|nWd|i|XdS(N(RLRIRR@R?RFtKeyboardInterruptR$t _exc_infotFalseR)R.R%RGR&R (RtresultREtok((s unittest.pyctruns@    cOs|i||S(N(RV(Rtargstkwds((s unittest.pyct__call__scCs+|it||i|idS(s6Run the test without collecting errors in a TestResultN(RFR@R?RG(R((s unittest.pyctdebugs cCsGti\}}}tid djo|||fSn|||fS(sReturn a version of sys.exc_info() with the traceback frame minimised; usually the top level of the traceback frame is not needed. itjava(tsystexc_infotplatform(RR3texcvalueR5((s unittest.pycRR!scCs|i|dS(s)Fail immediately, with the given message.N(R.(Rtmsg((s unittest.pyctfail+scCs|o|i|ndS(s(Fail the test if the expression is true.N(R.(RtexprR`((s unittest.pyctfailIf/scCs|p|i|ndS(s,Fail the test unless the expression is true.N(R.(RRbR`((s unittest.pyct failUnless3scOshy|||Wn|j o dSn;Xt|do |i}n t|}|id|dS(siFail unless an exception of class excClass is thrown by callableObj when invoked with arguments args and keyword arguments kwargs. If a different type of exception is thrown, it will not be caught, and the test case will be deemed to have suffered an error, exactly as for an unexpected exception. NRs %s not raised(thasattrRtstrR.(RtexcClasst callableObjRWtkwargstexcName((s unittest.pyctfailUnlessRaises7s   cCs2||jp!|i|pd||fndS(s[Fail if the two objects are unequal as determined by the '==' operator. s%r != %rN(R.(RtfirsttsecondR`((s unittest.pyctfailUnlessEqualHs cCs2||jo!|i|pd||fndS(sYFail if the two objects are equal as determined by the '==' operator. s%r == %rN(R.(RRlRmR`((s unittest.pyct failIfEqualPs icCsBt|||djo$|i|pd|||fndS(sKFail if the two objects are unequal as determined by their difference rounded to the given number of decimal places (default 7) and comparing to zero. Note that decimal places (from zero) are usually not the same as significant digits (measured from the most signficant digit). is%r != %r within %r placesN(troundR.(RRlRmtplacesR`((s unittest.pyctfailUnlessAlmostEqualXscCsBt|||djo$|i|pd|||fndS(sIFail if the two objects are equal as determined by their difference rounded to the given number of decimal places (default 7) and comparing to zero. Note that decimal places (from zero) are usually not the same as significant digits (measured from the most signficant digit). is%r == %r within %r placesN(RpR.(RRlRmRqR`((s unittest.pyctfailIfAlmostEqualdsN('RRR=tAssertionErrorR.RRFRGRHRIRNRORPR<RLRVRYRZRRRaRcRdRkRnRoRrRst assertEqualt assertEqualstassertNotEqualtassertNotEqualstassertAlmostEqualtassertAlmostEqualstassertNotAlmostEqualtassertNotAlmostEqualst assertRaisestassert_t assertTruet assertFalse(((s unittest.pycRs<        #              cBsheZdZd dZdZeZdZdZdZdZ dZ dZ d Z RS( sA test suite is a composite test consisting of a number of TestCases. For use, create an instance of TestSuite, then add test case instances. When all tests have been added, the suite can be passed to a test runner, such as TextTestRunner. It will run the individual test cases in the order in which they were added, aggregating the results. When subclassing, do not forget to call the base class constructor. cCsg|_|i|dS(N(t_teststaddTests(Rttests((s unittest.pycRs cCsdt|i|ifS(Ns <%s tests=%s>(RR;R(R((s unittest.pycR<scCs t|iS(N(titerR(R((s unittest.pyct__iter__scCs.d}x!|iD]}||i7}qW|S(Ni(RRH(RtcasesR((s unittest.pycRHs  cCspt|ptdnt|ttifo&t|ttfotdn|i i |dS(Ns the test to add must be callablesNTestCases and TestSuites must be instantiated before passing them to addTest()( tcallablet TypeErrorRR RRt issubclassRRRR!(RR((s unittest.pyctaddTests  cCsBt|totdnx|D]}|i|q'WdS(Ns0tests must be an iterable of tests, not a string(Rt basestringRR(RRR((s unittest.pycRs cCs1x*|iD]}|ioPn||q W|S(N(RR(RRTR((s unittest.pycRVs   cOs|i||S(N(RV(RRWRX((s unittest.pycRYscCs"x|iD]}|iq WdS(s7Run the tests without collecting errors in a TestResultN(RRZ(RR((s unittest.pycRZs (( RRR=RR<RPRRHRRRVRYRZ(((s unittest.pycRs       cBs_eZdZd d d dZdZdZdZdZdZ dZ dZ RS( sGA test case that wraps a test function. This is useful for slipping pre-existing test functions into the PyUnit framework. Optionally, set-up and tidy-up functions can be supplied. As with TestCase, the tidy-up ('tearDown') function will always be called if the set-up ('setUp') function ran successfully. cCs5ti|||_||_||_||_dS(N(RRt_FunctionTestCase__setUpFunct_FunctionTestCase__tearDownFunct_FunctionTestCase__testFunct_FunctionTestCase__description(RttestFuncRFRGt description((s unittest.pycRs     cCs"|idj o|indS(N(RRL(R((s unittest.pycRFscCs"|idj o|indS(N(RRL(R((s unittest.pycRGscCs|idS(N(R(R((s unittest.pycR>scCs |iiS(N(RR(R((s unittest.pycROscCsdt|i|iifS(Ns%s (%s)(RR;RR(R((s unittest.pycRPscCsdt|i|ifS(Ns<%s testFunc=%s>(RR;R(R((s unittest.pycR<scCsL|idj o |iSn|ii}|o|iddipdS(Ns i(RRLRR=RJRK(RRM((s unittest.pycRNs  N( RRR=RLRRFRGR>RORPR<RN(((s unittest.pycRs       cBsSeZdZdZeZeZdZdZ ddZ ddZ dZ RS(swThis class is responsible for loading tests according to various criteria and returning them wrapped in a Test RcCsjt|totdn|i|}| ot|do dg}n|it||S(s<Return a suite of all tests cases contained in testCaseClasssYTest cases should not be derived from TestSuite. Maybe you meant to derive from TestCase?R>(RRRRRet suiteClasstmap(Rt testCaseClasst testCaseNames((s unittest.pyctloadTestsFromTestCases  cCs|g}xft|D]X}t||}t|ttifo*t|to|i|i |qqW|i |S(s?Return a suite of all tests cases contained in the given module( tdirR@RR RRRRR!RR(RtmoduleRtnameR((s unittest.pyctloadTestsFromModules c Cs|id}|djoi|}xQ|oIytdi|}PWq&tj o|d=|pqrq&Xq&W|d}n|}x$|D]}|t||}}qWt|tijo|i |Snt |tti fo!t |t o|i|Snt|tijo||iSnqt |to|SnYt|o>|}t |t tfptd||fn|Sntd|dS(sTReturn a suite of all tests cases given a string specifier. The name may resolve either to a module, a test case class, a test method within a test case class, or a callable object which returns a TestCase or TestSuite instance. The method optionally resolves the names relative to a given module. t.iis"calling %s returned %s, not a tests$don't know how to make test from: %sN(RJRLt __import__R0t ImportErrorR@R Rt ModuleTypeRRRRRRtUnboundMethodTypeRRRRC( RRRtpartst parts_copyRtparttparentR((s unittest.pyctloadTestsFromNamesB    cCs:g}|D]}||i||q ~}|i|S(sReturn a suite of all tests cases found using the given sequence of string specifiers. See 'loadTestsFromName()'. (RR(RtnamesRt_[1]Rtsuites((s unittest.pyctloadTestsFromNames1s-cCs||id}t|t|}xI|iD]>}x5|i|D]$}||jo|i|qGqGWq1W|io|i|in|S(sLReturn a sorted sequence of method names found within testCaseClass cSs#|i|ott||S(N(t startswithRR@(tattrnameRtprefix((s unittest.pyct isTestMethod;s(ttestMethodPrefixtfilterRt __bases__RR!tsortTestMethodsUsingtsort(RRRt testFnNamest baseclasst testFnName((s unittest.pycR8s   N(RRR=RtcmpRRRRRRLRRR(((s unittest.pycRs * cCs3t}||_||_|o ||_n|S(N(RRRR(Rt sortUsingRtloader((s unittest.pyct _makeLoaderOs     cCst||i|S(N(RR(RRR((s unittest.pycRVsRcCst|||i|S(N(RR(RRRR((s unittest.pycR YscCst|||i|S(N(RR(RRRR((s unittest.pycR \st_WritelnDecoratorcBs,eZdZdZdZddZRS(s@Used to decorate file-like objects with a handy 'writeln' methodcCs ||_dS(N(tstream(RR((s unittest.pycRfscCst|i|S(N(R@R(Rtattr((s unittest.pyct __getattr__iscCs)|o|i|n|iddS(Ns (twrite(Rtarg((s unittest.pyctwritelnlsN(RRR=RRRLR(((s unittest.pycRds  t_TextTestResultcBsjeZdZddZddZdZdZdZdZdZ d Z d Z d Z RS( shA test result class that can print formatted text results to a stream. Used by TextTestRunner. t=iFt-cCsAti|||_|dj|_|dj|_||_dS(Ni(RRRtshowAlltdotst descriptions(RRRt verbosity((s unittest.pycRys   cCs3|io|ip t|Sn t|SdS(N(RRNRf(RR((s unittest.pyctgetDescriptions cCsKti|||io-|ii|i||iidndS(Ns ... (RRRRRR(RR((s unittest.pycRs cCsPti|||io|iidn|io|iidndS(NRUR(RR&RRRRR(RR((s unittest.pycR&s   cCsSti||||io|iidn|io|iidndS(NtERRORtE(RR$RRRRR(RRR#((s unittest.pycR$s   cCsSti||||io|iidn|io|iidndS(NtFAILtF(RR%RRRRR(RRR#((s unittest.pycR%s   cCsO|ip |io|iin|id|i|id|idS(NRR(RRRRtprintErrorListRR(R((s unittest.pyct printErrorsscCsxxq|D]i\}}|ii|i|iid||i|f|ii|i|iid|qWdS(Ns%s: %ss%s(RRt separator1Rt separator2(RtflavourRRR#((s unittest.pycRs  #( RRR=RRRRRR&R$R%RR(((s unittest.pycRqs         cBs5eZdZeidddZdZdZRS(sA test runner class that displays results in textual form. It prints out the names of tests as they are run, errors as they occur, and a summary of the results at the end of the test run. icCs%t||_||_||_dS(N(RRRR(RRRR((s unittest.pycRs cCst|i|i|iS(N(RRRR(R((s unittest.pyct _makeResultsc Cs[|i}ti}||ti}||}|i|ii|i|i}|iid||djodpd|f|ii|ip|iidt t |i |i f\}}|o|iid|n|o3|o|iidn|iid|n|iid n|iid |S( s&Run the given test case or test suite.sRan %d test%s in %.3fsitsR+sFAILED (s failures=%ds, s errors=%dt)tOK( RttimeRRRRRR(RRR'RR( RRRTt startTimetstopTimet timeTakenRVtfailedterrored((s unittest.pycRVs.        %  !(RRR=R\tstderrRRRV(((s unittest.pycRs t TestProgramcBsSeZdZdZddddedZddZdZdZ dZ RS( sA command-line program that runs a set of tests; this is primarily for making test modules conveniently executable. s Usage: %(progName)s [options] [test] [...] Options: -h, --help Show this message -v, --verbose Verbose output -q, --quiet Minimal output Examples: %(progName)s - run default set of tests %(progName)s MyTestSuite - run suite 'MyTestSuite' %(progName)s MyTestCase.testSomething - run MyTestCase.testSomething %(progName)s MyTestCase - run all 'test*' test methods in MyTestCase t__main__cCst|tdjoFt||_x=|iddD]}t|i||_q<Wn ||_|djo ti}nd|_||_ ||_ ||_ t i i|d|_|i||idS(NR+Rii(R RRRJR@RLR\targvRt defaultTestt testRunnert testLoadertostpathtbasenametprogNamet parseArgstrunTests(RRRRRRR((s unittest.pycRs        cCs0|o |GHn|i|iGHtiddS(Ni(tUSAGEt__dict__R\texit(RR`((s unittest.pyct usageExits c CsFddk}y|i|dddddg\}}xc|D][\}}|djo|in|djo d |_n|djo d|_q>q>Wt|d jo0|idjo |ii|i|_ dSnt|d jo ||_ n|if|_ |i Wn%|i j o}|i|nXdS(NiithHvqthelptverbosetquiets-hs-Hs--helps-qs--quietis-vs --verbosei(s-hs-Hs--help(s-qs--quiet(s-vs --verbose( tgetoptRRR'RRLRRRRt testNamest createTeststerror(RRRtoptionsRWtoptR4R`((s unittest.pycRs*      # cCs"|ii|i|i|_dS(N(RRRRR(R((s unittest.pycRscCsV|idjotd|i|_n|ii|i}ti|i dS(NR( RRLRRRVRR\RR((RRT((s unittest.pycR"sN( RRR=RRLRRRRRR(((s unittest.pycRs   RR(ii(ii((((((((%R=t __author__t __email__t __version__RR\R1RRt__all__textendt version_infoRSR)RR t __metaclass__RR7RRRRRRRLRRRR R RRRRRR(((s unittest.pycs-sD          K:0\    >.K PK8k warnings.pyc BDc @s1dZddkZddkZddkZdddddgZgZdZhZdd d Z dddd Z dd Z d Z de ddddZe dddZdZdefdYZdZdZdZdZeeieddedd eddedd dS(s&Python part of the warnings subsystem.iNtwarnt showwarningt formatwarningtfilterwarningst resetwarningstdefaultic Cs{t|to |i}n|d jo t}nt|tptyti|}Wn"t j oti }d}nX|i }|i }d|jo|d}nd}|i d}|o.|i}|id o|d }qInP|djo1ytid }Wq8tj o d}q8Xn|p |}n|id h} t|||||| |d S( s:Issue a warning, or maybe ignore it or raise an exception.it__name__st__file__s.pycs.pyoit__main__it__warningregistry__N(s.pycs.pyo(t isinstancetWarningt __class__tNonet UserWarningt issubclasstAssertionErrortsyst _getframet ValueErrort__dict__t f_globalstf_linenotgettlowertendswithtargvtAttributeErrort setdefaultt warn_explicit( tmessagetcategoryt stackleveltcallertglobalstlinenotmoduletfilenametfnltregistry((s warnings.pycRs<           c Cs|djo6|pd}|didjo|d }qCn|djo h}nt|tot|}|i}n|}||}|||f}|i|odSnxtD]} | \} } } } }| djp| i|oLt || o<| djp| i|o|djp ||joPqqWt } | djod||is.pyitignoreiterrortoncetalwaysR$Rs1Unrecognized action (%r) in warnings.filters: %s(R RR R tstrR RtfilterstmatchRt defaultactiont linecachetgetlinest onceregistryt RuntimeErrorR(RRR%R#R$R'tmodule_globalsttexttkeytitemtactiontmsgtcattmodtlntoncekeytaltkey((s warnings.pycR@sb                   c CsT|djo ti}ny |it||||Wntj onXdS(s7Hook to write a warning to a file; replace if you like.N(R RtstderrtwriteRtIOError(RRR%R#tfile((s warnings.pycRs    cCsRd|||i|f}ti||i}|o|d|d}n|S(s.Function to format a warning the standard way.s%s:%s: %s: %s s s (RR0tgetlinetstrip(RRR%R#tstline((s warnings.pycRs ticCsddk}|djptd |ft|tp td t|ttifp td t|tp td t|tp td t|t o |djp td||i ||i ||i ||f}|ot i |nt id|dS(sInsert an entry into the list of warnings filters (at the front). Use assertions to check that all arguments have the right type.iNR)R(R+RR$R*sinvalid action: %rsmessage must be a stringscategory must be a classs#category must be a Warning subclasssmodule must be a stringislineno must be an int >= 0(serrorsignoresalwayssdefaultsmodulesonce(treRR t basestringttypettypest ClassTypeRR tinttcompiletIR-tappendtinsert(R8RRR$R#RPRHR7((s warnings.pycRs  cCs|d jptd|ft|to |djp td |d |d |f}|oti|ntid|d S( sInsert a simple entry into the list of warnings filters (at the front). A simple filter matches all modules and messages. R)R(R+RR$R*sinvalid action: %rislineno must be an int >= 0N(serrorsignoresalwayssdefaultsmodulesonce(RR RMR R-RPRQ(R8RR#RPR7((s warnings.pyct simplefilters cCs gt(dS(sAClear the list of warning filters, so that no filters are active.N(R-(((s warnings.pycRst _OptionErrorcBseZdZRS(s,Exception used by option processing helpers.(Rt __module__t__doc__(((s warnings.pycRSscCsNxG|D]?}yt|Wqtj o}tidI|IJqXqWdS(NsInvalid -W option ignored:(t _setoptionRSRR?(targstargR9((s warnings.pyct_processoptionss c Csoddk}|id}t|djotd|fnx%t|djo|idqHWg}|D]}||iqx~\}}}}} t|}|i|}t|}|i|}|o|d}n| oZy't | } | djo t nWqUt t fj otd| fqUXnd} t ||||| dS( Nit:istoo many fields (max 5): %rRGt$isinvalid lineno %r( RHtsplittlenRSRPRDt _getactiontescapet _getcategoryRMRt OverflowErrorR( RXRHtpartst_[1]RER8RRR$R#((s warnings.pycRVs0 /    cCsd|pdSn|djodSnx&d D]}|i|o|Sq+q+Wtd|fdS( NRtallR+R(R$R*R)sinvalid action: %r(sdefaultsalwayssignoresmodulesonceserror(t startswithRS(R8ta((s warnings.pycR^s  c Cs>ddk}|ptSn|id|o=yt|}Wqtj otd|fqXn|id}|| }||d}yt|dd|g}Wn&t j otd|fnXyt ||}Wn&t j otd|fnXt |tptd|fn|S(Nis^[a-zA-Z0-9_]+$sunknown warning category: %rt.isinvalid module name: %rsinvalid warning category: %r( RHR R.tevalt NameErrorRStrfindt __import__R t ImportErrortgetattrRR(RRHR:tiR$tklasstm((s warnings.pycR`s,  R(RRP(RURRKR0t__all__R-R/R2R RRRRR RRRRt ExceptionRSRYRVR^R`t warnoptionstPendingDeprecationWarningt ImportWarning(((s warnings.pycss.   )?        PK8A## rdiff_backup/FilenameMapping.pyc ~Hc @sdZddklZddkZddkZddkZddkZddkZddkZda da da da defdYZdZdZdZd Zd Zd Zd Zd eifdYZddZdZdZeddZdS(sCoordinate corresponding files with different names For instance, some source filenames may contain characters not allowed on the mirror end. These files must be called something different on the mirror end, so we escape the offending characters with semicolons. One problem/complication is that all this escaping may put files over the 256 or whatever limit on the length of file names. (We just don't handle that error.) i(t generatorsNtQuotingExceptioncBseZRS((t__name__t __module__(((s rdiff_backup\FilenameMapping.pycR0scCs%xtiD]}|iiq WdS(s+Set quoting value from Globals on all connsN(tGlobalst connectionstFilenameMappingtset_init_quote_vals_local(tconn((s rdiff_backup\FilenameMapping.pyctset_init_quote_vals2s cCsQtiattidjotiidtifntiatdS(s1Set value on local connection, initialize regexpsis;Expected single character for quoting char,got '%s' insteadN(Rtchars_to_quotetlent quoting_chartlogtLogt FatalErrortinit_quoting_regexps(((s rdiff_backup\FilenameMapping.pycR7s    cCstotttijptdtfy<tidttftia tidttia Wn3ti j o$t i idti tfnXdS(s#Compile quoting regular expressionssChars to quote: '%s's[%s]|%ss %s[0-9]{3}s-Error '%s' when processing char quote list %rN(R ttypettypest StringTypetAssertionErrortretcompileR tStchars_to_quote_regexptunquoting_regexpterrorR RR(((s rdiff_backup\FilenameMapping.pycRAs  cCsetit|}tip|Sntid|tip|Sndtt |df|dS(sReturn quoted version of given path Any characters quoted will be replaced by the quoting char and the ascii number of the character. For instance, "10:11:12" would go to "10;05811;05812" if ":" were quoted and ";" were the quoting character. sZ^aux(\..*)*$|^prn(\..*)*$|^con(\..*)*$|^nul(\..*)*$|^com[0-9](\..*)*$|^lpt[1-9]{1}(\..*)*$s%s%03dii( Rtsubt quote_singleRtmust_escape_dos_devicesRtsearchtIR tord(tpatht QuotedPath((s rdiff_backup\FilenameMapping.pyctquoteNs    cCsdtt|ifS(s)Return replacement for a single characters%s%03d(R R tgroup(tmatch((s rdiff_backup\FilenameMapping.pycRcscCstit|S(s*Return original version of quoted filename(RRtunquote_single(R!((s rdiff_backup\FilenameMapping.pyctunquotegscCst|idjptd|inytt|idSWn)tj otd|inXdS(s!Unquote a single quoted characterisQuoted group wrong size: isQuoted out of range: N(R R$Rtchrtintt ValueError(R%((s rdiff_backup\FilenameMapping.pycR&ks t QuotedRPathcBsAeZdZdddZdZdZdZdZRS(sRPath where the filename is quoted version of index We use QuotedRPaths so we don't need to remember to quote RPaths derived from this one (via append or new_index). Note that only the index is quoted, not the base. cCsttt||_||_||_||_|dj oJ|djoddi|i|_ qdi|f|i|_ nd|_ |p |djo ||_ n |i dS(sMake new QuotedRPatht/N( ttupletmapR#t quoted_indexRtindextbasetNonetjoinR!tfiletdatatsetdata(tselft connectionR1R0R5((s rdiff_backup\FilenameMapping.pyct__init__|s        cCsi|\}|_|_|_ti||_ttt|i|_ di |if|i |_ dS(s.Reproduce QuotedRPath from __getstate__ outputR,N( R1R0R5Rtconnection_dictRR-R.R#R/R3R!(R7t rpath_statet conn_number((s rdiff_backup\FilenameMapping.pyct __setstate__scCstt|iii|iS(sReturn list of unquoted filenames in current directory We want them unquoted so that the results can be sorted correctly and append()ed to the currect QuotedRPath. (R.R'RtostlistdirR!(R7((s rdiff_backup\FilenameMapping.pycR?scCsd|i|i|ifS(Ns!QuotedPath: %s Index: %s Data: %s(R!R0R5(R7((s rdiff_backup\FilenameMapping.pyct__str__scCs|ipr|i\}}ti|i|t|f}|i}|o(t|i|_t|i|_qn0tii|}|ot|i|_n|S(s?Return true if path indicates increment, sets various variables( R0tdirsplittrpathtRPathRR't isincfilet inc_basestrt inc_timestr(R7tdirnametbasenamettemp_rptresult((s rdiff_backup\FilenameMapping.pycRDs ! (N( RRt__doc__R2R9R=R?R@RD(((s rdiff_backup\FilenameMapping.pycR+ts   icCsq|i pt|o8|i\}}t|i|t|f|iSnt|i|id|iSdS(s!Return quoted version of rpath rpN((R0RRAR+RR'R5R1(trptseparate_basenameRGRH((s rdiff_backup\FilenameMapping.pyctget_quotedrpaths &cCsttiti|dS(s9Get QuotedRPath from filename assuming last bit is quotedi(RNRBRCRtlocal_connection(tfilename((s rdiff_backup\FilenameMapping.pyctget_quoted_sep_basesc sdfd}|itijpt|i}|i}tid|idy ti }Wnt j o t }nXxn||D]`\}}}|i |}x|D]} ||| |qWx|D]} ||| dqWqWdS(s^Update the quoting of a repository by renaming any files that should be quoted differently. cSs5t|}t|}||jo|SndSdS(N(R'R#R2(tnamet unquoted_namet quoted_name((s rdiff_backup\FilenameMapping.pyctrequotes    cs|}|ow|o|i||i|n|i|}|i|}tid|i|ifdti||ndS(NsRe-quoting %s to %si(tremovetappendR RR!RBtmove(t dirpath_rpRRtlisttnew_nametname_rptnew_rp(RU(s rdiff_backup\FilenameMapping.pyctprocesss   sRe-quoting repository %siN( RRRORt get_parent_rpR!R RR>twalktAttributeErrortnewpathR2( trbdirR^t mirror_rptmirrortos_walktdirpathtdirstfilesRYRR((RUs rdiff_backup\FilenameMapping.pyctupdate_quotings&       c csTddkl}l}ddkl}l}l}y||}Wn4|j o(} |dj o|| ndSnXgg} } xB|D]:} |||| o| i| q| i| qW|o|| | fVnxP| D]H} ||| } || p&x#t | ||D] }|Vq WqqW|p|| | fVndS(Ni(RR?(R3tisdirtislink( R>RR?tos.pathR3RkRlR2RWR`(ttopttopdowntonerrorRR?R3RkRltnamesterrRhtnondirsRRR!tx((s rdiff_backup\FilenameMapping.pycR`s2    (RKt __future__RR>RRRR RBR2R RRR t ExceptionRR RRR#RR'R&RCR+RNRQRjtTrueR`(((s rdiff_backup\FilenameMapping.pycss($$     7   /PK8 I::rdiff_backup/Globals.pyc ~Hc @sDdZddkZddkZdZdZdZdZdZdZ y/ei Z ei Z e geiZWn(ej odZ dZ dgZnXdZe djZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#gZ$dZ%hZ&dZ'dZ(dZ)dZ*dZ+dZ,dZ-gZ.dZ/dZ0dZ1dZ2d Z3d Z4d Z5dZ6dZ7d Z8dZ9d Z:dZ;dZ<d Z=dZ>d Z?dZ@dZAd ZBdZCdZDd ZEdZFdZGdZHdZIddd dZJdZKdZLddZMdZNdS(s:Hold a variety of constants usually set at initialization.iNs1.2.0iiiit;is(?i).*\.(gz|z|bz|bz2|tgz|zip|rpm|deb|jpg|jpeg|gif|png|jp2|mp3|ogg|avi|wmv|mpeg|mpg|rm|mov|flac|shn|pgp|gpg|rz|lzh|zoo|lharc|rar|arj|asc)$tallicCs t|S(s,Return the value of something in this module(tglobals(tname((srdiff_backup\Globals.pyctgetscCst|dj S(s!Returns true if value is not NoneN(RtNone(R((srdiff_backup\Globals.pyct is_not_NonescCsti||t||oti||t|s          PK8~eerdiff_backup/Hardlink.pyc ~Hc@sdZddklZddkZddkZddkZddkZddkZda dZ dZ dZ ddZ dZd Zd Zd Zd Zdd ZdS(sPreserve and restore hard links If the preserve_hardlinks option is selected, linked files in the source directory will be linked in the mirror directory. Linked files are treated like any other with respect to incrementing, but their link status can be retrieved because their device location and inode # is written in the metadata file. All these functions are meant to be executed on the mirror side. The source side should only transmit inode information. i(t generatorsNcCs hadS(s+Set all the hard link dictionaries to emptyN(t _inode_index(((srdiff_backup\Hardlink.pyctinitialize_dictionaries-scCs dadS(sDelete all dictionariesN(tNoneR(((srdiff_backup\Hardlink.pyctclear_dictionaries2scCs|i|ifS(s*Return rorp's key for _inode_ dictionaries(tgetinodet getdevloc(trorp((srdiff_backup\Hardlink.pyct get_inode_key7scCs|i p|idjodSnt|}ti|p}|p d}n*|idjo d}n t|}|io |ipd}|i|i||ft|s<         PK8r+%wrdiff_backup/Main.pyc ~Hc@s'dZddklZddkZddkZddkZddkZddkZddkZddk l Z l Z l Z ddk Z ddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZddkZda da!d0\a"a#da$gZ%gZ&d1\a'a(a)d2\a*a+a,da-dZ.dZ/dZ0d Z1d Z2d Z3d Z4d Z5dZ6dZ7dZ8dZ9dZ:dZ;dZ<dZ=dZ>dZ?dZ@dZAddZBdZCdZDdZEddZFddd ZGd!ZHd"ZId#ZJd$ZKd%ZLd&ZMd'ZNd(ZOd)ZPd*ZQdd+ZRdd,ZSd-ZTd.ZUd/ZVdS(3s@Start (and end) here - read arguments, set global settings, etc.i(t generatorsN(tLogt LoggerErrortErrorLogicPCs d}d}yti|ddddddd d d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMgJ\}aWn,tij o}tdNt|nXx|D]\}}|dOjp |dPjo dQaqE|dRjo daqE|dSjotidTdUqE|dVjo daqE|djo:|d]d^jo||d] a}nd_a|d`aqE|dajo dUa qE|dbjoti dc|qE|ddjph|dejp[|dfjpN|dgjpA|dhjp4|dijp'|djjp|dkjp |dljot i ||fqE|dmjo*t i ||ft i ||qE|dnjo!t i dt i tiqE|dpjo*t i ||ft i ||qE|dqjo!t i dt i tiqE|drjo dUaqE|dsjo |aqE|dtjp|dujp |dvjot i ||fqE|dwjo*t i ||ft i ||qE|dxjo!t i dt i tiqE|dyjo*t i ||ft i ||qE|dzjo!t i dt i tiqE|d{jot i ||fqE|d|jo|d}aaqE|d~jo|daaqE|djp |djo d*aqE|djo d+aqE|djot i ||fqE|djot i ||fqE|djotiddUqE|djotiddqE|djotidTdqE|djotiddqE|djotiddqE|djotid|qE|djotiddqE|djotiddqE|djotiddqE|djotiddUqE|djotid|qE|djotiddUqE|djo dUaqE|djotiddUqE|djp |djo|daaqE|djo |aqE|djo |aqE|djo |t_qE|djo|adaqE|djotiddqE|djo||t_qE|djodt_||t_qE|djodt_||t_qE|djp |djodDadUt_qE|djotiddqE|djo |t_qE|djoti|qE|djo dHaqE|djo |aqE|djp |djoti |qE|djod\aaqE|djodK|aaqE|djp |djodti!GHti"dqEti#d|qEWtdti!ddS(s.Parse argument list and set global preferencescSs<yt|dSWn$tj otid|nXdS(s7Helper function for including/excluding filelists belowtrsError opening file %sN(topentIOErrorRt FatalError(tfilename((srdiff_backup\Main.pyctsel_fl3scSstiti|iiS(s9Used below to normalize the security paths before setting(trpathtRPathtGlobalstlocal_connectiont normalizetpath(R((srdiff_backup\Main.pyctnormalize_path8ssblr:sv:Vs backup-modescalculate-averaget carbonfilescheck-destination-dirtcomparescompare-at-time=s compare-hashscompare-hash-at-time=s compare-fullscompare-full-at-time=screate-full-paths current-time=sexclude=sexclude-device-filess exclude-fifossexclude-filelist=sexclude-symbolic-linkssexclude-socketssexclude-filelist-stdinsexclude-globbing-filelist=sexclude-globbing-filelist-stdinsexclude-mirror=sexclude-other-filesystemssexclude-regexp=sexclude-if-present=sexclude-special-filestforcesgroup-mapping-file=sinclude=sinclude-filelist=sinclude-filelist-stdinsinclude-globbing-filelist=sinclude-globbing-filelist-stdinsinclude-regexp=sinclude-special-filessinclude-symbolic-linkss list-at-time=slist-changed-since=slist-incrementsslist-increment-sizessnever-drop-aclssmax-file-size=smin-file-size=sno-aclss no-carbonfilesno-compare-inodesno-compressionsno-compression-regexp=sno-eassno-file-statisticss no-hard-linkssnull-separatorsoverride-chars-to-quote=sparsable-outputspreserve-numerical-idssprint-statisticss remote-cmd=sremote-schema=sremote-tempdir=sremove-older-than=srestore-as-of=s restrict=srestrict-read-only=srestrict-update-only=tserversssh-no-compressionstempdir=sterminal-verbosity=s test-serversuser-mapping-file=s verbosity=tverifysverify-at-time=tversionsBad commandline options: s-bs --backup-modetbackups--calculate-averages --carbonfiletcarbonfile_activeis--check-destination-dirs --compares--compare-at-times--compare-hashs--compare-hash-at-times--compare-fulls--compare-full-at-timeis-at-timetnowis--create-full-paths--current-timet current_times --excludes--exclude-device-filess--exclude-fifoss--exclude-other-filesystemss--exclude-regexps--exclude-if-presents--exclude-special-filess--exclude-socketss--exclude-symbolic-linkss--exclude-filelists--exclude-filelist-stdinsstandard inputs--exclude-globbing-filelists!--exclude-globbing-filelist-stdins--forces--group-mapping-files --includes--include-special-filess--include-symbolic-linkss--include-filelists--include-filelist-stdins--include-globbing-filelists!--include-globbing-filelist-stdins--include-regexps--list-at-times list-at-times--list-changed-sinceslist-changed-sinces-ls--list-incrementss--list-increment-sizess--max-file-sizes--min-file-sizes--never-drop-aclstnever_drop_aclss --no-aclst acls_activeis--no-carbonfiles--no-compare-inodet compare_inodes--no-compressiont compressions--no-compression-regexptno_compression_regexp_strings--no-east eas_actives--no-file-statisticstfile_statisticss--no-hard-linkstpreserve_hardlinkss--null-separatortnull_separators--override-chars-to-quotetchars_to_quotes--parsable-outputtparsable_outputs--preserve-numerical-idss--print-statisticstprint_statisticss-rs--restore-as-ofs restore-as-ofs --remote-cmds--remote-schemas--remote-tempdirs--remove-older-thansremove-older-thans--no-resource-forkstresource_forks_actives --restricts--restrict-read-onlys read-onlys--restrict-update-onlys update-onlys-ss--servers--ssh-no-compressiontssh_compressions --tempdirs--terminal-verbositys --test-servers--user-mapping-files-vs --verbositys--verifys--verify-at-times-Vs --versions rdiff-backup sUnknown option %ssUsing rdiff-backup version %siN(s --compares--compare-at-times--compare-hashs--compare-hash-at-times--compare-fulls--compare-full-at-time(s--exclude-filelistsstandard input(s--exclude-globbing-filelistsstandard input(s--include-filelistsstandard input(s--include-globbing-filelistsstandard input(sverifysnow($tgetopttargsterrortcommandline_errortstrtactionR tsettrestore_timestrtcreate_full_patht set_integert select_optstappendt select_filestsyststdinRtgroup_mapping_filenametNonetpreserve_numerical_idst remote_cmdt remote_schematremote_tempdirtremove_older_than_stringt restrict_pathtsecurity_levelRttempfilettempdirRtsetterm_verbositytuser_mapping_filenamet setverbosityRtexitR(targlistR Rtoptlisttetopttarg((srdiff_backup\Main.pyctparse_cmdlineoptions,sv                                                                                            c Cshdgd<ddddddd gd <d d d dddgd<}tt}|djot||jotdnqtp|djoqtdnKtdjp tdjon-|djpt||jotdndS(s1Check to make sure action is compatible with argsRislist-incrementsslist-increment-sizessremove-older-thans list-at-timeslist-changed-sincescheck-destination-dirRiRtrestores restore-as-ofRs compare-hashs compare-fullisNo arguments givens-Switches missing or wrong number of argumentss test-serverscalculate-averages Wrong number of arguments given.N(tlenR*R.R,(targ_action_dicttl((srdiff_backup\Main.pyct check_actions$    cCsQtodSnt|djp t|t|do dandadS(sAIf no action set, decide between backup and restore at this pointNiiRMR(R.RNtAssertionErrortrestore_set_root(trps((srdiff_backup\Main.pyctfinal_set_actions  cCsti|ddS(Ns7 See the rdiff-backup manual page for more information.(RR(tmessage((srdiff_backup\Main.pycR,scCsutidtititidtiti dti x+ti D] }|i i |iiqMWdS(s7Set default change ownership flag, umask, relay regexpsi?t client_conntno_compression_regexpN(tostumasktTimet setcurtimeR RtSetConnectionst UpdateGlobalR tpostset_regexpRt connectionstrobusttinstall_signal_handlerstHardlinktinitialize_dictionaries(RTtconn((srdiff_backup\Main.pyct misc_setups     cCsKd}|t}|ii|t|t}|ii|tdS(s;Initialize user and group mapping on destination connectioncSsk|pdSntiti|}y|iSWn2tj o&}tidt ||fnXdS(Ns$Error '%s' reading mapping file '%s'( R9R R R R tget_datatOSErrorRRR-(RtrpRI((srdiff_backup\Main.pyctget_string_from_files N(RDt user_grouptinit_user_mappingR:R8tinit_group_mapping(tdestination_connRjtuser_mapping_stringtgroup_mapping_string((srdiff_backup\Main.pyctinit_user_group_mappings     cCstdjo-tititiitidntdjot|d|dntdjot |nutdjot |dnVti dot t|d|dn*tdjot |dn td jot|dntd jot|dntd jot|dntd jot|dntd jot|nttdjot|d|ddnKtdjotin0tdjot|dntdtdS(sDo whatever action saysRiRiscalculate-averagescheck-destination-dirRs list-at-timeslist-changed-sinceslist-incrementsslist-increment-sizessremove-older-thanRMs restore-as-ofs test-serverRsUnknown action N(R.t connectiontPipeConnectionR6R7tstdouttServerRFtBackuptCalculateAveraget CheckDestt startswithtComparet ListAtTimetListChangedSincetListIncrementstListIncrementSizestRemoveOlderThantRestoreR]tTestConnectionstVerifyRR(RT((srdiff_backup\Main.pyct take_actions<             cCsNtddtiotintitiptindS(s*Do any last minute cleaning before exitings Cleaning upiN( RRtisopentcloset close_logfileR RR]tCloseConnections(((srdiff_backup\Main.pyctcleanup%s     cCsyt|Wnttj o n`tj oS}ti|}|o!tiddti|qtiddnXdS(s?Run Main on arglist, suppressing stack trace for routine errorsiiN(tMaint SystemExitt ExceptionRatis_routine_fatalRt exceptionR(RGtexcterrmsg((srdiff_backup\Main.pycterror_check_Main,scCst|ttittt}tit pd|t ti |}t |t |t|ttdj otitndS(sStart everything up!tmirrorN(RLRQR]t get_cmd_pairsR*R<R;tSecurityt initializeR.tmapt cmdpair2rpRURfRRt return_valR9R6RF(RGtcmdpairsRT((srdiff_backup\Main.pycR9s     cCs ti|i|it||t|||iii|tti ot |}nt |it |t |t||toJtit|iii||ti||t|iiin'ti|||iii||dS(s6Backup, possibly incrementally, src_path to dest_path.N(R]tBackupInitConnectionsRetbackup_check_dirstbackup_set_rbdirt fs_abilitiestbackup_set_globalsRR R$tbackup_quoted_rpathsRqtbackup_final_inittbackup_set_selecttbackup_warn_if_infinite_regresstprevtimeR[t setprevtimeRtbackup_touch_curmirror_localRtMirror_and_incrementtincdirtbackup_remove_curmirror_localtMirror(trpintrpout((srdiff_backup\Main.pycRvFs"        cCs8tidtitititati|S(s;Get QuotedRPath versions of important RPaths. Return rpouttrbdir(R]R^tFilenameMappingtget_quotedrpathR RR(R((srdiff_backup\Main.pycR[scCs |iiii|ttdS(s*Create Select objects on source connectionN(ReRt SourceStructtset_source_selectR3R5(R((srdiff_backup\Main.pycRcscCs|ioO|i oAtptid|iq\td|id|in|ipTy#to|in |i Wqt i j otid|iqXn|iptid|in&|iptid|in|i dt _dS( s3Make sure in and out dirs exist and are directoriess,Destination %s exists and is not a directorys Deleting %sisUnable to create directory %ss"Source directory %s does not existsSource %s is not a directorysrdiff-backup-dataN(tlstattisdirRRRRtdeleteR1tmakedirstmkdirRYR+t append_pathR R(RR((srdiff_backup\Main.pycRhs$    cCstiida|ipt|i|if|ioF|i o8y|i dWqt j ot ddqXn2tii o t ot i d|intiiptiintidtidS(sInitialize data dir and loggingt incrementsis.Cannot change permissions on target directory.isDestination directory %s exists, but does not look like a rdiff-backup directory. Running rdiff-backup like this could mess up what is currently in it. If you want to update or overwrite it, run rdiff-backup with the --force option.RN(R RRRRRRRRtlistdirtchmodRhRRRRR]R^(RR((srdiff_backup\Main.pycR}s&cCs|i|ij odSnt|it|idjodSn|it|id |idjodSnt|it|idid}|i|}tii|pdSnt d|i|ifddS(s6Warn user if destination area contained in source areaNit/sWarning: The destination directory '%s' may be contained in the source directory '%s'. This could cause an infinite regress. You may need to use the --exclude option.i( ReRNRttupletsplitt new_indexR t select_mirrortSelectR(RRtrelative_rpout_compstrelative_rpout((srdiff_backup\Main.pycRs#()cCsltiid}ti|}t|djptdt|f|o|diSndSdS(s<Return time in seconds of previous mirror, or None if cannottcurrent_mirroris)Found %s current_mirror rps, expected <=1iN( R RRRMt get_inclistRNRRt getinctimeR9(tincbaset mirror_rps((srdiff_backup\Main.pyctbackup_get_mirrortimescCstidjotitiidnt|tatt i joti dnt i t idtitiptindS(s<Open the backup log and the error log, create increments diris backup.logsTime of Last backup is not in the past. This is probably caused by running two backups in less than a second. Wait a second a try again.tcompressN(Rt verbosityt open_logfileR RR4tcheckdest_if_necessaryRRR[tcurtimeRRRt curtimestrRRRR(R((srdiff_backup\Main.pycRs    cCsutiidtidf}td|idyti}Wn d}nX|i d|f|i dS(sMake a file like current_mirror.time.data to record time When doing an incremental backup, this should happen before any other writes, and the file should be removed after all writes. That way we can tell whether the previous session aborted if there are two current_mirror files. When doing the initial full backup, the file can be created after everything else is in place. scurrent_mirror.%s.%stdatasWriting mirror marker %sitNAsPID %s N( R RR4R[RRRRYtgetpidt write_stringtfsync_with_dir(RRtmirrorrptpid((srdiff_backup\Main.pycRs   cCstiitijpttitiid}t|djpt|di |di jo|d}n |d}t i |i dS(sDRemove the older of the current_mirror files. Use at end of sessionRiiiN( R RReR RRRMRR4RNRtCtsyncR(t curmir_incst older_inc((srdiff_backup\Main.pycRs!  cCs:t o&t| otid|int||||iii|t |it |}t t ||t iidt}|oKytitd|}Wqtij o}tit|qXn |i}tt |t|||tit it|||tdddS(sMain restoring function Here src_rp should be the source file (either an increment or mirror file), dest_rp should be the target rp to be written. s*Could not find rdiff-backup repository at RRisRestore finishediN(trestore_root_setRSRRRtrestore_check_pathsReRtrestore_set_globalsRqtrestore_init_quotingtrestore_check_backup_dirt restore_rootR RRt restore_indexR[t genstrtotimeR0t TimeExceptionR-Rtrestore_set_selecttrestore_start_logRMRR(tsrc_rptdest_rpt restore_as_oft inc_rpathttimeR((srdiff_backup\Main.pycRs(      cCsktip|SnxtiD]}|iiqWtitatidtiti ti|S(s=Change rpaths into quoted versions of themselves if necessaryR( R R$R`Rtset_init_quote_valsRRR]R^R(RRe((srdiff_backup\Main.pycRs  cCswd}t|t}toT|iiii|ttti||iii i |ttti|ndS(skSet the selection iterator on both side from command line args We must set both sides because restore filtering is different from select filtering. For instance, if a file is excluded it should not be deleted from the target directory. The StringIO stuff is because filelists need to be read and then duplicated, because we need two copies of them now. cSs%|i}|i pt|S(N(treadRRR(tfptbuf((srdiff_backup\Main.pyct fp2string s N( RR5R3ReRMt MirrorStructtset_mirror_selectt cStringIOtStringIOt TargetStructtset_target_select(t mirror_rpttargetRt select_data((srdiff_backup\Main.pycRs cCsytitiidWn5ttifj o }tdt|dnXd|i |i t i |f}ti djoti |dntidjoti|ndS(s*Open restore log file, log initial messages restore.logs"Warning - Unable to open logfile: is0Starting restore of %s to %s as it was as of %s.iiN(RRR RR4RRt ViolationR-RR[t timetoprettytterm_verbosityt log_to_termRt log_to_file(RRRRIt log_message((srdiff_backup\Main.pycRscCs|p)|iptid|iq0nt o@|io3|i p |iotid|into)|io|i o|indS(sAMake sure source and destination exist, and have appropriate typesSource file %s does not exists?Restore target %s already exists, specify --force to overwrite.N(RRRRRRRR(RRt restoreasof((srdiff_backup\Main.pycR"s 0 "icCs| o&|i otid|int|}|djotidtiifn)|djotid|ifndS(s5Make sure backup dir root rpin is in consistent statesFile %s does not look like an increment file. Try restoring from an increment file (the filenames look like "foobar.2001-09-01T04:49:04-07:00.diff").s3%s does not appear to be an rdiff-backup directory.isPrevious backup to %s seems to have failed. Rerun rdiff-backup with --check-destination-dir option to revert directory to state before unsuccessful session.N(t isincfileRRRtcheckdest_need_checkR9R R(t mirror_rootRRtresult((srdiff_backup\Main.pycR,s    cCsC|io|ii}n |i}|itij o|id}n%tiiti |id}|dp d}nd}t |}x||jot i |idi|| }|i o%|iod|ijoPn|i|iiidjod Sn|d}qWd S|atdtidtitijotitntid tidtii ptid tiint||}| p|ddjo |anM|dd jp1t |djo|did p t||dadadS( sSet data dir, restore_root and index, or return None if fail The idea here is to keep backing up on the path until we find a directory that contains "rdiff-backup-data". That is the mirror root. If the path from there starts "rdiff-backup-data/increments*", then the index is the remainder minus that. Otherwise the index is just the path minus the root. All this could fail if the increment file is pointed to in a funny way, using symlinks or somesuch. Riiisrdiff-backup-dataR?sUsing mirror root directory %siRs-Unable to read rdiff-backup-data directory %sRN( Rt getincbaseRReR R RRYtjointgetcwdRNR R RtreadableRtgetR9RRRtreset_restrict_pathR]R^RRRRRRyRRR(Rtrelpatht pathcompstmin_len_pathcompstit parent_dirt from_datadir((srdiff_backup\Main.pycRS=sL  $   "    cCst|d}tttit}tiidt}ti |}ti i }ti ot i|||GHnt i|||GHdS(s5Print out a summary of the increments and their timesiRN(trequire_root_setRRRRR RRRMRRtget_mirror_timeR%tmanagetdescribe_incs_parsabletdescribe_incs_human(RiRRtincst mirror_time((srdiff_backup\Main.pycR}us  cCsht|ptid|ifdntiiiiti|ti ot |Sn|SdS(sMake sure rp is or is in a valid rdiff-backup dest directory. Also initializes fs_abilities (read or read/write) and quoting and return quoted rp if necessary. sBad directory %s. s7It doesn't appear to be an rdiff-backup destination dirN( RSRRRR RReRtsingle_set_globalsR$R(Rit read_only((srdiff_backup\Main.pycR s   cCs$t|d}tittGHdS(s&Print out a summary of the increments iN(R RR~RR(Ri((srdiff_backup\Main.pycR~scCsCtd|}tii|}|idt|GHdS(s3Print out the average of the given statistics filescSstii|S((t statisticstStatsObjtread_stats_from_rp(Ri((srdiff_backup\Main.pyctssAverage of %d stat filesN(RRRtset_to_averagetget_stats_logstringRN(RTtstatobjst average_stats((srdiff_backup\Main.pycRws   cCset|d}t|tt}|djodSntd|fdtiti |dS(s4Remove all increment files older than a certain timeiNs!Actual remove older than time: %si( R trot_require_rbdir_basetrot_check_timeR>R9RRtdelete_earlier_thanR R(trootrpR((srdiff_backup\Main.pycRs   c sgyti|Wn+tij o}tit|nXg}titi i dD]}||i qa~}t fd|}|p%tdti fdd Sn|iditti |}t|djo)t o!tidt||fnt|djotd|dntd |d|d dS( s;Check remove older than time_string, return time in secondsRcs |jS(((tt(R(srdiff_backup\Main.pycRss+No increments older than %s found, exiting.is isoFound %d relevant increments, dated: %s If you want to delete multiple increments in this way, use the --force.sDeleting increment at time: sDeleting increments at times: iN(R[RRRRR-RMRR RRRtfilterRR9tsortRRRNR(t time_stringRt_[1]tinct times_in_secstinc_pretty_time((Rsrdiff_backup\Main.pycRs(5  cCs2tdjo!tid|itifndS(s.Make sure pointing to base of rdiff-backup dirs]Increments for directory %s cannot be removed separately. Instead run on entire directory %s.N((RRRRR(R!((srdiff_backup\Main.pycRs  cCst|d}ytit}Wn+tij o}tit|nXti t }|i dt }x/|i i i|||D]}|idGHqWdS(s?List all the files under rp that have changed since restoretimeiRiN(R R[RR0RRRR-RRRRReRMR|tindex(Rit rest_timeRRtinc_rptrorp((srdiff_backup\Main.pycR|scCst|d}ytit}Wn+tij o}tit|nXti t }|i dt }x.|i i i|||D]}|iGHqWdS(s>List files in archive under rp that are present at restoretimeiRN(R R[RR0RRRR-RRRRReRMR{t get_indexpath(RiR+RRR,R-((srdiff_backup\Main.pycR{scCst|d}|pEytit}Wq[tij o}tit|q[Xnti t }t i i dt }t||djo ti}n;|djo ti}n!|djp t|ti}|||||adS(sCompare metadata in src_rp with metadata of backup session Prints to stdout whenever a file in the src_rp directory has different metadata than what is recorded in the metadata for the appropriate session. Session time is read from restore_timestr if compare_time is None. iRRs compare-hashs compare-fullN(R R[RR0RRRR-RRRR RRRRRzt Compare_hashRRt Compare_fullR(t compare_typeRRt compare_timeRRR,t compare_func((srdiff_backup\Main.pycRzs     cCst|d}|pEytit}Wq[tij o}tit|q[Xnti t }t i i dt }|iii|||adS(s=Check the hashes of the regular files against mirror_metadataiRN(R R[RR0RRRR-RRRR RRReRRR(Rt verify_timeRRR,((srdiff_backup\Main.pycRscCst|d}t|}|djotid|ifn/|djo!tid|ifddnt|i|iii |dS(s!Check the destination directory, isNo destination dir found at %ss)Destination dir %s does not need checkingterrlevelN( R RR9RRRRqRetregresstRegress(Rt need_check((srdiff_backup\Main.pycRxs     cCs|i ptii od Snx-tiiD]}|d joPq7q7Wd Stiid}ti|}|pti dtii fn_t |djodSnDt p|di ii|nt |djp tddSd S( sBReturn None if no dest dir found, 1 if dest dir needs check, 0 o/wR$s backup.logRsBad rdiff-backup-data dir on destination side The rdiff-backup data directory %s exists, but we cannot find a valid current_mirror marker. You can avoid this message by removing the rdiff-backup-data directory; however any data in it will be lost. Probably this error was caused because the first rdiff-backup session into a new directory failed. If this is the case it is safe to delete the rdiff-backup-data directory because there is no important information in it. iiis#Found too many current_mirror incs!N(schars_to_quotes backup.log(RR RR9RR4RMRRRRRNRReR6t check_pidsRR(RRt curmirrootR((srdiff_backup\Main.pycRs$ cCsAt|}|djo$tdd|iii|ndS(saCheck the destination dir if necessary. This can/should be run before an incremental backup. isAPrevious backup seems to have failed, regressing destination now.iN(RRReR6R7(RR8((srdiff_backup\Main.pycR3s   (NN(NNN(NNi(Wt__doc__t __future__RR)R6treRYRRAtlogRRRR R[R]t selectionRaR RRRrRMRRRcR6RRRRR9R.R1R;R<RR3R5RDR8R:RRRRRLRQRUR,RfRqRRRRRvRRRRRRRRRRRRRRRRSR}R R~RwRRRR|R{RzRRxRR(((srdiff_backup\Main.pycsslH                  8      PK8\CPPrdiff_backup/Rdiff.pyc ~Hc @sdZddkZddkZddkZddkZddkZddkZddkZddkZddZ dZ dZ dZ dZddZd Zd Zddd Zdd ZdS( s9Invoke rdiff utility to make signatures, deltas, or patchiNcCsV|pt|i}ntid|i|fdti|id|S(s5Take signature of rpin file and return in file objects)Getting signature of %s with blocksize %sitrb(tfind_blocksizetgetsizetlogtLogt get_indexpathtlibrsynctSigFiletopen(trpt blocksize((srdiff_backup\Rdiff.pyct get_signatures  cCs4|djodSntt|dddSdS(sReturn a reasonable block size to use on files of length file_len If the block size is too big, deltas will be bigger than is necessary. If the block size is too small, making deltas and patching can take a really long time. ii@g?iN(tlongtpow(tfile_len((srdiff_backup\Rdiff.pycR!s cCs3tid|ifdti||idS(s0Like get_delta but signature is in a file objects)Getting delta of %s with signature streamiR(RRtpathRt DeltaFileR(t sig_fileobjtrp_new((srdiff_backup\Rdiff.pyctget_delta_sigfileobj-scCsEtid|i|ifdti|id|idS(s6Take signature rp and new rp, return delta file objects%Getting delta of %s with signature %siR(RRRRRRR(t rp_signatureR((srdiff_backup\Rdiff.pyctget_delta_sigrp2s cCsNtid|i|ifdti|idti|idS(s:Like above but also calculate hash of new as close() values1Getting delta (with hash) of %s with signature %siR( RRRRRRRthasht FileWrapper(RR((srdiff_backup\Rdiff.pyctget_delta_sigrp_hash8s cCs[tid|i|i|ifdtit||id}|i||dS(s+Write rdiff delta which brings basis to newsWriting delta %s from %s -> %siRN(RRRRRR Rtwrite_from_fileobj(tbasistnewtdeltatcompresst deltafile((srdiff_backup\Rdiff.pyct write_delta@s !cCsCtiti||||i o|i ptdS(sAWrite patched file to out_fp given input fps. Closes input filesN(trpatht copyfileobjRt PatchedFiletclosetAssertionError(tbasis_fptdelta_fptout_fp((srdiff_backup\Rdiff.pyctwrite_patched_fpGscCs2ti|}|i|}ti|||S(s:Write fileobj fp to rp by writing to tempfile and renaming(tTempFileRRR trename(tfpR ttftretval((srdiff_backup\Rdiff.pyctwrite_via_tempfileLscCs|itijpt|o|idd}n|id}ti|id|}|o|i|Snt||SdS(s5Patch routine that must be run locally, writes to outrp This should be run local to rp_basis because it needs to be a real file (librsync may need to seek around in it). If outrp is None, patch rp_basis instead. The return value is the close value of the delta, so it can be used to produce hashes. RiN( tconntGlobalstlocal_connectionR$RRR"RR.(trp_basistrp_deltatoutrptdelta_compressedRt patchfile((srdiff_backup\Rdiff.pyct patch_localSs cCs|itijpt|iiit||id}ti|id|}|o|i |nt ||dS(s@Write rpnew == rpin using rpout as basis. rpout and rpnew localRN( R/R0R1R$RRR RR"RR.(trpintrpouttrpnewRt patched_file((srdiff_backup\Rdiff.pyct copy_locales(t__doc__tosRR0RtstaticR)R RtNoneR RRRRRR(R.R7R<(((srdiff_backup\Rdiff.pycssH       PK8tl&&rdiff_backup/Security.pyc ~Hc @sgdZddkZddkZddkZddkZddkZddkZddkZdefdYZ da dddgZ hdd <dd <dd <dd <dd <dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ddException that indicates an improper request has been received(t__name__t __module__t__doc__(((srdiff_backup\Security.pycRstservertsecurity_levelt restrict_pathis os.listdirsrpath.make_file_dictsos.chmodsos.chowns os.removes os.removedirss os.renames os.renamessos.rmdirs os.unlinksos.utimes os.lchownisos.links os.symlinksos.mkdirs os.makedirscCst||ttidS(s,Initialize allowable request list and chrootN(tset_security_leveltset_allowed_requeststGlobalsR(tactiontcmdpairs((srdiff_backup\Security.pyct initialize2s cCs0|itijpt|iit_dS(s&Reset restrict path to be within rpathN(tconnR tlocal_connectiontAssertionErrort normalizetpathR(trp((srdiff_backup\Security.pyctreset_restrict_path8sc sdfd}fd}d}tiodSn|d}t|djo|d}n|}|djp |d jo|||p|||od }ti}q|od }||}q|ptd }||}n|d jp |djot|djp |||p|||od }ti}q|oVd }titi ti ||ti oti i }qt iidq|ptd}||}n|djo|||p|||od }ti}q|od }||}q|ptd}||}n9|djod }ti}ndptd||t_ti ti |ii t_dS(sIf running client, set security level and restrict_path To find these settings, we must look at the action to see what is supposed to happen, and then look at the cmdpairs to see what end the client is on. cSs |d S(Ni((tcmdpair((srdiff_backup\Security.pyctislocalEscs|o |S(N((tcp1tcp2(R(srdiff_backup\Security.pyct bothlocalFscs| o | S(N((RR(R(srdiff_backup\Security.pyct bothremoteGscSs|dS(Ni((R((srdiff_backup\Security.pyctgetpathHsNiitbackupscheck-destination-dirtminimals read-onlys update-onlytrestores restore-as-ofsInvalid restore directorytalltmirrors test-serverslist-incrementsslist-increment-sizess list-at-timeslist-changed-sincescalculate-averagesremove-older-thantcompares compare-hashs compare-fulltverifysUnknown action %s( s test-serverslist-incrementsslist-increment-sizess list-at-timeslist-changed-sincescalculate-averagesremove-older-thanscompares compare-hashs compare-fullsverify(R Rtlenttempfilet gettempdirRtMaintrestore_set_roottrpathtRPathRt restore_rootRtlogtLogt FatalErrorRRR( R R RRRRRt sec_leveltrdir((Rsrdiff_backup\Security.pycR=sl      3        cCsddddddddd d d d d dg}|djp|djp |djo8|idddddddddddddg n|djp |djoM|idd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2gn|djp |djo>|id3d4d5d6d7d8d9d:d;d<d=d>d?d@dAgn|djoA|idBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQgntio/|idRdSdTdUdVdWdXdYdZd[g nhax|D]}d\t|R<R RRRR8R@R;R=(((srdiff_backup\Security.pycss$$0$$   B J   PK8 DaV%V%rdiff_backup/SetConnections.pyc ~Hc @sdZddkZddkZddklZddkZddkZddkZdadZ dgZ de fdYZ dddZd Zd Zd Zd Zd ZdZdZdZdZdZdZdZdZdZdZdS(sParse args and setup connections The functions in this module are used once by Main to parse file descriptions like bescoto@folly.stanford.edu:/usr/bin/ls and to set up the related connections. iN(tLogsssh -C %s rdiff-backup --serversssh %s rdiff-backup --servertSetConnectionsExceptioncBseZRS((t__name__t __module__(((srdiff_backup\SetConnections.pycR*scCs|o |antip tantiotdti7an|pgSntt|}td|o|oti dqn|otddntt |}|o|t ddft d=ssFThe --remote-cmd flag is not compatible with remote file descriptions.s;Remote schema option ignored - no remote file descriptions.iii( t __cmd_schematGlobalstssh_compressiont__cmd_schema_no_compresstremote_tempdirtmaptparse_file_desctfilterRt FatalErrortdesc2cmd_pairst cmd_pairs(targlistt remote_schemat remote_cmdt desc_pairstcmdpairs((srdiff_backup\SetConnections.pyct get_cmd_pairs,s&    cCsB|\}}|ot|}n ti}ti||iS(s<Return normalized RPath from cmd_pair (remote_cmd, filename)(tinit_connectionRtlocal_connectiontrpathtRPatht normalize(tcmd_pairtcmdtfilenametconn((srdiff_backup\SetConnections.pyct cmdpair2rpIs   cCs5|\}}|pd|fSnt||fSdS(s1Return pair (remote_cmd, filename) from desc_pairN(tNonet fill_schema(t desc_pairt host_infoR((srdiff_backup\SetConnections.pycRPs cs fd}gdd}}}x|tjodfSn|djo|d}||d}nQ|djo9|djo,|ddjo| o|iPnd}|i||d}q&||ddi||dfS(s&Parse file description returning pair (host_info, filename) In other words, bescoto@folly.stanford.edu::/usr/bin/ls => ("bescoto@folly.stanford.edu", "/usr/bin/ls"). The complication is to allow for quoting of : by a \. If the string is not separated by :, then the host_info is None. cs+|tjotdndS(Ns%Unexpected end to file description %s(tlenR(ti(t file_desc(srdiff_backup\SetConnections.pyct check_len_sis\it:tN(R!R%tpoptappendtjoin(R'R(thost_info_listR&tlast_was_quoted((R'srdiff_backup\SetConnections.pycR Vs$    3  cCst|S(s:Fills host_info into the schema and returns remote command(R(R$((srdiff_backup\SetConnections.pycR"xsc Cs|p tiSntd|dtidjoPddk}|i|dtddd |id |i}|i |i }}nti |\}}t ti }ti|||}t||td |d t|||t||S( sRun remote_cmd, register connection, and then return it If remote_cmd is None, then the local connection will be returned. This also updates some settings on the remote side, like global settings, its connection number, and verbosity. s Executing itntiNtshelltbufsizeitstdintstdoutsRegistering connection %di(RRRtostnamet subprocesstPopentFalsetPIPER3R4tpopen2R%t connectionst connectiontPipeConnectiontcheck_connection_versiontinit_connection_routingtinit_connection_settings(RR7tprocessR3R4t conn_numberR((srdiff_backup\SetConnections.pycR|s"      cCsy|iid}Wn5tij o&}tid||tifnX|tijotdti|fdndS(s/Log warning if connection has different versiontversionsW%s Couldn't start up the remote connection by executing %s Remember that, under the default settings, rdiff-backup must be installed in the PATH on the remote system. See the man page for more information on this. This message may also be displayed if the remote version of rdiff-backup is quite different from the local version (%s).s;Warning: Local version %s does not match remote version %s.iN(RtgetR=tConnectionReadErrorRRRD(RRtremote_versiont exception((srdiff_backup\SetConnections.pycR?s cCsy|ti|<|ii|x8tidD])}|ii|i|ii|q+Wtii|ti|dS(s7Called by init_connection, establish routing, conn dictiN( Rtconnection_dicttSetConnectionstinit_connection_remoteR<tadd_redirected_connRCR,t__conn_remote_cmds(RRCRtother_remote_conn((srdiff_backup\SetConnections.pycR@s   cCs`|iiiti|iiitix-tiD]"}|ii|ti |q6WdS(s4Tell new conn about log settings and updated globalsN( tlogRt setverbosityt verbositytsetterm_verbositytterm_verbosityRtchanged_settingstsetRE(Rt setting_name((srdiff_backup\SetConnections.pycRAs  cCs=|t_|ti_tidtids.$    "         PK8wH11rdiff_backup/TempFile.pyc ~Hc@s_dZddkZddkZddkZdadZdZdeifdYZdS(sManage temp files Earlier this had routines for keeping track of existing tempfiles. Now we just use normal rpaths instead of the TempFile class. iNicCst|iS(s<Return new tempfile that isn't in use in same dir as rp_base(t new_in_dirt get_parent_rp(trp_base((srdiff_backup\TempFile.pyctnew"scCsz|itijptxYtdjotdddan|idt}tda|ip|SqqdS(s)Return new temp rpath in directory dir_rpis!Warning: Resetting tempfile indexiisrdiff-backup.tmp.%diN(tconntGlobalstlocal_connectiontAssertionErrort_tfindextLogtappendtlstat(tdir_rpttf((srdiff_backup\TempFile.pycR&s     tTempFilecBs eZdZdZdZRS(s:Like an RPath, but keep track of which ones are still herecCs|ip-|io|int|dSn|io|i o|inti|||i|ioE|iti|||i|iotdqnt|dS(s<Rename temp file to permanent location, possibly overwritingNs Cannot rename tmp file correctly(R tdeletetremove_listingtisdirtrpathtrenametsetdatatOSError(tselftrp_dest((srdiff_backup\TempFile.pycR7s         cCstii|t|dS(N(RtRPathRR(R((srdiff_backup\TempFile.pycRNs(t__name__t __module__t__doc__RR(((srdiff_backup\TempFile.pycR5s ( RtosRRRRRRR(((srdiff_backup\TempFile.pycss    PK8W9%%rdiff_backup/Time.pyc ~Hc @sdZddkZddkZddkZddkZddkZddkZdefdYZhdd<dd<d d <d d <d(d<d)d<d*d[0-9]{4})[-/](?P[0-9]{1,2})[-/](?P[0-9]{1,2})$sD^(?P[0-9]{1,2})[-/](?P[0-9]{1,2})[-/](?P[0-9]{4})$cCsA|p ti}x'tiD]}|iit|qWdS(s>Sets the current time in curtime and curtimestr on all systemsN(ttimetGlobalst connectionstTimetsetcurtime_localtlong(tcurtimetttconn((srdiff_backup\Time.pyct setcurtime's cCs|t|aadS(s!Only set the current time locallyN(t timetostringRt curtimestr(t timeinseconds((srdiff_backup\Time.pycR-scCsfd|jo tjnptd|ft|}x$tiD]}|ii||qEWdS(s6Sets the previous inc time in prevtime and prevtimestrisTime %s is out of boundsN(RtAssertionErrorRR R R tsetprevtime_local(RttimestrR((srdiff_backup\Time.pyct setprevtime2s !  cCs||aadS(s/Like setprevtime but only set the local versionN(tprevtimet prevtimestr(RR((srdiff_backup\Time.pycR:scCs)tidti|}|t|S(s5Return w3 datetime compliant listing of timeinsecondss%Y-%m-%dT%H:%M:%S(R tstrftimet localtimetgettzd(RR((srdiff_backup\Time.pycR?sc Csy|d id\}}tt|id\}}}tt|id\}}}d|jo djnp t|d|jo djnptd|jo d jnptd |jo d jnptd |jo d jnptd |jo d jnpt||||||ddd f } ti| } t| t|dSWn tt tfj o dSnXdS(sReturn time in seconds from w3 timestring If there is an error parsing the string, or it doesn't look like a w3 datetime string, return None. itTt-t:ili4ii iiii;i=iN( tsplittmaptintRtcalendarttimegmRt tzdtosecondst TypeErrort ValueErrortNone( t timestringtdatetdaytimetyeartmonthtdaythourtminutetsecondt timetuplet utc_in_secs((srdiff_backup\Time.pyct stringtotimeDs!!(%%%%%!cCstiti|S(sReturn pretty version of time(R tasctimeR(R((srdiff_backup\Time.pyct timetopretty[scCstt|S(s2Return pretty version of time given w3 time string(R9R7(R,((srdiff_backup\Time.pyctstringtopretty_scCs8ytiti|SWntj o dSnXdS(s=Converts time like "Mon Jun 5 11:00:23" to epoch sec, or NoneN(R tmktimetstrptimeR*R+(t prettystring((srdiff_backup\Time.pyct prettytotimecscCs:g}t|d\}}|djo|id|n|djo|idnt|d\}}|djo|id|n|djo|idn|djo|idn`| p |djoJt|tpt|to|id |q-|id |nd i|S( s9Convert num of seconds to readable string like "2 hours".iis%d hourss1 houri<s %d minutess1 minutes1 seconds %s secondss %.2f secondst (tdivmodtappendt isinstanceR%Rtjoin(tsecondstpartlistthourstminutes((srdiff_backup\Time.pyct inttoprettyhs$      csfd}tdjo |nd}xoti}|p |nt|id|id}}|tjp |djo |n||t|7}|idq6W|S(s@Convert a string expressing an interval (e.g. "4D2s") to secondscstddS(NsBad interval string "%s" Intervals are specified like 2Y (2 years) or 2h30m (2.5 hours). The allowed special characters are s, m, h, D, W, M, and Y. See the man page for more information. (R((tinterval_string(srdiff_backup\Time.pycterror|siii(tlent_interval_regexptmatchR%tgroupt_interval_conv_dicttend(RIRJttotalRMtnumtext((RIsrdiff_backup\Time.pyctintstringtosecondszs  % cCs |d joti}ntioti|d}|oti d}nti d}|djo d}n|djo d}ndSttt|d\}}d|jo djnpt d|jo djnpt d |||fS( sReturn w3's timezone identification string. Expresed as [+/-]hh:mm. For instance, PDT is -07:00 during dayling savings and -08:00 otherwise. Zone is coincides with what localtime(), etc., use. If no argument given, use the current time. ii<it+R!tZii;s %s%02d:%02dN( R+R tdaylightRtaltzonettimezoneR$tabsR@R(Rt dst_in_effecttoffsettprefixRFRG((srdiff_backup\Time.pycRs   %%cCs|djodSnt|djpt|ddjp|ddjo|ddjptdd t|d t|d S( s3Given w3 compliant TZD, return how far ahead UTC isRViiR!RUiR"ii<i(RKRR%(ttzd((srdiff_backup\Time.pycR(s  :cCst|tijo$t|}|dj ptnt|tijo$t|}|dj ptn||jodSn||jodSndSdS(s.Compare time1 and time2 and return -1, 0, or 1iiiN(ttypettypest StringTypeR7R+R(ttime1ttime2((srdiff_backup\Time.pyctcmps    cCsNtiiiii}|it||jo |dSn|| dS(sReturn time in seconds of given backup The current mirror is session_num 0, the next oldest increment has number 1, etc. Requires that the Globals.rbdir directory be set. ii(R trbdirRtrestoret MirrorStructtget_increment_timestsortRK(t session_numtrpt session_times((srdiff_backup\Time.pycttime_from_sessions   c s|d jotd}ndjo|Snfd}tiotSntptt}|o|Sntiottd |Snt }|d j o|Sny|t SWnt j onXt ip t i}|p |nd|idt|idt|idtft}|o|Sn|d S( sConvert a generic time string to a time in seconds rp is used when the time is of the form "4B" or similar. Then the times of the increments of that particular file are used. RtnowcstddS(NsiBad time string "%s" The acceptible time strings are intervals (like "3D64s"), w3-datetime strings, like "2002-04-26T04:22:01-07:00" (strings like "2002-04-26T04:22:01" are also acceptable - rdiff-backup will use the current time zone), or ordinary dates like 2/4/1997 or 2001-04-23 (various combinations are acceptable, but the month always precedes the day).(R((R(srdiff_backup\Time.pycRJsis%s-%02d-%02dT00:00:00%sR/R0R1N(R+tglobalst_integer_regexptsearchR%R7Rt_session_regexpRmR>RTRt_genstr_date_regexp1t_genstr_date_regexp2RN(RRRkRJRRM((Rsrdiff_backup\Time.pyct genstrtotimes:       1 i: i'i3(#t__doc__R R`tretsysR&R t ExceptionRROtcompileRpRrRLRsRtR+RRRRRRRR7R9R:R>RHRTRR(RdRmRu(((srdiff_backup\Time.pycss6< (               PK8Chpprdiff_backup/__init__.pyc ~Hc@sdS(N((((srdiff_backup\__init__.pycssPK8 9Sllrdiff_backup/backup.pyc ~Hc@sdZddklZddkZddkZddkZddkZddkZddkZddk Z ddk Z ddk Z ddk Z ddk Z ddkZddkZddkZddkZddkZddkZddkZdZdZdddYZe ieddd YZe ied dd YZd eifd YZdefdYZdS(s:High level functions for mirroring and mirror+incrementingi(t generatorsNcCstid|i|ifd|iii}|iii}|i}|i||d|i |}|i |}|i ||dS(s(Turn dest_rpath into a copy of src_rpathsStarting mirror %s to %siiN( tlogtLogtpathtconntbackupt SourceStructtDestinationStructtget_source_selecttset_rorp_cachetget_sigst get_diffstpatch(t src_rpatht dest_rpathtSourceStDestSt source_rpitert dest_sigitertsource_diffiter((srdiff_backup\backup.pyctMirrors  cCstid|i|ifd|iii}|iii}|i}|i||d|i |}|i |}|i |||dS(s2Mirror + put increments in tree based at inc_rpaths%Starting increment operation %s to %siiN( RRRRRRRRR R R tpatch_and_increment(R Rt inc_rpathRRRRR((srdiff_backup\backup.pyctMirror_and_increment(s  RcBs/eZdZdZdZdZdZRS(s-Hold info used on source side when backing upcGs_ti|}|i|||itid}ti|||_ti d|dS(sjInitialize select object using tuplelist Note that each list in filelists must each be passed as separate arguments, so each is recognized as a file by the connection. Otherwise we will get an error because a list containing files can't be pickled. Also, cls._source_select needs to be cached so get_diffs below can retrieve the necessary rps. it select_mirrorN( t selectiontSelectt ParseArgstset_itertGlobalstpipeline_max_lengthtrorpitertCacheIndexablet_source_selecttset(tclstrpatht tuplelistt fileliststselt cache_size((srdiff_backup\backup.pyctset_source_select9s   cCs|iS(s7Return source select iterator, set by set_source_select(R!(R#((srdiff_backup\backup.pycRLsc#s|i}tidfd}fd}x|D]}|tijotiVq=n|i|ipti |i}|i }|i o|i |i nW|io2|io||||q |||n|i|id|Vq=WdS(s8Return diffs of any files with signature in dest_sigitert ListErrorcs]titii|df}|o|iti|n |i|i ddS(s7Attach file of snapshot to diff_rorp, w/ error checkingtrbtsnapshotN( trobusttcheck_common_errorR$tRPathtopentsetfilethasht FileWrappertzerotset_attached_filetype(t diff_rorptsrc_rptfileobj(t error_handler(srdiff_backup\backup.pyctattach_snapshotTs  cs^titi||f}|o|i||idn|i|iddS(s3Attach file of diff to diff_rorp, w/ error checkingtdiffR,N(R-R.tRdifftget_delta_sigrp_hashR1R5R4(R6R7tdest_sigR8(R9(srdiff_backup\backup.pyct attach_diff\s  R,N(R!R-tget_error_handlertiterfiletMiscIterFlushRepeatt MiscIterFlushtgettindexR$tRORPatht getRORPatht isflaglinkedt flaglinkedt get_link_flagtisregtclose_if_necessaryR5(R#Rt source_rpsR:R?R>R7R6((R9srdiff_backup\backup.pycR Ps*        N(t__name__t __module__t__doc__tNoneR!R)RR (((srdiff_backup\backup.pycR6s   RcBsSeZdZddZdZdZdZdZd dZdZ RS( s2Hold info used by destination side when backing upicsOfd}ti|o(tiiti}|o|SqHn|S(sReturn destination select rorpath iterator If metadata file doesn't exist, select all files on destination except rdiff-backup-data directory. cs#ti}|i|iS(s-Get the combined iterator from the filesystem(RRtparse_rbdir_excludeR(R'(R$(srdiff_backup\backup.pyctget_iter_from_fss (tmetadatat SetManagert ManagerObjt GetAtTimetTimetprevtime(R#R$t use_metadataRSt rorp_iter((R$srdiff_backup\backup.pyctget_dest_select}s  cCsD|i||}ti||}t|tid||_dS(sInitialize cls.CCPP, the destination rorp cache for_increment should be true if we are mirror+incrementing, false if we are just mirroring. iN(R\Rt Collate2IterstCacheCollatedPostProcessRRtCCPP(R#tbaserpt source_itert for_incrementt dest_itertcollated((srdiff_backup\backup.pycR sccstid}d}x|iD]\}}titij o-|d7}||jod}tiVqin|o/|o(||joti pti ||pV|o |i p|i }|i ||||}|o|ii ||VqqqWdS(sYield signatures of any changed destination files If we are backing up across a pipe, we must flush the pipeline every so often so it doesn't get congested on destination end. iiiN( RRR_t backup_readert backup_writerRARBtpreserve_hardlinkstHardlinktrorp_eqREt get_one_sigt flag_changed(R#tdest_base_rpathtflush_thresholdtnum_rorps_seentsrc_rorpt dest_rorpREtsig((srdiff_backup\backup.pycR s$       cCstio@|o9ti|o)ti|}|iti|n{|od|i}|i oGt i ||}|i |}|djodSn|i|qnti|}|S(s5Return a signature given source and destination rorpsN(RRgRhtislinkedR$RFRItget_link_indexRGRKtlongnamet get_mirror_rptget_one_sig_fpRQR1(R#RlRERoRpR>tdest_rptsig_fp((srdiff_backup\backup.pycRjs   cCs|iptiid|ddSntidjo6|i o(|io|i d|i Bnyt i |SWnt j o}|itijoby(|i d|i Bt i |SWq t tfj o!tiid|ifq XqnXdS(s?Return a signature fp of given index, corresponding to reg filet UpdateErrors/File changed from regular file before signatureiis9Could not open %s for reading. Check permissions on file.N(RKRtErrorLogt write_if_openRQRt process_uidtreadabletisownertchmodtgetpermsR<t get_signaturetIOErrorterrnotEPERMtOSErrorRt FatalErrorR(R#Rwte((srdiff_backup\backup.pycRvs$   cCstit||ig}xDti||D]0}tid|id||i|q.W|i |ii |i dS(s*Patch dest_rpath with an rorpiter of diffssProcessing changed file iN( RtIterTreeReducert PatchITRBR_t FillInIterRRt get_indexpathREtFinishtclosetsetdata(R#RRt start_indextITRR;((srdiff_backup\backup.pycR s  cCstit|||ig}xDti||D]0}tid|id||i|q1W|i |ii |i dS(s<Patch dest_rpath with rorpiter of diffs and write incrementssProcessing changed file iN( RRt IncrementITRBR_RRRRRERRR(R#RRRRR;((srdiff_backup\backup.pycRs   (( RNRORPR\R R RjRvR R(((srdiff_backup\backup.pycR{s     R^cBseZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdZdZdZdZRS(sCache a collated iter of (source_rorp, dest_rorp) pairs This is necessary for three reasons: 1. The patch function may need the original source_rorp or dest_rp information, which is not present in the diff it receives. 2. The metadata must match what is stored in the destination directory. If there is an error, either we do not update the dest directory for that file and the old metadata is used, or the file is deleted on the other end.. Thus we cannot write any metadata until we know the file has been procesed correctly. 3. We may lack permissions on certain destination directories. The permissions of these directories need to be relaxed before we enter them to computer signatures, and then reset after we are done patching everything inside them. 4. We need some place to put hashes (like SHA1) after computing them and before writing them to the metadata. The class caches older source_rorps and dest_rps so the patch function can retrieve them if necessary. The patch function can also update the processed correctly flag. When an item falls out of the cache, we assume it has been processed, and write the metadata for it. cCs||_||_||_ti|_tiotii nt i i |_ h|_g|_g|_g|_dS(sInitialize new CCWP.N(titerR(t dest_root_rpt statisticstinit_statfileobjt statfileobjRtfile_statisticst FileStatstinitRTRVt GetWritert metawritert cache_dicttcache_indiciestdir_perms_listt parent_list(tselft collated_iterR(R((srdiff_backup\backup.pyct__init__s       cCs|S(N((R((srdiff_backup\backup.pyct__iter__<scCs|ii\}}|i|||o |ip|i}||dddg|i|<|ii|t|i|i jo|i n||fS(s@Return next (source_rorp, dest_rorp) pair. StopIteration passediN( Rtnextt pre_processRERQRRtappendtlenR(t shorten_cache(Rt source_rorpRpRE((srdiff_backup\backup.pycR>scCsxtio|oti||n|oH|io;tidjo+|iddjo|i||ndS(sDo initial processing on source_rorp and dest_rorp It will not be clear whether source_rorp and dest_rorp have errors at this point, so don't do anything which assumes they will be backed up correctly. iiiN(RRgRhtadd_rorptisdirR|Rtunreadable_dir_init(RRRp((srdiff_backup\backup.pycRIs $cCsd|ii|i}|id|iB|o-|io |ii||ifndS(sInitialize an unreadable dir. Make it readable, and if necessary, store the old permissions in self.dir_perms_list so the old perms can be restored. iN(Rt new_indexRERRRRR(RRRpRw((srdiff_backup\backup.pycRWsc Cs|id}|id=y |i|\}}}}}Wn.tj o"tid|fddSnX|i|=|i||||||io|i|n|i|||dS(s=Remove one element from cache, possibly adding it to metadatais(Warning index %s missing from CCPP cacheiN( RRtKeyErrorRRt post_processRtreset_dir_permstupdate_parent_list(Rt first_indextold_source_rorpt old_dest_rorpt changed_flagt success_flagtinc((srdiff_backup\backup.pycRcs         cCs|o |ip|o |ipdSn|ip|djp t|n|idd}t|t|}}||jo%||djpt||fn4||d |d jp t||i| |_|ii|||ffdS(sIUpdate the parent cache with the recently expired main cache entry This method keeps parent directories in the secondary parent cache until all their children have expired from the main cache. This is necessary because we may realize we need a parent directory's information after we have processed many subfiles. Niii((RRtAssertionErrorRR(RRERoRptlast_parent_indextlp_indextli((srdiff_backup\backup.pycRss   %#cCs#tio|oti|n| p|o:|o|ii|n|o|ii|qkn|djo |}n|djo |}nd}|djp |djo|ii||n|o!|i o|i i |nti ot ii||||ndS(s Post process source_rorp and dest_rorp. The point of this is to write statistics and metadata. changed will be true if the files have changed. success will be true if the files have been successfully updated (this is always false for un-changed files). iiiN(RRgRhtdel_rorpRtadd_source_filet add_dest_fileRQt add_changedtlstatRt write_objectRRRtupdate(RRRptchangedtsuccessRt metadata_rorp((srdiff_backup\backup.pycRs$    cCsU|id\}}|i}||jo(|t| |jo|i|ndS(s;Reset the permissions of directories when we have left themiN(RRERR(Rt current_indextdir_rptpermst dir_index((srdiff_backup\backup.pycRs   cCs|ii|S(s$Return true if given index is cached(Rthas_key(RRE((srdiff_backup\backup.pyctin_cachescCsd|i|dSignal that the file with given index was updated successfullyiiN(R(RRE((srdiff_backup\backup.pyct flag_successscCsd|i|dy|i|dSWn$tj o|i|dSnXdS(s0Retrieve mirror_rorp with given index from cacheiN(RRR(RRE((srdiff_backup\backup.pyctget_mirror_rorpscCs|i|i|dS(s"Update the source rorp's SHA1 hashN(Rtset_sha1(RREtsha1sum((srdiff_backup\backup.pyct update_hashscCsAti|}|pdSn|i|i}|i|dS(s=Tag associated source_rorp with same hash diff_rorp points toN(Rhtget_sha1RRER(RR6RR((srdiff_backup\backup.pyctupdate_hardlink_hashs cCsx|io|iqWx1|io&|ii\}}|i|qW|iitii t i ot i nt iot iint idS(s+Process the remaining elements in the cacheN(RRRtpopRRRRTRVtConvertMetaToDiffRtprint_statisticsRtprint_active_statsRRtwrite_active_statfileobj(RRR((srdiff_backup\backup.pycRs      (RNRORPRRRRRRRRRRRRRkRRRRRRRR(((srdiff_backup\backup.pycR^s, "                 RcBseZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZRS(sMPatch an rpath with the given diff iters (use with IterTreeReducer) The main complication here involves directories. We have to finish processing the directory after what's in the directory, as the directory may have inappropriate permissions to alter the contents or the dir's mtime could change as we change the contents. cCsp||_|itijpttip ti|_d\|_ |_ ||_ t id|_dS(s9Set basis_root_rp, the base of the tree to be incrementedRyN(NN(t basis_root_rpRRtlocal_connectionRRtget_active_statfileobjt StatFileObjRRQtdir_replacementt dir_updateR_R-R@R9(RRR_((srdiff_backup\backup.pycRs   cCs1|ii|}|ip|o |i S(s0True if diff_rorp and mirror are not directories(R_RR(RRER6t mirror_rorp((srdiff_backup\backup.pyctcan_fast_processscCsti|ii||i\}}|i p t|ti|}|i |||og|i o$t i |||ii |q|o+|i o|i|ii|qn&|i|i o|indS(s>Patch base_rp with diff_rorp (case where neither is directory)N(Rttget_mirror_inc_rpsR_RRRRtTempFiletnewt patch_to_tempRR$trenameRtdeleteRR(RRER6t mirror_rptdiscardttf((srdiff_backup\backup.pyct fast_process s!    cCs|io|i||nl|idjo:|i||}|pdSq|djodSqn|i|||pdSn|io"|i oti||n|i||S(sPatch basis_rp, writing output in new, which doesn't exist yet Returns true if able to write new as desired, false if UpdateError or similar gets in the way. R,iii( RHtpatch_hardlink_to_temptget_attached_filetypetpatch_snapshot_to_temptpatch_diff_to_tempRR$t copy_attribstmatches_cached_rorp(Rtbasis_rpR6Rtresult((srdiff_backup\backup.pycRs  cCs*ti|||i|ii|dS(s4Hardlink diff_rorp to temp, update hash if necessaryN(Rhtlink_rpRR_R(RR6R((srdiff_backup\backup.pycR/scCs|io(|i||ti||dSnti|iti||f}t|t i o!|i i |i |idSn|djS(sWrite diff_rorp to new, return true if successful Returns 1 if normal success, 2 if special file is written, whether or not it is successful. This is because special files either fail with a SpecialFileError, or don't need to be compared. iii(t isspecialt write_specialR$RR-R.R9tcopyt isinstanceR2tReportR_RREt sha1_digest(RR6Rtreport((srdiff_backup\backup.pycR4s cCs||idjptti|iti|||f}t|ti o!|i i |i |i dSn|djS(s0Apply diff_rorp to basis_rp, write output in newR;ii(RRR-R.R9R<t patch_localRR2RR_RRER(RRR6RR((srdiff_backup\backup.pycRIs cCsm|ipdSn|ii|i}|o|i|odSntiid|d|ifdS(sReturn true if new_rp matches cached src rorp This is a final check to make sure the temp file just written matches the stats which we got earlier. If it doesn't it could confuse the regress operation. This is only necessary for regular files. iRys1Updated mirror temp file %s does not match sourcei( RKR_RREt equal_looseRRzR{R(RR6tnew_rpt cached_rorp((srdiff_backup\backup.pycRSs cCsktid}ti|ti||fdjo3|i|io|in|indS(s1Write diff_rorp (which holds special file) to newtSpecialFileErroriN( R-R@R.R$RRRRttouch(RR6Rteh((srdiff_backup\backup.pycRcs %  cCsti|ii||i\|_}|io|i||inL|i||io5|i o|ii |q|ii |ndS(s9Start processing directory - record information for laterN( RtRR_RRtbase_rpRt prepare_dirtset_dir_replacementRRR(RRER6R((srdiff_backup\backup.pyct start_processks$  cCs|idjptti||_|id||ipK|iio|iint i |i i |i |idSndSdS(sSet self.dir_replacement, which holds data until done with dir This is used when base_rp is a dir, and diff_rorp is not. Returns 1 for success or 0 for failure R,iiN(RRRRRRRQRRR$tcopy_with_attribsR_RRE(RR6R ((srdiff_backup\backup.pycR ts cCs|i|_|ipI|io|iin|i|i|ii |i n.|ii |i o|ii |i ndS(s!Prepare base_rp to be a directoryN( RGRRRR RRtmkdirR_RRER(RR6R ((srdiff_backup\backup.pycR s    cCs|io||iiptti|i|itidjo;|iiddjo!|ii d|iiBqnF|i o;|ii |i i oti |i |iqndS(sFinish processing directoryiiiN(RR RRR$RRR|RRRtrmdirRR(R((srdiff_backup\backup.pyct end_processs %  (RNRORPRRRRRRRRRR R R R(((srdiff_backup\backup.pycRs          RcBs)eZdZdZdZdZRS(swPatch an rpath with the given diff iters and write increments Like PatchITRB, but this time also write increments. cCs ||_ti|||dS(N(t inc_root_rpRR(RRRt rorp_cache((srdiff_backup\backup.pycRs cCs3ti|ii||i|i\}}ti|}|i|||ot i |||}|dj o|ii |||i o|in|io$ti|||ii|n,|io|i|ii|ndSq n|i|io|indS(sAPatch base_rp with diff_rorp and write increment (neither is dir)N(RtRR_RRRRRRt incrementt IncrementRQRRKtfsync_with_dirRR$RRRRR(RRER6Rt inc_prefixRR((srdiff_backup\backup.pycRs&'        cCs3ti|ii||i|i\|_}|ii|ip|iipt |io^t i ||i|}|o|i o|i n|ii|i||ind|i||ioMt i |i|i|}|o'|ii|||ii|q/ndS(sStart processing directoryN(RtRR_RRRR RRRRRRKRR R RRR(RRER6RR((srdiff_backup\backup.pycR s * $   (RNRORPRRR (((srdiff_backup\backup.pycRs  ((((RPt __future__RRRRTRRRhR-RR$tstaticRRRXR<RRAR2RtRRRt MakeClassRR^t ITRBranchRR(((srdiff_backup\backup.pycss  B } PK8"δ%%rdiff_backup/compare.pyc ~Hc @s*dZddklZddkZddkZddkZddkZddkZddkZddk Z ddk Z ddk Z dZ dZ dZdZdZdd Zdd Zd eifd YZeied eifdYZeiedddYZdS(sPerform various kinds of comparisons. For instance, full-file compare, compare by hash, and metadata-only compare. This uses elements of the backup and restore modules. i(t generatorsNcCsV|iii}|iii}|i|||}t|i|}|i|S(sBCompares metadata in src_rp dir with metadata in mirror_rp at time(tconntcomparetRepoSidetDataSidetinit_and_get_itert print_reportst compare_fasttclose_rf_cache(tsrc_rpt mirror_rptinc_rpt compare_timet repo_sidet data_sidet repo_itert return_val((srdiff_backup\compare.pyctCompares  cCsV|iii}|iii}|i|||}t|i|}|i|S(sCompare files at src_rp with repo at compare_time Note metadata differences, but also check to see if file data is different. If two regular files have the same size, hash the source and compare to the hash presumably already present in repo. (RRRRRRt compare_hashR(R R R R R RRR((srdiff_backup\compare.pyct Compare_hash(s  c Csn|iii}|iii}|i}|i||||}|i||}t|} |i| S(sCompare full data of files at src_rp with repo at compare_time Like Compare_hash, but do not rely on hashes, instead copy full data over. ( RRRRtget_source_selectt attach_filest compare_fullRR( R R R R R Rtsrc_itertattached_repo_itert report_iterR((srdiff_backup\compare.pyct Compare_full8s     c CsO|itijptti|||}tii}d}x|D]}|ipqHn|i p$t i d|i fdqHnti i||i|}ti|}||ijot i d|i dqH|d7}t i d|i ||ifdqHWti|pt i dd n|S( s@Compute SHA1 sums of repository files and check against metadatais^Warning: Cannot find SHA1 digest for file %s, perhaps because this feature was added in v1.1.1isVerified SHA1 digest of iisyWarning: Computed SHA1 digest of %s %s doesn't match recorded digest of %s Your backup repository may be corrupted!s!Every file verified successfully.i(RtGlobalstlocal_connectiontAssertionErrorRRt mirror_basetindextisregthas_sha1tlogtLogt get_indexpathtrf_cachetget_fpthashtcompute_sha1_fptget_sha1R( R R t verify_timeRt base_indext bad_filest repo_rorptfpt computed_hash((srdiff_backup\compare.pyctVerifyJs0        cCsti ptd}xI|D]A}d}|iodi|ipd}d|i|fGHqW|ptiddn|S(s<Given an iter of CompareReport objects, print them to screeniit/t.s%s: %ss2No changes found. Directory matches archive data.i(RtserverRRtjointreasonR"R#(Rtchanged_files_foundtreportt indexpath((srdiff_backup\compare.pycRgs#cCs9|o |i}n |i}| p|i ot|dSn| p|i ot|dSn|o|io|io||jo d}nd}|||}| o| od Sn|o d}nd}|o d}nd}t|||Sn#||jod Snt|d Sd S( sCompare src_rp and repo_rorp, return CompareReport comp_data_func should be a function that accepts (src_rp, repo_rorp) as arguments, and return 1 if they have the same data, 0 otherwise. If comp_data_func is false, don't compare file data, only metadata. tnewtdeletediismetadata changed, smetadata the same, s data changeds data the sametchangedN(Rtlstatt CompareReportR tNone(R R-tcomp_data_funcRt meta_changedt data_changedt meta_stringt data_string((srdiff_backup\compare.pyctget_basic_reportts0   !    cCs;|o |ip |i}tid|fddS(s3Log that src_rorp and mir_rorp compare successfullysSuccessful compare: %siN(R$R"R#(tsrc_rorptmir_rorptpath((srdiff_backup\compare.pyct log_successs RcBs eZdZdZdZRS(s3On the repository side, comparing is like restoringcCs9|i||i|||i|ii|iS(s&Return rorp iter at given compare time(tset_mirror_and_rest_timestinitialize_rf_cachetsubtract_indiciesRRtget_mirror_rorp_iter(tclsR R R ((srdiff_backup\compare.pycRs c cs+|i|||}|ii}xti||D]\}}|o |ip|i} |o|o|i o!||jot||q4n|io]|ioP|i|ijo7|ii || |} |i | |i dqn|o |Vq4t i | Vq4WdS(sAttach data to all the files that need checking Return an iterator of repo rorps that includes all the files that may have changed, and has the fileobj set on all rorps that need it. tsnapshotN(RRRtrorpitert Collate2ItersR RHtgetsizeR%R&tsetfiletset_attached_filetypetrpathtRORPath( RMRR R R RR+RERFRR.((srdiff_backup\compare.pycRs"     (t__name__t __module__t__doc__RR(((srdiff_backup\compare.pycRs RcBs)eZdZdZdZdZRS(sAOn the side that has the current data, compare is like backing upccs_|i}xLti||D]8\}}t||}|o |Vqt||qWdS(s9Compare rorps (metadata only) quickly, return report iterN(RRORPRDRH(RMRRRERFR7((srdiff_backup\compare.pycRs   ccskd}|i}xOti||D];\}}t|||}|o |Vq(t||q(WdS(s;Like above, but also compare sha1 sums of any regular filescSss|ip%tid|ifddSn>|i|ijo$ti||ijodSndS(s/Return 0 if their data hashes same, 1 otherwises?Warning: Metadata file has no digest for %s, unable to compare.iii(R!R"R#R$RQR't compute_sha1R)(R RF((srdiff_backup\compare.pycthashes_changeds  N(RRORPRDRH(RMRRZRR RFR7((srdiff_backup\compare.pycRs   c#skdfd}xL|D]D}|i|i}t|||}|o |Vqt|qWdS(s;Given repo iter with full data attached, return report itercSstid|ifddS(NsError reading file %sii(R"R#RG(texcR R-((srdiff_backup\compare.pyct error_handlerscs>|i|ijodSntiti||f S(s5Return 0 if full compare of data matches, 1 otherwisei(RQtrobusttcheck_common_errorRTtcmp(R R-(R\(srdiff_backup\compare.pycRAs N(t new_indexRRDRH(RMtsrc_rootRRAR-R R7((R\srdiff_backup\compare.pycRs  (RVRWRXRRR(((srdiff_backup\compare.pycRs  R=cBseZdZdZdZRS(s,When two files don't match, this tells you how they don't match This is necessary because the system that is doing the actual comparing may not be the one printing out the reports. For speed the compare information can be pipelined back to the client connection as an iter of CompareReports. cCs||_||_dS(N(RR5(tselfRR5((srdiff_backup\compare.pyct__init__s N(RVRWRXR>tfileRc(((srdiff_backup\compare.pycR=s((RXt __future__RRtrestoreROR"tbackuptstaticRTR'R]RRRR0RR>RDRHt MirrorStructRt MakeClasst SourceStructRR=(((srdiff_backup\compare.pycssl     " / PK8i*__rdiff_backup/connection.pyc ~Hc;@sdZddklZddkZddkZddkZddkZddkZddkZddk Z ddk Z ddk Z yddk Z Wne j onXyddkZWne j onXyddkZWne j onXdefdYZdefdYZdefd YZd efd YZd fd YZdefdYZdfdYZdefdYZdefdYZdefdYZdZdfdYZdfdYZdfdYZddkZddk Z ddk!Z!ddk"Z"ddk#Z#ddk$Z$ddk%Z%ddk&Z&ddk'Z'ddk(Z(ddk)Z)ddk*Z*ddk+Z+ddk,Z,ddk-Z-ddk.Z.ddk/Z/ddk0Z0ddk+Z+ddk1Z1ddk2Z2ddk3Z3ddk4Z4ddk5Z5ddk6Z6ddk7Z7ddk8Z8ddk9Z9ddk:Z:ddk;Z;yddk<Z<Wne j onXee_=ei>i?ei=ei=ei@dTruncated header string (problem probably originated remotely)iiiRasReceived quit signalRERIRKRPR\RTRYR_treceived(R&R)RhRRoRetstr2longRRmRGtloadsRMtintRQtFileToMiscItert _getrorpatht _getrpatht _getqrpathRRtconnection_dictR-R.R/(R t header_stringt format_stringRCRlRWtresult((srdiff_backup\connection.pyct_gets6      "   cCs%ti|\}}ti||S(s(Reconstruct RORPath object from raw data(RGRxR9R<(R traw_rorpath_bufRVRW((srdiff_backup\connection.pycR{scCs8ti|\}}}}titi||||S(s.Return RPath object indicated by raw_rpath_buf(RGRxR9R:RR~(R t raw_rpath_bufRRURVRW((srdiff_backup\connection.pycR|scCs8ti|\}}}}titi||||S(s)Return QuotedRPath object from raw buffer(RGRxR6R7RR~(R traw_qrpath_bufRRURVRW((srdiff_backup\connection.pycR} scCs|ii|iidS(s.Close the pipes associated with the connectionN(R'R+R&(R ((srdiff_backup\connection.pyct_closes (RRR RRRDRAR3R?R@R;R8R=R5RcRFRmRrRuRR{R|R}R(((srdiff_backup\connection.pycR%\s,              tPipeConnectioncBskeZdZddZdZdZdZdZdZdZ d Z d Z d Z RS( sLProvide server and client functions for a Pipe Connection Both sides act as modules that allows for remote execution. For instance, self.conn.pow(2,8) will execute the operation on the server side. The only difference between the client and server is that the client makes the first request, and the server listens first. icCsMti|||||_h|_x!tdD]}d|i|sJl  s#   Gi PK8uxl3Y3Yrdiff_backup/eas_acls.pyc ~Hc@s)dZddklZddkZddkZddkZyddkZWnej onXddkZddk Z ddk Z ddk Z ddk Z ddk Z ddkZddkZddkZddkZhadd!dYZdZdZdZd e ifd YZd e ifd YZd Zdd"dYZddddZdZdZ ddZ!dZ"dZ#dZ$defdYZ%de ifdYZ&dZ'dZ(e(e_)dZ*e*e_+dZ,e,e_-d Z.e.e_/dS(#s!Store and retrieve extended attributes and access control lists Not all file systems will have EAs and ACLs, but if they do, store this information in separate files in the rdiff-backup-data directory, called extended_attributes.

;ljFLtTNQPtCVj}hPjjR?+FHF ;t"P8;ljD$uhOjzHFLPcVLMQRdC ;ʼnD$ WWWVV(uuF tn\$WVD$tXPFLP6L$hhPjjQ*T$$RP#VHD$<|$,BE;ʼnVHxNLQ说VLXSR貴W*WWVV(FLP耴WL$VQV$ D$0~WT$RWuAW|$FLWSPhFHhhPjAjj D$0F\~`^Xu L$QLVjD$$T$,D$0#VLRPNLD$NHMEPQ軳 \$ ;|HWWWVV(u5WT$VRV$ t|$FLWP薲KE;}WWWVV(us\$t2SWVV( t%NLSQTEnH^`F\D$FH3;‰~`JV\VMjnXD$$T$,D$0D$0twD$(H~ D$0D$0t[NLQjVV, D$0tAFVtD$0t%D$uVB y VV<D$0D$0uFLPjD$t PD$t PD$0]_^[ËL$QfhhPjAjj q 3]_^[̋D$u@L$ÃuVt$ Rs?^ø̋D$ L$T$hܾPQRh̋D$L$hܾPQPPju PCuhhjgjfj e^[ËT$PR[̸FSVt$3ۅD$u ^[YWP6VjjlW D$UjjjW@qt4l$IEVP足t8VCjjjW qu%lu1~-{\$]t VLt WD$ _^[Yhh,j joj >ƒuMjW#uhh,j joj 듋L$QVRzD$ qhh,jdjoj ahh,jjoj D̸覤SVt$3ۅD$u ^[YWCP6VjjlW D$UjjjW`t4l$IEVPt8VC(jjjW,un%lu1~-\$]t Vt W D$ _^[Yhh,j jpj ƒuMjW "uhh,j jpj n듋L$QVRKzD$ qhh,jdjpj 2ahh,jjpj D̋D$ U3t ]D$ T$ VhRJu hh,jhj ^3]WjjjVoV u!hh,j hj }_^3]SW3~Od$SWtPD$HQ@EvtT$BVPEWC蜟;|hНW[_^]ËL$3Iu^D$uVVPPjtPD$P [L$ PQ ޅujrh,jhjej ^ÃuT$ PD$RP ËL$ T$PQR) ̋T$W3zTzBBB _̸SUVATqN>D$CEFHD$uыL$(_1^][Åt|$$\$l$D$uT$ RWW E >2Ȉ C>D$EFHD$uϋT$(_2^][̸,&S\$<vUVW|$PNjPL$HT$ P D$LPWWL$0T$4} C‹D$` t+~oT$@\$Dt$,+++ߊ 2AMDD uD3~BD$@L$,+L$D++ʉ\$L$\$L4, 2ڈT$F; |\$HyKCD$Hۉ\$u"DPHWP OW _^][,ñ*ˈL$HGtVL$HL$L$H ӈWV Ë\$GFL$HD$ ЊD$WV MWu_^][,̸膗T$JVW|$3΃3SUD$߃+͸L$0QL$"ЋD$(ҁT$T$,RPjQT$&R͋l$4.˃"ŠT$ ˆ.D$ G;r][_^YS\$v8Ul$$Vt$W|$+D$$L$ UPQj7RViFKu_^][̋D$L$T$D$ PQRu  Z ̋D$ L$V1tLS\$ Ul$ W|$D$uD$ PUU .D$2GOCFHD$uҋT$(_][2^É1^̋T$ D$ W|$ ttt_Áu ǀ 3ɁL SV 0r މXrH މXr  ށX ҋ43֋43֋\$43313PP3։P3׉pPQT$|$<Ƌ%3Nj<333A3ÉA 3ЉQA3‰AQ3ЃQz^[3_Ër މXr ށX  ҋ43֋43։\$4333ʉPP3щHH 3ʉP H$(XHP3ˉ3щPPT$|$<΋ 3ϋ<333H3ˉHP3щPH3ʉHP3уPf^[3_Ër މXR pR֋ҋ 43֋43։\$4333ʉP P3щH$H 3ʉP(H,0PXɋ <3ϋT$<33ʋP3ˉ3ыH3ʉPPH3щP P T$|$<΋ 3ϋ<333H3ˉHP3щPH3ʉHP3уP^[3_Ã̋D$L$S\$SPQ ?UV3W~JLC$ixhiyxh)y8(i9xhy;|ċ;Cx<H,x<44334 34px<H,x<44334 <H3xp<,x<443, 3<H 3x p<,x <443, <33p B;8_^3][̸VSUVt$ V% W|$,3_ 3OVL$$ ʋV t$&,3ˋ 3_ Ջ3Ջ3,w33։L$l$434l$$34343w\$t$,t$D$4T$34L$$3Ɓ4O3t$,3L$% 433΋t$w33΍w OD$L$ $d$\$.<3<3<ف3<3>\$|$<3<\$,3<ځ3<3~|$$|$ދ3|$,3Ӌ|$-33V\$\$,|$,3<N 3%33L$&Ƌ<3<D$3<ˁ3<3~|$T$|$ϋ 3 |$$3 \$3 3NL$,ɋ<3<L$$3%3<F͋ 3|$3 <^3ρ<T$33˃ MD$L$|$.<܋33l$(ف33> |$]<݋3\$,3ځ33~ |$]<֋33T$,ځ33~ |$]<֋3 %333~ % _^E ][̸SUVt$(V% ȋW|$43%_ 3GD$4F% ЋF 3Ӌ% 3_ L$,w3ŋ,L$433l$3ϋ434L$4,ʁ3,O33T$\$D$t$,L$6t$, 433΋Ӂ4W3t$5,3T$\$4t$3Ձ3Ӌt$4w33֍w OL$ T$4t$+|$$$t$6434|$,3|$/|$t$43|$,3t$4,3t$43,|$_33,|$-t$4t$.3݋,ʁ43݋,3ދt$3^L$" <33ϋ~ %3 3ϋҋ<3<T$T$43%,\$L$F3l$3<3<3<Ӂ,V33T$|$,|$6<3<,^33<3\$5|$,3,|$<V33|$$3Ճ OD$L$ T$4t$|$$|$6<݋3l$03\$,33> |$]<ދ3\$,3ف33~ |$.] <܋33ʁ 33~ ωML$" |$-<3ρ3ʋV %%33ʋ_ ^U ][̸VD$ SUl$V0Wx΋ׁD$D$#Ƌ#E% ȋ#ً#Ë]% #ǃ#E% Ћ##Ë]% D$HD$bL$t<\$3߃?D$D$  ك?4ރ?ڃ?< D$  x_0^][̸D$ SUl$VpW8ϋƁ%D$  ދ#+ދ#++]  ؋#+؋#+؋E+؁à ߋ#+߃#++] ً#+ً#+ًM+فJ^L$tW\$3҃‹؃?T$T$ +4߃?+ك?+<ރ?+ T$% L$% 9_q^][̸薀D$,SUVW:\$8 3cCS|$( CC C C3CsCt$, SC SC ‹T$0D$<BD$؍‰D$0I3ҊwG W GW Go3GwG3D$D$4PL$ WG WG 3l$@QGl$(RD$$FFFD$ FFFFD$<FD$FHD$OT$0D$<||$(33L$VT$(zJB J3bJ BJj JBJ 3bJ D$<T$(B J3bJ BJj JBJ 3bJ D$<T$(3bJ BJj JBJ 3bJ D$<T$(BJj JBJ 3bJ D$2L$ C>D$$AFHL$ D$$?D$0_0^][Å|$,\$D$$I3ҍoŊ0 P @P@ 3@pL$@ 3Ҋp@D$(P эL$QT$L$ň@HL$@@@@H >>2L$ CD$$AFHL$ D$$?D$0_0^][_1^][̸xD$ 3Ҋp@ P @P@ 3@p $@ 3Ҋp@D$ хT$tD$PL$QT$RD$P+L$D$@@HL$@@@@H̸wD$,S3UV0W|$8oŊ03D$ P@ P@ P@x@L$ @3ۊxD$D$ ӋL$ʈD$D$0T$ T$\$L$T$D$8u_L$4QT$ R\$$D$D$(L$ȈT$ЈD$ D$#D$@\$L$T$D$L$(T42ЋD$,@PAD$,D$8FHL$(D$8mD$tEňL$ @@H@@@HD$<_0^][ËL$<_1^][ËT$<_2^][̋D$=Vt$~L$~~SW~|$U+BMu]=T})+3ۊځ: 0@=|Q+<0#م: tI\O3H: u_F~@[3ҊpPNQu^Vj}tD$L$ PQV| u3^ËT$VjR ^̋D$8u/Ht(L$ Vp;W}ȋ|$ʃ_^jShjmhj ̸@tL$LT$PSVD$(D$D$PWL$$PL$QD$ D$(T$$\T$jRPjjD$4jP^EjWjr{,舀tSjV{ uV|_^3[@ËNjjWT$djRL$lv~D$lPL$$QjjT$|RD$DPDL$|VjQ8_^[@̸4sD$8SUV3ۃWD$uNHtGHL$HD$D$4D$L$PL$T$LQT$DD$(m~uKD$@hhjmhj t S{D$t P{_^][4ËD$0T$PL$QjT$D D$tD$T$8L$0+ʉD$8QD$PjL$L$2AL$L$ >D$$AFHL$ D$$.D$8_0^][Å|$4D$$3ҍoŊ03 P@ P@ P@x@L$3Ɋh @D$, ʋT$0RL$L$,PQT$RL$ ň@HL$@@@@HL$AL$ >>2L$ D$$AFHL$ D$$,D$8_0^][_1^][ø(VlD$4Ul$2L$ C>D$$AFHL$ D$$=D$0_0^][Å|$,\$D$$I3ҍoŊ0j P @P@ 3@pL$@ 3Ҋp@D$,P эL$QT$ DL$ ň@HL$@@@@H >>2L$ CD$$AFHL$ D$$=D$0_0^][_1^][̸4YL$@D$AVW|$L%|$yH@ɉD${@rD$T3Ɋh@PSX ىD$$@H @ H@3Ҋp@U\$ @3ҊpD$` ʅL$Te;|$Hd$D$XT$jL$4PL$4+QT$(\$8ݦn 33wG$~OOWO O3' WO GOWO O3Ҋ7 WO 3D$,3L$0T$LT$Lww$0~JT$Ll$LUL$Ll$LUL$Ll$LUT$LJ JT$Ll$LUL$Ll$LUL$Ll$LUT$LJ։T$LT$P u L$TD$T@u D$L$TT$TT$8T$҉\$4D$ t%h= j> h= jժ̡A t%h> jA 豪h? j襪̡B t%hA jB 聪h@B ju̡B t%hB jB QhB jE̡D t%hC jD !hC j̡`H t%hD j`H hxF j̡J t%hhH jJ hPI j赩̡L t%hJ jL 葩hK j腩̡M t%hL jM ahL jU̡hM t%hM jhM 1h0M j%̡Q t%hpM jQ hP j̡XR t%hQ jXR ѨhHR jŨ̡S t%h`R jS 表hS j蕨̡Z t%hS jZ qhV je̡H\ t%hZ jH\ Ah[ j5̡\ t%hP\ j\ h\ j̡H^ t%h\ jH^ h] jէ̡^ t%hP^ j^ 豧h^ j襧̡^ t%h^ j^ 聧h ju̡pa t%h^ jpa Qh` jE̡a t%hxa ja !ha j̡Xd t%ha jXd hc j̡(f t%h`d j(f he j赦̋L$ T$Vt$FjPQRPP!^Vt$Wt0ƍP@uL$+;~|$ ȋʃ_^A"u]|$ S\$Ul$UVSW/"u<ǍPI@u+ƒ}PlPj@h]PPUVSW!tjihx]jmjdj ˋ3ʃ][_^Ul$VSI:utX:^uu3^]W@3u3u _^]ÿX 3u3tӿ3u3tt3u3td3u3c^3uܽ 3;3u3ܽ 3u]3^3u]3ܽ 3u73_^3]̸KSU$]W$?K$$u$PjhQ$RjhQЃ$hhx]jhjjj b_]3[ĴVjT$RjP$PwV3PQT$XR\$40^VD$@PjQT$lRfD$H$PVL$TQT$|VR~`L$`LD$PQT$@RaD$DPb$hQ\T$0j R \D$0T$4 …D$^u$hhx]jejjj 耢_]3[ĴÉE_][Ĵ̅ҋD$SU(VW~|$ʋ3΃<3~ZIE<0| <9؃0uhhx]jpjkj _^3]j Fh]V׃ thhx]jijkj _^3]à SA|Z~-t 0|9FWT:WNiEFt$[uhhx]jrjkj 臚_^3]ËP L$UQ_^]^]̸$VBSUVW|$HD$PL$QT$RD$$3PW\$,\$$\$(l$XtNt$U?udVL$QT$RD$(PL$$QT$$RD$0PW4 u%luUhH^j聕 _^]3[$Ël$L$ QU|$tDT$PD$LRPL$$QT$,WRt#D$8L$<Ox<NWQ6< tHQJPQ誹FWP: OyʋNQ;Ox:VWR;HuHQJPQ\FWP: Oy̋Ft&HuHtHNQ)F;uuV3_^]@̸ =S\$C UVtDWtHC { |$uWu_^]3[ VPP=uVR/:t׋l$$ k l$S;щL$xGD$GP3:~fSQ:T$ F;u=EuE[VP<uEVP95QCM:;|D$T$ J@;D$^|$D$$;u _^][ Ë_^][ ̸;~IPSW t:G uVSet$VuFE;|_][_]3[̋L$tt L$ȵW|$G SVP7Oh QZ:G7 3ۅ~?t P@FthP+:Ft PGC;|G^[th0)P9R.W(_̸:D$SUVL$$W3Q(Y7tl$ST$tl$CD$tl$KL$u _^][ÍCD$T$(UR6jjV)VBN(tu PuT$~J T$u@t;}D$Myt$uD$u _^][Ë_^][hh^j* ^hh^VE3ҋ}UU U3 ΃R}h])Pj UjPWD$D$D$PD$,P5Vhh^jNjQ7 uO L$uF(tD$uO C IL$~;}D$D$u O [HۉD$~;}\$L$XL$T$$3_^*][U_^]3[̸V7L$D$ S\$U3QL$(T$ (Rl$l$+w1$][]3[][Vt$ W;~KuV(_^]@[ÍD$PV;tl$L$(UQV uV_^]3[Ãu U3tT$2;tVP3~_^][ÍIߚԚVhh$_j^ uhh$_jAjej+3^á u  F ~uFFt;PF u+hh$_j&jej+肍FPV蓰3^ËN QFPVj VG ^ËD$u3W3-_Vt$Ft P>FPVj OjVgFV!^S\$VhhhSepu2W3_u^3[hhhVSDp^[Ë^[̋D$L$ T$PD$QRPh]h/mjEh<_j,貭3Ƀ ;ujHh<_jAhj 43ÉH H H$@(HHVt$tcj]h<_jF(jPHt PFt PFt PF$t PЮVǮ^̸43D$f uOׁyJBt_^]Y;ST$33ۃf 3FF^Ff f \$ 3ۊ^Ff Fɉ\$xZxV\$ xN\$xF ȋD$   ˋ\$BB B;\$eD$[_^]Y[_^]YVt$W|$t$L$PFPQ }_^_^̸'SUl$ EXMVt$43WD$(E\3;D$T$ L$D$;uD$4f ;T$z|$(PpD$4@D$4Ãf ƃ=t6P|h_hh_XL$ 3ҋD$(\)A@L$D$(  =u |$uL$GuF9T$T$(D$\$8@;ÉT$u?t;t6D)3<=u|)=u#G u9T$T$(tT$wut@|etD$;~4QL$0EPQ D$|TL$ +ʉL$ L$33;E};u29T$E})D$,D$t$8@;ƉD$ L$3T$0t$ 2T$_ML$$^MXU\][̋D$BD$L$HL$M h` ̸F%D$$Vt$$T$RL$VD$L$ $u3^PV"^̸$D$ L$$VpD$PT$VL$T$ $u3^PV="^Wjjh`j u_S\$Ul$Vt$oGtKCP~=u Fu]~,Fuh`wFvt:WV t,t$ t4Fu"FFtSP uW ^][3_ÅtE^][_̋D$u@t@ Ë@̸g ̸#|$$D$ D$vj{h@`jAjdj+j{W|$lSVWWW\$0t$DVD$,$^D$ uhh@`jdjdj+{UV]VIl$u hD$$L$8WPQjUV"SuhKVEPE=WuT$$RSUVLu8hD$$PSUVEMuhh@`jejdj+YzAVG‹S觡‹;vhh@`jDjdj+ zhh@`VU D$uhh@`jAjdj+y|$+Ӌʋ3̓|$L$(RQ袥;thh@`jjdj+yiD$@t9L$0T$4RQVWЃuhh@`jfjdj+Oy2T$4T$(D$4;vƉD$4ȋы|$0ʃD$|$l$t UH]WWD$^[t PD$_jh@ ËD$@VWjph``j43 ;ujph``jAhj x_3^É>;ljFtj(;ljFt܉~ ~~~~3N AAA _F0^Vt$tnhh``jF0jP PFt PlFt P(F t P%FtNt P՚V̚^Vt$Ft1FP謚uNQ虚VR萚FP臚 V~^Vt$t#Fh@PN QVj mVG^U3uhhx`jCjmj(w]Ãt tu uhhx`jijmj(v]hhx`j  tT$3ɅҋT$ pP8X H]̋D$ UVt$WPQYtK|$Gu Gt+T$D$ L$$VFNWVR_^H]V_^]̋D$L$T$ S\$jPD$QL$RPQ3T[̋D$L$T$S\$PD$QL$RT$PQR3[̸ L$$3$D$D$D$ D$D$L$L$,D$D$$Bt$RQЃu 3 UVt$ @3tVЃFtVhPNSWQ3^~7$>GtVSRMPVWtzFPC';|ЋA tVЃtZtQ3VR3~Gd$>GtFSPPVWtt3NQC;| B_[tVЃu^]^]̋D$uË̋D$uË@̋L$u3ËHtuA̋L$t~ A 3̋L$u3ËuA̸ SUVW|$<ǍP@ul$4Mt$8+ƒ؉Mt;F u#hohx`jijij(s_^][ ?S|PNPQӃu#FRPӃu&GGu_^]3[ ËNV _^]3[ ËNV _^]3[ ËNQhXT$(j RFPhXL$(j QڭF ;}LEhQhx`jejij(EBrh`T$(Rh`D$@Ph`jn,_^][ ËF;~LEhYhx`jdjij(Eqh`L$(Qh`T$@Rh`jm,_^][ Ëv u hb@PWV7 _^]3[ VjPhx`j ujShx`jAjhj(fq3^áD u 1D F PVj FF ^̸g Vt$ V|+&P PV|PQ P QP ^̸V5PW=|PSD$ jP֍L$j Q׃t_^Vhh`jj 5Phh`H փT u lPT hh`փP ^u lP@ P ̡T ;lPV5PtPփlPH@P ;tPփh;h`jj \^̡ V5QPj֋ Qj֋p Rj֡h Pj֋ Qj ֋ Rjփ0^̋D$X SUl$ VWtPOӃ u F tujPPP_^]P[@u+V5Qhjhj hj hjp hj h hj փ0 ^øS3VX 3L ;L \$uD$P T QT$ hRP ;t_T @ 0uTL$j Q|P;t 9$t T 43ۋ$$ T$RPQX |=X u;uP hRP=L |D$hP&^[Vt$ WVdH$HSUthHP PV=QP׋ P QVFP׋P RP jVD$VPe ][_^Vw P -PPhaQՋP PRӃjVD$VP ~VV:utP:Wuu3t P h`PՋ P QӃ ][_3^][_^ËP RVPQP PP jVL$VQe _^%@Q%PQ%TQ%yZ|$3|$ 33|$,#3<$3|$ yZT$3T$33T$033T$T$*nӋ\$3\$33\$433\$\$+nًL$3L$ 33L$833L$ L$)nȋD$3D$$33D$<33D$D$(nƋt$ 3t$(334$33t$t$ .n|$$3|$,33|$33|$|$$/nT$(3T$033T$33T$T$(*nӋ\$,3\$433\$ 33\$ \$,+nًL$03L$833L$33L$$L$0)nȋD$43D$<33D$33D$(D$4(nƋt$834$33t$33t$,t$8.n|$<3|$33|$33|$0|$</n$3T$33T$ 33T$4$*nӋ\$3\$ 33\$$33\$8\$+nًL$3L$33L$(33L$<L$)nȋD$ 3D$33D$,33$D$ (nƋt$3t$33t$033t$t$.n|$3|$33|$433|$|$/nT$3T$ 33T$833T$ T$*nӋ\$3\$$33\$<33\$\$+nًL$ l$(3͋,$3͋l$3͋ L$ #ܼ# ȋD$$l$,3ŋl$3ŋl$3ŋ D$$#0ܼ# Ƌt$(l$03l$3l$3 t$(#ꍴ>ܼ# |$,l$43l$ 3l$ 3 |$,#덼ܼ# T$0l$83Ջl$3Ջl$$3Ջ T$0#鍔ܼ# Ӌ\$4l$<3݋l$3݋l$(3݋ \$4#荜 ܼ# ًL$8,$3͋l$3͋l$,3͋ L$8#ܼ# ȋD$ܼ# |$l$ 3l$$3l$83 |$#덼ܼ# T$l$3Ջl$(3Ջl$<3Ջ T$#鍔ܼ# Ӌ\$ l$3݋l$,3݋,$3݋ \$ #荜 ܼ# ًL$l$3͋l$03͋l$3͋ L$#ܼ# ȋD$l$3ŋl$43ŋl$3ŋ D$#0ܼ# Ƌt$l$ 3l$83l$ 3 t$#ꍴ>ܼ# |$l$$3l$<3l$3 |$#덼ܼ# T$ l$(3Ջ,$3Ջl$3Ջ T$ #鍔ܼ# Ӌ\$$l$,3݋l$3݋l$3݋ \$$#荜 ܼ# ًL$(l$03͋l$3͋l$3͋ L$(#ܼ# ȋD$,l$43ŋl$ 3ŋl$ 3ŋ D$,#0ܼ# Ƌt$03t$833t$33t$$t$0.b|$43|$<33|$33|$(|$4/bT$83$33T$33T$,T$8*bӋ\$<3\$33\$33\$0\$<+bً $3L$33L$ 33L$4 $)bȋD$3D$ 33D$$33D$8D$(bƋt$3t$33t$(33t$<t$.b|$ 3|$33|$,33<$|$ /bT$3T$33T$033T$T$*bӋ\$3\$33\$433\$\$+bًL$3L$ 33L$833L$ L$)bȋD$3D$$33D$<33D$D$(bƋt$ 3t$(334$33t$t$ .b|$$3|$,33|$33|$|$$/bT$(3T$033T$33T$T$(*bӋ\$,3\$433\$ 33\$ \$,+bًL$03L$833L$33L$$L$0)bȋD$43D$<33D$33D$(D$4(bƋt$834$33t$33t$,t$8.b|$<3|$33|$33|$0|$</b$U ыM΋EU Nj}]މE$]@D$D};Ml_[]^ËL$ Vt$ USl$WU l}]L$DN$L$FN D$L$ FND$L$FND$L$F N$D$ L$$F(N,D$(L$,F0N4D$0L$4F8N>.\crypto\cryptlib.cService-0xOpenSSL: FATALOPENSSL%s(%d): OpenSSL internal error, assertion failed: %s pointer != NULLlhash part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\lhash\lhash.c.\crypto\buffer\buffer.c.\crypto\mem_dbg.c$@??.\crypto\bio\b_print.c0123456789abcdef0123456789ABCDEF0x0doapr()\g\h\f \ x\X509_EXTENSIONvaluecriticalobject` ````` ``x`h`T`D`,```___=_P(_)___x_`_ASN1_OCTET_STRING_NDEFASN1_FBOOLEANASN1_TBOOLEANASN1_BOOLEANDIRECTORYSTRINGDISPLAYTEXTASN1_PRINTABLEASN1_SEQUENCEASN1_ANYASN1_BMPSTRINGASN1_UNIVERSALSTRINGASN1_VISIBLESTRINGASN1_GENERALIZEDTIMEASN1_UTCTIMEASN1_GENERALSTRINGASN1_IA5STRINGASN1_T61STRINGASN1_PRINTABLESTRINGASN1_UTF8STRINGASN1_OBJECTASN1_NULLASN1_OCTET_STRINGASN1_BIT_STRINGASN1_ENUMERATEDASN1_INTEGER@ha@pta@f$a a haX509_PUBKEYpublic_keyalgor.\crypto\asn1\x_pubkey.cb a aaX509_VALnotAfternotBefore\g\g b(c c kPb cckbb0llmobbX509_NAMEX509_NAME_INTERNALNameX509_NAME_ENTRIESRDNSX509_NAME_ENTRY.\crypto\asn1\x_name.ccgcPgPccX509_ALGORparameteralgorithm.\crypto\asn1\tasn_dec.cType=Field=, Type=.\crypto\asn1\tasn_enc.c.\crypto\asn1\tasn_new.c.\crypto\ex_data.c.\crypto\x509v3\pcy_cache.cdfX9deTd dAUTHORITY_KEYIDserialkeyidegege g dfe@pdee`/e`/PeeX509_CERT_PAIRreverseforwardX509_CERT_AUXotheraliasrejecttrust.\crypto\asn1\a_dup.c.\crypto\engine\eng_init.cRAND part of OpenSSL 0.9.8a 11 Oct 2005@@.\crypto\rand\md_rand.cYou need to read the OpenSSL FAQ, http://www.openssl.org/support/faq.html.....................\crypto\evp\digest.cctx->digest->md_size <= EVP_MAX_MD_SIZEDF@`ocsphelperOCSP helperanyAny PurposecrlsignCRL signingsmimeencryptS/MIME encryptionsmimesignS/MIME signingnssslserverNetscape SSL serversslserverSSL serversslclientSSL client.\crypto\x509v3\v3_purp.cipsec4Oakley-EC2N-4ipsec3Oakley-EC2N-3X509v3 Inhibit Any PolicyinhibitAnyPolicyX509v3 Policy MappingspolicyMappingsX509v3 Any PolicyanyPolicywap-wsg-idm-ecid-wtls12wap-wsg-idm-ecid-wtls11wap-wsg-idm-ecid-wtls10wap-wsg-idm-ecid-wtls9wap-wsg-idm-ecid-wtls8wap-wsg-idm-ecid-wtls7wap-wsg-idm-ecid-wtls6wap-wsg-idm-ecid-wtls5wap-wsg-idm-ecid-wtls4wap-wsg-idm-ecid-wtls3wap-wsg-idm-ecid-wtls1sect571r1sect571k1sect409r1sect409k1sect283r1sect283k1sect239k1sect233r1sect233k1sect193r2sect193r1sect163r2sect163r1sect163k1sect131r2sect131r1sect113r2sect113r1secp521r1secp384r1secp256k1secp224r1secp224k1secp192k1secp160r2secp160r1secp160k1secp128r2secp128r1secp112r2secp112r1c2tnb431r1c2pnb368w1c2tnb359v1c2pnb304w1c2pnb272w1c2onb239v5c2onb239v4c2tnb239v3c2tnb239v2c2tnb239v1c2pnb208w1c2onb191v5c2onb191v4c2tnb191v3c2tnb191v2c2tnb191v1c2pnb176v1c2pnb163v3c2pnb163v2c2pnb163v1ppBasistpBasisonBasisid-characteristic-two-basiswap-wsgwapcerticom-arcidentified-organizationsha224SHA224sha512SHA512sha384SHA384sha256SHA256sha224WithRSAEncryptionRSA-SHA224sha512WithRSAEncryptionRSA-SHA512sha384WithRSAEncryptionRSA-SHA384sha256WithRSAEncryptionRSA-SHA256Independentid-ppl-independentX509v3 Name ConstraintsnameConstraintsInherit allid-ppl-inheritAllAny languageid-ppl-anyLanguageProxy Certificate InformationproxyCertInfoid-pplpostalCodestreetAddressdes-ede3-cfb8DES-EDE3-CFB8des-ede3-cfb1DES-EDE3-CFB1des-cfb8DES-CFB8des-cfb1DES-CFB1aes-256-cfb8AES-256-CFB8aes-192-cfb8AES-192-CFB8aes-128-cfb8AES-128-CFB8aes-256-cfb1AES-256-CFB1aes-192-cfb1AES-192-CFB1aes-128-cfb1AES-128-CFB1Microsoft Universal Principal NamemsUPNMicrosoft SmartcardloginmsSmartcardLoginInternational Organizationsinternational-organizationsjoint-iso-itu-tJOINT-ISO-ITU-Titu-tITU-TrsaOAEPEncryptionSETdes-cdmfDES-CDMFset-brand-Novusset-brand-MasterCardset-brand-Visaset-brand-JCBset-brand-AmericanExpressset-brand-Dinersset-brand-IATA-ATAsecure device signaturesetAttr-SecDevSigICC or token signaturesetAttr-TokICCsigcleartext track 2setAttr-T2cleartxtencrypted track 2setAttr-T2Encgenerate cryptogramsetAttr-GenCryptgrmsetAttr-IssCap-SigsetAttr-IssCap-T2setAttr-IssCap-CVMsetAttr-Token-B0PrimesetAttr-Token-EMVset-addPolicyset-rootKeyThumbissuer capabilitiessetAttr-IssCapsetAttr-TokenTypepayment gateway capabilitiessetAttr-PGWYcapsetAttr-CertsetCext-IssuerCapabilitiessetCext-TokenTypesetCext-Track2DatasetCext-TokenIdentifiersetCext-PGWYcapabilitiessetCext-setQualfsetCext-setExtsetCext-tunnelingsetCext-cCertRequiredsetCext-merchDatasetCext-certTypesetCext-hashedRootset-policy-rootadditional verificationsetext-cvsetext-track2setext-pinAnysetext-pinSecuremerchant initiated authsetext-miAuthgeneric cryptogramsetext-genCryptsetct-BCIDistributionTBSsetct-CRLNotificationResTBSsetct-CRLNotificationTBSsetct-CertResTBEsetct-CertReqTBEXsetct-CertReqTBEsetct-RegFormReqTBEsetct-BatchAdminResTBEsetct-BatchAdminReqTBEsetct-CredRevResTBEsetct-CredRevReqTBEXsetct-CredRevReqTBEsetct-CredResTBEsetct-CredReqTBEXsetct-CredReqTBEsetct-CapRevResTBEsetct-CapRevReqTBEXsetct-CapRevReqTBEsetct-CapResTBEsetct-CapReqTBEXsetct-CapReqTBEsetct-AuthRevResTBEBsetct-AuthRevResTBEsetct-AuthRevReqTBEsetct-AcqCardCodeMsgTBEsetct-CapTokenTBEXsetct-CapTokenTBEsetct-AuthTokenTBEsetct-AuthResTBEXsetct-AuthResTBEsetct-AuthReqTBEsetct-PIUnsignedTBEsetct-PIDualSignedTBEsetct-ErrorTBSsetct-CertInqReqTBSsetct-CertResDatasetct-CertReqTBSsetct-CertReqDatasetct-RegFormResTBSsetct-MeAqCInitResTBSsetct-CardCInitResTBSsetct-BatchAdminResDatasetct-BatchAdminReqDatasetct-PCertResTBSsetct-PCertReqDatasetct-CredRevResDatasetct-CredRevReqTBSXsetct-CredRevReqTBSsetct-CredResDatasetct-CredReqTBSXsetct-CredReqTBSsetct-CapRevResDatasetct-CapRevReqTBSXsetct-CapRevReqTBSsetct-CapResDatasetct-CapReqTBSXsetct-CapReqTBSsetct-AuthRevResTBSsetct-AuthRevResDatasetct-AuthRevReqTBSsetct-AcqCardCodeMsgsetct-CapTokenTBSsetct-CapTokenDatasetct-AuthTokenTBSsetct-AuthResTBSXsetct-AuthResTBSsetct-AuthReqTBSsetct-PResDatasetct-PI-TBSsetct-PInitResDatasetct-CapTokenSeqsetct-AuthRevResBaggagesetct-AuthRevReqBaggagesetct-AuthResBaggagesetct-HODInputsetct-PIDataUnsignedsetct-PIDatasetct-PIsetct-OIDatasetct-PANOnlysetct-PANTokensetct-PANDataset-brandcertificate extensionsset-certExtset-policyset-attrmessage extensionsset-msgExtcontent typesset-ctypeSecure Electronic Transactionsid-setpseudonymgenerationQualifierid-hex-multipart-messageid-hex-partial-messagemime-mhs-bodiesmime-mhs-headingsMIME MHSmime-mhsx500UniqueIdentifierdocumentPublisheraudiodITRedirectpersonalSignaturesubtreeMaximumQualitysubtreeMinimumQualitysingleLevelQualitydSAQualitybuildingNamemailPreferenceOptionjanetMailboxorganizationalStatusfriendlyCountryNamepagerTelephoneNumbermobileTelephoneNumberpersonalTitlehomePostalAddressassociatedNameassociatedDomaincNAMERecordsOARecordnSRecordmXRecordpilotAttributeType27aRecordlastModifiedBylastModifiedTimeotherMailboxsecretaryhomeTelephoneNumberdocumentLocationdocumentAuthordocumentVersiondocumentTitledocumentIdentifiermanagerhostuserClassphotoroomNumberfavouriteDrinkinforfc822MailboxmailtextEncodedORAddressuserIdUIDqualityLabelledDatapilotDSApilotOrganizationsimpleSecurityObjectfriendlyCountrydomainRelatedObjectdNSDomainrFC822localPartdocumentSeriesroomdocumentaccountpilotPersonpilotObjectcaseIgnoreIA5StringSyntaxiA5StringSyntaxpilotGroupspilotObjectClasspilotAttributeSyntaxpilotAttributeTypepilotuclpssdataHold Instruction RejectholdInstructionRejectHold Instruction Call IssuerholdInstructionCallIssuerHold Instruction NoneholdInstructionNoneHold Instruction CodeholdInstructionCodeaes-256-cfbAES-256-CFBaes-256-ofbAES-256-OFBaes-256-cbcAES-256-CBCaes-256-ecbAES-256-ECBaes-192-cfbAES-192-CFBaes-192-ofbAES-192-OFBaes-192-cbcAES-192-CBCaes-192-ecbAES-192-ECBaes-128-cfbAES-128-CFBaes-128-ofbAES-128-OFBaes-128-cbcAES-128-CBCaes-128-ecbAES-128-ECBMicrosoft CSP NameCSPNameecdsa-with-SHA1prime256v1prime239v3prime239v2prime239v1prime192v3prime192v2prime192v1id-ecPublicKeycharacteristic-two-fieldprime-fieldANSI X9.62ansi-X9-62X509v3 No Revocation AvailablenoRevAvailX509v3 AC TargetingtargetInformationX509v3 Policy ConstraintspolicyConstraintsroleid-aca-encAttrsSubject Information AccesssubjectInfoAccessac-proxyingmd4WithRSAEncryptionRSA-MD4clearanceSelected Attribute Typesselected-attribute-typesNULLDomaindomaindomainComponentDCdcObjectdcobjectEnterprisesenterprisesMailSNMPv2snmpv2SecuritysecurityPrivateprivateExperimentalexperimentalManagementmgmtDirectorydirectoryianaIANAdodDODorgORGdirectory services - algorithmsX500algorithmsrsaSignatureTrust RoottrustRootpathvalidExtended OCSP StatusextendedStatusOCSP Service LocatorserviceLocatorOCSP Archive CutoffarchiveCutoffOCSP No ChecknoCheckAcceptable OCSP ResponsesacceptableResponsesOCSP CRL IDCrlIDOCSP NonceNonceBasic OCSP ResponsebasicOCSPResponsead dvcsAD_DVCSAD Time Stampingad_timestampingid-cct-PKIResponseid-cct-PKIDataid-cct-crsid-qcs-pkixQCSyntax-v1id-aca-roleid-aca-groupid-aca-chargingIdentityid-aca-accessIdentityid-aca-authenticationInfoid-pda-countryOfResidenceid-pda-countryOfCitizenshipid-pda-genderid-pda-placeOfBirthid-pda-dateOfBirthid-on-personalDataid-cmc-confirmCertAcceptanceid-cmc-popLinkWitnessid-cmc-popLinkRandomid-cmc-queryPendingid-cmc-responseInfoid-cmc-regInfoid-cmc-revokeRequestid-cmc-getCRLid-cmc-getCertid-cmc-lraPOPWitnessid-cmc-decryptedPOPid-cmc-encryptedPOPid-cmc-addExtensionsid-cmc-recipientNonceid-cmc-senderNonceid-cmc-transactionIdid-cmc-dataReturnid-cmc-identityProofid-cmc-identificationid-cmc-statusInfoid-alg-dh-popid-alg-dh-sig-hmac-sha1id-alg-noSignatureid-alg-des40id-regInfo-certReqid-regInfo-utf8Pairsid-regCtrl-protocolEncrKeyid-regCtrl-oldCertIDid-regCtrl-pkiArchiveOptionsid-regCtrl-pkiPublicationInfoid-regCtrl-authenticatorid-regCtrl-regTokenid-regInfoid-regCtrlid-it-origPKIMessageid-it-confirmWaitTimeid-it-implicitConfirmid-it-revPassphraseid-it-keyPairParamRepid-it-keyPairParamReqid-it-subscriptionResponseid-it-subscriptionRequestid-it-unsupportedOIDsid-it-currentCRLid-it-caKeyUpdateInfoid-it-preferredSymmAlgid-it-encKeyPairTypesid-it-signKeyPairTypesid-it-caProtEncCertdvcsDVCSIPSec UseripsecUserIPSec TunnelipsecTunnelIPSec End SystemipsecEndSystemtextNoticesbgp-routerIdentifiersbgp-autonomousSysNumsbgp-ipAddrBlockaaControlsac-targetingac-auditEntityqcStatementsBiometric InfobiometricInfoid-mod-cmp2000id-mod-dvcsid-mod-ocspid-mod-timestamp-protocolid-mod-attribute-certid-mod-qualified-cert-93id-mod-qualified-cert-88id-mod-cmpid-mod-kea-profile-93id-mod-kea-profile-88id-mod-cmcid-mod-crmfid-pkix1-implicit-93id-pkix1-explicit-93id-pkix1-implicit-88id-pkix1-explicit-88id-cctid-qcsid-acaid-pdaid-onid-cmcid-algid-pkipid-itid-qtid-pkix-modmd4MD4id-smime-cti-ets-proofOfCreationid-smime-cti-ets-proofOfApprovalid-smime-cti-ets-proofOfSenderid-smime-cti-ets-proofOfDeliveryid-smime-cti-ets-proofOfReceiptid-smime-cti-ets-proofOfOriginid-smime-spq-ets-sqt-unoticeid-smime-spq-ets-sqt-uriid-smime-cd-ldapid-smime-alg-CMSRC2wrapid-smime-alg-CMS3DESwrapid-smime-alg-ESDHid-smime-alg-RC2wrapid-smime-alg-3DESwrapid-smime-alg-ESDHwithRC2id-smime-alg-ESDHwith3DESid-smime-aa-dvcs-dvcid-smime-aa-signatureTypeid-smime-aa-ets-archiveTimeStampid-smime-aa-ets-certCRLTimestampid-smime-aa-ets-escTimeStampid-smime-aa-ets-revocationValuesid-smime-aa-ets-certValuesid-smime-aa-ets-RevocationRefsid-smime-aa-ets-CertificateRefsid-smime-aa-ets-contentTimestampid-smime-aa-ets-otherSigCertid-smime-aa-ets-signerAttrid-smime-aa-ets-signerLocationid-smime-aa-ets-commitmentTypeid-smime-aa-ets-sigPolicyIdid-smime-aa-timeStampTokenid-smime-aa-smimeEncryptCertsid-smime-aa-signingCertificateid-smime-aa-encrypKeyPrefid-smime-aa-contentReferenceid-smime-aa-equivalentLabelsid-smime-aa-macValueid-smime-aa-contentIdentifierid-smime-aa-encapContentTypeid-smime-aa-msgSigDigestid-smime-aa-contentHintid-smime-aa-mlExpandHistoryid-smime-aa-securityLabelid-smime-aa-receiptRequestid-smime-ct-DVCSResponseDataid-smime-ct-DVCSRequestDataid-smime-ct-contentInfoid-smime-ct-TDTInfoid-smime-ct-TSTInfoid-smime-ct-publishCertid-smime-ct-authDataid-smime-ct-receiptid-smime-mod-ets-eSigPolicy-97id-smime-mod-ets-eSigPolicy-88id-smime-mod-ets-eSignature-97id-smime-mod-ets-eSignature-88id-smime-mod-msg-v3id-smime-mod-oidid-smime-mod-essid-smime-mod-cmsid-smime-ctiid-smime-spqid-smime-cdid-smime-algid-smime-aaid-smime-ctid-smime-modS/MIMESMIMEpkcs5pkcs1X9.57 CM ?X9cmX9.57X9-57ISO US Member BodyISO-USISO Member Bodymember-bodyisoISOOCSP SigningOCSPSigningCA IssuerscaIssuersOCSPAuthority Information AccessauthorityInfoAccessid-adid-pednQualifiernameExtension RequestextReqMicrosoft Extension RequestmsExtReqpbeWithSHA1AndDES-CBCPBE-SHA1-DESpbeWithMD5AndRC2-CBCPBE-MD5-RC2-64pbeWithMD2AndRC2-CBCPBE-MD2-RC2-64S/MIME CapabilitiesSMIME-CAPSrc2-64-cbcRC2-64-CBCPolicy Qualifier User Noticeid-qt-unoticePolicy Qualifier CPSid-qt-cpshmacWithSHA1PBMAC1PBES2x509CrlsdsiCertificatex509CertificatelocalKeyIDfriendlyNamesafeContentsBagsecretBagcrlBagcertBagpkcs8ShroudedKeyBagkeyBagpbeWithSHA1And40BitRC2-CBCPBE-SHA1-RC2-40pbeWithSHA1And128BitRC2-CBCPBE-SHA1-RC2-128pbeWithSHA1And2-KeyTripleDES-CBCPBE-SHA1-2DESpbeWithSHA1And3-KeyTripleDES-CBCPBE-SHA1-3DESpbeWithSHA1And40BitRC4PBE-SHA1-RC4-40pbeWithSHA1And128BitRC4PBE-SHA1-RC4-128Strong Extranet IDSXNetIDInvalidity DateinvalidityDateX509v3 CRL Reason CodeCRLReasonX509v3 Delta CRL IndicatordeltaCRLNetscape Server Gated CryptonsSGCMicrosoft Encrypted File SystemmsEFSMicrosoft Server Gated CryptomsSGCMicrosoft Trust List SigningmsCTLSignMicrosoft Commercial Code SigningmsCodeComMicrosoft Individual Code SigningmsCodeIndTime StampingtimeStampingE-mail ProtectionemailProtectionCode SigningcodeSigningTLS Web Client AuthenticationclientAuthTLS Web Server AuthenticationserverAuthid-kpPKIXX509v3 Extended Key UsageextendedKeyUsagezlib compressionZLIBrun length compressionRLErc5-ofbRC5-OFBrc5-cfbRC5-CFBrc5-ecbRC5-ECBrc5-cbcRC5-CBCripemd160WithRSARSA-RIPEMD160ripemd160RIPEMD160dsaEncryptionDSAsha1WithRSARSA-SHA1-2md5-sha1MD5-SHA1dsaWithSHA1DSA-SHA1pbeWithMD5AndCast5CBCcast5-ofbCAST5-OFBcast5-cfbCAST5-CFBcast5-ecbCAST5-ECBcast5-cbcCAST5-CBCdescriptiontitlemd5WithRSARSA-NP-MD5X509v3 CRL Distribution PointscrlDistributionPointsinitialssurnameSNgivenNameGNrc2-40-cbcRC2-40-CBCrc4-40RC4-40mdc2WithRSARSA-MDC2mdc2MDC2bf-ofbBF-OFBbf-cfbBF-CFBbf-ecbBF-ECBbf-cbcBF-CBCX509v3 Authority Key IdentifierauthorityKeyIdentifierX509v3 Certificate PoliciescertificatePoliciesX509v3 CRL NumbercrlNumberX509v3 Basic ConstraintsbasicConstraintsX509v3 Issuer Alternative NameissuerAltNameX509v3 Subject Alternative NamesubjectAltNameX509v3 Private Key Usage PeriodprivateKeyUsagePeriodX509v3 Key UsagekeyUsageX509v3 Subject Key IdentifiersubjectKeyIdentifierid-cedesx-cbcDESX-CBCNetscape Certificate SequencensCertSequenceNetscape CommentnsCommentNetscape SSL Server NamensSslServerNameNetscape CA Policy UrlnsCaPolicyUrlNetscape Renewal UrlnsRenewalUrlNetscape CA Revocation UrlnsCaRevocationUrlNetscape Revocation UrlnsRevocationUrlNetscape Base UrlnsBaseUrlNetscape Cert TypensCertTypedsaWithSHA1-oldDSA-SHA1-oldPBKDF2pbeWithSHA1AndRC2-CBCPBE-SHA1-RC2-64dsaEncryption-oldDSA-olddsaWithSHADSA-SHAsha1WithRSAEncryptionRSA-SHA1sha1SHA1des-ede3-ofbDES-EDE3-OFBdes-ede-ofbDES-EDE-OFBdes-ede3-cfbDES-EDE3-CFBdes-ede-cfbDES-EDE-CFBNetscape Data TypensDataTypeNetscape Certificate ExtensionnsCertExtNetscape Communications Corp.NetscapeextendedCertificateAttributesunstructuredAddresschallengePasswordcountersignaturesigningTimemessageDigestcontentTypeunstructuredNameemailAddresspkcs9idea-ofbIDEA-OFBdes-ofbDES-OFBdes-ede3-cbcDES-EDE3-CBCdes-ede-cbcDES-EDE-CBCshaWithRSAEncryptionRSA-SHAshaSHArc2-ofbRC2-OFBrc2-cfbRC2-CFBrc2-ecbRC2-ECBrc2-cbcRC2-CBCidea-ecbIDEA-ECBidea-cfbIDEA-CFBidea-cbcIDEA-CBCdes-ede3DES-EDE3des-edeDES-EDEdes-cbcDES-CBCdes-cfbDES-CFBdes-ecbDES-ECBdhKeyAgreementpkcs3pkcs7-encryptedDatapkcs7-digestDatapkcs7-signedAndEnvelopedDatapkcs7-envelopedDatapkcs7-signedDatapkcs7-datapkcs7RSAorganizationalUnitNameOUorganizationNameOstateOrProvinceNameSTlocalityNameLcountryNameCcommonNameCNdirectory services (X.500)X500pbeWithMD5AndDES-CBCPBE-MD5-DESpbeWithMD2AndDES-CBCPBE-MD2-DESmd5WithRSAEncryptionRSA-MD5md2WithRSAEncryptionRSA-MD2rsaEncryptionrc4RC4md5MD5md2MD2RSA Data Security, Inc. PKCSpkcsRSA Data Security, Inc.rsadsiundefinedUNDEF.\crypto\objects\obj_dat.c.%lu%d.%lu.\crypto\objects\obj_lib.cStack part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\stack\stack.c.\crypto\evp\p_lib.cASN.1 part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\asn1\asn1_lib.caddress= offset=%d%lu.\crypto\asn1\a_object.cFILE pointer.\crypto\bio\bss_file.cfopen('','')tbrwr+aa+įP_P_P_Ъ Pgfe|@(xP_pgT  TPgLe@04g$@\$Ȫff@f XP_P` feeԮgpfXP_|fp d@fTEC_PRIVATEKEYpublicKeyparametersprivateKeyECPKPARAMETERSvalue.implicitlyCAvalue.parametersvalue.named_curveECPARAMETERScofactororderbasecurvefieldIDX9_62_CURVEseedX9_62_FIELDIDfieldTypep.char_twop.primeX9_62_CHARACTERISTIC_TWOtypemp.ppBasisp.tpBasisp.onBasisp.otherX9_62_PENTANOMIALk3k2k1.\crypto\ec\ec_asn1.cEC part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\ec\ec_lib.c.\crypto\ec\ec_key.c P8XP_ DD \DDD DD0<$DDpriv_keypub_keygqpDSA_SIGs.\crypto\dsa\dsa_asn1.c.\crypto\asn1\d2i_pu.c0EoB/dW(Ӂ !ՖPq4GEjŖDT  5jzjgszͬs   P   `T О)Sg92d H  8 (1. >ƶ`,ihD5޳xĶ\Y*Wc.h4 ;` uy`2}t4` S;+˚L }st4q vuӿL ĝ6jfx&~Hp(  MinghuaQu)rx?pP0`'WMinghuaQuS^ ԖdD$ MinghuaQu :Ds6ylH$MinghuaQu41;lH \lS,֖vVS;3E@dl#' ֖vVQ8 ̶\(\$`$\ lD\p(\$d\$8DT#֖vVVIhH(v`֖vV]`TMinghuaQu[ӭ!:<\[ӭ֖vVZ!:<8ԸT($7ȡMinghuaQuo.\TpD[\"louS擢hTl@?MinghuaQuwű0T \֖vVQ7ȡo"(X\\X$t՟kA=K4K P×d$l$\d$p\ Twsp*mն-phTX\x@W֟y!= LKMBb! Xp p \X,*X:3Hka:# h8ܻ,v`֖vVT \0SL D֖vVX  X,\P\MinghuaQuj6 |P `0nNT'D֖vVU/'l8q/$֖vVX\t@ HSQ-Ƅ֖vVPgxmp<h0PH(KMinghuaQuq ]h(*/ߤ֖vV]&g''}@@4oMinghuaQuw A@ tp(P(8H.+5I $֖vVX[3-Ɨ`@L X8xpPp `'hH(\(\@t4` 84dt4t4(hTԹ@غD0pܼ\ȽH Lx(0t@п IPSec/IKE/Oakley curve #4 over a 185 bit binary field. Not suitable for ECDSA. Questionable extension field!FFFFFFFFFFFFFFFFFFFFFFEDF97C44DB9F2420BAFCA75E0d181ee9020000000000000000000000000000200000000000000001 IPSec/IKE/Oakley curve #3 over a 155 bit binary field. Not suitable for ECDSA. Questionable extension field!2AAAAAAAAAAAAAAAAAAC7F3C7881BD0868FA86C1c87b07338f0800000000000000000000004000000000000001WTLS curve over a 113 bit binary field00FFFFFFFFFFFFFFFDBF91AF6DEA7300F44B4AF1ECC2630E08785CEBCC1501667979A40BA497E5D5C270780617X9.62 curve over a 431 bit binary field0340340340340340340340340340340340340340340340340340340323C313FAB50589703B5EC68D3587FEC60D161CC149C1AD4A9120D0AF8903A96F8D5FA2C255745D3C451B302C9346D9B7E485E7BCE41F6B591F3E8F6ADDCBB0BC4C2F947A7DE1A89B625D6A598B3760120FC05D3C67A99DE161D2F4092622FECA701BE4F50F4758714E8A87BBF2A658EF8C21E7C5EFE965361F6C2999C0C247B0DBD70CE6B710D9B4A3D9047D8B154359ABFB1B7F5485B04CEB868237DDC9DEDA982A679A5A919B626D4E50A8DD731B107A9962381FB5D807BF26181A827EF00DD6FC0E234CAF046C6A5D8A85395B236CC4AD2CF32A0CADBDC9DDF620B0EB9906D0957F6C6FEACD615468DF104DE296CD8F800000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000001X9.62 curve over a 368 bit binary field00010090512DA9AF72B08349D98A5DD4C7B0532ECA51CE03E2D10F3B7AC579BD87E909AE40A6F131E9CFCE5BD9677B3EB1BDDCBA62D5D8B2059B525797FC73822C59059C623A45FF3843CEE8F87CD1855ADAA81E2A0750B80FDA23101085E2755381DCCCE3C1557AFA10C2F0C0C2825646C5B34A394CBCFA8BC16B22E7E789E927BE216F02E1FB136A5FFC1217D4320A90452C760A58EDCD30C8DD069B3C34453837A34ED50CB54917E1C2112D84D164F444F8F74786046AE0D2EE25095206F5E2A4F9ED229F1F256E79A0E2B455970D8D0D865BD94778C576D62F0AB7519CCD2A1A906AE30D0100000000000000000000000000000000000000000000000000000000000000000000002000000000000000000007X9.62 curve over a 359 bit binary field01AF286BCA1AF286BCA1AF286BCA1AF286BCA1AF286BC9FB8F6B85C556892C20A7EB964FE7719E74F490758D3B53D7E08529547048121E9C95F3791DD804963948F34FAE7BF44EA82365DC7868FE57E4AE2DE211305A407104BD3C258EF3047767E7EDE0F1FDAA79DAEE3841366A132E163ACED4ED2401DF9C6BDCDE98E8E707C07A2239B1B0972472E2D0197C49363F1FE7F5B6DB075D52B6947D135D8CA445805D39BC345626089687742B6329E706802319885667676A654B20754F356EA92017D946567C46675556F19556A04616B567D223A5E05656FB549016A96656A557800000000000000000000000000000000000000000000000000000000000000000000000100000000000000001X9.62 curve over a 304 bit binary field000101D556572AABAC800101D556572AABAC8001022D5C91DD173F8FB561DA6899164443051DE19FBEB76E0DA171517ECF401B50289BF014103288527A9B416A105E80260B549FDC1B92C03B197B07845E9BE2D96ADB0F5F3C7F2CFFBD7A3EB8B6FEC35C7FD67F26DDF6285A644F740A2614BDDB97E555A50A908E43B01C798EA5DAA6788F1EA2794EFCF57166B8C14039601E55827340BEFD0D693149A118F651E6DCE6802085377E5F882D1B510B44160074C1288078365A0396C8E681010000000000000000000000000000000000000000000000000000000000000000000000000807X9.62 curve over a 272 bit binary field000100FAF51354E0E39E4892DF6E319C72C8161603FA45AA7B998A167B8F1E62952110C7695716851EEF6BA7F6872E6142FBD241B830FF5EFCACECCAB05E02005DDE9D236108BABB2CEEBCF787058A056CBE0CFE622D7723A289E08A07AE13EF0D10D171DD8D7167EFC92BB2E3CE7C8AAAFF34E12A9C557003D7C73A6FAF003F99F6CC8482E540F791A091F03B5FBA4AB2CCF49C4EDD220FB028712D42BE752B2C40094DBACDB586FB20010000000000000000000000000000000000000000000000000000010000000000000B0CCCCCCCCCCCCCCCCCCCCCCCCCCCCCAC4912D2D9DF903EF9888B8A0E4CFF2E5A0EAF6E5E1305B9004DCE5C0ED7FE59A35608F33837C816D80B79F46170F6E9D04D289C4E89913CE3530BFDE903977D42B146D539BF1BDE4E9C926A941977BA9F6A435199ACFC51067ED587F519C5ECB541B8E44111DE1D4001238774666A67766D6676F778E676B66999176666E687666D8766C66A9F1555555555555555555555555555553C6F2885259C31E3FCDF154624522D5667334C45AFF3B5A03BAD9DD75E2C71A99362567D5453F7FA6E227EC83328F9D04E900069C8DC47A08534FE76D2B900B7D7EF31F5709F200C4CA2055037EA654196CFF0CD82B2C14A2FCF2E3FF8775285B545722F03EACDB74B4230017757A767FAE42398569B746325D45313AF0766266479B75654E65FX9.62 curve over a 239 bit binary field2000000000000000000000000000000F4D42FFE1492A4993F1CAD666E44761D8EE5077C33FECF6F1A16B268DE469C3C7744EA9A971649FC7A961630557927098FA932E7C0A96D3FD5B706EF7E5F5C156E16B7E7C86038552E91D790408F2EEDAF392B012EDEFB3392F30F4327C0CA3F31FC383C422AA8C1632010857077C5431123A46B808906756F543423E8D27877578125778AC76800000000000000000000000000000000000000000000000001000000001X9.62 curve over a 208 bit binary field000101BAF95C9723C57B6C21DA2EFF2D5ED588BDD5717E212F9D0F55B51A06E78E9AC38A035FF520D8B01781BEB1A6BB08617DE389FDFBE4ABE193DF9559ECF07AC0CE78554E2784EB8C1ED1A57AC8619ED45A62E6212E1160349E2BFA844439FAFC2A3FD1638F9E0000000000000000000000000000000000000000000000000000010000000000000000000000000000000800000000000000000007155555555555555555555555610C0B196812BFB6288A3EA3545A39176196575D985999366E6AD34CE0A77CD7127B06BE375D4CE24FDE434489DE8746E71786015009E66E38A926DD71FE1AF926CF847989EFEF8DB459F66394D90F32AD3F15E86C01074756099122221056911C77D77E77A777E7E7E77FCB20000000000000000000000050508CB89F652824E06B817317434386626D14F3DBF01760D9213A3E1CF37AEC437D668A3809B2B7CC1B28CC5A87926AAD83FD28789E81E2C9E3BF100620048D28BCBD03B6249C99182B7C8CD19700C362C46A01401028774D7777C7B7666D1366EA432071274F89FF01E718X9.62 curve over a 191 bit binary field40000000000000000000000004A20E90C39067C893BBB9A5765BE73433B3F95E332932E70EA245CA2418EA0EF98018FB36B3DAF8A23206F9C4F299D7B21A9C369137F2C84AE1AA0D2E45EF571F00786F67B0081B9495A3D95462F5DE0AA185EC2866537B676752636A68F56554E12640276B649EF7526267800000000000000000000000000000000000000000000201X9.62 curve over a 176 bit binary field00010092537397ECA4F6145799D62B0A19CE06FE26AD6FA4539C2DADDDD6BAB5167D61B436E1D92BB16A562C8D16C2866798B600F9F08BB4A8E860F3298CE04A57985DDA470ABE6414DE8EC133AE28E9BBD7FCEC0AE0FFF2E4E6DB2995065C407D9D39B8D0967B96704BA8E9C90B010000000000000000000000000000000008000000000703FFFFFFFFFFFFFFFFFFFE1AEE140F110AFF96130905B935590C155E17EA48EB3FF3718B893DF59A05D002F9F87B7C574D0BDECF8A22E6524775F98CDEBDCB03F7061798EB99E238FD6F1BF95B48FEEB4854252B07A526C63D3E25A256A007699F5447E32AE456B50E03FFFFFFFFFFFFFFFFFFFDF64DE1151ADBB78F10A7079F684DDF6684C5CD258B3890021B2386DFD19FC50024266E4EB5106D0A964D92C4860E2671DB9B6CC50667ACEB38AF4E488C407433FFAE4F1C811638DF200108B39E77C4B108BED981ED0E890E117C511CF072X9.62 curve over a 163 bit binary field0400000000000000000001E60FC8821CC74DAEAFC101EC23211B5966ADEA1D3F87F7EA5848AEF0B7CA9F07AF69989546103D79329FCC3D74880F33BBE803CB00C9517D06D5240D3CFF38C74B20B6CD4D6F9DD4D9072546B5435234A422E0789675F432C89435DE524208000000000000000000000000000000000000010703FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE661CE18FF55987308059B186823851EC7DD9CA1161DE93D5174D66E8382E9BB2FE84E47037BF27342DA639B6DCCFFFEB73D69D78C6C27A6009CBBCA1980F8533921E8A684423E43BAB08A576291AF8F461BB2A8B3531D2F0485C19B16E2F1516E23DD3C1A4827AF1B8AC15B0303001D34B856296C16C0D40D3CD7750A93D1D2955FA80AA5F40FC8DB7B2ABDBDE53950F4C0D293CDD711A35B67FB1499AE60038614F1394ABFA3B4C850D927E1E7769C8EEC2D1902F40E7E2221F295DE297117B7F3D62F5C6A97FFCB8CEFF1CD6BA8CE4A9A18AD84FFABBD8EFA59332BE7AD6756A66E294AFD185A78FF12AA520E4DE739BACA0C7FFEFF7F2955727A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001NIST/SECG curve over a 571 bit binary field020000000000000000000000000000000000000000000000000000000000000000000000131850E1F19A63E4B391A8DB917F4138B630D84BE5D639381E91DEB45CFE778F637C10010349DC807F4FBF374F4AEADE3BCA95314DD58CEC9F307A54FFC61EFC006D8A2C9D4979C0AC44AEA74FBEBBB9F772AEDCB620B01A7BA7AF1B320430C8591984F601CD4C143EF1C7A3026EB7A859923FBC82189631F8103FE4AC9CA2970012D5D46024804801841CA44370958493B205E647DA304DB4CEB08CBBD1BA39494776FB988B47174DCA88C7E2945283A01C897280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000425010000000000000000000000000000000000000000000000000001E2AAD6A612F33307BE5FA47C3C9E052F838164CD37D9A211730061B1CFAB6BE5F32BBFA78324ED106A7636B9C5A7BD198D0158AA4F5488D08F38514F1FDF4B4F40D2181B3681C364BA0273C706015D4860D088DDB3496B0C6064756260441CDE4AF1771D4DB01FFE5B34E59703DC255A868A1180515603AEAB60794E54BB7996A70021A5C2C8EE9FEB5C4B9A753B7B476B7FD6422EF1F3DD674761FA99D6AC27C8A9A197B272822F6CD57A55AA4F50AE317B13545F00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001NIST/SECG curve over a 409 bit binary field007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5F83B2D4EA20400EC4557D5ED3E3E7CA5B4B5C83B8E01E5FCF01E369050B7C4E42ACBA1DACBF04299C3460782F918EA427E6325165E9EA10E3DA5F6C42E9C55215AA9CA27A5863EC48D8E0286B0060F05F658F49C1AD3AB1890F7184210EFD0987E307C84C27ACCFB8F9F67CC2C460189EB5AAAA62EE222EB1B35540CFE90237460200000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000103FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF90399660FC938A90165B042A7CEFADB30703676854FE24141CB98FE6D4B20D02B4516FF702350EDDB0826779C813F0DF45BE8112F405F939258DB7DD90E1934F8C70B0DFEC2EED25B8557EAC9C80E2E198F8CDBECD86B12053027B680AC8B8596DA5A4AF8A19A0303FCA97FD7645309FA2A581485AF6263E313B79A2F5000000000000000000000000000000000000000000000000000000000000000000000001NIST/SECG curve over a 283 bit binary field01FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9AE2ED07577265DFF7F94451E061E163C6101CCDA380F1C9E318D90F95D07E5426FE87E45C0E8184698E45962364E34116177DD22590503213F78CA44883F1A3B8162F188E553CD265F23C1567A16876913B0C2AC24584928360800000000000000000000000000000000000000000000000000000000000000000010A1SECG curve over a 239 bit binary field2000000000000000000000000000005A79FEC67CB6E91F1C1DA800E478A576310804F12E549BDB011C103089E73510ACB275FC312A5DC6B76553F0CA29A0B6A887A983E9730988A68727A8B2D126C44CC2CC7B2A6555193035DC80000000000000000000400000000000000000000000000000000000000101000000000000000000000000000013E974E72F8A6922031D2603CFE0D701006A08A41903350678E58528BEBF8A0BEFF867A7CA36716F7E01F8105200FAC9DFCBAC8313BB2139F1BB755FEF65BC391F8B36F8F8EB7371FD558B0066647EDE6C332C7F8C0923BB58213B333B20E9CE4281FE115F7D8F90AD000000000000000000000000000000000000000000000000000000000001NIST/SECG/WTLS curve over a 233 bit binary field008000000000000000000000000000069D5BB915BCD46EFB1AD5F173ABDF01DB537DECE819B7F70F555A67C427A8CD9BF18AEB9B56E0C11056FAE6A3017232BA853A7E731AF129F22FF4149563A419C26BF50A4C9D6EEFAD6126020000000000000000000000000000000000000004000000000000000001010000000000000000000000015AAB561B005413CCD4EE99D501CE94335607C304AC29E7DEFBD9CA01F596F927224CDECF6C00D9B67D192E0367C803F39E1A7E82CA14A651350AAE617E8F00C9BB9E8927D4D64C377E2AB2856A5B16E3EFB7F61D4316AE0163F35A5137C2CE3EA6ED8667190B0BC43ECD69977702709BSECG curve over a 193 bit binary field01000000000000000000000000C7F34A778F443ACC920EBA490025E399F2903712CCF3EA9E3A1AD17FB0B3201B6AF7CE1B0501F481BC5F0FF84A74AD6CDF6FDEF4BF6179625372D8C0C5E100FDFB49BFE6C3A89FACADAA7A1E5BBC7CC1C2E5D8314788140017858FEB7A98975169E171F77B4087DE098AC8A911DF7B0102000000000000000000000000000000000000000000008001NIST/SECG curve over a 163 bit binary field040000000000000000000292FE77E70C12A4234C3300D51FBC6C71A0094FA2CDD545B11C5C0C797324F103F0EBA16286A2D57EA0991168D4994637E8343E36020A601907B8C953CA1481EB10512F78744A3205FDSECG curve over a 163 bit binary field03FFFFFFFFFFFFFFFFFFFF48AAB689C29CA710279B00435EDB42EFAFB2989D51FEFCE3C80988F41FF8830369979697AB43897789566789567F787A7876A6540713612DCDDCB40AAB946BDA29CA91F73AF958AFD907B6882CAAEFA84F9554FF8428BD88E246D2782AE2NIST/SECG/WTLS curve over a 163 bit binary field04000000000000000000020108A2E0CC0D99F8A5EF0289070FB05D38FF58321F2E800536D538CCDAA3D902FE13C0537BBC11ACAA07D793DE4E6D5E5C94EEE80800000000000000000000000000000000000000C9SECG curve over a 131 bit binary field0400000000000000016954A233049BA98F0648F06D867940A5366D9E265DE9EB240F0356DCD8F2F95031AD652D23951BB366A804B8266A46C55657AC734CE38F018F219203E5A88919D7CAFCBF415F07C2176573B2SECG/WTLS curve over a 131 bit binary field0400000000000000023123953A9464B54D078C6E7EA38C001F73C8134B1B4EF9E1500081BAF91FDF9833C40F9C1813436383990217C05610884B63B9C6C7291678F9D34107A11B09A76B562144418FF3FF8C2570B8080000000000000000000000000000010D010000000000000108789B2496AF9300B3ADC94ED1FE674C06E695BABA1D01A57A6A7B26CA5EF52FCDB81647970095E9A9EC9B297BD4BF36E059184F00689918DBEC7E5A0DD6DFC0AA55C7SECG curve over a 113 bit binary field0100000000000000D9CCEC8A39E56F00A52830277958EE84D1315ED31886009D73616F35F4AB1407D73562C10F00E8BEE4D3E2260744188BE0E9C723003088250CA6E7C7FE649CE85820F7020000000000000000000000000201WTLS curvs over a 224 bit prime fieldWTLS curve over a 160 bit prime field0100000000000000000001CDC98AE0E2DE574ABF33FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC808FWTLS curve over a 112 bit prime field0100000000000001ECEA551AD837E921FFFFFFFFFFFFFFFFFFFFFFFFFDE7SECG curve over a 256 bit prime fieldFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b879BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2FSECG curve over a 224 bit prime field010000000000000000000000000001DCE8D2EC6184CAF0A971769FB1F77e089fed7fba344282cafbd6f7e319f7c0b0bd59e2ca4bdb556d61a5A1455B334DF099DF30FC28A169A467E9E47075A90F7E650EB6B7A45C5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFE56DSECG curve over a 192 bit prime fieldFFFFFFFFFFFFFFFFFFFFFFFE26F2FC170F69466A74DEFD8D9b2f2f6d9c5628a7844163d015be86344082aa88d95e2f9dDB4FF10EC057E9AE26B07D0280B7F4341DA5D1B1EAE06C7D3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFEE37SECG/WTLS curve over a 160 bit prime field0100000000000000000000351EE786A818F3A1A16Bfeaffef2e331f296e071fa0df9982cfea7d43f2e52DCB034293A117E1F4FF11B30F7199D3144CE6DB4E134D3FB59EB8BAB57274904664D5AF50388BAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFAC700100000000000000000001F4C8F927AED3CA75225723a628553168947d59dcc912042351377ac5fb324A96B5688EF573284664698968C38BB913CBFC821C97BEFC54BD7A8B65ACF89F81D4D4ADC565FA45FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFFSECG curve over a 160 bit prime field0100000000000000000001B8FA16DFAB9ACA16B6B3938cf935318fdced6bc28286531733c3f03c4fee3B4C382CE37AA192A4019E763036F4F5DD4D7EBB7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFAC733FFFFFFF7FFFFFFFBE0024720613B5A327b6916a894d3aee7106fe805fc34b447B6AA5D85E572983E6FB32A7CDEBC1405EEEFCA380D02919DC2C6558BB6D8A5DD6031998D1B3BBFEBF59CC9BBFF9AEE1SECG curve over a 128 bit prime fieldFFFFFFFE0000000075A30D1B9038A115cf5ac8395bafeb13c02da292dded7a83161FF7528B899B2D0C28607CA52C5B86E87579C11079F43DD824993C2CEE5ED3FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFFSECG curve over a 112 bit prime field36DF0AAFD8B8D7597CA10520D04Badcd46f5882e3747def36e956e974BA30AB5E892B4E1649DD092864351DEF1815DB5ED74FCC34C85D7096127C24C05F38A0AAAF65C0EF02CSECG/WTLS curve over a 112 bit prime fieldDB7C2ABF62E35E7628DFAC6561C5a89ce5af8724c0a23e0e0ff7750009487239995A5EE76B55F9C2F098659EF8BA043916EEDE8911702B22DB7C2ABF62E35E668076BEAD2088DB7C2ABF62E35E668076BEAD208BX9.62/SECG curve over a 256 bit prime fieldFFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC6325514fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f56B17D1F2E12C4247F8BCE6E563A440F277037D812DEB33A0F4A13945D898C2965AC635D8AA3A93E7B3EBBD55769886BC651D06B0CC53B0F63BCE3C3E27D2604BFFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFFFFFFFFFFFFFFFFFF7FFFFF975DEB41B3A6057C3C4321465265511607e6898f390c06bc1d552bad226f3b6fcfe48b6e818499af18e3ed6cf36768AE8E18BB92CFCF005C949AA2C6D94853D0E660BBF854B1C9505FE95A255705FA2A306654B1F4CB03D6A750A30C250102D4988717D9BA15AB6D3E7FFFFFFFFFFFFFFFFFFFFFFF800000CFA7E8594377D414C03821BC5820635b0125e4dbea0ec7206da0fc01d9b081329fb555de6ef460237dff8be4ba38AF09D98727705120C921BB5E9E26296A3CDCF2F35757A0EAFD87B830E7617FAB6832576CBBFED50D99F0249C3FEE58B94BA0038C7AE84C8C832F2CX9.62 curve over a 239 bit prime field7FFFFFFFFFFFFFFFFFFFFFFF7FFFFF9E5E9A9F5D9071FBD1522688909D0B7debe8e4e90a5dae6e4054ca530ba04654b36818ce226b39fccb7b02f1ae0FFA963CDCA8816CCC33B8642BEDF905C3D358573D3F27FBBD3B3CB9AAAF6B016C3BDCF18941D0D654921475CA71A9DB2FB27D1D37796185C2942C0A7FFFFFFFFFFFFFFFFFFFFFFF7FFFFFFFFFFF8000000000007FFFFFFFFFFC7FFFFFFFFFFFFFFFFFFFFFFF7FFFFFFFFFFF8000000000007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A62D031C83F4294F640EC1338a90f22637337334b49dcb66a6dc8f9978aca7648a943b07D29778100C65A1DA1783716588DCE2B8B4AEE8E228F189622123DC2395A05CAA7423DAECCC94760A7D462256BD56916X9.62 curve over a 192 bit prime fieldFFFFFFFFFFFFFFFFFFFFFFFE5FB1A724DC80418648D8DD316574d11d69b6ec7a672bb82a083df2f2b0847de970b2de15EEA2BAE7E1497842F2DE7769CFE9C989C072AD696F48034ACC22D6DFB95C6B25E49C0D6364A4E5980C393AA21668D953NIST/SECG curve over a 521 bit prime field1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF2F966B7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386409011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650C6858E06B70404E9CD9E3ECB662395B4429C648139053FB521F828AF606B4D3DBAA14B5E77EFE75928FE1DC127A2FFA8DE3348B3C1856A429BF97E7E31C2E5BD66051953EB9618E1C9A1F929A21A0B68540EEA2DA725B99B315F3B8B489918EF109E156193951EC7E937B1652C0BD3BB1BF073573DF883D2C34F1EF451FD46B503F001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFNIST/SECG curve over a 384 bit prime fieldFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7634D81F4372DDF581A0DB248B0A77AECEC196ACCC529733617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5fAA87CA22BE8B05378EB1C71EF320AD746E1D3B628BA79B9859F741E082542A385502F25DBF55296C3A545E3872760AB7B3312FA7E23EE7E4988E056BE3F82D19181D9C6EFE8141120314088F5013875AC656398D8A2ED19D2A85C8EDD3EC2AEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFF0000000000000000FFFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFF0000000000000000FFFFFFFFNIST/SECG curve over a 224 bit prime fieldFFFFFFFFFFFFFFFFFFFFFFFFFFFF16A2E0B8F03E13DD29455C5C2A3Dbd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34B70E0CBD6BB4BF7F321390B94A03C1D356C21122343280D6115C1D21B4050A850C04B3ABF54132565044B0B7D7BFD8BA270B39432355FFB4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000001NIST/X9.62/SECG curve over a 192 bit prime fieldFFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D2283107192b95ffc8da78631011ed6b24cdd573f977a11e794811188DA80EB03090F67CBF20EB43A18800F4FF0AFD82FF101264210519E59C80E70FA7E9AB72243049FEB8DEECC146B9B1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFF.\crypto\ec\ec_curve.cDSA part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\dsa\dsa_lib.cRSA part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\rsa\rsa_lib.cASN1_TIME.\crypto\asn1\a_time.c.\crypto\asn1\a_int.c.\crypto\asn1\a_bitstr.c.\crypto\asn1\tasn_utl.c.\crypto\x509v3\pcy_data.cx *0xlg``*`TLPg@0g0*(gP* *gHgeNOTICEREFnoticenosorganizationUSERNOTICEexptextnoticerefPOLICYQUALINFOpqualidd.usernoticed.cpsurid.otherPOLICYINFOqualifierspolicyidCERTIFICATEPOLICIES.\crypto\x509v3\v3_cpols.c%*sExplicit Text: %s , %*sNumber%s: %*sOrganization: %s section:,name:,value:noticeNumbersexplicitText%*sCPS: %s %*sUser Notice: %*sUnknown Qualifier: %*sPolicy: userNoticeCPSpolicyIdentifieria5org.\crypto\x509v3\pcy_map.c(eePOLICY_CONSTRAINTSinhibitPolicyMappingrequireExplicitPolicyInhibit Policy MappingRequire Explicit Policy.\crypto\x509v3\v3_pcons.cg\Pghh`90g0g`gk9d0gXfHg 8(9GENERAL_NAMESGeneralNamesGENERAL_NAMEd.registeredIDd.iPAddressd.uniformResourceIdentifierd.ediPartyNamed.directoryNamed.x400Addressd.dNSNamed.rfc822Named.otherNameEDIPARTYNAMEpartyNamenameAssignerOTHERNAMEtype_id.\crypto\engine\eng_lib.c@ADF@d:::DF@t :::DF@t0:; ;DF@;; ;DF@"@@@Module32NextModule32FirstThread32NextThread32FirstProcess32NextProcess32FirstHeap32ListNextHeap32ListFirstHeap32NextHeap32FirstCloseToolhelp32SnapshotCreateToolhelp32Snapshot@GetQueueStatusGetCursorInfoGetForegroundWindowUSER32.DLLP@Intel Hardware Cryptographic Service ProviderCryptReleaseContextCryptGenRandomCryptAcquireContextW1@LanmanServerF@LanmanWorkstationNetApiBufferFreeNetStatisticsGetNETAPI32.DLLKERNEL32.DLLADVAPI32.DLL.\crypto\engine\eng_table.c.\crypto\engine\tb_digest.c.\crypto\rsa\rsa_sign.csignature has problems, re-make with post SSLeay045 MD5 part of OpenSSL 0.9.8a 11 Oct 2005gfe|M`PROXY_CERT_INFO_EXTENSIONproxyPolicypcPathLengthConstraintPROXY_POLICYpolicypolicyLanguage( h e BASIC_CONSTRAINTSpathlencaCA.\crypto\x509v3\v3_bcons.cBig Number part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\bn\bn_lib.cECDSA part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\ecdsa\ecs_lib.cDiffie-Hellman part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\dh\dh_lib.c!Pg!Pg,! !\g@^p! !X509_ATTRIBUTEvalue.singlevalue.set^XP_D#@#<# $4#(,#,$#! !X^D#@#""Xiqmpdmq1dmp1den##ZLONGLONG.\crypto\asn1\x_long.c`` a`apbcd0dde 0ePeeffi`lp ppprst cddtu u.\crypto\ec\ec2_smpl.cc:\loewis\25\openssl-0.9.8a\crypto\ec\ec2_smpt.c.\crypto\ec\ec_mult.c.\crypto\bn\bn_ctx.c.\crypto\bn\bn_rand.c % %BIGNUM.\crypto\bn\bn_print.c%09lu-OpenSSL DSA method.\crypto\dsa\dsa_ossl.cEric Young's PKCS#1 RSA.\crypto\rsa\rsa_eay.c.\crypto\bn\bn_blind.c.\crypto\bn\bn_gcd.c.\crypto\bn\bn_add.c%04d%02d%02d%02d%02d%02dZ.\crypto\asn1\a_gentm.c%02d%02d%02d%02d%02d%02dZ.\crypto\asn1\a_utctm.c.\crypto\x509v3\v3_utl.cFALSETRUEnoNONfalseyesYESyYtrue%d.%d.%d.%d.\crypto\x509v3\v3_conf.cname=value='gp'g&`'P' 'P'POLICY_MAPPINGSPOLICY_MAPPINGsubjectDomainPolicyissuerDomainPolicy.\crypto\x509v3\v3_pmaps.cSHA1 part of OpenSSL 0.9.8a 11 Oct 2005/BD7q۵[V9Y?^[1$} Ut]rހܛtiGƝ̡ $o,-tJܩ\ڈvRQ>m1'Y GQcg)) '8!.m,M 8STs e jv.,r迢KfpK£Ql$օ5pjl7LwH'4 9JNOʜ[o.htocxxȄnjlPxqSHA-256 part of OpenSSL 0.9.8a 11 Oct 2005"(ט/Be#D7q/;Mۉ۵8H[V9YO?m^BؾopE[N1$} Uo{t]r;ހ5%ܛ&itJi%O8GՌƝew̡ $u+Yo,-ntJAܩ\SڈvfRQ>2-m1?!'Y= % GoQcpn g))/F '&&\8!.*Zm,M߳ 8ScTs ew< jvG.;5,rdL迢0BKfpK0TQlReU$* qW5ѻ2pjҸSAQl7LwH'Hᵼ4cZų 9ˊAJNscwOʜ[o.h]t`/CocxrxȄ9dnj(c#齂lPyƲ+SrxqƜa&>'!Ǹ}xnO}orgȢ}c ?G5 q}#w($@{2 ˾L*~e)Y:o_XGJDlSHA-512 part of OpenSSL 0.9.8a 11 Oct 2005%sa@p,f+ ,X509_SIGdigest.\crypto\asn1\a_verify.cpA XeXkh-`h\-P^X,@,L- @-AdX@pX@f,,4-X509_REQreq_infoX509_REQ_INFOattributespubkeyXeH/ Xep-8/@BXedX@pXk ,/  / /AXe--(/ /AdX@pX@f...X509_CRLcrlX509_CRL_INFOrevokednextUpdatelastUpdateX509_REVOKEDrevocationDateh-`h(00gX/00pB0@pX@f/ /NETSCAPE_SPKIsig_algorspkacNETSCAPE_SPKACchallenge.\crypto\asn1\a_d2i_fp.cLPg70h7PE7E7E7F7Fh0P0pg70E17Xe7@p|7@Et7`/ /Ah7EX1X7`EXeD7E87@p ,7P^7@p7f7P^21 6Xkde26Xe6E6E2 6EXeD7E6@p 6fh3L36p6gc@p6f3\6Xe6E7@p6Et7`/ /Ah7E04H6Xe6E486Xe46@p|7@E ,f 5$66P^56 6P^55PKCS7_ATTR_VERIFYPKCS7_ATTR_SIGNPKCS7_ATTRIBUTESPKCS7_DIGESTmdPKCS7_ENCRYPTPKCS7_SIGN_ENVELOPEPKCS7_ENC_CONTENTcontent_typePKCS7_RECIP_INFOenc_keykey_enc_algorPKCS7_ENVELOPEenc_datarecipientinfoPKCS7_ISSUER_AND_SERIALPKCS7_SIGNER_INFOunauth_attrenc_digestdigest_enc_algauth_attrdigest_algissuer_and_serialPKCS7_SIGNEDsigner_infocertcontentsmd_algsPKCS7d.encryptedd.digestd.signed_and_envelopedd.envelopedd.signd.dataFXe8@p 8Pg\-P^87l8PKCS8_PRIV_KEY_INFOpkeypkeyalgTYPE=.\crypto\evp\evp_pkey.c.\crypto\asn1\d2i_pr.cOpenSSL ECDSA method.\crypto\ecdsa\ecs_ossl.cOpenSSL DH Method.\crypto\dh\dh_key.c.\crypto\ec\ec2_mult.c@ADEPQTU.\crypto\bn\bn_gf2m.c@q`qqrre 0e `  `Ppp !#$0ttt upu.\crypto\ec\ecp_mont.c@`uve 0e `  `Ppp !#$@wx.\crypto\ec\ecp_nist.c.\crypto\bn\bn_mod.c.\crypto\bn\bn_div.c.\crypto\bn\bn_exp.c.\crypto\bn\bn_mont.c.\crypto\bn\bn_exp2.c.\crypto\rsa\rsa_none.c.\crypto\rsa\rsa_ssl.c.\crypto\rsa\rsa_oaep.c.\crypto\rsa\rsa_pk1.c.\crypto\rsa\rsa_x931.c.\crypto\asn1\a_enum.c.\crypto\x509\x509name.c/FORMATFORMBITWRAPSETWRAPSEQWRAPOCTWRAPIMPLICITIMPEXPLICITEXPSETSEQSEQUENCEGENSTRGeneralStringTELETEXSTRINGT61STRINGT61PRINTABLEPRINTABLESTRINGVISIBLEVISIBLESTRINGBMPSTRINGBMPUTF8StringUTF8IA5STRINGIA5UNIVUNIVERSALSTRINGBITSTRINGBITSTROCTETSTRINGOCTGENTIMEGENERALIZEDTIMEUTCUTCTIMEOBJECTOIDENUMERATEDENUMINTEGERINTBOOLEANBOOLChar=.\crypto\asn1\asn1_gen.cBITLISTHEXASCIItag=string=CONF part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\conf\conf_lib.cgroup= name=rb9X?eP?eh> @?,??>?NAME_CONSTRAINTSexcludedSubtreespermittedSubtreesGENERAL_SUBTREEmaximumminimum.\crypto\x509v3\v3_ncons.cexcludedpermittedIP Address::%X%d.%d.%d.%d/%d.%d.%d.%dIP:%*s%*s%s: ExcludedPermitted%*sPolicy Text: %s %*sPolicy Language: infinite%*sPath Length Constraint: text:file:hex:.\crypto\x509v3\v3_pci.clanguage%*scrlTime: %*scrlNum: %*scrlUrl: .\crypto\x509v3\v3_ocsp.c - %*s%*sIssuer: AgA9@pA(@(AXAAUTHORITY_INFO_ACCESSACCESS_DESCRIPTIONlocationmethod.\crypto\x509v3\v3_info.cAgAAEXTENDED_KEY_USAGE.\crypto\x509v3\v3_extku.cBeBfBBXeBXBBSXNETidsSXNETIDuserzone %*sZone: %s, User: %*sVersion: %ld (0x%lX).\crypto\x509v3\v3_sxnet.cremoveFromCRLRemove From CRLcertificateHoldCertificate HoldcessationOfOperationCessation Of OperationsupersededSupersededaffiliationChangedAffiliation ChangedCACompromiseCA CompromisekeyCompromiseKey CompromiseunspecifiedUnspecified\E9HE kD8E,E@$E@fE9\D EDPDDCRL_DIST_POINTSCRLDistributionPointsDIST_POINTCRLissuerreasonsdistpointDIST_POINT_NAMEname.relativenamename.fullnameRelativeName.\crypto\x509v3\v3_crld.c.\crypto\x509v3\v3_akey.calwaysRegistered IDIP AddressDirNameURIDNSemailEdiPartyNameX400Nameothername:%XIP Address:%d.%d.%d.%dDirName: URI:%sDNS:%semail:%sEdiPartyName:X400Name:othername:.\crypto\x509v3\v3_alt.csection=otherNamedirNameIPRIDcopymoveb@ga@g(GlGPKEY_USAGE_PERIODNot After: Not Before: decipherOnlyDecipher OnlyencipherOnlyEncipher OnlycRLSignCRL SignkeyCertSignCertificate SignkeyAgreementKey AgreementdataEnciphermentData EnciphermentkeyEnciphermentKey EnciphermentnonRepudiationNon RepudiationdigitalSignatureDigital SignatureobjCAObject Signing CAemailCAS/MIME CAsslCASSL CAreservedUnusedobjsignObject SigningserverSSL ServerclientSSL Client.\crypto\x509v3\v3_bitst.c.\crypto\x509v3\v3_skey.chash.\crypto\x509v3\v3_ia5.c.\crypto\evp\p_verify.c.\crypto\evp\p_sign.c.\crypto\asn1\asn_pack.c.\crypto\asn1\a_set.cJ\JECDSA_SIG@` e 0e `  `Ppp !#$().\crypto\ec\ecp_smpl.c.\crypto\bn\bn_nist.c.\crypto\bn\bn_recp.cdefault.\crypto\dso\dso_lib.c/usr/local/ssl/certs/usr/local/ssl/cert.pemSSL_CERT_DIRSSL_CERT_FILE'()+,-./:=?maxsize=minsize=%ld.\crypto\asn1\a_mbstr.cWIN32OpenSSL defaultCONF_def part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\conf\conf_def.c[[%s]] [%s] %s=%s line ENV.\crypto\conf\conf_api.c\ 00`U@pX@fXU`/hM HU8U@p(UfUf XeM UU^Te,NTXeT9T_ TepNTT_T^NpT`TgTTf ODT4T0f$T _dOTTkSfOSS@gS0fOSSfS@_Sf0PxSpS^dSP_XS@g /@gDSeP4SXe(S0_S@g S`_ReQRRp_`U@pX@f XU`/QRR0gReR@gQ RXkR@LRROCSP_SERVICELOClocatorOCSP_CRLIDcrlTimecrlNumcrlUrlOCSP_BASICRESPtbsResponseDataOCSP_RESPDATAresponseExtensionsresponsesproducedAtresponderIdOCSP_SINGLERESPsingleExtensionsthisUpdatecertStatuscertIdOCSP_CERTSTATUSvalue.unknownvalue.revokedvalue.goodOCSP_REVOKEDINFOrevocationReasonrevocationTimeOCSP_RESPIDvalue.byKeyvalue.byNameOCSP_RESPONSEresponseBytesresponseStatusOCSP_RESPBYTESresponseresponseTypeOCSP_REQUESToptionalSignaturetbsRequestOCSP_REQINFOrequestExtensionsrequestListrequestorNameOCSP_ONEREQsingleRequestExtensionsreqCertOCSP_CERTIDissuerKeyHashissuerNameHashhashAlgorithmOCSP_SIGNATUREcertssignatureAlgorithmDecNovOctSepAugJulJunMayAprMarFebJan.\crypto\asn1\t_x509.cBad time value%s %2d %02d:%02d:%02d %d%s GMT0123456789ABCDEF\%02X\\U%04lX\W%08lX.\crypto\asn1\a_strex.c#"= = + ; +,.\crypto\objects\o_names.c.\crypto\evp\evp_pbe.c %)+/5;=CGIOSYaegkmq %379=KQ[]agou{  #-39;AKQWY_eikw)+57;=GUY[_mqsw %'-?CEIOU]ci  ')/QW]ew #+/=AGIMSU[ey '7EKOQUWamsy!#')3?AQSY]_iq   # % + / 5 C I M O U Y _ k q w   ! 1 9 = I W a c g o u {      # ) - ? G Q W ] e o {   % / 1 A [ _ a m s w      ! + - = ? O U i y !'/5;KWY]kqu}  %)1CGMOSY[gk!%+9=?Qisy{ '-9EGY_cio #)+17AGS_qsy} '-7CEIOW]gim{!/3;EMYkoqu %)+7=ACI_egk} %39=EOUimou #'3A]cw{57;CIMUgqw}13EIQ[y!#-/5?MQik{}#%/17;AGOUYeks '+-3=EKOUs !#59?AKS]ciqu{} %+/=IMOmq 9IKQgu{   ' ) - 3 G M Q _ c e i w } !!5!A!I!O!Y![!_!s!}!!!!!!!!!!!!!!!!!" """!"%"+"1"9"K"O"c"g"s"u"""""""""""""""# # #'#)#/#3#5#E#Q#S#Y#c#k################$ $$$)$=$A$C$M$_$g$k$y$}$$$$$$$$$$$$$$$$$$%%%%'%1%=%C%K%O%s%%%%%%%%%%%%%%%%& &&&'&)&5&;&?&K&S&Y&e&i&o&{&&&&&&&&&&&&&&&''5'7'M'S'U'_'k'm's'w''''''''''''''(( ((((!(1(=(?(I(Q([(](a(g(u((((((((((((()))!)#)?)G)])e)i)o)u))))))))))))))))***%*/*O*U*_*e*k*m*s***************+'+1+3+=+?+K+O+U+i+m+o+{++++++++++++++ ,,,#,/,5,9,A,W,Y,i,w,,,,,,,,,,,,,,,,---;-C-I-M-a-e-q-----------... ...%.-.3.7.9.?.W.[.o.y................/ / //'/)/A/E/K/M/Q/W/o/u/}///////////////0 0#0)070;0U0Y0[0g0q0y0}000000000000000001 11!1'1-191C1E1K1]1a1g1m1s11111111111111 2222)252Y2]2c2k2o2u2w2{22222222222222223%3+3/353A3G3[3_3g3k3s3y33333333333334444474E4U4W4c4i4m44444444444444 555-535;5A5Q5e5o5q5w5{5}555555555555555666#6165676;6M6O6S6Y6a6k6m6666666666667777?7E7I7O7]7a7u7777777777778 8!83858A8G8K8S8W8_8e8o8q8}8888888888888899#9%9)9/9=9A9M9[9k9y9}999999999999999999::::':+:1:K:Q:[:c:g:m:y::::::::::::;;;!;#;-;9;E;S;Y;_;q;{;;;;;;;;;;;;;;;;;;< <<<<)<5<C<O<S<[<e<k<q<<<<<<<<<<<<<= ====!=-=3=7=?=C=o=s=u=y={=============> >>>>#>)>/>3>A>W>c>e>w>>>>>>>>>>>>>>>> ? ?7?;?=?A?Y?_?e?g?y?}????????????@!@%@+@1@?@C@E@]@a@g@m@@@@@@@@@@@@@ A AAA!A3A5A;A?AYAeAkAwA{AAAAAAAAAAABBBB#B)B/BCBSBUB[BaBsB}BBBBBBBBBBBBBBCCC%C'C3C7C9COCWCiCCCCCCCCCCCCCCCCC D DD#D)D;D?DEDKDQDSDYDeDoDDDDDDDDDDDDDDEEE+E1EAEIESEUEaEwE}EEEEEEEE.\crypto\bn\bn_sqrt.cGenerator (hybrid):Generator (uncompressed):Generator (compressed):%lu:%s:%s:%d:%s GENERALSTRINGGRAPHICSTRINGVIDEOTEXSTRINGNUMERICSTRINGUTF8STRINGREALEXTERNALOBJECT DESCRIPTOROCTET STRINGBIT STRINGEOC%-18s%2d %-15s(unknown)OpenSSL 'win32' shared library methodfilename().\crypto\dso\dso_win32.csymname(%s.dll\\OpenSSL 0.9.8a 11 Oct 2005.\ssl\ssl_lib.cALL:!ADH:+RC4:@STRENGTHSSLv2SSLv3TLSv1s->sid_ctx_length <= sizeof s->sid_ctxssl3-sha1ssl3-md5ssl2-md5dss1DSS1.\ssl\ssl_rsa.c%-23s %s Kx=%-8s Au=%-4s Enc=%-9s Mac=%-4s%s x?h ?TL D<4,$ w ܀?Ԁ??Ѐ?Ȁ ???@  ? ?xxxt< @xHIGHMEDIUMLOWEXPORT56EXPORT40EXPORTFZAADHKRB5AESeFZAeNULLRC23DESDESDSSaDHaNULLaFZAaDSSaRSAaKRB5EDHECCdraftDHkFZAkEDHkDHdkDHrkRSAkKRB5COMPLEMENTOFDEFAULTCOMPLEMENTOFALLALL.\ssl\ssl_ciph.cSTRENGTHDEFAULTSSL for verify callback.\ssl\ssl_cert.cssl_serverssl_client.\ssl\ssl_sess.cx509 verification setup problemsx509 libwrong version numberwrong ssl versionwrong signature sizewrong signature lengthwrong number of key bitswrong message typewrong cipher returnedwrite bio not setunsupported ssl versionunsupported protocolunsupported optionunsupported elliptic curveunsupported compression algorithmunsupported cipherunknown stateunknown ssl versionunknown remote error typeunknown protocolunknown pkey typeunknown key exchange typeunknown cipher typeunknown cipher returnedunknown certificate typeunknown alert typeuninitializedunexpected recordunexpected messageunable to load ssl3 sha1 routinesunable to load ssl3 md5 routinesunable to load ssl2 md5 routinesunable to find ssl methodunable to find public key parametersunable to find ecdh parametersunable to find dh parametersunable to extract public keyunable to decode ecdh certsunable to decode dh certstried to use unsupported ciphertls rsa encrypted value length is wrongtls peer did not respond with certificate listtls client cert req with anon ciphertlsv1 alert user cancelledtlsv1 alert unknown catlsv1 alert record overflowtlsv1 alert protocol versiontlsv1 alert no renegotiationtlsv1 alert internal errortlsv1 alert insufficient securitytlsv1 alert export restrictiontlsv1 alert decrypt errortlsv1 alert decryption failedtlsv1 alert decode errortlsv1 alert access deniedssl session id is differentssl session id has bad lengthssl session id context too longssl session id conflictssl session id callback failedssl library has no ciphersssl handshake failuressl ctx has no default ssl versionsslv3 alert unsupported certificatesslv3 alert unknown remote error typesslv3 alert unexpected messagesslv3 alert peer error unsupported certificate typesslv3 alert peer error no ciphersslv3 alert peer error no certificatesslv3 alert peer error certificatesslv3 alert no certificatesslv3 alert illegal parametersslv3 alert handshake failuresslv3 alert decompression failuresslv3 alert certificate unknownsslv3 alert certificate revokedsslv3 alert certificate expiredsslv3 alert bad record macsslv3 alert bad certificatessl3 session id too shortssl3 session id too longssl2 connection id too longssl23 doing session id reusesignature for non signing certificateshort readsession id context uninitializedreuse cipher list not zeroreuse cert type not zeroreuse cert length not zerorequired cipher missingrecord too smallrecord too largerecord length mismatchread wrong packet typeread timeout expiredread bio not setpublic key not rsapublic key is not rsapublic key encrypt errorprotocol is shutdownproblems mapping cipher functionspre mac length too longpeer error unsupported certificate typepeer error no cipherpeer error no certificatepeer error certificatepeer errorpeer did not return a certificatepath too longpacket length too longold session cipher not returnednull ssl method passednull ssl ctxno verify callbackno shared cipherno publickeyno protocols availableno private key assignedno privatekeyno method specifiedno compression specifiedno client cert receivedno cipher matchno cipher listno ciphers specifiedno ciphers passedno ciphers availableno certificate specifiedno certificate setno certificate returnedno certificate assignedno certificates returnednon sslv2 initial packetmissing verify messagemissing tmp rsa pkeymissing tmp rsa keymissing tmp ecdh keymissing tmp dh keymissing rsa signing certmissing rsa encrypting certmissing rsa certificatemissing export tmp rsa keymissing export tmp dh keymissing dsa signing certmissing dh rsa certmissing dh keymissing dh dsa certmessage too longmaster key too longlibrary has no cipherslibrary buglength too shortlength mismatchkrb5 server tkt skewkrb5 server tkt not yet validkrb5 server tkt expiredkrb5 server rd_req (keytab perms?)krb5 server initkrb5 server bad ticketkrb5 client mk_req (expired tkt?)krb5 client initkrb5 client get credkrb5 client cc principal (no tkt?)krb5key arg too longinvalid trustinvalid purposeinvalid commandinvalid challenge lengthillegal paddinghttp requesthttps proxy requestgot a fin before a ccsextra data in messageexcessive message sizeerror in received cipher listerror generating tmp rsa keyencrypted length too longecgroup too large for cipherduplicate compression iddigest check faileddh public value length is wrongdecryption failed or bad record macdecryption faileddata length too longdata between ccs and finishedcookie mismatchconnection type not setconnection id is differentcompression library errorcompression id not within private rangecompression failurecompressed length too longcipher table src errorcipher or hash unavailablecipher code wrong lengthchallenge is differentcert length mismatchcertificate verify failedccs received earlyca dn too longca dn length mismatchbn libblock cipher pad is wrongbio not setbad write retrybad statebad ssl session id lengthbad ssl filetypebad signaturebad rsa signaturebad rsa modulus lengthbad rsa e lengthbad rsa encryptbad rsa decryptbad response argumentbad protocol version numberbad packet lengthbad message typebad mac decodebad lengthbad hello requestbad ecpointbad ecdsa signaturebad ecc certbad dsa signaturebad digest lengthbad dh p lengthbad dh pub key lengthbad dh g lengthbad decompressionbad data returned by callbackbad checksumbad change cipher specbad authentication typebad alert recordattempt to reuse session in different contextapp data in handshakeWRITE_PENDINGTLS1_SETUP_KEY_BLOCKTLS1_ENCTLS1_CHANGE_CIPHER_STATESSL_writeSSL_VERIFY_CERT_CHAINSSL_use_RSAPrivateKey_fileSSL_use_RSAPrivateKey_ASN1SSL_use_RSAPrivateKeySSL_use_PrivateKey_fileSSL_use_PrivateKey_ASN1SSL_use_PrivateKeySSL_use_certificate_fileSSL_use_certificate_ASN1SSL_use_certificateSSL_UNDEFINED_VOID_FUNCTIONSSL_UNDEFINED_FUNCTIONSSL_UNDEFINED_CONST_FUNCTIONSSL_shutdownSSL_set_wfdSSL_set_trustSSL_set_session_id_contextSSL_set_sessionSSL_set_rfdSSL_set_purposeSSL_SET_PKEYSSL_set_fdSSL_set_cipher_listSSL_SET_CERTSSL_SESS_CERT_NEWSSL_SESSION_print_fpSSL_SESSION_newSSL_RSA_PUBLIC_ENCRYPTSSL_RSA_PRIVATE_DECRYPTSSL_readSSL_peekSSL_newSSL_load_client_CA_fileSSL_INIT_WBIO_BUFFERSSL_GET_SIGN_PKEYSSL_GET_SERVER_SEND_CERTSSL_GET_PREV_SESSIONSSL_GET_NEW_SESSIONSSL_do_handshakeSSL_CTX_use_RSAPrivateKey_fileSSL_CTX_use_RSAPrivateKey_ASN1SSL_CTX_use_RSAPrivateKeySSL_CTX_use_PrivateKey_fileSSL_CTX_use_PrivateKey_ASN1SSL_CTX_use_PrivateKeySSL_CTX_use_certificate_fileSSL_CTX_use_certificate_chain_fileSSL_CTX_use_certificate_ASN1SSL_CTX_use_certificateSSL_CTX_set_trustSSL_CTX_set_ssl_versionSSL_CTX_set_session_id_contextSSL_CTX_set_purposeSSL_CTX_set_cipher_listSSL_CTX_newSSL_CTX_check_private_keySSL_ctrlSSL_CREATE_CIPHER_LISTSSL_COMP_add_compression_methodSSL_clearSSL_CIPHER_STRENGTH_SORTSSL_CIPHER_PROCESS_RULESTRSSL_check_private_keySSL_CERT_NEWSSL_CERT_INSTANTIATESSL_CERT_INSTSSL_CERT_DUPSSL_BYTES_TO_CIPHER_LISTSSL_BAD_METHODSSL_add_file_cert_subjects_to_stackSSL_add_dir_cert_subjects_to_stackSSL3_WRITE_PENDINGSSL3_WRITE_BYTESSSL3_SETUP_KEY_BLOCKSSL3_SETUP_BUFFERSSSL3_SEND_SERVER_KEY_EXCHANGESSL3_SEND_SERVER_HELLOSSL3_SEND_SERVER_CERTIFICATESSL3_SEND_CLIENT_VERIFYSSL3_SEND_CLIENT_KEY_EXCHANGESSL3_SEND_CLIENT_CERTIFICATESSL3_SEND_CERTIFICATE_REQUESTSSL3_READ_NSSL3_READ_BYTESSSL3_PEEKSSL3_OUTPUT_CERT_CHAINSSL3_GET_SERVER_HELLOSSL3_GET_SERVER_DONESSL3_GET_SERVER_CERTIFICATESSL3_GET_RECORDSSL3_GET_MESSAGESSL3_GET_KEY_EXCHANGESSL3_GET_FINISHEDSSL3_GET_CLIENT_KEY_EXCHANGESSL3_GET_CLIENT_HELLOSSL3_GET_CLIENT_CERTIFICATESSL3_GET_CERT_VERIFYSSL3_GET_CERTIFICATE_REQUESTSSL3_GENERATE_KEY_BLOCKSSL3_ENCSSL3_CTX_CTRLSSL3_CTRLSSL3_CONNECTSSL3_CLIENT_HELLOSSL3_CHECK_CERT_AND_ALGORITHMSSL3_CHANGE_CIPHER_STATESSL3_CALLBACK_CTRLSSL3_ACCEPTSSL2_WRITESSL2_SET_CERTIFICATESSL2_READ_INTERNALSSL2_READSSL2_PEEKSSL2_GENERATE_KEY_MATERIALSSL2_ENC_INITSSL2_CONNECTSSL2_ACCEPTSSL23_WRITESSL23_READSSL23_PEEKSSL23_GET_SERVER_HELLOSSL23_GET_CLIENT_HELLOSSL23_CONNECTSSL23_CLIENT_HELLOSSL23_ACCEPTSERVER_VERIFYSERVER_HELLOSERVER_FINISHREQUEST_CERTIFICATEREAD_Ni2d_SSL_SESSIONGET_SERVER_VERIFYGET_SERVER_HELLOGET_SERVER_FINISHEDGET_CLIENT_MASTER_KEYGET_CLIENT_HELLOGET_CLIENT_FINISHEDDTLS1_WRITE_APP_DATA_BYTESDTLS1_SEND_SERVER_KEY_EXCHANGEDTLS1_SEND_SERVER_HELLODTLS1_SEND_SERVER_CERTIFICATEDTLS1_SEND_HELLO_VERIFY_REQUESTDTLS1_SEND_CLIENT_VERIFYDTLS1_SEND_CLIENT_KEY_EXCHANGEDTLS1_SEND_CLIENT_CERTIFICATEDTLS1_SEND_CERTIFICATE_REQUESTDTLS1_READ_FAILEDDTLS1_READ_BYTESDTLS1_PROCESS_RECORDDTLS1_PROCESS_OUT_OF_SEQ_MESSAGEDTLS1_OUTPUT_CERT_CHAINDTLS1_GET_RECORDDTLS1_GET_MESSAGE_FRAGMENTDTLS1_GET_MESSAGEDTLS1_GET_HELLO_VERIFYDTLS1_ENCDTLS1_CONNECTDTLS1_CLIENT_HELLODTLS1_BUFFER_RECORDDTLS1_ACCEPTDO_SSL3_WRITEDO_DTLS1_WRITEd2i_SSL_SESSIONCLIENT_MASTER_KEYCLIENT_HELLOCLIENT_FINISHEDCLIENT_CERTIFICATE.\ssl\s3_both.cSRVRCLNTECDHE-RSA-AES128-SHAECDHE-ECDSA-AES128-SHADHE-DSS-RC4-SHAEXP1024-DHE-DSS-RC4-SHAEXP1024-RC4-SHAEXP1024-DHE-DSS-DES-CBC-SHAEXP1024-DES-CBC-SHAEXP1024-RC2-CBC-MD5EXP1024-RC4-MD5EXP-ECDH-ECDSA-RC4-56-SHAEXP-ECDH-ECDSA-RC4-40-SHAEXP-AECDH-RC4-40-SHAEXP-AECDH-DES-40-CBC-SHAAECDH-DES-CBC3-SHAAECDH-DES-CBC-SHAAECDH-RC4-SHAAECDH-NULL-SHAEXP-ECDH-RSA-RC4-56-SHAEXP-ECDH-RSA-RC4-40-SHAECDH-RSA-AES256-SHAECDH-RSA-AES128-SHAECDH-RSA-DES-CBC3-SHAECDH-RSA-DES-CBC-SHAECDH-RSA-RC4-SHAECDH-RSA-NULL-SHAECDH-ECDSA-AES256-SHAECDH-ECDSA-AES128-SHAECDH-ECDSA-DES-CBC3-SHAECDH-ECDSA-DES-CBC-SHAECDH-ECDSA-RC4-SHAECDH-ECDSA-NULL-SHAADH-AES256-SHADHE-RSA-AES256-SHADHE-DSS-AES256-SHADH-RSA-AES256-SHADH-DSS-AES256-SHAAES256-SHAADH-AES128-SHADHE-RSA-AES128-SHADHE-DSS-AES128-SHADH-RSA-AES128-SHADH-DSS-AES128-SHAAES128-SHAFZA-FZA-CBC-SHAFZA-NULL-SHAADH-DES-CBC3-SHAADH-DES-CBC-SHAEXP-ADH-DES-CBC-SHAADH-RC4-MD5EXP-ADH-RC4-MD5EDH-RSA-DES-CBC3-SHAEDH-RSA-DES-CBC-SHAEXP-EDH-RSA-DES-CBC-SHAEDH-DSS-DES-CBC3-SHAEDH-DSS-DES-CBC-SHAEXP-EDH-DSS-DES-CBC-SHADH-RSA-DES-CBC3-SHADH-RSA-DES-CBC-SHAEXP-DH-RSA-DES-CBC-SHADH-DSS-DES-CBC3-SHADH-DSS-DES-CBC-SHAEXP-DH-DSS-DES-CBC-SHADES-CBC3-SHADES-CBC-SHAEXP-DES-CBC-SHAEXP-RC2-CBC-MD5RC4-SHARC4-MD5EXP-RC4-MD5NULL-SHANULL-MD5SSLv3 part of OpenSSL 0.9.8a 11 Oct 2005.\ssl\s3_lib.c.\ssl\s23_lib.c.\ssl\s3_pkt.cSSL alert number .\ssl\s23_clnt.c.\ssl\s23_srvr.cCONNECTPUT HEAD POST GET server finishedclient finishedTLSv1 part of OpenSSL 0.9.8a 11 Oct 2005CCCBBA.\ssl\s3_enc.cRC4-64-MD5DES-CBC3-MD5DES-CBC-MD5RC2-CBC-MD5SSLv2 part of OpenSSL 0.9.8a 11 Oct 2005.\ssl\s2_lib.cs->session->master_key_length >= 0 && s->session->master_key_length < (int)sizeof(s->session->master_key)error >= 0 && error <= (int)sizeof(buf).\ssl\s3_clnt.c.\ssl\s2_clnt.c.\ssl\s3_srvr.c.\ssl\s2_srvr.ckey expansionIV blockclient write keyserver write key.\ssl\t1_enc.cmaster secret.\ssl\s2_pkt.cmac_size <= MAX_MAC_SIZEc->iv_len <= (int)sizeof(s->session->key_arg)s->s2->key_material_length <= sizeof s->s2->key_material.\ssl\s2_enc.cL ܁Ё.\crypto\x509\x509_vpm.c.\crypto\x509\x509_lu.c.\crypto\comp\comp_lib.cEVP part of OpenSSL 0.9.8a 11 Oct 2005bl <= (int)sizeof(ctx->buf).\crypto\evp\evp_enc.cinl > 0b <= sizeof ctx->bufb <= sizeof ctx->finalEVP_CIPHER_CTX_iv_length(ctx) <= (int)sizeof(ctx->iv)ctx->cipher->block_size == 1 || ctx->cipher->block_size == 8 || ctx->cipher->block_size == 16buffer.\crypto\bio\bf_buff.cP@dtq~0 tBqF@d 0@DF 043 043 p043 0043 043 043 p043 0043  043  043  p043  0043 043 043  043 043 043  043.\crypto\evp\e_aes.c%J`'K`(L`&I`J`bJ`.\crypto\evp\e_rc2.cl <= sizeof(iv) a +0430<@0430>0430 P0430,0430=@0430?0430!P04300430@04300043`043-043043043P043.\crypto\pem\pem_pkey.cENCRYPTED PRIVATE KEYPRIVATE KEYEC PRIVATE KEYDSA PRIVATE KEYRSA PRIVATE KEYANY PRIVATE KEYCERTIFICATE REQUESTNEW CERTIFICATE REQUESTX509 CRLCERTIFICATE(undef)X.509 part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\x509\x509_vfy.cOPENSSL_ALLOW_PROXY_CERTS `_L lengthlen>=0 && len<=(int)sizeof(ctx->key).\crypto\hmac\hmac.cj <= (int)sizeof(ctx->key)OCSP requestOCSP responderObject SignerS/MIME emailcompatible.\crypto\engine\tb_cipher.cLoad certs from files in a directory.\crypto\x509\by_dir.c%s%c%08lx.%s%dLoad file into cache.\crypto\x509\by_file.cMD2 part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\evp\evp_lib.cl <= sizeof(c->iv)j <= sizeof(c->iv)ccƄ||ww{{ kkֱooTőP00`gg}++Vb׵櫫MvvEʏ@ɉ}}YYGG 쭭AgԳ_꯯E#Srr[·uᮓ=j&&LZ66lA??~Õ\44hQ4qqsثS11b?* RǕe##F^Ý(07 / 6$=&i''NͲuu t,,X.4-6nnZZ[RRM;;vaַγ}{))R>q//^SShѹ,` @ȱy[[jjFˍپgK99rJJLLXXJυkл*媪OCCMMU33fEEPPD<KKܽa ppB>>|ĵqffHHaa_55jWWйiX':'8볘+3"iip٩3-"< I·UUx((PzߥY  ڿe1BBhhAA)w--Z˰{TTֻm:,ccƥ||ww{{ kkֽooޱőT00`PggΩ++V}׵bMvvʏEɉ@}}YYGG AԳg_Eꜜ#Srr[u=&&Lj66lZ??~ÃO44h\Q4qqثs11bS*? ǕR##FeÝ^0(7 / $6=&''Niuu ,,Xt4.6-nnܲZZ[RR;;vMַa}))R{>//^qSSѹh, @`y[[jjԾˍFg99rKJJLLXXυJлk*OCCMM33fUEEPP<!KKݽa܋ pp>>|Bqff̪HHaa£55j_WWiІX:''8+"3iiһ٩p3-<" ·IUU((PxߥzY e1BBhhиAAÙ)--Zw{TTm,:cƥc||ww{{ kֽkoޱoőT0`P0gΩg+V}+׵b׫MvvʏEʂɉ@}}YYGG AԳgԢ_Eꯜ#Srr[u·=&Lj&6lZ6?~A?̃O4h\4Q4qqثs1bS1*? ǕR#Fe#Ý^0(7 / $6=&'Ni'Ͳuu  ,Xt,4.6-nܲnZZ[RR;vM;ַaֳ}γ)R{)>/^q/SSѹh, @` yȱ[[jԾjˍF˾gپ9rK9JJLLXXυJлk*OCCMM3fU3EEPP!KKaܽ pp>|B>qĵf̪fHHa£a5j_5WWiйX:''8+"3iһi٩pَ3-<" ·IUU(Px(ߥzߌY  eڿ1BBhиhAA)-Zw-{˰TTmֻ,:ƥcc||ww{{ ֽkkޱooT`P00ΩggV}++bM櫫vvE@}}YYGG A쭭g_E꯯#Srr[u·=Lj&&lZ66~A??Oh\44Q4qqsbS11*? RFe##^0(7 / $6=&Ni''Ͳuu Xt,,4.6-ܲnnZZ[RRvM;;a}γR{))>^q//SSh,@` yȱ[[ԾjjFgپrK99JJLLXXJϻk*O媪CCMMfU33EEPPxD<<%K㨨QQ]@@?!pH88c߼wuBc!! 0mҁL &5/__5DD.9WU~~zG==Ȭdd]]2+ss``OODf""T~**; FF)kӸ(<y޼^^ v;dV22tN:: II Hl$$\\]½nCשּׁĦbb917yy2CnY77ڷmmd՜NNI੩شllVV%ʯeezzG鮮oպxxJo%%\r..8$WsǴQ#|tt>!KKaܽ pp|B>>qĵ̪ffHH£aaj_55WWiйX:''8+"3һiip3-<" IΪUUPx((zY  eڿ1BBиhhAA)Zw--{˰TTmֻ,:cccc||||wwww{{{{kkkkoooo0000gggg++++׫vvvvʂ}}}}YYYYGGGG𭭭Ԣrrrr&&&&6666????4444qqqq1111####''''uuuu ,,,,nnnnZZZZRRRR;;;;ֳ))))////SSSS [[[[jjjj˾9999JJJJLLLLXXXX着CCCCMMMM3333EEEEPPPP<<<>>>ffffHHHHaaaa5555WWWWiiiiَUUUU((((ߌ BBBBhhhhAAAA----TTTTPQSeA~ä^':k;EXKU0 mvv̈%LO*ŀD5&bIZg%E]u/LFk_zmYR-!tX)iIDɎjuxyk>Xq'Of ɴ:}Jc1`3QESbwdk+XhHpElޔ{R#sKrW*Uf(µ/{ņ7(0#j\+ϊyiNeվb4ъĝS.4U2u9 `@q^Qn!>=ݖ>FMT]qoP`$C@wgB谈8[yG |B| H+2pNrZlV8ծ='9-6d !\hT[:.6$g WҖO aiKwZ *C"< Nj򹨶-ȩWLuݙ`&r\;fD4~[v)C#hc1cB@" Ƅ}$J=2m)K/0R wl+pH"dGČ?,}V3"NI8ʌ6 Ԙρ(z&ڤ?:, xP_jbF~Tؐ^9.Â]|i-o%;ȧ}nc{; x&Yn쨚Oen~ϼ!ٛ6oJ |)11#?*0f57NtʂАا3JAP/MvMCTMўjL,QeF^]5st.A ZgRے3VGmaךz 7Y<'5ah,4$8_@r %⼋I<(A q9޳ ؐVda{p2t\lHBWЧQPeA~S^':k;EXK0 Umvv̈L%O*D5&bZI%gE]u/LFk_眒zmYRڃ-!tXiI)ɎDujyx>Xkq'Oᾶ f:}Jc13Q`SbEwdk+hHpXElޔ{Rs#KrWUf*(µ/{ņ7ӥ(0#j\ϊ+yiNe;b4ĊS.4U2u 9`@q^nQ!>ݖ=>ݮMFT]qoP`$֗C@̞gwB谽[8y |GB| +2HprZlN8Vծ=9-6' d\h!T[.6$:g WґO aKwZi *"4$8,@_r% I<( A9q ؜Vd{a2p\lHtWBQPA~Seä':^;kEXK0 Uvm̈v%LO*5&DbIZ%gE]/uLFk_mzRY-tX!I)iɎDujxyXk>'qᾶO f}:cJ1Q`3SbEdwk+HpXhEޔl{Rs#KrWUf*(/ņ{7ӥ(0#j\ϊ+yiNeվ4bĊ.4SU2u 9`@q^nQ!>ݖ=>ݮMFTq]oP`$֗@Cgw谽B8[y|G B| +2HpZlNrV8=-6'9 d\h![T6$:. gWҖOa wZiK *"$8,4_@r %<(I A9q ޳؜Vd{a2plHt\BWQP~SeAä:^';kEXK U0mvv%LO*&D5bIZ%gE]u/LFk_zmYR-X!tI)iDujxyk>X'qOf }:cJ1`3QbESwdk+pXhHElR{#srKWf*U(/µ{ӥ70(#j\+ϧyNieվb4Ċ4S.U2ኤu 9@`^qQn>!=ݮ>MF摵Tq]o`P$֗齉C@gwٰB8[yȡG ||B 2H+plNrZV8=ծ6'9- dh!\T[$:.6 g WҖOa ZiKw *h8,4$_@r %(I>>>KKKKyyyy xxxxZZZZݨ33331111YYYY''''____````QQQQJJJJ ----zzzzɜ;;;;MMMM****뻻<<<>@@CCEEFFIIJJLLOOQQRRTTWWXX[[]]^^aabbddgghhkkmmnnppssuuvvyyzz||        0 0 0  0 0  0 0  0           0  0 0 0 0  0  0  0          $$  $ $ $$  $ $             $$  $ $ $$  $ $                  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0                            ((  ((  ((  ((  ((  ((  ((  ((          """"   " " " " ((((((((    """" ( ( ( ("("("("(DES part of OpenSSL 0.9.8a 11 Oct 2005libdes part of OpenSSL 0.9.8a 11 Oct 2005@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                            @@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @@ @ @ @ @@ @ @@ @B@B@B@@@BB@BBB@B@@@@BBB@BB@BB@@            unknown control commandresult too smallresult too largeno result bufferindex too smallindex too largecommon ok and cancel charactersUI_set_resultUI_new_methodUI_get0_resultUI_dup_verify_stringUI_dup_input_stringUI_dup_input_booleanUI_dup_info_stringUI_dup_error_stringUI_ctrlGENERAL_ALLOCATE_STRINGGENERAL_ALLOCATE_PROMPTGENERAL_ALLOCATE_BOOLEANunsupported requestorname typeunknown nidunknown message digeststatus too oldstatus not yet validstatus expiredsigner certificate not foundsignature failureserver write errorserver response parse errorserver response errorserver read errorroot ca not trustedresponse contains no revocation datarequest not signedprivate key does not match certificateno revoked timeno response datano public keyno contentno certificates in chainnot basic responsenextupdate before thisupdatemissing ocspsigning usageerror parsing urlerror in thisupdate fielderror in nextupdate fielddigest errcertificate verify errorbad dataREQUEST_VERIFYOCSP_sendreq_bioOCSP_response_get1_basicOCSP_request_verifyOCSP_request_signOCSP_parse_urlOCSP_MATCH_ISSUERIDOCSP_check_validityOCSP_CHECK_ISSUEROCSP_CHECK_IDSOCSP_CHECK_DELEGATEDOCSP_cert_id_newOCSP_basic_verifyOCSP_basic_signOCSP_basic_add1_statusD2I_OCSP_NONCEASN1_STRING_encodeversion incompatibilityunimplemented digestunimplemented cipherrsa not implementedprovide parametersno unload functionno such engineno referenceno load functionno indexno control functionnot loadednot initialisedinvalid stringinvalid init valueinvalid cmd numberinvalid cmd nameinvalid argumentinternal list errorinit failed'id' or 'name' missingcould not obtain hardware handlefinish failedfailed loading public keyfailed loading private keyengine section errorengine is not in the listengines section errordso not foundDSO failuredsa not implementeddh not implementedctrl command not implementedconflicting engine idcommand takes no inputcommand takes inputcmd not executableargument is not a numberalready loadedLOG_MESSAGEINT_ENGINE_MODULE_INITINT_ENGINE_CONFIGUREINT_CTRL_HELPERENGINE_up_refENGINE_UNLOCKED_FINISHENGINE_UNLOAD_KEYENGINE_TABLE_REGISTERENGINE_set_nameENGINE_set_idENGINE_SET_DEFAULT_TYPEENGINE_set_default_stringENGINE_removeENGINE_newENGINE_load_public_keyENGINE_load_private_keyENGINE_LIST_REMOVEENGINE_LIST_ADDENGINE_initENGINE_get_prevENGINE_get_nextENGINE_get_digestENGINE_GET_DEFAULT_TYPEENGINE_get_cipherENGINE_FREE_UTILENGINE_finishENGINE_ctrl_cmd_stringENGINE_ctrl_cmdENGINE_ctrlENGINE_cmd_is_executableENGINE_by_idENGINE_addDYNAMIC_SET_DATA_CTXDYNAMIC_LOADDYNAMIC_GET_DATA_CTXDYNAMIC_CTRLfunctionality not supportedcould not unload the shared librarycould not bind to the requested symbol namethe meth_data stack is corruptset filename faileda null shared library handle was usedno file specificationno filenamename translation failedcould not load the shared libraryincorrect file syntaxcleanup method function failedfilename too bigfailureempty file structuredso already loadedcontrol command failedWIN32_UNLOADWIN32_SPLITTERWIN32_NAME_CONVERTERWIN32_MERGERWIN32_LOADWIN32_JOINERWIN32_BIND_VARWIN32_BIND_FUNCVMS_UNLOADVMS_MERGERVMS_LOADVMS_BIND_SYMDSO_up_refDSO_set_name_converterDSO_set_filenameDSO_new_methodDSO_mergeDSO_loadDSO_get_loaded_filenameDSO_get_filenameDSO_freeDSO_ctrlDSO_convert_filenameDSO_bind_varDSO_bind_funcDL_UNLOADDL_NAME_CONVERTERDL_MERGERDL_LOADDL_BIND_VARDL_BIND_FUNCDLFCN_UNLOADDLFCN_NAME_CONVERTERDLFCN_MERGERDLFCN_LOADDLFCN_BIND_VARDLFCN_BIND_FUNCPRNG not seededSSLEAY_RAND_BYTESRAND_get_rand_methodunsupported pkcs12 modeunknown digest algorithmpkcs12 pbe crypt errorpkcs12 cipherfinal errorpkcs12 algor cipherinit errorparse errormac verify failuremac verify errormac string set errormac setup errormac generation errormac absentkey gen erroriv gen errorinvalid null pkcs12 pointerinvalid null argumenterror setting encrypted data typeencrypt errorencode errordecode errorcontent type not datacant pack structurePKCS8_encryptPKCS8_add_keyusagePKCS12_verify_macPKCS12_unpack_p7dataPKCS12_unpack_authsafesPKCS12_set_macPKCS12_setup_macPKCS12_PBE_keyivgenPKCS12_pbe_cryptPKCS12_parsePKCS12_pack_p7encdataPKCS12_pack_p7dataPKCS12_newpassPKCS12_MAKE_SHKEYBAGPKCS12_MAKE_KEYBAGPKCS12_key_gen_uniPKCS12_key_gen_ascPKCS12_item_pack_safebagPKCS12_item_i2d_encryptPKCS12_item_decrypt_d2iPKCS12_initPKCS12_gen_macPKCS12_createPKCS12_add_localkeyidPKCS12_add_friendlyname_uniPKCS12_add_friendlyname_ascPKCS12_ADD_FRIENDLYNAMEPARSE_BAGSPARSE_BAGuser too longunknown optionunknown extension nameunknown extensionunknown bit string argumentunable to get issuer keyidunable to get issuer detailssection not foundpolicy when proxy language requires no policypolicy syntax not currently supportedpolicy path length alreadty definedpolicy path lengthpolicy language alreadty definedothername erroroperation not definedodd number of digitsno subject detailsno proxy cert policy language definedno policy identifierno issuer detailsno issuer certificateno config databaseneed organization and numbersmissing valueissuer decode errorinvalid syntaxinvalid sectioninvalid proxy policy settinginvalid policy identifierinvalid optioninvalid object identifierinvalid numbersinvalid numberinvalid null valueinvalid null nameinvalid nameinvalid extension stringinvalid boolean stringincorrect policy syntax tagillegal hex digitillegal empty extensionextension value errorextension setting not supportedextension not foundextension name errorextension existsexpected a section nameerror in extensionerror creating extensionerror converting zoneduplicate zone iddirname errorbn to asn1 integer errorbn dec2bn errorbad objectbad ip addressX509_PURPOSE_setX509_PURPOSE_addX509V3_parse_listX509V3_get_value_boolX509V3_get_stringX509V3_get_sectionX509V3_EXT_nconfX509V3_EXT_i2dX509V3_EXT_confX509V3_EXT_add_aliasX509V3_EXT_addX509V3_add_valueX509V3_add1_i2dV3_GENERIC_EXTENSIONV2I_SUBJECT_ALTV2I_POLICY_MAPPINGSV2I_POLICY_CONSTRAINTSV2I_NAME_CONSTRAINTSV2I_ISSUER_ALTv2i_GENERAL_NAME_exv2i_GENERAL_NAMESV2I_EXTENDED_KEY_USAGEV2I_CRLDV2I_BASIC_CONSTRAINTSV2I_AUTHORITY_KEYIDV2I_AUTHORITY_INFO_ACCESSv2i_ASN1_BIT_STRINGSXNET_get_id_ulongSXNET_get_id_ascSXNET_add_id_ulongSXNET_add_id_INTEGERSXNET_add_id_ascstring_to_hexS2I_SKEY_IDS2I_ASN1_SKEY_IDs2i_ASN1_OCTET_STRINGs2i_ASN1_INTEGERS2I_ASN1_IA5STRINGR2I_PCIR2I_CERTPOLPROCESS_PCI_VALUEPOLICY_SECTIONNREF_NOSNOTICE_SECTIONI2V_AUTHORITY_INFO_ACCESSi2s_ASN1_INTEGERI2S_ASN1_IA5STRINGi2s_ASN1_ENUMERATEDhex_to_stringDO_I2V_NAME_CONSTRAINTSDO_EXT_NCONFDO_EXT_I2DDO_EXT_CONFDO_DIRNAMECOPY_ISSUERCOPY_EMAILwrong pkcs7 typewrong content typeunsupported content typeunsupported cipher typeunknown operationunknown digest typeunable to find message digestunable to find mem biounable to find certificatesmime text errorsig invalid mime typepkcs7 sig parse errorpkcs7 parse errorpkcs7 datasignpkcs7 datafinal errorpkcs7 datafinalpkcs7 add signature erroroperation not supported on this typeno sig content typeno signersno signatures on datano recipient matches keyno recipient matches certificateno multipart boundaryno multipart body failureno content typemissing ceripend infomime sig parse errormime parse errormime no content typeinvalid null pointerinvalid mime typeerror setting ciphererror adding recipientdigest failuredecrypt errordecrypted key is wrong lengthcontent and data presentcipher not initializedcipher has no object identifierSMIME_textSMIME_read_PKCS7PKCS7_verifyPKCS7_simple_smimecapPKCS7_signatureVerifyPKCS7_signPKCS7_set_typePKCS7_set_digestPKCS7_set_contentPKCS7_set_cipherPKCS7_get0_signersPKCS7_FIND_DIGESTPKCS7_encryptPKCS7_decryptPKCS7_dataVerifyPKCS7_DATASIGNPKCS7_dataInitPKCS7_dataFinalPKCS7_dataDecodePKCS7_ctrlPKCS7_BIO_ADD_DIGESTPKCS7_add_signerPKCS7_add_recipient_infoPKCS7_add_crlPKCS7_add_certificatePKCS7_add_attrib_smimecapB64_WRITE_PKCS7B64_READ_PKCS7WSAStartupwrite to read only BIOunsupported methodunable to listen socketunable to create socketunable to bind sockettag mismatchnull parameterno such fileno port specifiedno port definedno hostname specifiedno accept port specifiednbio connect errorkeepalivein useinvalid ip addressgethostbyname addr is not af ineterror setting nbio on accept socketerror setting nbio on accepted socketerror setting nbioEOF on memory BIOconnect errorbroken pipebad hostname lookupbad fopen modeaccept errorWSASTARTUPMEM_WRITEMEM_READLINEBUFFER_CTRLFILE_READFILE_CTRLCONN_STATECONN_CTRLBUFFER_CTRLBIO_writeBIO_sock_initBIO_readBIO_putsBIO_nwrite0BIO_nwriteBIO_nread0BIO_nreadBIO_new_mem_bufBIO_new_fileBIO_newBIO_MAKE_PAIRBIO_get_portBIO_get_host_ipBIO_get_accept_socketBIO_getsBIO_gethostbynameBIO_ctrlBIO_callback_ctrlBIO_BER_GET_HEADERBIO_acceptACPT_STATEpoint arithmetic failureno private valueKDF failedECDH_DATA_new_methodECDH_compute_keysignature malloc failedrandom number generation failedmissing parameterserr ec libdata too large for key sizeECDSA_sign_setupECDSA_do_verifyECDSA_do_signECDSA_DATA_new_methodwrong orderunsupported fieldunknown orderunknown groupundefined orderundefined generatorslot fullpoint is not on curvepoint at infinitypkparameters2group failurepassed null parameterno field modnot initializednot implementednot a supported NIST primenot a NIST primemissing private keyinvalid private keyinvalid group orderinvalid forminvalid fieldinvalid encodinginvalid compression bitinvalid compressed pointincompatible objectsi2d ecpkparameters failuregroup2pkparameters failureec group new by name failurediscriminant is zerod2i ecpkparameters failurebuffer too smallasn1 unknown fieldasn1 erroro2i_ECPublicKeyi2o_ECPublicKeyi2d_ECPrivateKeyi2d_ECPKParametersi2d_ECParametersec_wNAF_precompute_multec_wNAF_mulEC_PRE_COMP_DUPEC_POINT_set_to_infinityEC_POINT_set_Jprojective_coordinates_GFpEC_POINT_set_compressed_coordinates_GFpEC_POINT_set_compressed_coordinates_GF2mEC_POINT_set_affine_coordinates_GFpEC_POINT_set_affine_coordinates_GF2mEC_POINT_point2octEC_POINT_oct2pointEC_POINT_newEC_POINT_mulEC_POINT_make_affineEC_POINT_is_on_curveEC_POINT_is_at_infinityEC_POINT_invertEC_POINT_get_Jprojective_coordinates_GFpEC_POINT_get_affine_coordinates_GFpEC_POINT_get_affine_coordinates_GF2mEC_POINT_dblEC_POINT_copyEC_POINT_cmpEC_POINT_addEC_POINTs_mulEC_POINTs_make_affineEC_KEY_print_fpEC_KEY_printEC_KEY_newEC_KEY_generate_keyEC_KEY_copyEC_KEY_check_keyEC_GROUP_set_generatorEC_GROUP_set_extra_dataEC_GROUP_set_curve_GFpEC_GROUP_set_curve_GF2mEC_GROUP_precompute_multEC_GROUP_NEW_FROM_DATAEC_GROUP_new_by_curve_nameEC_GROUP_newEC_GROUP_GROUP2NIDEC_GROUP_get_trinomial_basisEC_GROUP_get_pentanomial_basisEC_GROUP_get_orderEC_GROUP_get_degreeEC_GROUP_get_curve_GFpEC_GROUP_get_curve_GF2mEC_GROUP_get_cofactorEC_GROUP_get0_generatorEC_GROUP_copyEC_GROUP_check_discriminantEC_GROUP_checkEC_GFP_SIMPLE_SET_COMPRESSED_COORDINATES_GFPec_GFp_simple_set_compressed_coordinatesEC_GFP_SIMPLE_POINT_SET_AFFINE_COORDINATES_GFPec_GFp_simple_point_set_affine_coordinatesEC_GFP_SIMPLE_POINT_GET_AFFINE_COORDINATES_GFPec_GFp_simple_point_get_affine_coordinatesec_GFp_simple_points_make_affineec_GFp_simple_point2octec_GFp_simple_oct2pointec_GFp_simple_make_affineEC_GFP_SIMPLE_GROUP_SET_GENERATOREC_GFP_SIMPLE_GROUP_SET_CURVE_GFPec_GFp_simple_group_set_curveec_GFp_simple_group_check_discriminantec_GFp_nist_group_set_curveec_GFp_nist_field_sqrec_GFp_nist_field_mulEC_GFP_MONT_GROUP_SET_CURVE_GFPec_GFp_mont_group_set_curveec_GFp_mont_field_sqrec_GFp_mont_field_set_to_oneec_GFp_mont_field_mulec_GFp_mont_field_encodeec_GFp_mont_field_decodeec_GF2m_simple_set_compressed_coordinatesec_GF2m_simple_point_set_affine_coordinatesec_GF2m_simple_point_get_affine_coordinatesec_GF2m_simple_point2octec_GF2m_simple_oct2pointec_GF2m_simple_group_set_curveec_GF2m_simple_group_check_discriminantEC_GF2M_MONTGOMERY_POINT_MULTIPLYEC_ASN1_PKPARAMETERS2GROUPEC_ASN1_PARAMETERS2GROUPEC_ASN1_GROUP2PKPARAMETERSEC_ASN1_GROUP2PARAMETERSEC_ASN1_GROUP2FIELDIDEC_ASN1_GROUP2CURVEECP_NIST_MOD_521ECP_NIST_MOD_256ECP_NIST_MOD_224ECP_NIST_MOD_192ECPKParameters_print_fpECPKParameters_printECParameters_print_fpECParameters_printd2i_ECPrivateKeyd2i_ECPKParametersd2i_ECParametersCOMPUTE_WNAFno dynlock create callbackINT_NEW_EX_DATAINT_FREE_EX_DATAINT_DUP_EX_DATADEF_GET_CLASSDEF_ADD_INDEXCRYPTO_set_ex_dataCRYPTO_get_new_lockidCRYPTO_get_new_dynlockidCRYPTO_get_ex_new_indexvariable has no valueunknown module nameunable to create new sectionno valueno sectionno conf or environment variableno confno close bracemodule initialization errormissing init functionmissing finish functionmissing equal signmissing close square bracketerror loading dsoSTR_COPYNCONF_newNCONF_load_fpNCONF_load_bioNCONF_loadNCONF_get_stringNCONF_get_sectionNCONF_get_number_eNCONF_get_numberNCONF_dump_fpNCONF_dump_bioMODULE_RUNMODULE_LOAD_DSOMODULE_INITDEF_LOAD_BIODEF_LOADCONF_modules_loadCONF_load_fpCONF_load_bioCONF_loadCONF_dump_fpwrong typewrong tagunsupported typeunsupported public key typeunsupported encryption algorithmunsupported any defined by typeunkown formatunknown tagunknown public key typeunknown object typeunknown message digest algorithmunknown formatunexpected eocunable to decode rsa private keyunable to decode rsa keytype not constructedtoo longtime not ascii formatthe asn1 object identifier is not known for this mdtag value too highstring too shortstring too longshort linesequence or set needs configsequence not constructedsequence length mismatchsecond number too largeprivate key header missingodd number of charsobject not ascii formatnull is wrong lengthno matching choice typenot enough datanot ascii formatnon hex charactersnested asn1 stringmstring wrong tagmstring not universalmissing second numbermissing eoclist errorlength erroriv too largeinvalid utf8stringinvalid universalstring lengthinvalid time formatinvalid separatorinvalid modifierinvalid digitinvalid bmpstring lengthinteger too large for longinteger not ascii formatillegal time valueillegal tagged anyillegal options on item templateillegal optional anyillegal objectillegal null valueillegal nullillegal nested taggingillegal integerillegal implicit tagillegal hexillegal formatillegal charactersillegal booleanillegal bitstring formatheader too longfirst num too largefield missingexplicit tag not constructedexplicit length mismatchexpecting a timeexpecting a booleanexpecting an objectexpecting an integererror setting cipher paramserror parsing set elementerror loading sectionerror getting timedepth exceededdecoding errordata is wrongboolean is wrong lengthbad tagbad password readbad object headerbad classaux erroradding objectX509_PKEY_newX509_NEWX509_NAME_EX_NEWX509_NAME_EX_D2IX509_NAME_ENCODEX509_INFO_newX509_CRL_add0_revokedX509_CINF_NEWPKCS5_pbe_setPKCS5_pbe2_setPARSE_TAGGINGOID_MODULE_INITLONG_C2Ii2d_RSA_PUBKEYi2d_RSA_NETi2d_PublicKeyi2d_PrivateKeyi2d_EC_PUBKEYi2d_DSA_PUBKEYI2D_ASN1_TIMEi2d_ASN1_SETd2i_X509_PKEYD2I_X509_CINFD2I_X509D2I_RSA_NET_2d2i_RSA_NETd2i_PublicKeyd2i_PrivateKeyD2I_NETSCAPE_RSA_2d2i_Netscape_RSAD2I_ASN1_UTCTIMEd2i_ASN1_UINTEGERd2i_ASN1_type_bytesd2i_ASN1_SETd2i_ASN1_OBJECTD2I_ASN1_INTEGERd2i_ASN1_HEADERD2I_ASN1_GENERALIZEDTIMEd2i_ASN1_bytesd2i_ASN1_BOOLEAND2I_ASN1_BIT_STRINGCOLLECT_DATAc2i_ASN1_OBJECTc2i_ASN1_INTEGERc2i_ASN1_BIT_STRINGBN_to_ASN1_INTEGERBN_to_ASN1_ENUMERATEDBITSTR_CBASN1_verifyASN1_UTCTIME_setASN1_unpack_stringASN1_TYPE_get_octetstringASN1_TYPE_get_int_octetstringASN1_TIME_setASN1_TEMPLATE_NOEXP_D2IASN1_TEMPLATE_NEWASN1_TEMPLATE_EX_D2IASN1_STRING_type_newASN1_STRING_TABLE_addASN1_STRING_setASN1_STR2TYPEASN1_signASN1_seq_unpackASN1_seq_packASN1_PKCS5_PBE_SETASN1_PCTX_NEWASN1_pack_stringASN1_OBJECT_newASN1_mbstring_ncopyASN1_item_verifyASN1_item_unpackASN1_item_signASN1_item_packASN1_item_i2d_fpASN1_item_i2d_bioASN1_ITEM_EX_D2IASN1_ITEM_EX_COMBINE_NEWASN1_item_dupASN1_item_d2i_fpASN1_INTEGER_to_BNASN1_INTEGER_setASN1_i2d_fpASN1_i2d_bioASN1_HEADER_newASN1_get_objectASN1_generate_v3ASN1_GENERALIZEDTIME_setASN1_FIND_ENDASN1_EX_C2IASN1_ENUMERATED_to_BNASN1_ENUMERATED_setASN1_dupASN1_DO_ADBASN1_digestASN1_D2I_READ_BIOASN1_d2i_fpASN1_D2I_EX_PRIMITIVEASN1_COLLECTASN1_COLLATE_PRIMITIVEASN1_CHECK_TLENASN1_CBASN1_BIT_STRING_set_bitAPPEND_EXPa2i_ASN1_STRINGa2i_ASN1_INTEGERa2i_ASN1_ENUMERATEDa2d_ASN1_OBJECTwrong lookup typeunsupported algorithmunknown trust idunknown purpose idunknown key typeunable to get certs public keyunable to find parameters in chainshould retryno cert set for us to verifyloading defaultsloading cert dirkey values mismatchkey type mismatchinvalid field nameinvalid directoryerr asn1 libcert already in hash tablecant check dh keybase64 decode errorbad x509 filetypeX509_verify_certX509_TRUST_setX509_TRUST_addX509_to_X509_REQX509_STORE_CTX_purpose_inheritX509_STORE_CTX_newX509_STORE_CTX_initX509_STORE_CTX_get1_issuerX509_STORE_add_crlX509_STORE_add_certX509_REQ_to_X509X509_REQ_print_fpX509_REQ_print_exX509_REQ_check_private_keyX509_PUBKEY_setX509_PUBKEY_getX509_print_ex_fpX509_NAME_printX509_NAME_onelineX509_NAME_ENTRY_set_objectX509_NAME_ENTRY_create_by_txtX509_NAME_ENTRY_create_by_NIDX509_NAME_add_entryX509_load_crl_fileX509_load_cert_fileX509_load_cert_crl_fileX509_get_pubkey_parametersX509_EXTENSION_create_by_OBJX509_EXTENSION_create_by_NIDX509_CRL_print_fpX509_check_private_keyX509_ATTRIBUTE_set1_dataX509_ATTRIBUTE_get0_dataX509_ATTRIBUTE_create_by_txtX509_ATTRIBUTE_create_by_OBJX509_ATTRIBUTE_create_by_NIDX509v3_add_extX509at_add1_attrNETSCAPE_SPKI_b64_encodeNETSCAPE_SPKI_b64_decodeGET_CERT_BY_SUBJECTDIR_CTRLCHECK_POLICYBY_FILE_CTRLADD_CERT_DIRSIG_CBi2d_DSA_SIGDSA_verifyDSA_SIG_newDSA_sign_setupDSA_signDSA_print_fpDSA_printDSA_new_methodDSA_do_verifyDSA_do_signDSAparams_print_fpDSAparams_printd2i_DSA_SIGunsupported encryptionshort headerread keypublic key no rsaproblems getting passwordno start linenot proc typenot encryptednot dek infoerror converting private keybad iv charsbad end linebad decryptbad base64 decodePEM_X509_INFO_write_bioPEM_X509_INFO_read_bioPEM_X509_INFO_readPEM_write_bioPEM_writePEM_SignFinalPEM_SealInitPEM_SealFinalPEM_READ_PRIVATEKEYPEM_READ_BIO_PRIVATEKEYPEM_read_bioPEM_readPEM_PK8PKEYPEM_get_EVP_CIPHER_INFOPEM_F_PEM_WRITE_PKCS8PRIVATEKEYPEM_do_headerPEM_def_callbackPEM_ASN1_write_bioPEM_ASN1_writePEM_ASN1_read_bioPEM_ASN1_readLOAD_IVDO_PK8PKEY_FPDO_PK8PKEYd2i_PKCS8PrivateKey_fpd2i_PKCS8PrivateKey_bioOBJ_nid2snOBJ_nid2objOBJ_nid2lnOBJ_NAME_new_indexOBJ_dupOBJ_createOBJ_add_objectBUF_strndupBUF_strdupBUF_MEM_newBUF_MEM_grow_cleanBUF_MEM_growBUF_memdupwrong public key typewrong final block lengthunsupported salt typeunsupported private key algorithmunsupported prfunsupported key sizeunsupported key derivation functionunsupported keylengthunsuported number of roundsunknown pbe algorithmpkcs8 unknown broken typeno verify function configuredno sign function configuredno dsa parametersno digest setno cipher setkeygen failureinvalid key lengthinput not initializedinitialization errorexpecting a ec keyexpecting a ecdsa keyexpecting a dsa keyexpecting a dh keyexpecting an rsa keyevp pbe cipherinit errordifferent key typesdata not multiple of block lengthctrl operation not implementedctrl not implementedcipher parameter errorbn pubkey errorbn decode errorbad key lengthbad block lengthasn1 libaes key setup failedRC5_CTRLRC2_MAGIC_TO_METHPKCS8_set_brokenPKCS5_v2_PBE_keyivgenPKCS5_PBE_keyivgenEVP_VerifyFinalEVP_SignFinalEVP_RIJNDAELEVP_PKEY_newEVP_PKEY_get1_RSAEVP_PKEY_get1_EC_KEYEVP_PKEY_GET1_ECDSAEVP_PKEY_get1_DSAEVP_PKEY_get1_DHEVP_PKEY_encryptEVP_PKEY_decryptEVP_PKEY_copy_parametersEVP_PKEY2PKCS8_brokenEVP_PKCS82PKEYEVP_PBE_CipherInitEVP_PBE_alg_addEVP_OpenInitEVP_MD_CTX_copy_exEVP_EncryptFinal_exEVP_DigestInit_exEVP_DecryptFinal_exEVP_CIPHER_CTX_set_key_lengthEVP_CIPHER_CTX_ctrlEVP_CipherInit_exECKEY_PKEY2PKCS8ECDSA_PKEY2PKCS8DSA_PKEY2PKCS8DSAPKEY2PKCS8D2I_PKEYAES_INIT_KEYinvalid public keybad generatorGENERATE_PARAMETERSGENERATE_KEYDH_new_methodDH_BUILTIN_GENPARAMSDHparams_print_fpDHparams_printCOMPUTE_KEYsalt length check failedunknown padding typeunknown algorithm typesslv3 rollback attackrsa operations not supportedq not primep not primepadding check failedsalt length recovery failedoaep decoding errorn does not equal p qnull before block missingno public exponentlast octet invalidkey size too smalliqmp not inverse of qinvalid trailerinvalid paddinginvalid message lengthinvalid headerfirst octet invalidd e not congruent to 1dmq1 not congruent to ddmp1 not congruent to ddigest too big for rsa keydata too small for key sizedata too smalldata too large for modulusdata too largedata greater than mod lenblock type is not 02block type is not 01bad pad byte countbad fixed header decryptbad e valuealgorithm mismatchRSA_VERIFY_PKCS1_PSSRSA_verify_ASN1_OCTET_STRINGRSA_verifyRSA_sign_ASN1_OCTET_STRINGRSA_signRSA_setup_blindingRSA_print_fpRSA_printRSA_padding_check_X931RSA_padding_check_SSLv23RSA_padding_check_PKCS1_type_2RSA_padding_check_PKCS1_type_1RSA_padding_check_PKCS1_OAEPRSA_padding_check_noneRSA_padding_add_X931RSA_padding_add_SSLv23RSA_padding_add_PKCS1_type_2RSA_padding_add_PKCS1_type_1RSA_PADDING_ADD_PKCS1_PSSRSA_padding_add_PKCS1_OAEPRSA_padding_add_noneRSA_NULL_PUBLIC_ENCRYPTRSA_NULL_PUBLIC_DECRYPTRSA_NULL_PRIVATE_ENCRYPTRSA_NULL_PRIVATE_DECRYPTRSA_NULL_MOD_EXPRSA_NULLRSA_new_methodRSA_memory_lockRSA_generate_keyRSA_EAY_PUBLIC_ENCRYPTRSA_EAY_PUBLIC_DECRYPTRSA_EAY_PRIVATE_ENCRYPTRSA_EAY_PRIVATE_DECRYPTRSA_check_keyRSA_BUILTIN_KEYGENMEMORY_LOCKtoo many temporary variablestoo many iterationsp is not primeno solutionno inversenot a squareinvalid rangeinvalid lengthinput not reducedexpand on static bignum dataencoding errordiv by zerocalled with even modulusbignum too longbad reciprocalarg2 lt arg3BN_usubBN_rand_rangeBN_randBN_newBN_mpi2bnBN_mod_sqrtBN_mod_mul_reciprocalBN_mod_lshift_quickBN_mod_inverseBN_mod_exp_simpleBN_mod_exp_recpBN_mod_exp_mont_wordBN_mod_exp_mont_consttimeBN_mod_exp_montBN_mod_exp2_montBN_GF2m_mod_sqrtBN_GF2m_mod_sqrBN_GF2m_mod_solve_quad_arrBN_GF2m_mod_solve_quadBN_GF2m_mod_mulBN_GF2m_mod_expBN_GF2m_modBN_EXPAND_INTERNALbn_expand2BN_expBN_div_recpBN_divBN_CTX_startBN_CTX_newBN_CTX_getBN_bn2hexBN_bn2decBN_BLINDING_updateBN_BLINDING_newBN_BLINDING_invert_exBN_BLINDING_create_paramBN_BLINDING_convert_exBNRAND0123456789ABCDEFPEM part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\pem\pem_lib.cphrase is too short, needs to be at least %d chars Enter PEM pass phrase:ENCRYPTEDDEK-Info: TRUSTED CERTIFICATEX509 CERTIFICATE-----END ----- -----BEGIN Proc-Type: Expecting: .\crypto\pem\pem_oth.cpgXU`/^l^^NETSCAPE_CERT_SEQUENCE.\crypto\x509v3\pcy_tree.cECDH part of OpenSSL 0.9.8a 11 Oct 2005.\crypto\ecdh\ech_lib.c.\crypto\asn1\x_info.c.\crypto\pem\pem_info.c.\crypto\pkcs12\p12_decr.cniv <= EVP_MAX_IV_LENGTH.\crypto\evp\evp_key.cnkey <= EVP_MAX_KEY_LENGTH.\crypto\evp\encode.cn < (int)sizeof(ctx->enc_data).\crypto\x509v3\pcy_node.cOpenSSL ECDH method.\crypto\ecdh\ech_ossl.c.\crypto\asn1\x_pkey.c.\crypto\ui\ui_lib.cYou must type in to charactersOpenSSL default user interfacecon.\crypto\ui\ui_openssl.cVerify failure Verifying - %sbcGetCurrentThreadIdiGetLastErrorGetVersion^GetFileTypeGetStdHandleGetTickCountQueryPerformanceCounter;GetCurrentProcessIdGlobalMemoryStatus.CloseHandleFreeLibraryGetProcAddressHLoadLibraryAGetVersionExASetLastErrorDisableThreadLibraryCallsKERNEL32.dllGDI32.dllgGetUserObjectInformationWHGetProcessWindowStationGetDesktopWindowMessageBoxAUSER32.dllDeregisterEventSource ReportEventARegisterEventSourceAADVAPI32.dll_filenofputssignalFlushConsoleInputBuffer_stat$_getchjGBj8j sslobjects#:writeThe write operation timed outUnderlying socket has been closed.Underlying socket too large for select().The write operation timed outUnderlying socket has been closed.write(s) -> len Writes the string s into the SSL object. Returns the number of bytes written.|i:readThe read operation timed outUnderlying socket too large for select().The read operation timed outread([len]) -> string Read up to len bytes from the SSL socket.writereadserverissuer,ut4u@t 0 or 1 Returns 1 if the OpenSSL PRNG has been seeded with enough data and 0 if not. It is necessary to seed the PRNG with RAND_add() on some platforms before using the ssl() function.RAND_egd() expected string, found %sEGD connection failed or EGD did not return enough data to seed the PRNGRAND_egd(path) -> bytes Queries the entropy gather daemon (EGD) on socket path. Returns number of bytes read. Raises socket.sslerror if connection to EGD fails or if it does provide enough data to seed PRNG.sslRAND_addRAND_egdRAND_status,yP s0ypvR?R@RARBpRCXRDHRER/p///0123456789ABCDEFZZZZZtZhZ\ZXZTZHZg*?g*@g*Ag*Bg*Cg*Dg*Eg*Fg*Gg*Hg*Ig*Jg*Kg*Lg*Mg*Ng*Og*Pg*Qg*Rg*g*g*g*g*g*g*g*g*g*g*g*g*g*g*g*g* g* g* g*g*g*g*g*g*g*g*g*g*g*g*g*g*g*g*g*g*g*"g*#g*g*g*{*H  *H Pg+7+7U U++++U+*H  *H  *H  *H `He`He`He`He++g+g+ *H=*H=*H=*H=*H=*H=*H=*H=*H=*H=*H=*H=*H= *H= *H= *H= *H= *H=*H=*H=*H=*H=*H=*H=+++++ ++++ +!+ +"+#+++++++++++++++$+%+&+'g+ g+ g+ g+ g+ g+ g+ g+  g+  g+  g+  U U!U6L@8 ШШ Ȩ  (l 1`H :@$ C\X\X D  FILاOԧRUTZX\ dxx mdd vDD 00   ܦԦ̦Ħ !" |#pd$\T%ʀLD&<4',$( )Ҁ*׀+ԥĥ,܀-./0 pp1 dd2 TT3 HH4 445   6 '  7 08 99B:It;Qh\<L<=0$>?@YУA ^ȣBgClxD qppE z`PFD0G $H I ԢJ K hL X<M 0N ǁ O ЁԡP̡̡QفRہtSށ\<T, UܠVȠWXx\YD$Z[  \]^ܟԟ_ȟ`abcxd lle T4g(hXXijkl !؞m̞nop *xq3l`rTHs:D4t?(uF wKxQ؝yНȝz{|Y}_lP~eHHh@@n4u}ܜ̜|X L(  ԛ ̛ ł ςx\؂P8ۂ(ނК  t d@ ,  ܙܙ "șș - 8 C N Y d mpp v`` XX PP HH 88,ؘ̘  ǃt\ ЃL4 ك(   ܗܗԗԗ̗̗ xl\!XT)H8*0+ .39Aؖ IȖȖ R \ f p z tt `` LL 88 $$  Ą τĕĕ ڄ  xx `` LL 88    ' 2 =ȔȔ H S ^xx i\\ t<<    ēē   hh ̅LL ׅ00   ԒԒ   pp $PP /44 : E P̑̑ [ f qtt |XX << $$     ܐܐ ĐĐ Ɇ Ԇ ߆tt TT 44   ̏̏ ! ,7?FM||Ttt[llbddi\\ pTT wLL ~DD ,, ؎؎̎̎ć̇ttԇXX܇@@$$  ܍ ̍̍ $!,"4tt#<\\$DPP%L@,&T '\(d)lԌԌ*t+|,-tt.``/HH0,,1234Ĉ̋̋5̈6Ԉ7܈8xx9ll:XX; <<< = > ? ȊȊ@ )A 2B ;CDxxDL``ETPPF\<<Gd$$Hl  ItJ|K̉̉LMNOttP\\QLLR<<Sĉ$$T̉UԉV܉WԈԈXYZ[tt\ ``]PP_44`$a,b4c<̇̇dDeLfTg\hd||ilhhjtXDk|<4l  m n o Іp q xr hPs Š@(t ˊ  u Ԋv ݊ w ccxyz{|}~tdTLD 8,$ !Є *Ȅ 4>?ttBlT FHHO4W_gЃjm|pspdtXXy<<,,  ؂؂ȂȂƋ ͋ ֋| ߋpd XL @4 (   ԁ ȁ ' 0 9x`BL4ELȀSZ[^e m vpp dd TT 88 ,,        Ì ͌ ׌      || hh 'd\ 1DD ;<, E$$ O Y c m~~ w~~ ~~ ~~ ~~ ~~ ~~ ~~ x~x~ Ǎl~l~ э\~\~ ۍH~H~ 8~8~ 0~0~ ~~  ~ ~ ~~ }} !}} +}} 5}} ?}} I}} S}} ]p}p} g\}\} qD}D} {4}4} }}  } } }} || || || || ˎ|| Վ|| ߎ|| h|h|\|P|<|<|,|,|||{{{{{{{{{{{t{ h{h{#\{\{&P{8{),{,{,{{/ { {3zz 7zz ;zz ?zz Czz GzzKzzOxzxzS`z`zWLzLz[8z8z_(z(zczzgzzkyyoyysyywyy{yyyytyty\y\yHyHy8y8y $y$y!yy"xx#xx$xx%xx&xx'xx(xx)lxlx*TxTx+@x@x,Ï,x,x-Ǐxx.ˏww/Ϗww0ӏww1׏ww2ۏww3ߏww4|w|w5hwhw6XwXw7@w@w8,w,w9ww:ww;vv<vv=vv> vv?vv@vvAtvtvB\v\vCLvLvD#8v8vE'(v(vF+vvG/vvH3uuI7uuJ;uuK?uuLCuuMGuuNKpupuOOXuXuPS@u@uQW,u,uR[uuS_uuTcttUgttVkttWottXstxtYwhtPtZ{Xeee @No_r@g@ggn0@qfPs_`pp~p DDCCCCCCCChCPC>>|>h>X?L?4 ? 0?@?P?ئ`?p??>t?T?4??>إ???@dP<$ؤФ 0|@hPX`@p(أxl`L0 0@P PТ`ĢptX@  С   0 l`@ PP D` $p   ̠   t ` H 4  p  ؟ ȟ   ` t d0 L`0p@ P ` ОĞ   @ p P 8P$    ȝ   t X < 0 @ P Ԝ ` p  t \ T@H < $    Л 0@  0 t0 d H@8@ ,0P @Ț` p  | h P 8     Й ę  0 @ td\,efghؘjklm|nloXpD]4X YiqrЗstuvxwhxTy<z({|}~ܖ̖t`D,ܕĕ`lP4 ԔU|haL_,DГtdVT8(XPFȒGHIxJ`KLT(QRSؑȑX|WhTD0ܐĐxZ`L4̏lX@0 ؎Ȏt`P8̍tL4܌ČlT@E,܋hHZ,Y؊|\8܉l8̈tNTO<Mćl$L/(8 L.̆B|T$܅[d\D܄l\H,Ѓ|hD^(CЂp X D ,   `B (xBApA`D (P (8D !884   (8 !88 ܬ (8Ȭ!88 (8!88pX (8D!88,B (BA (!88ثȫ/01p2\3L4@5,6789:̪G@@H@@I@!88J@@pK@@XL@@DM@0N@O@!88P@Q@ةR@S@ (T@8UVtW!88`XDY (8,Z ([@@ (\@@8`B8ШaD8b88c88d8xe8hfAPw@8x0"P  !$!0(P@ @@p@@@@P + 0p`00@@@0Pp 0p`00@@@0Pp 0p`P00@@@0@ p @@` @td0p` @@p@@@@P - 0p```M @@p@@@@ - @``M @@p@@@@ + '`$$g'$$$0%###p $$666666666666666666666666666666666666666666666666\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\xBAB (DA`D (@@!88خA̮B!@@'`$$'$$$0%###Pp $$0p``M @@p@@@@( - @`M @@p@@@@( + '`$$g'$$$0%###Tp $$0p`` @@p@@@@l - @` @@p@@@@m + '`$$'$$$0%###Pp $$dTP 8 hPP@$#p#$LI$8I$$|0%l0%\Ŀ%0& +(/D).C|=6Tbs+LW<gBoNI/zhy? "_!]Z2'5>0H^*VO8}vktEpYdq [e-`%Fai4@~UG#Q:\&,S n( AMRj7l${ Jxcm;9fXwruK 1DP3xݵ(yJ؝~7+vSbLdDYOaEm }2@놷{ !"\kNTe`sVu;B=0<&oFiW'C>/fހRr5Mj*qZItK^AnQ$Pp9|:#z6[%U1-]㊒)glឨ,c?X≩ 843H _.G奜w hpH((@((P(`((p(|(d(T(D(4h(f(g(i(d(e(j(@'`'p'''P''''t0'`'L '<'(@''''d'e'f'z'{'hy'Tg'8|'h'i'j'k'l'm'n''lo'Dp'0q'r's't'u'v'}'~'x'hw'Px'D'$@ &P &` &p &&& &x&l &\ &D&4&  &  & &0&@&p&&&` &xp &`&T&D &(&& & & & & & & &t &\&Pd&@&$&&&g&w&&&h&x&h&Pi&4&&&j&k&l&m&n&x&d&P&<&(&u&p&x&&}&&t&~&q&&l&T&<&$@% P% `%  % % p% % % % 0%t %` %T %D %4 % % % %%%@%%%% %x0%h@%\P%PP%D`%4p%$p%%`%%%%d%n%q%|r%te%`f%@s%(g%m%o%t%h%p%i%lj%@k%l%P$, @$ d$ #`p#T@#<# `## # # # # # P#t #` #L #8 # #  # 0# `# p# # # #  #p 0#X #D #0 # d# y# e# f# g# x# h# i#l j#\ k#L l#@ m#( n# o# p# q# r# s# t# u#x v#\ w#D "" ""xp"lp "\@ "D"4" P " ""@"P"0"` " "P "@"t"`"H "40"(""""""P""p"l`"T`"Hp"0`"P" "0 " " " "@""|"h"X"@"0"  " """"""v"w"td"de"H"8"$" """"s"f"g"dt"L"4q" "h"i"j"k" l"m"""xn"\"L"0""""~"|"""y""l"T",r"}"p""""""|"T"$"z"{"o"""x"|u""l!\!L`!0@!P!`!p!!!!!!!p!\ !L0!<!(!!!!!@!!p!P!|!h!\u!!<t!$v!! d!w!e!x!y!!!l!T!@!(g!z!!!!s!!{!t!h!Th!,|!~!}!!!!!i!!!!j!dk!Ll!,m!n!o!p!q!r!@ P >0 > >` >p p> \> H> <>@ 0> > > = =@ = = = = = h= X= D=0 4=@ $=P =` <p < < < < < < < x< h< X< H< 8< (<P <0 <@ ; ;P ;` ; ;` ;p ; ; ; h; X; D; 0; ; ; ; :d :e :f :g :h :i j :k $l <m :n o p: `:p  L: 4:q :r 9s 9t 9u 9v 9w 9x l9y \9z H9{ 89 9 9| 8 8 8 8 8 8} 8 x8 h8~ P8 ,8 8 8 7 7 7 7 7  x7 d7 D7 07 7 7 7 6 6  6 6 6 6 x6 h6 P6 86 6 6 5 5 5 5 5 t5 d5 P5 <5 5 4 4 4 4 4 |4 l4 H4 44 4 4 4 3 h 3 3 3 3 t3@ ,HP H H` Hp G G  Gp G G pG PG 0G G F F0 F F F pF@ XF DF 0F F  E0 E0 E@ EP E` Ep xE hE LE 8E $E E D D D D D` D pDP `D PD ?456789:;<=  !"#$%&'()*+,-./0123,`@``иp0 000=000000000111I1U11111122024282<2@2D2H2]22223H3f3333334 4 4%4,4A4F4M4b44444445 55M5\5p55555556 6"646V6_666617[7a77777777 8884898@8N8a8n8s8x8}888888888889 999(929<9I9S9]9t9z999999:R:::F;O;;;;;;5!>A>O>]>j>n>x>>>>>>+?9?G?T?X?b?s?????? 000"030O0q00000000111+1L1Y1e1o11+292G2T2X2b2x2222222 3;3I3W3d3h3r333+4?4M4Z4^4h4444455.66666666667'7@7E7O7T7a7k7u777777777808=8S8b8p8888888888899"989?9T9w9~99;;; a?}?????0t!0A0a0v000000111F1Z1q1111q222383_3m33333n6666666667779 :U:0;;8<<]>>~?@0011C1Q1k1111112'2A2]22222223)363r3}333333344(474`4n44444456)788899:::;;;P;c;p;~;;;;</>F>>?*?P*0C000000000 11$171J1X1c1m1s1{11111111111122$292222C3Q3]3l3x3333333333444?4n4|44444444555+5>5Q5_5j5t5z5555555555L6667=8L8g8n8t::::;#;H;n;;=>> ?n???`~00X3\3`3d3h3l3p3t3x3|333333333333333333444v4{45555616A6Y6u66666677!717A7Q7a7}77777788!818a888799:::;!;1;E;f;;;;;;;<4N?v????pdA0Q0e00U111;223333 3$3V344y56J666777(9X9}9999%:k:::;t6>f>?w??`-0B00;1b1222~3333333444 444 5555n6N:(;,;0;4;8;<;>>#>->>>>>>>>>>>>>??!?/?=?J?N?X?i???20d000111223O3m304!555"6778!858]8u888Z9:(:N:|:::;,;T;h;;;;;<<,>>>>? ??$?,?2?>?D?J?V?d?j?w???%0A0Y0b0l0|0000000000011%1*101:1D1N1X1b1r1111111-2H2222223v333333a4z44444444555545>5c5536o66667a8899;;Q<<>T222 3S3h3r33344N44444*6q6x67'88 99999:{;;;O==?P10N14465=5p5t5x5|555$6(6,60666868999F:`:;&;<;F;n>??00$0/0001 2,22b3j3|33333344L4R4f444445C5W5m555555 6 636D6J6X6b6h6y6666777 77777 7$7768_8o8u888888889!919A9Q9a9q99%:::D;;<4Z>>>>>>.?k??? 0&090`00000151g112I22222)3P3334O4n4445S66687U788999:::;8;;;; d>>>!?T????L40X000031d11124:4L5688<9::;|<====>Y>q>>>?1?M?~??T#0111!2x22222233334464D4g44s566667e738J9::;n;;!> !0J051|11233445679K9\99:!:5:Q:a:u:::;;);`;f;;;;;;;<#X>u>>>>>??0?A?f?l???0)0J00[1t111111111P2V2l22 3l33454F4T4s4y444415F666!757^7q77778\8y88888a9q99999999:=::K;Z;c;k;;;;< <<<"<0<;>%>4><>F>]>>> ??$?.?:?F?R?^?j?v????@=0r000R1122222222&33464y45Z5~556)6617J7~7768I8Q8X8879:H;L;P;T;X;\;`;d;;;;<<<<===>!>5>Q>e>>>>>&?E??????PX0001&191D1F2`222239999 :::::::;;;<$Q>e>>>?6?Q?a?`(02R4564667Q78c999:;<p0Q5h66678h9 :):P:U:Z:;;3;G;={>>q?D33!3M334466667777899^::;;;;H=O=+>z>>>He0w01L11 234q68?9d;;>`>d>h>l>}>>>?`????@u00D11c354t444d6666H7L7P7T777988(969S= >W>o>?$0.16:=========>H 22222 2$2(2,258999::T::h;u;;;j<<<={==z>>>$?q? 0D00001111G1]1s11111111A2G2M2s2!3:3h3x3334Q4_4p4~44!5d555(868f88s9h::=;E<<<<=9>z>>>>>>>>??"?z????,133333333344&4<5@5D5H5 7?(b11222 222242L2V24555  50}???@0[00 1111112Y2q2244+415A5Q55555556666777788h99":q:v:;;;;>c>>>f???PH_0m0{0000_11K2{2233333&44$566667h77799B:d:3;`$0_:q:::::::;R<>>p0f3D4444555Y666667788;;>,?5378;E?h37999*:HO0i00#11T22224A4a4}46/6(777r88889F9&:H:t:::;; <023-5A55 66637:7w777777782888889939[99996:a:t:::u;|;;;;<(<,<0<4<8<<<@->j>>>>?M???00P0j0000000000`124-4@4445h555555@6Z6h66677/7u7|7777Q8n88889+9A9M9i99999:R:d:::::::: ;;P;x;;;;;<%<6p>>?#?B?H?N?001$1*1K1Q1W1p111112222233?3X3^33333445 5m5s5555A6U6q678777 8V8889)9=9Y9s99:::::::: ;;R;X;K>>>>??A?Q?e??090u0000;1111 2222333 4-424V4[444445A5{556.6R6W6666666666666717R7s7777898M8h88888888888j999::::?;P;;;<<<#=E=^=z====>>(>\>>>>>P????dP00000111111123344 4n4455556\667c79;99::;U;_;|;<7=a==H>>>>?24:99;[>{>>,??0~0122R3k44 8q4f5r6!919A9Q9a9D;;= >[>>>>>>>?&?4?J?0(33n3333333,4@4N4d4x888@|133334D4445!5a5q55577w88888849k999999::: ;;8;M;e;t;;; <<<<< <$<(<,<03>m>>>>??!?1?A?Q?a?q???`tQ1X1b1o11V2w222@333C4u444556777 7:7I77788c999::::: ;!;/;< >3>L>>>?'?,?8?C????p80(0\0z0001191[111 333>7E7777]8;;001111112222S22223 333334 4#4q444444555F5^555y66666)717B7Q7w7777777h888888 99:`:::;Z;m<<^==>a>>>??hP0T0X0\0`0d0h0l0p0t0x0|0000000000000622344L499o:::;6;V;N<%=i=?>V>z>*?4???*0s01112222222222#3A3R3 44K44444445V577777777 88!8+858?88E9999/::;F;;;Cr>a?q?{????????????????00!040C0P000111111112=2J22222223313#4(4'6@68S8Z8;9i9s::::!;-;E;+<<<<<<<< ==0=w==> >$>L>w>>A?g??????X0000C1b1^2223334N667L77778w88999:,:4;/<_<|<<[==>>>>B0u00c112(4v4`55 6o7v7777777777<8r889G92::;<<< ===5=e=== >X>t>x>|>>>>>>>>>>>>Z?????X 030v00001d1h1l1p1t1x1|11111111224557e77758e8s9990::<;;^=?80B0S0d0z0001f23899999:G:[:q::;;<:>@012334d566/888889::=#=4=E=V=g=z===>\"1a1g1123333345667777,9;/'?\?c??????????????? P0112T334 5 6666V7`778/8889t9:I:;a<<6==='>I>k>8???0`x0000v111*22.34D5I5e55596j67)7G7i7|778889N::;<Y>>>=?N?@`0.1a111q222 3:3t33?44440576P6p667789999Z99:;A;;;<< ='=;=v=|==? ?PP&0-0333$4(4,40444l4p4t4x4|444567i:: ;;V>>>`???`\\006111"22393L334N44F5866S777888q9x9r:;`;d;h;l;;;;;;<<=t>??pX050d00i11122447T889999:;:::U;z;; U>>>&?N???!0@01g11223$3U3x33h44 55 6\6`6d6h6l6p6t6x6|6666666666666m778+808H888R9y9X:::+;<=>?????Pr0x001o2v2X4_4*8F8i888888888888A9^9:&:::~;9?`0\00811b333/4W445E666637R77 8F889Y9 ::;;;2<<<==>n?????????D022233N4o4445m5a6667778M9f99 ;;1>E>^>>Ds2z2833 4345555555555588a8889t:;m<<<=@03334455l556a66%7*7U7Z7q7788;;L>7?42278=8T8k88888889d99o:=;`===$> \00P1W1A3444f555 797T77%8W888909994:}:::E;l;<<<=3>c>>>>?Q???0T20$1S1n1y11111133L4S4<<=4=Z=t=~=====>M>g>>>>>>?=?????@\0%0/0P0Z000001111111 22'272B2N2[2j2w2222222222333*373F3S3`34+494H4b4i4w444444444 5K5R5^5m5555555555 66"636:6J6Y6s6z6666666667787H7\7w777778878R8888899999999::!:4:E:S:c:x:::::: ;;.;C;[;d;s;|;;;;;;;; <<<)0>:>Y>P82r66777 77777 7$7(7,7074787 `x_6689:I<<<<<<<<=== ===== =$=(=,=0=4=8=<=@=D=H=L=P=T=X=\=`=y========>U?_?u??????p00000111111142>2M2Y233$363f3p3333799g:;T>>> >$>(>,>0>4>8><>@>D>H>L>P>T>X>\>`>d>h>l>p>t>x>|>>>>>>>>>>>>>>>??!?*?2?@?Q?Z?b?p????????????000"000A0J0R0`0q0z000000000001 11 111:1B1P1a1j1r11111111111122!2*222@2Q2Z2b2p222222222222333333h4z444444455)5;5Q5c5y555555o6Q7-8889D9j99':.:::A;H;;9%>9>g>{>>>>J?d40Q1\777 9.99:;;;;;;;;;<>>??/?D?Z?o??????Ps14>4T44?5555556666888?9S9]9q9::::g>>x????K00151N112223466Q7f777777778T8k88888899-949g9v9{999999999999999::1:8:C:N:X:c:n:::::::;;;;;$;+;2;9;@;J;`;h;u;;;;;;<&<+<2<;<<<<<<<=============>> >>  i0(>D>`>|>>>>>?$?@?\?`10141D1H1T1\1d111111122,202<2L2\2`2l2|22222222222\3`3p3t333`4d4t4x4444444445555,505<5L5\5`5p5t55577 7,707::::;;;$;4;8;P;T;h;l;;;;;;;;;;;;;< < <$<8<< >> >0>4>@>P>H0\0`0p0t0000000000000 11 1$10181@1T1h1l1|1111111111111222 242H2L2`2l2t2|222333 33383<3@3D3H3L3T3\3x3|33333333333333333444 44484<4@4D4H4L4T4\4x4|44444444444444444555 55585<5@5D5H5L5T5\5x5|55555555555555555666 66686<6@6D6H6L6T6\6d6h6l6p6t6x6666666666666666777777 7$747<7@7D7H7L7P7`7h7l7p7t7x7|77777777777777777777788,8084888<8@8H8P8l8p8t8x8|8888888888888888899999 9$9(9,9<9X9\9`9d9h9l9|9999999999999999:: :$:(:,:4:<:D:H:L:P:T:X:h::::::::::::::::::::::;; ;$;(;,;0;8;@;H;L;P;T;X;\;l;;;;;;;;;;;;;;;;;;;<<<<<4<8<<<@>>>> >(>0>L>P>T>X>\>`>h>p>>>>>>>>>>>>>>>>>>>>>>?$?(?,?0?4?8?@?H?P?T?X?\?`?d?t?|?????????????????????000 000$0,040<0D0L0T0\0d0l0t0|000000000000000001 111$1,141<1D1L1T1\1d1l1t1|111111111111111112 222$2,242<21<2@2L2\2l2p222222222222233$3(343D3T3X3h3l3x33333333555555666666666677$7(787<7L7P7`7d7t7x777777777777788H9L9P9\9`99999999999 :$:(:4:8:h:l:p:|::====>>(>,><>@>L>\>>>>>>? X81<1L1P1\1l1|1111112222,202@2D2T2X2h2l2|2222222222223333 3X3`3t3|33333333333333333333444 44444 4$4(4,40444556667 77,707<7L7;;;;;>>>(>,><>@>P>T>d>h>t>|>>>>>>>>>>>d?h?x?|???????????0\0`0x0|000000000001 1 1$14181D1T1d1h1x1|11111111111122(2,2<2@2P2T2d2h2x2|2222222222223333(3,383H3\3t3x333333333333334 44(4<4@4P4T4d4h4x4|444444444444455,505@5D5T5X5h5l5x55555555557 88 8$84888H8L8X8`8h899999999999999999999999::: :: :$:,:0:4:T:X:\:`:d:h:l:p:t:x:|::::::::::::::::::::t>x>>>>>>>>>>>>?@,00111$14181D1T11111 2$24282D2T2d2h2x2|222$4(484<4H4X4h4l4|44444444444787H7L7X7h7$:(:8:<:H:X:l:p:t:x:|::::::::::::::::::::::::::t=x=============> >>(>8><>L>P>\>l>|>>>>>>>>>>>>>? ??,?0?@?D?P?`?p?t?????????????P 000,0<0@0P0T0d0h0t0000000000000111(1,1<1@1P1T1d1h1t1111111111112222(2,282H2X2\2l2p2|22p\999:<:d::::;,;T;|;;;;L>t>>>>?>>>>>>>>>>>P|>>>>>>>>pxP5T5\5`5d5l5p5t555555X9\9d9h9l9t9x9|99999; ;;;$;,;4;<;D;L;T;\;d;l;t;|;;;;;;;;;;;;;;;;< <<<,<4<<>> >>> >$>(>,>0>4>8><>>>>>>>>>>>>>>?? ? ?$?(?>>>>(>0>4>H>L>X>`>d>p>x>|>>>>>>>>>>>>? ? ?$?0?8?> >> >$>0>8><>H>P>T>`>h>l>x>>>>>>>>>>>>>>>>>>??? ?(?,?8?@?D?P?X?\?h?p?t?????????????????00000(00040@0H0L0X0`0d0p0x0|000000000000000011 11 1$10181<1H1P1T1`1h1l1x111111111111111111222 2(2,282@2D2P2X2\2h2p2t2222222222222222233333(30343@3H3L3X3`3d3p3x3|333333333333333344 44 4$40484<4H4h4l4x444444444444444444555 5(5,585@5D5P5X5\5h5p5t5555555555555555566666(60646@6H6L6X6`6d6p6x6|666666666666666677 77 7$70787<7H7P7T7`7h7l7x777777777777777777888 8(8,888@8D8P8X8\8h8p8t8888888888888888899999(90949@9H9L9X9`9d9p9x9|9999999999999999:: :: :$:0:8:<:H:P:T:`:h:l:x::::::::::::::::::;;; ;(;,;8;@;D;P;X;\;h;p;t;;;;;;;;;;;;;;;;;<<<<<(<0<4<@>> >(>,>8>@>D>P>X>\>h>p>t>>>>>>>>>>>>>>>>>?????(?0?4?@?H?L?X?`?d?p?x?|????????????????00 00 0$00080<0H0P0T0`0h0l0x000000000000000000111 1(1,181@1D1P1X1\1h1p1t1111111111111111122222(20242@2H2L2X2`2d2p2x2|222222222222222233 33 3$30383<3H3P3T3`333333333333333333444 4(4,484@4D4P4X4\4h4p4t4444444444444444455555(50545@5H5L5X5`5d5p5x5|555555555555555566 66 6$60686<6H6P6T6`6h6l6x666666666666666666777 7(7,787@7D7P7X7\7h7p7t7777777777777777788888(80848@8H8L8X8`8d8p8x8|888888888888888899 99 9$90989<9H9P9T9`9h9l9x999999999999999999::: :(:,:8:@:D:P:X:\:h:p:t:::::::::::::::::;;;;;(;0;4;@;H;L;X;`;d;p;x;|;;;;;;;;;;;;;;;;<< << <$<0<8<<>>>>(>0>4>@>H>L>X>`>d>p>x>|>>>>>>>>>>>>>>>>?? ?? ?$?0?8?>> >>>>> >$>(>,>0>4>8><>@>D>H>L>P>T>X>\>`>d>h>l>p>t>x>|>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>??? ????? ?$?(?,?0?4?8?>> >>>>> >$>(>,>0>4>8><>@>D>H>L>P>T>X>\>`>d>h>l>p>t>x>|>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>??? ????? ?$?(?,?0?4?8?>> >>>>>>>>>>??(?,?0?4?8? >>>$>,>4><>D>L>T>\>d>l>t>|>>>>>>>>>>>>>>>>>? ???$?,?4?>> >>>>> >$>(>,>0>4>8><>@>D>H>L>P>T>X>d>h>l>p>t>x>|>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>??? ????? ?$?(?,?0?4?8? >>>$>,>4><>D>L>T>\>d>l>t>|>>>>>>>>>>>>>>>? ???$?,?4? >>>$>,>4><>D>L>T>\>d>l>t>|>>>>>>>>>>>>>>>>>? ???$?,?4? >>>$>,>4><>T>\>d>l>t>|>>>>>>>>>>>>>? ???$?,?4?Qj toD$΋s|/ʃ;CCu{__^][ËC T${͉D$QPSC 1 uL$Q_^]3[ËT$΋|*ȃL$Q_^][̃L$D$PhQD$D$  uSUVt$ V@WjR F,Ht)HtDhhD$l$ Uj D$k$L$V(VUQRD$(P%N0F4σSN0F4(L$0D$ v3w#-j0hP L$UQ,$D$D$V+RV(LQRD$(PhV0ӉV0V4L$0Q(L$0BV0F4V8FD$D$8HPQxJq0hPQ8YT$VRHu FVPD$t1L$PQD$JD$8u PPRtD$u HPQD$_3^K@QD$;[tD$9(u PPR$, D$]跧, Ë<hP8̋T$ SD$PL$ QhHR3u[ Vt$F@jP F,;ttt Dh(mW^$L$V(D$ PQRD$ P1D$ N0ȋF4WN0F4(L$;_t& <hR8F@P^[ ̃ SUVW|$4G@3jP3l$$l$ G,;-t Dh(R"\$8C ;t4QPu%Sl$$;ʼnD$uhD$ h;3|$D$ t3tu VVRPWS ~9\$3StPWV G|J3l$~N C ;tbQPuST$(RD$0PS L$(T$,QR  u CSPT$N ,E;l$|D$43ۉX$~-N PRPD$nnnW,QRW$FO,jPQW$jFW,hRW$N$;͉FV;tq;tmFFD$pD$hD$ V$ldF0N(n,N ^Hw oo ooF4n8[^_]3[;t QO,QW(F;t W,PRW(F;t PG,PW(O,VQW(^_][_][̋H8P4SUV3W~*`3ߋ,H3͉`H8F;|ًH4\XH8NNthNtY\THDp$1HDp$AHD1hDp$EhD͈1XDp$CXDˈ1xDP8p$GxDπ1HD_^A]HD[ËHDp$1@DHDp$1pDFpD΋p$1HD_^A]HD[ËpDH$1HD_^A]HD[́x4s@4@8QHSUVpH2҃HDW;T$d$q:p4;\$tE9X8u<`P43݋,H3͉`\XH$pD1@D%;uH8tAH8s0X8x4IAQuA PD;PHLD$_^][Y; T$$qp :p4;\$tE9X8u<`P43݋,H3͉`\XH$pD1@D%;uH8tAH8sUX8x4IAQuA H PD;PH;D$_^][Y_^][Y̋Vr2tCWIQP;QL}6q,29APJBBruBru_^QSUVp 3ۈ\$\$W$FmL$ ȋFLL$NP;~u9^ u~49^83~X@^D^L^Pdž`󫋎lFAlnu9^ u~4sv9^8~q;` L$ 9nL$t(9^ u#F4;s~‰~4^8R FD;FH|SV>F9Y8\$_u 8\$u^]3[Y^][Y̋D$uVp u ^W>;t _^NIwWht7WPՋQh~jWDJ  ujP_ue>Wht WPՃu wtA Vt_]dž^3[u#tD$ _]dž^+[t_]^3[t_]dž^3[tD$ _]dž^[;t;t dž^3[̃0SUl$D$ tejjjjjVPD$ tSu dž=A t dž)RdžQVpVPX;t ;t W\_^̋D$3ɉ\X̋\~BSVpL[P,2PL\XBPLօ҉X\^[Q\V;|DSXLP,L$[ PLX\BPLXL$;щ\}[\ ++拈X ׉X\^YS\$W[L$QIˁ<_[Wɿ"_@T3ɍ$TXt PTX@TTYt PTY@TTZt PTZ@TT[t PT[@T|ÁF N$SUn(D$WƉL$o^TC\$x xK3NT333ɉT$ ~$D @;|FD3ɅL$1D$HyFD\$0X8\$ u BT$ ~SJtfD}|G@|fD}xG@x|B+D$ D$ T$ L$!:يD$ D$!D$!t@ъ:وuT$ L$ L$ +HfL}|GA|L$FDA;ȉL$$~GJtfD}|G@|fD}xG@x|B+D$ 뺋\$f\}x@Gxt_][ËhPS^(UW|&FTtVDPXQR@hHPHVT$T$|$0D$,~ʋ̓|$0D$,H|$0D$,u΋t h t=})=X}=} 3=` ɉL$L$$D$D$0iD$0D$ D$|$3Ol$,~#L$Ix;} jG;|L$$l$,;|$~-;L$t't"T$0yJBu +xl$,Oh|>D$,D$L$$X ڶt@$UWPQhRHL$D T$3~%;D$|; T$ T$ T$@;|ۋT$ D$0IT$ T$@G+ՅɉL$$D$0|$T$D$ T$~73|$DT$0T$󫍮`~3D$0HD$0uT$|$uX~T$d$( y 9  y@Jut3;ʼnl$,l$$ d$U1;ȉT$0L$|HD$|$~3|$4f|$D$+@2 k|k|$Ǚ  27|$1|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k |$Ǚ 7|$77|k |$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k|$Ǚ 7|$77|k |$Ǚ 7|$77|k"|$Ǚ 7|$77|k$|$Ǚ 7|$77|k&|$Ǚ 7|$77|k(|$Ǚ 7|$77|k*|$Ǚ 7|$77|k,|$Ǚ 7|$77|k.|$Ǚ 7|$77|k0|$Ǚ 7|$77|k2|$Ǚ 7|$77|k4|$Ǚ 7|$77|k6|$Ǚ 7|$77|k8|$Ǚ 7|$77|k:|$Ǚ 7|$77|k<|$Ǚ 7|$77|k>|$Ǚ 7|$77|k@|$Ǚ 7|$77|kB|$Ǚ 7|$77|kD|$Ǚ 7|$77|kF|$Ǚ 7|$77|kH|$Ǚ 7|$77|kJ|$Ǚ 7|$77|kL|$Ǚ 7|$77|kN|$Ǚ 7|$77|kP|$Ǚ 7|$77|kR|$Ǚ 7|$77|kT|$Ǚ 7|$77|kV|$Ǚ 7|$77|kX|$Ǚ 7|$77|kZ|$Ǚ 7|$77|k\|$Ǚ 7|$77|k^|$Ǚ 7|$77|k`|$Ǚ 7|$|$0<{|$Ǚ 7|$77|$fD$4fL$8fT$<fT$>T$0fD$6fL$:_;l$͉L$S$fKfD$03~-L$01$If9f|D4|$@;|L$D$A;ȉL$~3ɅD$0ɚ;~ |L4;|$0}|$0|$A;|L$0|$$DDL$,AL$,|$|$$|$+A2 k,i Lk Lk Lk Lk Lk  Lk  Lk Lk Lk Lk Lk Lk Lk Lk Lk Lk  Lk" Lk$ Lk&ȍ Lk( Lk* Lk, Lk. Lk0 Lk2 Lk4 Lk6 Lk8 Lk: Lk< Lk> Lk@ LkB LkD LkF LkH LkJ LkL LkN LkP LkR LkT LkV LkX LkZ Lk\ Lk^ Lk`ȋ, E)SЋ A#;H,ikBE;~싆to;[h|xD$$L$ -H‹XPAQ@hRՋD$(3~,$DD XP@hQՋD$$ G;|ދX@hRՃD$~:$`D$0L$jQWU1D$@HD$0u؋D$ @D$ |$| h l$,}RF~ h 3~ D$@;|~KD$$LD$0L$:ȋL$0tAЊD $T $8D$uGMD$$uŋ|$0$T$0D$$|$ D$33Ʌ ~AT$$ ;~;}D$A;|~ h } h D$L$$T$0PWUQR3T$8L$DD$4HT$$L$0D$ j3ɍVXID 43<tD 4@|A|ߋFLD$ 3퍛D,4t3E|FXD$D$0L$D 4t&3T$0<*t3E|ދD$T$0@D$T$0|h;|"FLT$ X+P@hQH VLL$ƉT$ Bl$,Ϳ2~ZLD$$l$0L$$3vd$T$$E;|3ɿL$$D$0AHL$$D$0uh|"NLl$ X+Q@hRH FLD$ D$L$$D$$L$d$T$$*ͿkD$D$$L$D$L$0T$;}d$2L$E;|D$;~( $T$M;3ɿL$D$0AHL$D$0uL$$D$HL$$D$4h|"NLl$ X+Q@h$RH FL3D$ t;ʼnl$$l$)}1;|$0|$|x|$L$$1;T$| h |$y+@2kL$$1T$ S&ii<) D$D$DC<(L$ T$DS<(L$ T$DS<(L$ T$DS<(L$ qT$DS <(L$ VT$DS <(L$ ;T$DS<(L$ T$DS<(L$ T$DS<(L$ T$DS<(L$ T$DS<(L$ T$DS<(L$ T$DS<(L$ ~T$DS<(L$ cT$DS<(L$ HT$DS <(L$ -T$DS"<(L$ T$DS$<(L$ T$DS&<(L$ T$DS(<(L$ T$DS*<(L$ T$DS,<(L$ T$DS.<(L$ pT$DS0<(L$ UT$DS2<(L$ :T$DS4<(L$ T$DS6<(L$ T$DS8<(L$ T$DS:<(L$ T$DS<<(L$ T$DS><(L$ T$DS@<(L$ }T$DSB<(L$ bT$DSD<(L$ GT$DSF<(L$ ,T$DSH<(L$ T$DSJ<(L$ T$DSL<(L$ T$DSN<(L$ T$DSP<(L$ T$DSR<(L$ T$DST<(L$ oT$DSV<(L$ TT$DSX<(L$ 9T$DSZ<(L$ T$DS\<(L$ T$DS^<(L$ T$DS`<(L$ T$0S<(L$ P;L $d$T$$2 kP&ii<0ы jD$E;~l$T$$tEB;l$T$$D$$;D$,t h h|"NL|$ X+Q@h8RH _][PSU-HVt$W~D3;~\d` ‹l3`d~^Lh|WPXQR@hDPՃVPCNVDlʃN,uBBƉ\XJZ@h6p0%9^D1 AY&SY`\$L$ˁ3ɿND$fr\ER8HP>4d\$ L$ˁh|d XP@hQՃ _^][_^][̃SUVWm +׍l +ׁn T$+3Ɂo ǀh T$4<.th | h >th ˆ| h T$<2th р| h T$<2th р0| h u_^][̃xSU$EV3 W} $(,048<@DHLPTX\`dhlpL$T$ L$,$T$P(L$4,T$80L$l4T$T8L$<<T$@@L$`DT$HL$$LT$XPL$0T$XL$\T$(`L$ddT$hhL$\lT$Dp(L$HT$L $`E ;E }DIEPT06U ։UM EHE@EPu@ 9M |U EJU %:L>T8F@:L>T8F@:u~L>T8F@:upL>T8F@:ubL>T8F@:uTL>T8F@:uFL>T8F@:u8L>T8F@:u*L>T8F@:uL>T8F@:uL>T8F@:t^]S\$F@ >8:*fLufTEf;L>T8F@:fLufTEf;L>T8F@:fLufTEf;L>T8F@:fLufTEf;L>T8F@:fLufTEf;L>T8F@:uufLufTEf;ufL>T8F@:uXfLufTEf;uIL>T8F@:u;fLufTEf;u,L$F@;r+;r+L$Jۉ[^2][^]̃S\$0Ul$(WD$<+@43;}d$8A;|IL$ `$4T$8;\$GetCurrentThreadId;GetCurrentProcessIdGetSystemTimeAsFileTimeDisableThreadLibraryCallsKERNEL32.dll_fdopen_setmode_filenojG8bz2.pydinitbz2The bz2 python module was written by: Gustavo Niemeyer read([size]) -> string Read at most size uncompressed bytes, returned as a string. If the size argument is negative or omitted, read until EOF is reached. readline([size]) -> string Return the next line from the file, as a string, retaining newline. A non-negative size argument will limit the maximum number of bytes to return (an incomplete line may be returned then). Return an empty string at EOF. readlines([size]) -> list Call readline() repeatedly and return a list of lines read. The optional size argument, if given, is an approximate bound on the total number of bytes in the lines returned. xreadlines() -> self For backward compatibility. BZ2File objects now include the performance optimizations previously implemented in the xreadlines module. write(data) -> None Write the 'data' string to file. Note that due to buffering, close() may be needed before the file on disk reflects the data written. writelines(sequence_of_strings) -> None Write the sequence of strings to the file. Note that newlines are not added. The sequence can be any iterable object producing strings. This is equivalent to calling write() for each string. seek(offset [, whence]) -> None Move to new file position. Argument offset is a byte count. Optional argument whence defaults to 0 (offset from start of file, offset should be >= 0); other values are 1 (move relative to current position, positive or negative), and 2 (move relative to end of file, usually negative, although many platforms allow seeking beyond the end of a file). Note that seeking of bz2 files is emulated, and depending on the parameters the operation may be extremely slow. tell() -> int Return the current file position, an integer (may be a long integer). close() -> None or (perhaps) an integer Close the file. Sets data attribute .closed to true. A closed file cannot be used for further I/O operations. close() may be called more than once without error. TxH<0*((`! p%%h`'`&'x'l` BZ2File(name [, mode='r', buffering=0, compresslevel=9]) -> file object Open a bz2 file. The mode can be 'r' or 'w', for reading (default) or writing. When opened for writing, the file will be created if it doesn't exist, and truncated otherwise. If the buffering argument is given, 0 means unbuffered, and larger numbers specify the buffer size. If compresslevel is given, must be a number between 1 and 9. Add a 'U' to mode to open the file for input with universal newline support. Any line ending in the input file will be seen as a '\n' in Python. Also, a file so opened gains the attribute 'newlines'; the value for this attribute is one of None (no newline read yet), '\r', '\n', '\r\n' or a tuple containing all the newline types seen. Universal newlines are available only when reading. H *x**8<' compress(data) -> string Provide more data to the compressor object. It will return chunks of compressed data whenever possible. When you've finished providing data to compress, call the flush() method to finish the compression process, and return what is left in the internal buffers. flush() -> string Finish the compression process and return what is left in internal buffers. You must not use the compressor object after calling this method. `+X-xBZ2Compressor([compresslevel=9]) -> compressor object Create a new compressor object. This object may be used to compress data sequentially. If you want to compress data in one shot, use the compress() function instead. The compresslevel parameter, if given, must be a number between 1 and 9. @00X`/ <decompress(data) -> string Provide more data to the decompressor object. It will return chunks of decompressed data whenever possible. If you try to decompress data after the end of stream is found, EOFError will be raised. If any data was found after the end of stream, it'll be ignored and saved in unused_data attribute. `0hBZ2Decompressor() -> decompressor object Create a new decompressor object. This object may be used to decompress data sequentially. If you want to decompress data in one shot, use the decompress() function instead. D3@2 compress(data [, compresslevel=9]) -> string Compress data in one shot. If you want to compress data sequentially, use an instance of BZ2Compressor instead. The compresslevel parameter, if given, must be a number between 1 and 9. decompress(data) -> decompressed data Decompress data in one shot. If you want to decompress data sequentially, use an instance of BZ2Decompressor instead. 3p06hThe python bz2 module provides a comprehensive interface for the bz2 compression library. It implements a complete file interface, one shot (de)compression functions, and types for sequential (de)compression. bzip2/libbzip2: internal error number %d. This is a bug in bzip2/libbzip2, %s. Please report it to me at: jseward@bzip.org. If this happened when you were using some program which uses libbzip2 as a component, you should also report this bug to the author(s) of that program. Please make an effort to report this bug; timely and accurate bug reports eventually lead to higher quality software. Thanks. Julian Seward, 15 February 2005. *** A special note about internal error number 1007 *** Experience suggests that a common cause of i.e. 1007 is unreliable memory or other hardware. The 1007 assertion just happens to cross-check the results of huge numbers of memory reads/writes, and so acts (unintendedly) as a stress test of your memory system. I suggest the following: try compressing the file again, possibly monitoring progress in detail with the -vv flag. * If the error cannot be reproduced, and/or happens at different points in compression, you may have a flaky memory system. Try a memory-test program. I have used Memtest86 (www.memtest86.com). At the time of writing it is free (GPLd). Memtest86 tests memory much more thorougly than your BIOSs power-on test, and may find failures that the BIOS doesn't. * If the error can be repeatably reproduced, this is a bug in bzip2, and I would very much like to hear about it. Please let me know, and, ideally, save a copy of the file causing the problem -- without which I will be unable to investigate it. {0x%08x, 0x%08x}] combined CRCs: stored = 0x%08x, computed = 0x%08x1.0.3, 15-Feb-2005wrbOKSEQUENCE_ERRORPARAM_ERRORMEM_ERRORDATA_ERRORDATA_ERROR_MAGICIO_ERRORUNEXPECTED_EOFOUTBUFF_FULLCONFIG_ERROR??????????????????d h x             n; &C vkkMPG&"֊/aK+d 5ӆ1 Cͼ-}wp4mG0K=V9'C#=.r *ϝxO K} xV|iqލuݓklRobfF^[^Z}Wf`Sc0M-ZI D@ƥ d'NK`%#/+6lA/ ]D@hf+*{Pu&6>;;kvqUP2M_}1>φ˃4y:Z iYmێ`7Od2z~\sKwV OK86F+GB{\=fX@US]CQ;%)&!,G^(BM6P2,v?kZ;&H VM#RV/K`mpl +e= hﶻ'؀odj#ͳ`~>ɐ}:{y`6q}[Fu2 t-0q].KYT@PENOJ+ GC!}{`COFr[v hJGl0a$-eK^VZp0m5= ^[ Q7R3?>:З$:V -T)y&;h+̠ȥPMlk/|vˡv`#ds'ě yg:Ջb}>  q+2h6mf{u]6@ %d in block, %d after MTF & 1-2 coding, %d+2 syms in use initial group %d, [%d .. %d], has %d syms (%4.1f%%) pass %d: size is %d, grp uses are %d bytes: mapping %d, selectors %d, code lengths %d, codes %d block %d: crc = 0x%08x, combined CRC = 0x%08x, size = %d final combined CRC = 0x%08x k0-6_[Om>Ic3n+ecc1^'Oo;{mqi_IzOU!jrRd!3M\cX~Twb)bUfXDu&6(GwCji \0BO$`>a[p_#^]bc4aDOrvoQr} ,5NWN`~YfkD|Rdpk)w4X^QX%.Nq}E) f3&bwA@ir~o<8.);W8V^l;lw0IWa:v6Il1l=RWq&'; $z<P5+R?# %85e&`z=jnt7& {drY 2lrefRZl~ [%d: huff+mtf rt+rld bucket sorting ... depth %6d has %6d unresolved strings reconstructing block ...  (ylE q&TsY ) }$ main sort initialise ... bucket sorting ... qsort [0x%x, 0x%x] done %d this %d %d pointers, %d sorted, %d scanned %d work, %d block, ratio %5.2f too repetitive; using fallback sorting algorithm N@000$030:0A0P0\0c0j0x000000000000000000R1y1g223K3R3Y344445555_6666667 7787M777778=8r888888899#92989G9q9999999:0:J:Q:X:g:z:::;X;;;;<,>E>]>e>m>r>{>>>>>>>? ?%???{?????? T0*0i000000001 11k11111122D2U2223333l444555'5.555B555555 66G6s6x66666666666666666666677 777$7+787<7@7D7H7L7P7T7q777777778P8W8~8888888888999*9F999999999/:u::::::; ;,;y;;;;;;;;;D3>>>>>?)?n?s??????0000?0y0000000'1811112L2Y2|222222222833334O444>555666C6O6h6n6667k77788$888888888888888888889 9999L9k92:>:;==@<s0\1`1d1h1=2I2333h44-55g678_99:!;;>> ??Pd01111122p3?445q77788:8888888a9s9.:A:M:R:[:o:w:::2;<;M;U;;;<<=:=`"030E04 44x5~555p43333333c6n6u677 7.898@8>>>>6?@?003889<<<>?``5d5h5l5p5t5x5|5555555555555555555555555555555556h>p>w>40 0'0<2E2L2u2}22"535S5;;;<<4D4J4P4V4\4b4h4n4t4z444444444444444444444445 545;5555555 666%6*656A6M6Z6`6g6p6v6666)7h7n7t7z7777777777777778 888j8p8v888888888969C9P9\9b9h9n9t9z999999777777778 8088<8D8H8L8T8X8\8d8h8l8t8x8|8888888888888888888899 999 9<9L9d9h9l9p9<<<<<== ===,=0=4=8=? ?(?,?0?8?L?l000000111 1@122233334$4(4D4H4L4P4X5\56 6666$6> >>>>> >$>(>,>0>4>8><>@>D>PKaU8( select.pydMZ@ !L!This program cannot be run in DOS mode. ${s???:>:;:;:?:7:>:>Rich?PELjG!   P%HD"d@  !H .textN   `.rdata @@.data0@.reloc@@BVW3F|+t8u HPQG |_C^̃ SUVWD$ 3h Qx 7E | ;tQP  | u UT$ED$D$E D$ | E;tQP uL$9U <AW T$ D$sD}KT$FD$~C ;؉T$d|$Mu MUQG_^][ á h Q u WWRMu EUP_^][ SVF3ۅW|#ƋL$PQR2tCO ɋ}Sp ؃u_^[ËFU3|9L$FQPtPUSt  |EG }]_^[ u SSR]_^3[̸X`X L$QT$R$h`D$D$PL$ Qjjh RD$,T  uX`ËD$;X Su3PP u h@!Q 3[X`ËT$RH \$8!D$Dz D uD$0!Au @ h!Q 3[X`D$aD$ D$ D$$l$ !FD$(\$$L$$0VR$@DŽ$HDŽ$T0DŽ$`HtL$D$0WP$P0Q$<QL$$\H,o;~;~< S$@RD$ (rlist, wlist, xlist) Wait until one or more file descriptors are ready for some kind of I/O. The first three arguments are sequences of file descriptors to be waited for: rlist -- wait until ready for reading wlist -- wait until ready for writing xlist -- wait for an ``exceptional condition'' If only one kind of condition is required, pass [] for the other lists. A file descriptor is either a socket or file object, or a small integer gotten from a fileno() method call on one of those. The optional 4th argument specifies a timeout in seconds; it may be a floating point number to specify fractions of seconds. If it is absent or None, the call will never time out. The return value is a tuple of three lists corresponding to the first three arguments; each contains the subset of the corresponding file descriptors that are ready. *** IMPORTANT NOTICE *** On Windows and OpenVMS, only sockets are supported; on Unix, all file descriptors. 0This module supports asynchronous I/O on multiple file descriptors. *** IMPORTANT NOTICE *** On Windows and OpenVMS, only sockets are supported; on Unix, all file descriptors.N@`0n00000011112@2222222233'3=3K3W3^3e33=4d4w4444#5H5555556 666$6*60666<6B6H6N6T6Z6`6f6l6r6x6~66666_7g7p7x7777777777777788838G88899999?9K9R999999999>:D:J: |111111110333PKaU8CPPunicodedata.pydMZ@ !L!This program cannot be run in DOS mode. $2wSSS_yS_S_DS|[DSSS_FS_ES_CSRichSPELjG!  >)0P?R;P@x;H0.texth  `.rdata0 0@@.dataPP@.relocV@@@BD$=r 3Ő5Ë4VŐ5̋D$=w t-ht u3_øjøC-_t`t3øWMøz̋H =r 3H1ËPX%PiH1̃t0$PD$L$QRhD9PD$x0D$xt |0h9R03ËL$ t$@ RQ Ht&@|$4P+ut$f>|${;|$(D$(f=r3PX%PiI1D$$t9D$u V3Ʌt_ҍd$;|T,$V;~(VAu8 &V+ʃt'k5 UfUfuD$$tkD$XD$|,@fD$P3ɅtDҍ;|74P;~PAu4P+t ;|$ D$f \$(l$ |$fD$;tT$+r D$VP<0D$^][_l̋ t0$PD$QT$ Rh@:Px0uË $QD0u $$ËD$VW<:3uD$L$P3_^ÿ4:3uD$L$Po_^ÿ0:3uD$RPD$_^ÿ(:3uD$jPD$z_^Ë 0h :R0_3^̋D$Ul$VW33~BS,0D$ Qƃ%t 3%D$G;|[_^]=4r=Mv=Nr=v=r =֦w3Vt$ sD$tVP Hu3^ÁSUWTƙLʸ$Iʋƙ|$ }_][3^Ël:t$Ɖp:Xt:Xx:X |:X,<8ފGCu8x@u+I 8IAGu8x@u+Ǎ~. > 0 >uOh0Y>u3y >>h*p$PhP3>Y?u<>t3 > tѡ>->9>sP 0%>Y3@ j hH;3@E3}u ;u 9=>;tu1>;t uVuЉE9}uVuE;tr]SVu?Eu;u SWu;tu)SVuu}9}t>;t SVuЉEMEE PQYYËeM3, %0=>u%0h>h>t$  t$YHj hX;E;};s"eEt 3@ËeMEj hh;`E;};s"eEt 3@ËeMEd%0|$u=>u t$03@ h\+dPD$l$l$+SVWEePEEEEdËMd Y_^[Q% 0%00??f?T?D?8?"????>z?=>>8>P>`>=>>>>>====l=Z=H=(===<<p><unicodedata.UCDnormalizelookupnamedecompositioneast_asian_widthmirroredcombiningbidirectionalcategorynumericdigitdecimal                       !"   # $   T[gkvz                               p#NGIYIBSEUYUPWITLHWEKLPWEOCLTUJJLSYOJLBOELMWAESSLGWAOBBYENHYEOMNJEEODDGSYAEDYAAEGGGunidata_versionNANaWHFONWSSBBNNSMCSANETESENPDFRLORLEALRLROLRELSoSkScSmPoPfPiPePsPdPcLoLmCoCsCfCcZpZlZsNoNlNdMeMcMnLtLlLuCnnot a decimalneed a single Unicode character as parameterO!|O:decimalnot a digitO!|O:digitnot a numeric characterO!|O:numericO!:categoryO!:bidirectionalO!:combiningO!:mirroredO!:east_asian_width%04XO!:decompositioninvalid normalization formNFKDNFDNFKCNFCsO!:normalizeCJK UNIFIED IDEOGRAPH-%XHANGUL SYLLABLE CJK UNIFIED IDEOGRAPH-sno such nameO!|O:nameresult %d larger than sys.maxunicodeundefined character name '%s's#:lookupucnhash_CAPI3.2.0ucd_3_2_0UCD4.1.0unicodedata******H>;\+\<>80,<,?0$<?0??f?T?D?8?"????>z?=>>8>P>`>=>>>>>====l=Z=H=(===<<p><PyObject_GenericGetAttrPyObject_FreeA_PyObject_NewPyInt_FromLongPyExc_ValueErrorc_PyUnicodeUCS2_ToDecimalDigitPyErr_SetStringPyExc_TypeErrorPyArg_ParseTuplePyUnicode_Typed_PyUnicodeUCS2_ToDigitPyFloat_FromDoublef_PyUnicodeUCS2_ToNumeric2PyString_FromStringPyOS_snprintfPyUnicodeUCS2_ResizePyUnicodeUCS2_FromUnicodePyUnicodeUCS2_GetSizePy_BuildValuelPyErr_FormatPyExc_KeyErrorPyCObject_FromVoidPtrcPyModule_AddObjectdPyModule_AddStringConstantPy_InitModule4sPyType_Typepython25.dll"touppersprintfstrncmpfreemallocMSVCR71.dll?_initterm_adjust_fdivL__CppXcptFilter_except_handler3k__dllonexit_onexitDisableThreadLibraryCallsKERNEL32.dlljG????'@unicodedata.pydinitunicodedata<ARar,567;<=@ABCGHILMNPLRZT`VhX\]_ab&d.hjklmnopqrstuvwxyz{|#'+-035:>CGKMVt'HJ( 0 3 G F F  %6Zb 8@HPY`t|  ! ! ! !!!"" "#"%"<"C"E"H"M"a"d"r"v" z"""&"("*","-"/"0F04K05M06O07Q08S09U0:W0;Y0<[0=]0>_0?a0@d0Af0Bh0Co0Dr0Eu0Fx0G{0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0c  #-08BES< ! " #> $V % ' (V ) * +> -W . / 0 1.20398888888888888888988888888888888888|8x8t8p8l8h8d8`8\8X8T8P8L8H8D8@8<8884808,8(888887777777777777  !"#$%&'()*+,-./01222222222222222222222222232222222222222222222222222222222222222222222222222222222222222222222222222222222224522267822222222222222222222222222222222222222222229::::::::;;;;;;;;;;;;;;;;;;;;;;;;;2<=>?@ABCDEFGHIJKLMNO2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222P22QRS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;T;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;T        !!"!#$$$%%%%%%&%%%%%%%%%&%%%%%%'&%%%%%&""""""""""""'"""%%"%"%"%"%"%"%"%%%"%"%"%%"%"%"%"%"&%"%%"%"%&%"%"%"%"%"&&%%"%&%%"%"&%"%"%"%"%"%"%"%"%"&%"%%"%"%"%"%"%"%%"%"%"""%%"%"%%"%%%""%%%%"%%"%%%"""%%"%%"%"%"%%"%""%"%%"%%%"%"%%""(%"""((((%)"%)"%)"%%%%%%%%"%"%"%"%"%"%"%"%"%""%)"%"%%%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"""""""%%"%%""%""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""*********++*******,,,+-+---+-++.*,,,,,,,,*****,,,,,,,,,*,,,,,,,,,,,,,,,,,/////////////////////0111102111113311113311111111111444441111////////5/111///116///1111/011/7887887/////////////,,*9,,%9%%%%%%"&&&&&&&&&&&&&&&&&&&&&&&&%%"""""""""""""%%%"""%"%"%"%"%"%"%"%"%"%"%"%"""""%":%"%%""%%%%&%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&"""""""""""""""%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%";<<<<==%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*>>>>>>""""""""""""""""""""""""""""""""""""""">?@<<<<@<<>oooooooooo>(kll((((((((((((((((((((((((((((((((((((((((((((m(lllkkkklllln(l(((((kkoooooooooo((ppqqqqqq;kkl(((((((((((((((((((((((((((((((((((((((((((mlllkkkkkkn(((((ooooooooookk(((kkl((((((((((((((((((((((((((((((((((((((((((((((((m(lllkkkkkkkllln(((kkoooooooooopkll((((((((((((((((((((((((((((((((((((((((((((((m(lklkkkllllnkl(((((oooooooooo;(k((((((((((((((((((((((((((((((((((((llkllllllllnlooooooooooqqqplll(((((((((((((((((((((((((((((((((((((((((((((((((kkkllllkkkkkknrs((ooooooooooll(((((((((((((((((((((((((((((((((((((((((((((((((m(ltllllltllllknll(((ooooooooooll((((((((((((((((((((((((((((((((((((((((((((((((((lllkkkllllllnl((ooooooooooll(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((nlllkkkkllllllllll>((((((((((((((((((((((((((((((((((((((((((((((((k((kkkkuunp((((((*kvvvvkkk>oooooooooo>>(((((((((((((((((((((((((((((k((kkkkwwkk((((((*xxxxkkoooooooooo(((;;;>>>>>>>>>>>>>>>;;;;;@@;;;;;;ooooooooooqqqqqqqqqq;@;@;yz{z{ll((((((((((((((((((((((((((((((((((((((((((|}k~kkkkk}}}}kl}k<<<((((kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk;;;;;;;;@;;;;;;;>>(((((((((((((((((((((((((((((((((((((((((lkkkklkkmlnoooooooooo>>>>>>((((((llkk%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%(((((((((((((((((((((((((((((((((((((((((((>*(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((<;>>>>>>>>qqqqqqqqqqqqqqqqqqqq(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((>>((((((((((((((((((((((((((((((((((z{(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((>>>(((((((((((((((((kkn((((((((((((((((((kkn>>((((((((((((((((((kk((((((((((((((((kk((((((((((((((((((((((((((((((((((((((((((((((((((((lkkkkkkkllllllllkllkkkkkkkkknk>>>*>>>p(<oooooooooo999999?9999kkkoooooooooo(((((((((((((((((((((((((((((((((((*(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((B(((((((((((((((((((((((((((((kkkllllkkllkllllllA<@99oooooooooo(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((lllllllllllllllll(((((((lloooooooooo99(((((((((((((((((((((((<@lll>>""""""""""""""""""""""""""""""""""""""""""""******************************************************""""""""""""""""""""""*""""""""""""""""""""""""""""""""""*************************************<<@<%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"""""""%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"""""""""%%%%%%%%""""""%%%%%%""""""""%%%%%%%%""""""""%%%%%%%%""""""%%%%%%""""""""%%%%""""""""%%%%%%%%""""""""""""""""""""""))))))))""""""""))))))))""""""""))))))))"""""""%%%%),",,,"""""%%%%),,,""""""%%%%,,,""""""""%%%%%,,,"""""%%%%),,iii??9zz9dd999#9999999999999999:99999999999iiiiiiiiii"!:!!!!:*****pppppppppppppppppppp<<<<<<<<====<===<@<%%"%%%""%%%%%%%%%%&%%&%%"%%%"(((("""%%::::%"""":$$$$$$'''''::::::::''::::::::::::'::':':::::'''''''''''::::::::::::::::':::::::'::':::::::::'::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;:::::::::::::::::::::::::z{9$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$!!!!!!!!!!!!!!!!!!!!$$$$$$$$$$$$$$$$$$$$$''::::::::';$$$$$$$$$$::::::::::::: ::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"""""""""""""""""""""""""""""""""""""""""""""""%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%"%""999999""""""""""""""""""""""""""""""""""""""((((((((((((((((((((((((((((((((((((((((((((((((((((((*(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((99##999#9#999999999?#,,,,,,,,,,,,,,,,,,,,,,,(((((n((((k(((((((((((((((((((((((llkkl""""""""""""TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYz{YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYV6666666666666666<<<<YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYi¾ľǾ(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((>9;qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq;;;;;;;;;փ(((((((((((((((((((((((((((((((qqqq((((((((((((((((((((((((((((((((((((((((((((((((((((((((>((((((((((((((((((((((((((((((((((((((((((((;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%""""""""""""""""""""""""""""""""""""""""((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((ooooooooooTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTkkkkkk@k-M#C#C# C 'G+Ke'S'THT'UJT'tHttJtTTT( < 0 < 3 <  <  <  <  < ! < " < + < / <      2 < 8 <  <  <  < + < G V G > G W ! < " <     F V      F > G > F W     M2 BLQV[@qrqtq%.ABDEGHIJKLMNO"PRTUWaPQbdeY[\gkmKoTptuov%iruv=RcU\f_aehij{mqprstuxzA%a%BbB#b#B1b1DdD#d#D1d1D'd'D-d-E-e-E0e0()FfGgHhH#h#HhH'h'H.h.I0i0KkK#k#K1k1L#l#67L1l1L-l-MmMmM#m#NnN#n#N1n1N-n-LMLMPpPpRrR#r#Z[R1r1SsS#s#Z[`abcTtT#t#T1t1T-t-U$u$U0u0U-u-hijkVvV#v#WwWwWwWwW#w#XxXxYyZzZ#z#Z1z1h1tw y aA#a#A a     E#e#E e Ee  I i I#i#O#o#O o     ##U#u#U u   ##YyY#y#Y y YyBB  B B ! ! B!B()()(B)B01010B1B89898B9B@A@AHIHIPQPQPBQBYYYB`a`a`BaBhihihBiBEEEEEEEEE E E E E EEE E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEEEBEE   BBtEEEBEEBBBBBB`|EEEBEE              3...... 2 2 2 2 2 5 5 5 5 5 !! ???!!?2 2 2 2  0i456789+"=()n0123456789+"=()aeoxYRsa/ca/sCCc/oc/uFgHHHh'IILlNNoPQRRRSMTELTMZZKBCeEFMoiFAX"Ddeij1D 32D 31D 52D 53D 54D 51D 65D 61D 83D 85D 87D 81D IIIIIIIVVVIVIIVIIIIXXXIXIILCDMiiiiiiivvviviiviiiixxxixiilcdm!8!8!8!8!8!8"8"8 "8#"8%"8+"+"+"+"+"."."."."."<"8C"8E"8H"8=8a"8M"8<8>8d"8e"8r"8s"8v"8w"8z"8{"8"8"8"8"8"8"8"8"8|"8}"8"8"8"8"8"8"80 01234567891011121314151617181920(1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20)1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)(y)(z)ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0+"+"+"+"::======*8a-kN(N6N?NYNNNNN?QeQkQQQQQQRRRSS8SAS\SiSSSSSVWXY YY'YsYP[[[\"\8\n\q\]]]]r^z^^^^ __P_a_s__b6bKb/e4eeeeeeefg(g kbkykkkkkll4lkp*r6r;r?rGrYr[rrssttuu(u0uuuvv}vvvvwww:yyytzzzs||6Q 3 nrxMk@Lc~҉7FUxdpʎIƑ̑ёwQ^bi˗ۘߘؚߚ%/2<ZuÞ͞ў ;JR 0ASDSESK00M00O00Q00S00U00W00Y00[00]00_00a00d00f00h00o00o00r00r00u00u00x00x00{00{00F00 0 000 0000000000000000000000000000000000000000000000000000000000000000 00!     abcdefghijklmnopqrstu` "#')+,-./26@GLWXYNN NV N-N N2uYNNN)Y0WN()()()()()()( )( )( )()()()()()(a)(a)(a)(a)(a)(a)( a)( a)( a)(a)(a)(a)(a)(a)( n)( i e)( in)(N)(N)( N)(V)(N)(mQ)(N)(kQ)(]N)(AS)(g)(kp)(4l)((g)(ё)(W)(e)(*h)( g)(>y)( T)(yr)()(]y)(R)(N)(|T)(f[)(v)(O)(nj)(TS)(my)(O)()() PTE212223242526272829303132333435   aaaaaa a a aaaaaaai n t nNN NVNmQNkQ]NASgkp4l(gёWe*h g>y Tyr]yRy7usYi*QpSlOQck N-N N]S;S[f[vOnjTSY3637383940414243444546474849501g2g3g4g5g6g7g8g9g10g11g12g Hg erg eV LTD00000000000000000000000000000000000000000000000 0000 0000 0000 000 0000 000 000 00000 0000 000 000 000 0000 0000 000 000 00 000 0000 0000 00 00000 000000 00000 000 00000 00000 0000 000 000 000 0000 00000 0000 000 000 000 00 00 00 00 000 000 00000 000 0000 00000 000 00 00 00000 0000 00000 000 00000 00 000 000 000 000 000 0000 000 00 000 000 000 0000 000 000 000 00000 0000 00 00000 00 0000 0000 000 000 000 0000 00 000 0000 00 00000 0000p1p2p3p4p5p6p7p8p9p10p11p12p13p14p15p16p17p18p19p20p21p22p23p24p hPa da AU bar oV pc dm dm dm IU s^b -fT 'Yck fl *h_O>y pA nA A mA kA KB MB GB cal kcal pF nF F g mg kg Hz kHz MHz GHz THz ! m! d! k! fm nm m mm cm km mm cm m km mm cm m km m"s m"s Pa kPa MPa GPa rad rad"s rad"s ps ns s ms pV nV V mV kV MV pW nW W mW kW MW k M a.m. Bq cc cd C"kg Co. dB Gy ha HP in KK KM kt lm ln log lx mb mil mol PH p.m. PPM PR sr Sv Wb V"m A"m1e2e3e4e5e6e7e8e9e10e11e12e13e14e15e16e17e18e19e20e21e22e23e24e25e26e27e28e29e30e31e galHfʎȌn2NSQYёUHYaiv?jmps=jNuSkr-P]oͅdb؁^gjmrΐOQRdjrv\2oxy}Ƀ֊X_`|~brxŒXb\jmo/}7~KRQQz}ubj9N[`spuSxO_ Nlxe"}S^XwIklbceuNiQQh|oҊϑRBTsY^eo*yjΞRfwkbt^abd#oIqty}o&#JRRTpˆ^_{ck>|usNV[]`sitF4HOy`NP[?\ejqBv|f.R{ggAmn tYukx}^mQ.bx+P]m*_Dahs)RTe\fNghltuyψ̑?SnTqtWgmz {|rpXN6:RR^b|[mf;LM^@QUZXtfQ*svyIyHyPyVy]yyy@zz{} ~A~ryyW9ӌ8;&NQhQOEQQRRUUUUUZXXDYTYbZ([^^i__`Naaa`aa4bcdRdVetfggVgykkAmnn"opnqw5rr*sqtu;uvvvvvJw@wxz{{|[}}>RyAˊ98rv|Vۗ ;J(D(3;@9@IR\~Cfffiflffiffltsttvtetk~vtm+II q q { { {{ ~ ~ ~~    z z zz    y y yy                                                                     w          II &' &' & & &H &H & & & & & & & & & &I &I &I    &, &- &E &I &J (, (- (. (E (I (J *, *- *. *E *I *J +, +E +I +J ,- ,E -, -E ., .- .E 3, 3- 3. 3E 5- 5E 6, 6- 6. 6E 7- 7E 8E 9, 9E :, :E A, A- A. AE AI AJ B- BE BI BJ C' C, C- C. CD CE CI CJ D, D- D. DE DI DJ E, E- E. EE EI EJ F, F- F. FE FI FJ G, GE GI GJ J, J- J. JE JI JJ 0p 1p Ip  LQ  MQ  NQ  OQ  PQ  Qp &1 &2 &E &F &I &J (1 (2 (E (F (I (J *1 *2 *E *F *I *J +1 +2 +E +F +I +J AI AJ BI BJ C' CD CE CI CJ DE DI DJ E' EE F1 F2 FE FF FI FJ Ip J1 J2 JE JF JI JJ &, &- &. &E &G (, (- (. (E (G *, *- *. *E *G +E ,- ,E -, -E ., .E 3, 3- 3. 3E 5- 5. 5E 6, 6- 6. 6E 7- 8E 9, 9E :, :E A, A- A. AE B- BE C, C- C. CD CE D, D- D. DE DG E, E- E. EE F, F- F. FE FG G, GE Gp J, J- J. JE JG&E&G(E(G*E*G+E+G3E3G4E4GCDCEDEFEFGJEJG@NQ@OQ@PQ 7I 7J 9I 9J :I :J 3I 3J 4I 4J -I -J ,I ,J .I .J 5I 5J 6I 6J 4, 4- 4. 4E 41 31 51 61 7I 7J 9I 9J :I :J 3I 3J 4I 4J -I -J ,I ,J .I .J 5I 5J 6I 6J 4, 4- 4. 4E 41 31 51 61 4, 4- 4. 4E 3G 4G 7E3,3-3.4,4-4.7E8E 'K 'K *,E *-, *-, *-E *.E *E, *E- *E. ,E- ,E- -EJ -EI 3-, 3,- 3,I 3E- 3E- 3E, 3EE 3EE 5-- 5-- 5EE 4-E 4-E 4,J 4E. 4E. 4EE 4EE 6-I 6.E 6.E 7E- 7E- 7EE 7EJ 9,E 9EE 9EE 9EI :EE :EJ :EI A.E A.E BE- BEE D-E D-J D-I D,, D,, D.E D.E DE- DE- E-, E-E E-J E,- E,E E., E.E E,. GE, GEE F-E F-I F,E F,E F,I FEJ FEI JEE JEE (.J *,J *,I *.J *.I *EJ *EI ,EJ ,-I ,EI 3.I 5-J 4-J 6-J D,J DEJ J-J J,J JEJ EEJ BEJ F-J BE- D-E 9EJ CEJ F,- E.J D,E CEE D,E F,- ,-J -,J E,J AEJ (-J CEE 9,E 5EE 3.J F,J 5D BD 'DDG 'C(1 E-E/ 5D9E 13HD 9DJG H3DE 5DI 5DI 'DDG 9DJG H3DE ,D ,D'DG 1'D , 0 0 : ; ! ? 0 0 & %   _ _ ( ) { } 0 0 0 0  0  0 0  0  0  0 0 0 [ ]> > > > ___,0.;:?! (){}00#&*+-<>=\$%@  K@K  L  M  N@N  O@O  P@P  Q@Q  R@R ! " " # # $ $ % % & & && ' ' ( ( (( ) ) * * ** + + ++ , , ,, - - -- . . .. / / 0 0 1 1 2 2 3 3 33 4 4 44 5 5 55 6 6 66 7 7 77 8 8 88 9 9 99 : : :: A A AA B B BB C C CC D D DD E E EE F F FF G G GG H H I I J J JJ D" D" D# D# D% D% D' D'!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~))0 0 0000000000000000000000000000000000000000000000000000000000000d1112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1 %!!!!%%WeXe_n_o_p_q_reennooABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefgijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzACDGJKNOPQSTUVWXYZabcdfhijklmnpqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABDEFGJKLMNOPQSTUVWXYabcdefghijklmnopqrstuvwxyzABDEFGIJKLMOSTUVWXYabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz17""""""""""01234567890123456789012345678901234567890123456789=N8NAN"`OOOPzPPPP4:MQTQdQwQ4gQQKQQNQQߑQR4;RFRrRwR5RRRRSSSISQSZSsS}SSSS, ppSSc SSTT8THThTTTUSUcUUUUUUUWVWQVtVRXWW XW2X1XXXXYY"YbYYZ'ZYfZ66[>[>[[[[[[\S_"\7`\n\\\C]n]k]|]]]/8](^=^i^b8!|8^^^^^1#1#"_"_82ab_k_8____`:99`&`HaLaNaLazaaaaaaaabb]bbbPc +=cbhccc+"dcc.:id~ddwdl:Oele 0efIf;f;:QQgfCgg!g^gSg3I;ggRhhm4hhi;Biiij6j<!k8TkN<rkkkk: :Nl<llglm>mwmAmimxmm=4m/nnn3=nn>mno^??o9ppp=Jp}pwpp%EqcBqC(r5rPrFrr5GHzss>s>>Gt\tqttt?$u6L>uLpu!vOODP?@vPPQ3QwwwJw9@wF@@TNxxx@&VVyVVyy/A@zJzOz|YZZzB[{{'B\|B||}_c}C}~E~4C(bGbYCbz>cd#e`ep_3C D>Zgg33kDRADGJMPSVY\_behknqtwz}  !$'*-0369<?BEHKNQTWZ]`cfilorux{~  #&),/258;>ADGJMPRTVXZ\^`behknqtvxz|~  !$'*-0369<?BEHKNQTWZ]`cfilorux{~  #&),/258;>ACFILORUX[^adgjmpsvy|   !#%')+-/13579;=?ACEHKNQTWZ]`cfilorux{~  #&),/258;>ADGJMPSVY\_behknqtwz}  "%(+.147:=@CFILORUX[^adgjmpsvy|         ! $ ' * - 0 3 6 9 < ? B E H K N Q T W Z ] ` c f i l o r u x { ~          # & ) , / 2 5 8 ; > A D G J M P S V X [ ] ` b e g j l o q t v y |          ! $ & ) , . 1 4 7 : = @ C F I K N P S V Y \ _ b e g j m p s v x { ~           " $ & ( * , . 0 2 4 6 8 : < > @ B D F H J L N P R T V X Z \ _ c g i l p t v y { }          ! $ ( - 0 2 5 9 ; = ? A C F J M O R V [ ^ ` c g i k m o r u x { ~     #&),/258<@DHLPTX\afkpuz "&*.26:>BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   !#%')+-/13579;=?ACEGIKMOQSUWY[]_acegikmoqsuwy{}   !#%')+-/13579;=?ACEGIKMOQSUWY[]_acegikmoqsuwy{~  #&),/2579;=?ACEGIKMOQSUWY[]_acegikmoqsuwy{}   !%)-159=AEJOTY^chmrw| #'+/369<?BEHKNQTWZ]`bdfhjlnprtvxz|  "%(+.147:=@CFILORUX[^bfjmqtxz|~  "&+039@FJPV[_cglrw{  %(-26:>CFJORX\_behknqtwz~  #'+/258;>ADGJMQUX\`dgkotw{   #&)-147:=@CFILPTX\`dhlptx|   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02469<?CGJMPSVY\_bdfhjlnprtvy|   !#%')+-/13579;=?ACEGIKMOQSUWY[]_acegikmoqsuwy{}  !$'*-0369<?BEHKNQTWZ]`cfilorux{~         # ' + / 3 7 ; > A D G J M P S V Y \ _ b e h k n q t w z } !!! ! !!!!!!!"!%!(!+!.!1!4!7!:!=!@!C!F!I!L!O!R!U!X![!^!a!d!g!j!m!p!s!v!y!|!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""" " """""""!"$"'"*"-"0"3"6"9"<"?"B"E"H"K"N"Q"T"W"Z"]"`"c"f"i"l"o"r"u"x"{"~"""""""""""""""""""""""""""""""""""""""### ##### #$#(#,#0#4#8#<#@#D#H#L#P#T#X#\#`#d#h#l#p#t#x#|#################################$$$ $$$$$ $$$($,$0$4$8$<$@$D$H$L$P$T$X$\$`$d$h$l$p$t$x$|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%% % %%%%%%%%%% %"%$%&%(%*%,%.%0%2%4%6%8%:%<%>%@%B%D%F%H%J%L%N%P%R%T%V%X%Z%\%^%`%b%d%f%h%j%l%n%p%r%t%v%x%{%~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&& & &&&&&&&&&& &"&$&&&(&*&,&.&0&2&4&6&8&:&<&>&@&B&D&F&H&J&L&N&P&R&T&V&X&Z&\&^&`&b&d&f&h&j&l&n&p&r&t&v&x&z&|&~&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&''''' ' '''''''''' '"'$'&'('*','.'0'2'4'6'8':'<'>'@'B'D'F'H'J'L'N'P'R'T'V'X'Z'\'^'`'b'd'f'h'j'l'n'p'r't'v'x'z'|'~'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''((((( ( (((((((((( ("($(&(((*(,(.(0(2(4(6(8(:(<(>(@(B(D(F(H(J(L(N(P(R(T(V(X(Z(\(^(`(b(d(f(i(l(o(r(u(x({(~((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))) ) ) ))))))))))!)#)%)')))+)-)/)1)3)5)7)9);)=)?)A)C)E)G)I)K)M)O)Q)S)U)W)Y)[)])_)a)c)e)g)i)k)m)o)q)s)u)w)y){)}))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))**** * * **********!*#*%*'*)*+*-*/*1*3*5*7*9*;*=*?*A*C*E*G*I*K*M*O*Q*S*U*W*Y*[*]*_*a*c*e*g*i*k*m*o*q*s*u*w*y*{*}******************************************************************++++ + + ++++++++++!+#+%+'+)+++-+/+1+3+5+7+9+;+=+?+A+C+E+G+I+K+M+O+Q+S+U+W+Y+[+]+_+a+c+e+g+i+k+m+o+q+s+u+w+y+{+}++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++,,,, , , ,,,,,,,,,,!,#,%,',),+,-,/,1,3,5,7,9,;,=,?,A,C,E,G,I,K,M,O,Q,S,U,W,Y,[,],_,a,c,e,g,i,k,m,o,q,s,u,w,y,{,},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---- - - ----------!-#-%-'-)-+---/-1-3-5-7-9-;-=-?-A-C-E-G-I-K-M-O-Q-S-U-W-Y-[-]-_-a-c-e-g-i-k-m-o-q-s-u-w-y-{-}------------------------------------------------------------------.... . . ..........!.#.%.'.).+.-./.1.3.5.7.9.;.=.?.A.C.E.G.I.K.M.O.Q.S.U.W.Y.[.]._.a.c.e.g.i.k.m.o.q.s.u.w.y.{.}..................................................................//// / / //////////!/#/%/'/)/+/-///1/3/5/7/9/;/=/?/A/C/E/G/I/K/M/O/Q/S/U/W/Y/[/]/_/a/c/e/g/i/k/m/o/q/s/u/w/y/{/}//////////////////////////////////////////////////////////////////0000 0 0 0000000000!0#0%0'0)0+0-0/01030507090;0=0?0A0C0E0G0I0K0M0O0Q0S0U0W0Y0[0]0_0a0c0e0g0i0k0m0o0q0s0u0w0y0{0}0000000000000000000000000000000000000000000000000000000000000000001111 1 1 1111111111!1#1%1'1)1+1-1/11131517191;1=1?1A1C1E1G1I1K1M1O1Q1S1U1W1Y1[1]1_1a1c1e1g1i1k1m1o1q1s1u1w1y1{1}1111111111111111111111111111111111111111111111111111111111111111112222 2 2 2222222222!2#2%2'2)2+2-2/21232527292;2=2?2A2C2E2G2I2K2M2O2Q2S2U2W2Y2[2]2_2a2c2e2g2i2k2m2o2q2s2u2w2y2{2}2222222222222222222222222222222222222222222222222222222222222222223333 3 3 3333333333!3#3%3'3)3+3-3/31333537393;3=3?3A3C3E3G3I3K3M3O3Q3S3U3W3Y3[3]3_3a3c3e3g3i3k3m3o3q3s3u3w3y3{3}3333333333333333333333333333333333333333333333333333333333333333334444 4 4 4444444444!4#4%4'4)4+4-4/41434547494;4=4?4A4C4E4G4I4K4M4O4Q4S4U4W4Y4[4]4_4a4c4e4g4i4k4m4o4q4s4u4w4y4{4}44444444  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-.n"`"o"&    (  "$"&$(*(*,0 .,402649=6;<:>@BCDGFEJHLN.P TVTXXZV^Z\``b^jdlbpnhjlnprrvt|~tv2xy{}'     )!!#%#'%)+)+-  /-51375:>7<=;?ACDEHGFKIMO/Q UWUYY[W_[]aac_kemcqoikmoqsswu}uw3z|~.L,N* /M-O+PRQSdefgxyz{01 ()89HIYhiprt !v01x@AzPQ|`a  SPQ]9\^Wvw"#%$&) 1 4 K H L H J L K &89\]hi    "$&#%'*,.+-/246357:<>;=?BDCEJLKMRTVSUW[]_bdfcegjlnkmo!!!!!!" " "$"&"A"D"G"I"m"b"p"q"t"u"x"y"""""""""""""""""""0L0N0P0R0T0V0X0Z0\0^0`0b0e0g0i0p0q0s0t0v0w0y0z0|0}000000000000000000000000000000000   !"#$%&'()**+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ   ! """#p7decimal(unichr[, default]) Returns the decimal value assigned to the Unicode character unichr as integer. If no such value is defined, default is returned, or, if not given, ValueError is raised.digit(unichr[, default]) Returns the digit value assigned to the Unicode character unichr as integer. If no such value is defined, default is returned, or, if not given, ValueError is raised.numeric(unichr[, default]) Returns the numeric value assigned to the Unicode character unichr as float. If no such value is defined, default is returned, or, if not given, ValueError is raised.category(unichr) Returns the general category assigned to the Unicode character unichr as string.bidirectional(unichr) Returns the bidirectional category assigned to the Unicode character unichr as string. If no such value is defined, an empty string is returned.combining(unichr) Returns the canonical combining class assigned to the Unicode character unichr as integer. Returns 0 if no combining class is defined.mirrored(unichr) Returns the mirrored property assigned to the Unicode character unichr as integer. Returns 1 if the character has been identified as a "mirrored" character in bidirectional text, 0 otherwise.east_asian_width(unichr) Returns the east asian width assigned to the Unicode character unichr as string.decomposition(unichr) Returns the character decomposition mapping assigned to the Unicode character unichr as string. An empty string is returned in case no such mapping is defined.normalize(form, unistr) Return the normal form 'form' for the Unicode string unistr. Valid values for form are 'NFC', 'NFKC', 'NFD', and 'NFKD'.LETTEWITSMALSYLLABLCAPITAYCJLATICOMPATIBILITMATHEMATICAARABISYMBOFORMCANADIASYLLABICBOLGREELIGATURANMUSICASIGETHIOPIHANGUITALIRADICADIGISANS-SERIFOCIRCLEFINASQUARCYRILLIVOWEVARIATIOBRAILLPATTERBYZANTINRIGHISOLATELEFKATAKANKANGXLINEADOUBLBELOWTIBETAABOVEMODIFIECOMBININMEESIGNDOINITIACARRIEARROWYEMONGOLIAVERTICAABOVNUMBECOPTIKHMEWHITARROBOAHEBREMARKDRAWINGIOHALFWIDTGEORGIARIGHTWARDIDEOGRAUIDEOGRAPHITAPARENTHESIZEALESCRIPDEVANAGARBLACTOUFULLWIDTHOOKSYMBOLDOWFRAKTUHAEQUAHEAVTAGLAGOLITICHARACTEARMENIABENGALCHOSEONJEEBRACKETHIRAGANWEST-CRETHASTROKECHEROKEIDEOGRAPTWOGUJARATMEDIAJONGSEONKANNADNEORIYRUNITETRAGRADESERELUSINHALTELUGBARNOTATIOONESYRIAMALAYALAMYANMAGURMUKHACUTELIGHHALDOUBLE-STRUCLEFTWARDTAMIAPFUNCTIONAHAMZTELEGRAPJUNGSEONODASILIMBMAKSURKHAROSHTHLATBARBOPOMOFHEXAGRAMARPSILMONOSPACNOHORIZONTAKHAVOCALITHREEAEGEALOWETILDELOTWCYPRIOTIFINAGDIAERESISFIVEFOURNUMERAVACROPHONIDOTLONPERSIAANGLHARPOOSIXTONUPPECIRCUMFLEGRAVEHALPHEIGHTMACRONNOOTHAANHIGKANINESEVENTHRETURNESHAVIASTOPDGOMEGOXIASUBJOINEVARIAYABCIRCLHAJMAREVERSERIGHTUPWARDPASSIVE-PULL-DOWN-OUTPUBYELORUSSIAN-UKRAINIACEONGCHIEUMSSANGCIEUCPASSIVE-PULL-UP-OUTPUANTICLOCKWISE-ROTATECEONGCHIEUMSSANGSIOSPSIFISTOPARAKALESMARIEUL-KAPYEOUNPIEUPKAPYEOUNSSANGPIEUPOPEN-CIRCUIT-OUTPUCEONGCHIEUMCHIEUCHCHITUEUMSSANGCIEUCKIYEOK-SIOS-KIYEOKRIEUL-MIEUM-KIYEOKRIEUL-TIKEUT-HIEUHTROMIKOPARAKALESMAPIEUP-SIOS-KIYEOKPIEUP-SIOS-TIKEUTRIEUL-KIYEOK-SIOSRIEUL-YEORINHIEUHCHITUEUMSSANGSIOSIEUNG-SSANGKIYEOKLONG-BRANCH-HAGALPARTIALLY-RECYCLERIEUL-PIEUP-HIEUHSHORT-TWIG-BJARKASIOS-PIEUP-KIYEOKKATAKANA-HIRAGANRIEUL-PIEUP-SIOSYESIEUNG-PANSIOSCEONGCHIEUMCIEUCMARCATO-STACCATOPIEUP-SIOS-CIEUCPIEUP-SIOS-PIEUPRIEUL-MIEUM-SIOSSHORT-TWIG-HAGALSOFTWARE-FUNCTIOTROMIKOPSIFISTONKAPYEOUNPHIEUPHANTIRESTRICTIONACCENT-STACCATOANTIKENOKYLISMACEONGCHIEUMSIOSCHIEUCH-KHIEUKHCHITUEUMCHIEUCHIDEOGRAPH-2F800IDEOGRAPH-2F801IDEOGRAPH-2F802IDEOGRAPH-2F803IDEOGRAPH-2F804IDEOGRAPH-2F805IDEOGRAPH-2F806IDEOGRAPH-2F807IDEOGRAPH-2F808IDEOGRAPH-2F809IDEOGRAPH-2F80AIDEOGRAPH-2F80BIDEOGRAPH-2F80CIDEOGRAPH-2F80DIDEOGRAPH-2F80EIDEOGRAPH-2F80FIDEOGRAPH-2F810IDEOGRAPH-2F811IDEOGRAPH-2F812IDEOGRAPH-2F813IDEOGRAPH-2F814IDEOGRAPH-2F815IDEOGRAPH-2F816IDEOGRAPH-2F817IDEOGRAPH-2F818IDEOGRAPH-2F819IDEOGRAPH-2F81AIDEOGRAPH-2F81BIDEOGRAPH-2F81CIDEOGRAPH-2F81DIDEOGRAPH-2F81EIDEOGRAPH-2F81FIDEOGRAPH-2F820IDEOGRAPH-2F821IDEOGRAPH-2F822IDEOGRAPH-2F823IDEOGRAPH-2F824IDEOGRAPH-2F825IDEOGRAPH-2F826IDEOGRAPH-2F827IDEOGRAPH-2F828IDEOGRAPH-2F829IDEOGRAPH-2F82AIDEOGRAPH-2F82BIDEOGRAPH-2F82CIDEOGRAPH-2F82DIDEOGRAPH-2F82EIDEOGRAPH-2F82FIDEOGRAPH-2F830IDEOGRAPH-2F831IDEOGRAPH-2F832IDEOGRAPH-2F833IDEOGRAPH-2F834IDEOGRAPH-2F835IDEOGRAPH-2F836IDEOGRAPH-2F837IDEOGRAPH-2F838IDEOGRAPH-2F839IDEOGRAPH-2F83AIDEOGRAPH-2F83BIDEOGRAPH-2F83CIDEOGRAPH-2F83DIDEOGRAPH-2F83EIDEOGRAPH-2F83FIDEOGRAPH-2F840IDEOGRAPH-2F841IDEOGRAPH-2F842IDEOGRAPH-2F843IDEOGRAPH-2F844IDEOGRAPH-2F845IDEOGRAPH-2F846IDEOGRAPH-2F847IDEOGRAPH-2F848IDEOGRAPH-2F849IDEOGRAPH-2F84AIDEOGRAPH-2F84BIDEOGRAPH-2F84CIDEOGRAPH-2F84DIDEOGRAPH-2F84EIDEOGRAPH-2F84FIDEOGRAPH-2F850IDEOGRAPH-2F851IDEOGRAPH-2F852IDEOGRAPH-2F853IDEOGRAPH-2F854IDEOGRAPH-2F855IDEOGRAPH-2F856IDEOGRAPH-2F857IDEOGRAPH-2F858IDEOGRAPH-2F859IDEOGRAPH-2F85AIDEOGRAPH-2F85BIDEOGRAPH-2F85CIDEOGRAPH-2F85DIDEOGRAPH-2F85EIDEOGRAPH-2F85FIDEOGRAPH-2F860IDEOGRAPH-2F861IDEOGRAPH-2F862IDEOGRAPH-2F863IDEOGRAPH-2F864IDEOGRAPH-2F865IDEOGRAPH-2F866IDEOGRAPH-2F867IDEOGRAPH-2F868IDEOGRAPH-2F869IDEOGRAPH-2F86AIDEOGRAPH-2F86BIDEOGRAPH-2F86CIDEOGRAPH-2F86DIDEOGRAPH-2F86EIDEOGRAPH-2F86FIDEOGRAPH-2F870IDEOGRAPH-2F871IDEOGRAPH-2F872IDEOGRAPH-2F873IDEOGRAPH-2F874IDEOGRAPH-2F875IDEOGRAPH-2F876IDEOGRAPH-2F877IDEOGRAPH-2F878IDEOGRAPH-2F879IDEOGRAPH-2F87AIDEOGRAPH-2F87BIDEOGRAPH-2F87CIDEOGRAPH-2F87DIDEOGRAPH-2F87EIDEOGRAPH-2F87FIDEOGRAPH-2F880IDEOGRAPH-2F881IDEOGRAPH-2F882IDEOGRAPH-2F883IDEOGRAPH-2F884IDEOGRAPH-2F885IDEOGRAPH-2F886IDEOGRAPH-2F887IDEOGRAPH-2F888IDEOGRAPH-2F889IDEOGRAPH-2F88AIDEOGRAPH-2F88BIDEOGRAPH-2F88CIDEOGRAPH-2F88DIDEOGRAPH-2F88EIDEOGRAPH-2F88FIDEOGRAPH-2F890IDEOGRAPH-2F891IDEOGRAPH-2F892IDEOGRAPH-2F893IDEOGRAPH-2F894IDEOGRAPH-2F895IDEOGRAPH-2F896IDEOGRAPH-2F897IDEOGRAPH-2F898IDEOGRAPH-2F899IDEOGRAPH-2F89AIDEOGRAPH-2F89BIDEOGRAPH-2F89CIDEOGRAPH-2F89DIDEOGRAPH-2F89EIDEOGRAPH-2F89FIDEOGRAPH-2F8A0IDEOGRAPH-2F8A1IDEOGRAPH-2F8A2IDEOGRAPH-2F8A3IDEOGRAPH-2F8A4IDEOGRAPH-2F8A5IDEOGRAPH-2F8A6IDEOGRAPH-2F8A7IDEOGRAPH-2F8A8IDEOGRAPH-2F8A9IDEOGRAPH-2F8AAIDEOGRAPH-2F8ABIDEOGRAPH-2F8ACIDEOGRAPH-2F8ADIDEOGRAPH-2F8AEIDEOGRAPH-2F8AFIDEOGRAPH-2F8B0IDEOGRAPH-2F8B1IDEOGRAPH-2F8B2IDEOGRAPH-2F8B3IDEOGRAPH-2F8B4IDEOGRAPH-2F8B5IDEOGRAPH-2F8B6IDEOGRAPH-2F8B7IDEOGRAPH-2F8B8IDEOGRAPH-2F8B9IDEOGRAPH-2F8BAIDEOGRAPH-2F8BBIDEOGRAPH-2F8BCIDEOGRAPH-2F8BDIDEOGRAPH-2F8BEIDEOGRAPH-2F8BFIDEOGRAPH-2F8C0IDEOGRAPH-2F8C1IDEOGRAPH-2F8C2IDEOGRAPH-2F8C3IDEOGRAPH-2F8C4IDEOGRAPH-2F8C5IDEOGRAPH-2F8C6IDEOGRAPH-2F8C7IDEOGRAPH-2F8C8IDEOGRAPH-2F8C9IDEOGRAPH-2F8CAIDEOGRAPH-2F8CBIDEOGRAPH-2F8CCIDEOGRAPH-2F8CDIDEOGRAPH-2F8CEIDEOGRAPH-2F8CFIDEOGRAPH-2F8D0IDEOGRAPH-2F8D1IDEOGRAPH-2F8D2IDEOGRAPH-2F8D3IDEOGRAPH-2F8D4IDEOGRAPH-2F8D5IDEOGRAPH-2F8D6IDEOGRAPH-2F8D7IDEOGRAPH-2F8D8IDEOGRAPH-2F8D9IDEOGRAPH-2F8DAIDEOGRAPH-2F8DBIDEOGRAPH-2F8DCIDEOGRAPH-2F8DDIDEOGRAPH-2F8DEIDEOGRAPH-2F8DFIDEOGRAPH-2F8E0IDEOGRAPH-2F8E1IDEOGRAPH-2F8E2IDEOGRAPH-2F8E3IDEOGRAPH-2F8E4IDEOGRAPH-2F8E5IDEOGRAPH-2F8E6IDEOGRAPH-2F8E7IDEOGRAPH-2F8E8IDEOGRAPH-2F8E9IDEOGRAPH-2F8EAIDEOGRAPH-2F8EBIDEOGRAPH-2F8ECIDEOGRAPH-2F8EDIDEOGRAPH-2F8EEIDEOGRAPH-2F8EFIDEOGRAPH-2F8F0IDEOGRAPH-2F8F1IDEOGRAPH-2F8F2IDEOGRAPH-2F8F3IDEOGRAPH-2F8F4IDEOGRAPH-2F8F5IDEOGRAPH-2F8F6IDEOGRAPH-2F8F7IDEOGRAPH-2F8F8IDEOGRAPH-2F8F9IDEOGRAPH-2F8FAIDEOGRAPH-2F8FBIDEOGRAPH-2F8FCIDEOGRAPH-2F8FDIDEOGRAPH-2F8FEIDEOGRAPH-2F8FFIDEOGRAPH-2F900IDEOGRAPH-2F901IDEOGRAPH-2F902IDEOGRAPH-2F903IDEOGRAPH-2F904IDEOGRAPH-2F905IDEOGRAPH-2F906IDEOGRAPH-2F907IDEOGRAPH-2F908IDEOGRAPH-2F909IDEOGRAPH-2F90AIDEOGRAPH-2F90BIDEOGRAPH-2F90CIDEOGRAPH-2F90DIDEOGRAPH-2F90EIDEOGRAPH-2F90FIDEOGRAPH-2F910IDEOGRAPH-2F911IDEOGRAPH-2F912IDEOGRAPH-2F913IDEOGRAPH-2F914IDEOGRAPH-2F915IDEOGRAPH-2F916IDEOGRAPH-2F917IDEOGRAPH-2F918IDEOGRAPH-2F919IDEOGRAPH-2F91AIDEOGRAPH-2F91BIDEOGRAPH-2F91CIDEOGRAPH-2F91DIDEOGRAPH-2F91EIDEOGRAPH-2F91FIDEOGRAPH-2F920IDEOGRAPH-2F921IDEOGRAPH-2F922IDEOGRAPH-2F923IDEOGRAPH-2F924IDEOGRAPH-2F925IDEOGRAPH-2F926IDEOGRAPH-2F927IDEOGRAPH-2F928IDEOGRAPH-2F929IDEOGRAPH-2F92AIDEOGRAPH-2F92BIDEOGRAPH-2F92CIDEOGRAPH-2F92DIDEOGRAPH-2F92EIDEOGRAPH-2F92FIDEOGRAPH-2F930IDEOGRAPH-2F931IDEOGRAPH-2F932IDEOGRAPH-2F933IDEOGRAPH-2F934IDEOGRAPH-2F935IDEOGRAPH-2F936IDEOGRAPH-2F937IDEOGRAPH-2F938IDEOGRAPH-2F939IDEOGRAPH-2F93AIDEOGRAPH-2F93BIDEOGRAPH-2F93CIDEOGRAPH-2F93DIDEOGRAPH-2F93EIDEOGRAPH-2F93FIDEOGRAPH-2F940IDEOGRAPH-2F941IDEOGRAPH-2F942IDEOGRAPH-2F943IDEOGRAPH-2F944IDEOGRAPH-2F945IDEOGRAPH-2F946IDEOGRAPH-2F947IDEOGRAPH-2F948IDEOGRAPH-2F949IDEOGRAPH-2F94AIDEOGRAPH-2F94BIDEOGRAPH-2F94CIDEOGRAPH-2F94DIDEOGRAPH-2F94EIDEOGRAPH-2F94FIDEOGRAPH-2F950IDEOGRAPH-2F951IDEOGRAPH-2F952IDEOGRAPH-2F953IDEOGRAPH-2F954IDEOGRAPH-2F955IDEOGRAPH-2F956IDEOGRAPH-2F957IDEOGRAPH-2F958IDEOGRAPH-2F959IDEOGRAPH-2F95AIDEOGRAPH-2F95BIDEOGRAPH-2F95CIDEOGRAPH-2F95DIDEOGRAPH-2F95EIDEOGRAPH-2F95FIDEOGRAPH-2F960IDEOGRAPH-2F961IDEOGRAPH-2F962IDEOGRAPH-2F963IDEOGRAPH-2F964IDEOGRAPH-2F965IDEOGRAPH-2F966IDEOGRAPH-2F967IDEOGRAPH-2F968IDEOGRAPH-2F969IDEOGRAPH-2F96AIDEOGRAPH-2F96BIDEOGRAPH-2F96CIDEOGRAPH-2F96DIDEOGRAPH-2F96EIDEOGRAPH-2F96FIDEOGRAPH-2F970IDEOGRAPH-2F971IDEOGRAPH-2F972IDEOGRAPH-2F973IDEOGRAPH-2F974IDEOGRAPH-2F975IDEOGRAPH-2F976IDEOGRAPH-2F977IDEOGRAPH-2F978IDEOGRAPH-2F979IDEOGRAPH-2F97AIDEOGRAPH-2F97BIDEOGRAPH-2F97CIDEOGRAPH-2F97DIDEOGRAPH-2F97EIDEOGRAPH-2F97FIDEOGRAPH-2F980IDEOGRAPH-2F981IDEOGRAPH-2F982IDEOGRAPH-2F983IDEOGRAPH-2F984IDEOGRAPH-2F985IDEOGRAPH-2F986IDEOGRAPH-2F987IDEOGRAPH-2F988IDEOGRAPH-2F989IDEOGRAPH-2F98AIDEOGRAPH-2F98BIDEOGRAPH-2F98CIDEOGRAPH-2F98DIDEOGRAPH-2F98EIDEOGRAPH-2F98FIDEOGRAPH-2F990IDEOGRAPH-2F991IDEOGRAPH-2F992IDEOGRAPH-2F993IDEOGRAPH-2F994IDEOGRAPH-2F995IDEOGRAPH-2F996IDEOGRAPH-2F997IDEOGRAPH-2F998IDEOGRAPH-2F999IDEOGRAPH-2F99AIDEOGRAPH-2F99BIDEOGRAPH-2F99CIDEOGRAPH-2F99DIDEOGRAPH-2F99EIDEOGRAPH-2F99FIDEOGRAPH-2F9A0IDEOGRAPH-2F9A1IDEOGRAPH-2F9A2IDEOGRAPH-2F9A3IDEOGRAPH-2F9A4IDEOGRAPH-2F9A5IDEOGRAPH-2F9A6IDEOGRAPH-2F9A7IDEOGRAPH-2F9A8IDEOGRAPH-2F9A9IDEOGRAPH-2F9AAIDEOGRAPH-2F9ABIDEOGRAPH-2F9ACIDEOGRAPH-2F9ADIDEOGRAPH-2F9AEIDEOGRAPH-2F9AFIDEOGRAPH-2F9B0IDEOGRAPH-2F9B1IDEOGRAPH-2F9B2IDEOGRAPH-2F9B3IDEOGRAPH-2F9B4IDEOGRAPH-2F9B5IDEOGRAPH-2F9B6IDEOGRAPH-2F9B7IDEOGRAPH-2F9B8IDEOGRAPH-2F9B9IDEOGRAPH-2F9BAIDEOGRAPH-2F9BBIDEOGRAPH-2F9BCIDEOGRAPH-2F9BDIDEOGRAPH-2F9BEIDEOGRAPH-2F9BFIDEOGRAPH-2F9C0IDEOGRAPH-2F9C1IDEOGRAPH-2F9C2IDEOGRAPH-2F9C3IDEOGRAPH-2F9C4IDEOGRAPH-2F9C5IDEOGRAPH-2F9C6IDEOGRAPH-2F9C7IDEOGRAPH-2F9C8IDEOGRAPH-2F9C9IDEOGRAPH-2F9CAIDEOGRAPH-2F9CBIDEOGRAPH-2F9CCIDEOGRAPH-2F9CDIDEOGRAPH-2F9CEIDEOGRAPH-2F9CFIDEOGRAPH-2F9D0IDEOGRAPH-2F9D1IDEOGRAPH-2F9D2IDEOGRAPH-2F9D3IDEOGRAPH-2F9D4IDEOGRAPH-2F9D5IDEOGRAPH-2F9D6IDEOGRAPH-2F9D7IDEOGRAPH-2F9D8IDEOGRAPH-2F9D9IDEOGRAPH-2F9DAIDEOGRAPH-2F9DBIDEOGRAPH-2F9DCIDEOGRAPH-2F9DDIDEOGRAPH-2F9DEIDEOGRAPH-2F9DFIDEOGRAPH-2F9E0IDEOGRAPH-2F9E1IDEOGRAPH-2F9E2IDEOGRAPH-2F9E3IDEOGRAPH-2F9E4IDEOGRAPH-2F9E5IDEOGRAPH-2F9E6IDEOGRAPH-2F9E7IDEOGRAPH-2F9E8IDEOGRAPH-2F9E9IDEOGRAPH-2F9EAIDEOGRAPH-2F9EBIDEOGRAPH-2F9ECIDEOGRAPH-2F9EDIDEOGRAPH-2F9EEIDEOGRAPH-2F9EFIDEOGRAPH-2F9F0IDEOGRAPH-2F9F1IDEOGRAPH-2F9F2IDEOGRAPH-2F9F3IDEOGRAPH-2F9F4IDEOGRAPH-2F9F5IDEOGRAPH-2F9F6IDEOGRAPH-2F9F7IDEOGRAPH-2F9F8IDEOGRAPH-2F9F9IDEOGRAPH-2F9FAIDEOGRAPH-2F9FBIDEOGRAPH-2F9FCIDEOGRAPH-2F9FDIDEOGRAPH-2F9FEIDEOGRAPH-2F9FFIDEOGRAPH-2FA00IDEOGRAPH-2FA01IDEOGRAPH-2FA02IDEOGRAPH-2FA03IDEOGRAPH-2FA04IDEOGRAPH-2FA05IDEOGRAPH-2FA06IDEOGRAPH-2FA07IDEOGRAPH-2FA08IDEOGRAPH-2FA09IDEOGRAPH-2FA0AIDEOGRAPH-2FA0BIDEOGRAPH-2FA0CIDEOGRAPH-2FA0DIDEOGRAPH-2FA0EIDEOGRAPH-2FA0FIDEOGRAPH-2FA10IDEOGRAPH-2FA11IDEOGRAPH-2FA12IDEOGRAPH-2FA13IDEOGRAPH-2FA14IDEOGRAPH-2FA15IDEOGRAPH-2FA16IDEOGRAPH-2FA17IDEOGRAPH-2FA18IDEOGRAPH-2FA19IDEOGRAPH-2FA1AIDEOGRAPH-2FA1BIDEOGRAPH-2FA1CIDEOGRAPH-2FA1DJALLAJALALOUHOUKRATIMOKOUFISMAKRATIMOYPORROONLONG-BRANCH-MADMIEUM-SSANGSIOSPETASTOKOUFISMAPIEUP-SSANGSIOSPSIFISTOLYGISMAPSIFISTOSYNAGMARIEUL-SSANGSIOSTEARDROP-SHANKEPROSGEGRAMMENITEARDROP-SPOKEBLACK-FEATHERETRIANGLE-HEADECONGRATULATIONHIGH-REVERSED-AFOREMENTIONEDAROUND-PROFILECONCAVE-POINTEGORGOSYNTHETONIDENTIFICATIONIDEOGRAPH-F900IDEOGRAPH-F901IDEOGRAPH-F902IDEOGRAPH-F903IDEOGRAPH-F904IDEOGRAPH-F905IDEOGRAPH-F906IDEOGRAPH-F907IDEOGRAPH-F908IDEOGRAPH-F909IDEOGRAPH-F90AIDEOGRAPH-F90BIDEOGRAPH-F90CIDEOGRAPH-F90DIDEOGRAPH-F90EIDEOGRAPH-F90FIDEOGRAPH-F910IDEOGRAPH-F911IDEOGRAPH-F912IDEOGRAPH-F913IDEOGRAPH-F914IDEOGRAPH-F915IDEOGRAPH-F916IDEOGRAPH-F917IDEOGRAPH-F918IDEOGRAPH-F919IDEOGRAPH-F91AIDEOGRAPH-F91BIDEOGRAPH-F91CIDEOGRAPH-F91DIDEOGRAPH-F91EIDEOGRAPH-F91FIDEOGRAPH-F920IDEOGRAPH-F921IDEOGRAPH-F922IDEOGRAPH-F923IDEOGRAPH-F924IDEOGRAPH-F925IDEOGRAPH-F926IDEOGRAPH-F927IDEOGRAPH-F928IDEOGRAPH-F929IDEOGRAPH-F92AIDEOGRAPH-F92BIDEOGRAPH-F92CIDEOGRAPH-F92DIDEOGRAPH-F92EIDEOGRAPH-F92FIDEOGRAPH-F930IDEOGRAPH-F931IDEOGRAPH-F932IDEOGRAPH-F933IDEOGRAPH-F934IDEOGRAPH-F935IDEOGRAPH-F936IDEOGRAPH-F937IDEOGRAPH-F938IDEOGRAPH-F939IDEOGRAPH-F93AIDEOGRAPH-F93BIDEOGRAPH-F93CIDEOGRAPH-F93DIDEOGRAPH-F93EIDEOGRAPH-F93FIDEOGRAPH-F940IDEOGRAPH-F941IDEOGRAPH-F942IDEOGRAPH-F943IDEOGRAPH-F944IDEOGRAPH-F945IDEOGRAPH-F946IDEOGRAPH-F947IDEOGRAPH-F948IDEOGRAPH-F949IDEOGRAPH-F94AIDEOGRAPH-F94BIDEOGRAPH-F94CIDEOGRAPH-F94DIDEOGRAPH-F94EIDEOGRAPH-F94FIDEOGRAPH-F950IDEOGRAPH-F951IDEOGRAPH-F952IDEOGRAPH-F953IDEOGRAPH-F954IDEOGRAPH-F955IDEOGRAPH-F956IDEOGRAPH-F957IDEOGRAPH-F958IDEOGRAPH-F959IDEOGRAPH-F95AIDEOGRAPH-F95BIDEOGRAPH-F95CIDEOGRAPH-F95DIDEOGRAPH-F95EIDEOGRAPH-F95FIDEOGRAPH-F960IDEOGRAPH-F961IDEOGRAPH-F962IDEOGRAPH-F963IDEOGRAPH-F964IDEOGRAPH-F965IDEOGRAPH-F966IDEOGRAPH-F967IDEOGRAPH-F968IDEOGRAPH-F969IDEOGRAPH-F96AIDEOGRAPH-F96BIDEOGRAPH-F96CIDEOGRAPH-F96DIDEOGRAPH-F96EIDEOGRAPH-F96FIDEOGRAPH-F970IDEOGRAPH-F971IDEOGRAPH-F972IDEOGRAPH-F973IDEOGRAPH-F974IDEOGRAPH-F975IDEOGRAPH-F976IDEOGRAPH-F977IDEOGRAPH-F978IDEOGRAPH-F979IDEOGRAPH-F97AIDEOGRAPH-F97BIDEOGRAPH-F97CIDEOGRAPH-F97DIDEOGRAPH-F97EIDEOGRAPH-F97FIDEOGRAPH-F980IDEOGRAPH-F981IDEOGRAPH-F982IDEOGRAPH-F983IDEOGRAPH-F984IDEOGRAPH-F985IDEOGRAPH-F986IDEOGRAPH-F987IDEOGRAPH-F988IDEOGRAPH-F989IDEOGRAPH-F98AIDEOGRAPH-F98BIDEOGRAPH-F98CIDEOGRAPH-F98DIDEOGRAPH-F98EIDEOGRAPH-F98FIDEOGRAPH-F990IDEOGRAPH-F991IDEOGRAPH-F992IDEOGRAPH-F993IDEOGRAPH-F994IDEOGRAPH-F995IDEOGRAPH-F996IDEOGRAPH-F997IDEOGRAPH-F998IDEOGRAPH-F999IDEOGRAPH-F99AIDEOGRAPH-F99BIDEOGRAPH-F99CIDEOGRAPH-F99DIDEOGRAPH-F99EIDEOGRAPH-F99FIDEOGRAPH-F9A0IDEOGRAPH-F9A1IDEOGRAPH-F9A2IDEOGRAPH-F9A3IDEOGRAPH-F9A4IDEOGRAPH-F9A5IDEOGRAPH-F9A6IDEOGRAPH-F9A7IDEOGRAPH-F9A8IDEOGRAPH-F9A9IDEOGRAPH-F9AAIDEOGRAPH-F9ABIDEOGRAPH-F9ACIDEOGRAPH-F9ADIDEOGRAPH-F9AEIDEOGRAPH-F9AFIDEOGRAPH-F9B0IDEOGRAPH-F9B1IDEOGRAPH-F9B2IDEOGRAPH-F9B3IDEOGRAPH-F9B4IDEOGRAPH-F9B5IDEOGRAPH-F9B6IDEOGRAPH-F9B7IDEOGRAPH-F9B8IDEOGRAPH-F9B9IDEOGRAPH-F9BAIDEOGRAPH-F9BBIDEOGRAPH-F9BCIDEOGRAPH-F9BDIDEOGRAPH-F9BEIDEOGRAPH-F9BFIDEOGRAPH-F9C0IDEOGRAPH-F9C1IDEOGRAPH-F9C2IDEOGRAPH-F9C3IDEOGRAPH-F9C4IDEOGRAPH-F9C5IDEOGRAPH-F9C6IDEOGRAPH-F9C7IDEOGRAPH-F9C8IDEOGRAPH-F9C9IDEOGRAPH-F9CAIDEOGRAPH-F9CBIDEOGRAPH-F9CCIDEOGRAPH-F9CDIDEOGRAPH-F9CEIDEOGRAPH-F9CFIDEOGRAPH-F9D0IDEOGRAPH-F9D1IDEOGRAPH-F9D2IDEOGRAPH-F9D3IDEOGRAPH-F9D4IDEOGRAPH-F9D5IDEOGRAPH-F9D6IDEOGRAPH-F9D7IDEOGRAPH-F9D8IDEOGRAPH-F9D9IDEOGRAPH-F9DAIDEOGRAPH-F9DBIDEOGRAPH-F9DCIDEOGRAPH-F9DDIDEOGRAPH-F9DEIDEOGRAPH-F9DFIDEOGRAPH-F9E0IDEOGRAPH-F9E1IDEOGRAPH-F9E2IDEOGRAPH-F9E3IDEOGRAPH-F9E4IDEOGRAPH-F9E5IDEOGRAPH-F9E6IDEOGRAPH-F9E7IDEOGRAPH-F9E8IDEOGRAPH-F9E9IDEOGRAPH-F9EAIDEOGRAPH-F9EBIDEOGRAPH-F9ECIDEOGRAPH-F9EDIDEOGRAPH-F9EEIDEOGRAPH-F9EFIDEOGRAPH-F9F0IDEOGRAPH-F9F1IDEOGRAPH-F9F2IDEOGRAPH-F9F3IDEOGRAPH-F9F4IDEOGRAPH-F9F5IDEOGRAPH-F9F6IDEOGRAPH-F9F7IDEOGRAPH-F9F8IDEOGRAPH-F9F9IDEOGRAPH-F9FAIDEOGRAPH-F9FBIDEOGRAPH-F9FCIDEOGRAPH-F9FDIDEOGRAPH-F9FEIDEOGRAPH-F9FFIDEOGRAPH-FA00IDEOGRAPH-FA01IDEOGRAPH-FA02IDEOGRAPH-FA03IDEOGRAPH-FA04IDEOGRAPH-FA05IDEOGRAPH-FA06IDEOGRAPH-FA07IDEOGRAPH-FA08IDEOGRAPH-FA09IDEOGRAPH-FA0AIDEOGRAPH-FA0BIDEOGRAPH-FA0CIDEOGRAPH-FA0DIDEOGRAPH-FA0EIDEOGRAPH-FA0FIDEOGRAPH-FA10IDEOGRAPH-FA11IDEOGRAPH-FA12IDEOGRAPH-FA13IDEOGRAPH-FA14IDEOGRAPH-FA15IDEOGRAPH-FA16IDEOGRAPH-FA17IDEOGRAPH-FA18IDEOGRAPH-FA19IDEOGRAPH-FA1AIDEOGRAPH-FA1BIDEOGRAPH-FA1CIDEOGRAPH-FA1DIDEOGRAPH-FA1EIDEOGRAPH-FA1FIDEOGRAPH-FA20IDEOGRAPH-FA21IDEOGRAPH-FA22IDEOGRAPH-FA23IDEOGRAPH-FA24IDEOGRAPH-FA25IDEOGRAPH-FA26IDEOGRAPH-FA27IDEOGRAPH-FA28IDEOGRAPH-FA29IDEOGRAPH-FA2AIDEOGRAPH-FA2BIDEOGRAPH-FA2CIDEOGRAPH-FA2DIDEOGRAPH-FA30IDEOGRAPH-FA31IDEOGRAPH-FA32IDEOGRAPH-FA33IDEOGRAPH-FA34IDEOGRAPH-FA35IDEOGRAPH-FA36IDEOGRAPH-FA37IDEOGRAPH-FA38IDEOGRAPH-FA39IDEOGRAPH-FA3AIDEOGRAPH-FA3BIDEOGRAPH-FA3CIDEOGRAPH-FA3DIDEOGRAPH-FA3EIDEOGRAPH-FA3FIDEOGRAPH-FA40IDEOGRAPH-FA41IDEOGRAPH-FA42IDEOGRAPH-FA43IDEOGRAPH-FA44IDEOGRAPH-FA45IDEOGRAPH-FA46IDEOGRAPH-FA47IDEOGRAPH-FA48IDEOGRAPH-FA49IDEOGRAPH-FA4AIDEOGRAPH-FA4BIDEOGRAPH-FA4CIDEOGRAPH-FA4DIDEOGRAPH-FA4EIDEOGRAPH-FA4FIDEOGRAPH-FA50IDEOGRAPH-FA51IDEOGRAPH-FA52IDEOGRAPH-FA53IDEOGRAPH-FA54IDEOGRAPH-FA55IDEOGRAPH-FA56IDEOGRAPH-FA57IDEOGRAPH-FA58IDEOGRAPH-FA59IDEOGRAPH-FA5AIDEOGRAPH-FA5BIDEOGRAPH-FA5CIDEOGRAPH-FA5DIDEOGRAPH-FA5EIDEOGRAPH-FA5FIDEOGRAPH-FA60IDEOGRAPH-FA61IDEOGRAPH-FA62IDEOGRAPH-FA63IDEOGRAPH-FA64IDEOGRAPH-FA65IDEOGRAPH-FA66IDEOGRAPH-FA67IDEOGRAPH-FA68IDEOGRAPH-FA69IDEOGRAPH-FA6AIDEOGRAPH-FA70IDEOGRAPH-FA71IDEOGRAPH-FA72IDEOGRAPH-FA73IDEOGRAPH-FA74IDEOGRAPH-FA75IDEOGRAPH-FA76IDEOGRAPH-FA77IDEOGRAPH-FA78IDEOGRAPH-FA79IDEOGRAPH-FA7AIDEOGRAPH-FA7BIDEOGRAPH-FA7CIDEOGRAPH-FA7DIDEOGRAPH-FA7EIDEOGRAPH-FA7FIDEOGRAPH-FA80IDEOGRAPH-FA81IDEOGRAPH-FA82IDEOGRAPH-FA83IDEOGRAPH-FA84IDEOGRAPH-FA85IDEOGRAPH-FA86IDEOGRAPH-FA87IDEOGRAPH-FA88IDEOGRAPH-FA89IDEOGRAPH-FA8AIDEOGRAPH-FA8BIDEOGRAPH-FA8CIDEOGRAPH-FA8DIDEOGRAPH-FA8EIDEOGRAPH-FA8FIDEOGRAPH-FA90IDEOGRAPH-FA91IDEOGRAPH-FA92IDEOGRAPH-FA93IDEOGRAPH-FA94IDEOGRAPH-FA95IDEOGRAPH-FA96IDEOGRAPH-FA97IDEOGRAPH-FA98IDEOGRAPH-FA99IDEOGRAPH-FA9AIDEOGRAPH-FA9BIDEOGRAPH-FA9CIDEOGRAPH-FA9DIDEOGRAPH-FA9EIDEOGRAPH-FA9FIDEOGRAPH-FAA0IDEOGRAPH-FAA1IDEOGRAPH-FAA2IDEOGRAPH-FAA3IDEOGRAPH-FAA4IDEOGRAPH-FAA5IDEOGRAPH-FAA6IDEOGRAPH-FAA7IDEOGRAPH-FAA8IDEOGRAPH-FAA9IDEOGRAPH-FAAAIDEOGRAPH-FAABIDEOGRAPH-FAACIDEOGRAPH-FAADIDEOGRAPH-FAAEIDEOGRAPH-FAAFIDEOGRAPH-FAB0IDEOGRAPH-FAB1IDEOGRAPH-FAB2IDEOGRAPH-FAB3IDEOGRAPH-FAB4IDEOGRAPH-FAB5IDEOGRAPH-FAB6IDEOGRAPH-FAB7IDEOGRAPH-FAB8IDEOGRAPH-FAB9IDEOGRAPH-FABAIDEOGRAPH-FABBIDEOGRAPH-FABCIDEOGRAPH-FABDIDEOGRAPH-FABEIDEOGRAPH-FABFIDEOGRAPH-FAC0IDEOGRAPH-FAC1IDEOGRAPH-FAC2IDEOGRAPH-FAC3IDEOGRAPH-FAC4IDEOGRAPH-FAC5IDEOGRAPH-FAC6IDEOGRAPH-FAC7IDEOGRAPH-FAC8IDEOGRAPH-FAC9IDEOGRAPH-FACAIDEOGRAPH-FACBIDEOGRAPH-FACCIDEOGRAPH-FACDIDEOGRAPH-FACEIDEOGRAPH-FACFIDEOGRAPH-FAD0IDEOGRAPH-FAD1IDEOGRAPH-FAD2IDEOGRAPH-FAD3IDEOGRAPH-FAD4IDEOGRAPH-FAD5IDEOGRAPH-FAD6IDEOGRAPH-FAD7IDEOGRAPH-FAD8IDEOGRAPH-FAD9LONG-BRANCH-OSLONG-BRANCH-SOLONG-BRANCH-YRMULTIPLICATIONPALATALIZATIONSHORT-TWIG-MADSHORT-TWIG-NAUSIOS-SSANGSIOSTEARDROP-BARBETROMIKOLYGISMATROMIKOSYNAGMAWHITE-FEATHEREYPOGEGRAMMENIRIGHT-POINTINMULTIPLICATIORIGHT-SHADOWEBALLOON-SPOKEKAPYEOUNMIEUMRIEUL-PHIEUPHRIEUL-THIEUTHARGOSYNTHETONASYMPTOTICALLMIEUM-PANSIOSNIEUN-PANSIOSPARALLELOGRAMPERPENDICULARPHIEUPH-PIEUPPIEUP-PHIEUPHPIEUP-THIEUTHPREPONDERANCERIEUL-PANSIOSTETARTIMORIONTIKEUT-KIYEOKTRIANGLE-ROUNYESIEUNG-SIOSAVAKRAHASANYABOTTOM-LIGHTECHIEUCH-HIEUHCHITUEUMCIEUCCONTEMPLATIONDOTS-12345678EMBELLISHMENTIEUNG-CHIEUCHIEUNG-KHIEUKHIEUNG-PHIEUPHIEUNG-THIEUTHKAPYEOUNRIEULLONG-BRANCH-AMIEUM-CHIEUCHNIEUN-THIEUTHPIEUP-CHIEUCHRIEUL-KHIEUKHSHORT-TWIG-OSSHORT-TWIG-SOSHORT-TWIG-TYSHORT-TWIG-YRSTACCATISSIMOSTRIKETHROUGHTHERMODYNAMICYUUKALEAPINTUGREATER-THANANTICLOCKWISLEFT-POINTININTERSECTIONAPPROXIMATELDIFFERENTIALDOWN-POINTINPARESTIGMENOCRYPTOGRAMMIHYPHEN-MINUSCONCAVE-SIDELEFT-TO-RIGHNIEUN-TIKEUTRIEUL-KIYEOKRIGHT-TO-LEFTRANSPOSITIOCROSSED-TAILDIMINUTION-1DROP-SHADOWEGAETTA-PILLAGEOMETRICALLIEUNG-KIYEOKINTERPOLATIONIEUN-KIYEOKPIEUP-TIKEUTRIEUL-TIKEUTTHIRTY-SECONTWENTY-EIGHTTWENTY-THREEACCUMULATIONANATRICHISMAAURAMAZDAA-2AURAMAZDAAHABREAKTHROUGHCHITUEUMSIOSCYLINDRICITYDECISIVENESSDEFECTIVENESDIFFICULTIESDIMINISHMENTDIMINUTION-2DIMINUTION-3DISCONTINUOUDOTS-1234567DOTS-1234568DOTS-1234578DOTS-1234678DOTS-1235678DOTS-1245678DOTS-1345678DOTS-2345678EURO-CURRENCFLEUR-DE-LISGRONTHISMATAHYPODIASTOLEICELANDIC-YRIEUNG-TIKEUTINTERSYLLABIJUDEO-SPANISKIYEOK-RIEULLABIALIZATIOMINUS-OR-PLUMORPHOLOGICAOPEN-OUTLINEPERPENDICULARULE-DELAYEDSELECTOR-100SELECTOR-101SELECTOR-102SELECTOR-103SELECTOR-104SELECTOR-105SELECTOR-106SELECTOR-107SELECTOR-108SELECTOR-109SELECTOR-110SELECTOR-111SELECTOR-112SELECTOR-113SELECTOR-114SELECTOR-115SELECTOR-116SELECTOR-117SELECTOR-118SELECTOR-119SELECTOR-120SELECTOR-121SELECTOR-122SELECTOR-123SELECTOR-124SELECTOR-125SELECTOR-126SELECTOR-127SELECTOR-128SELECTOR-129SELECTOR-130SELECTOR-131SELECTOR-132SELECTOR-133SELECTOR-134SELECTOR-135SELECTOR-136SELECTOR-137SELECTOR-138SELECTOR-139SELECTOR-140SELECTOR-141SELECTOR-142SELECTOR-143SELECTOR-144SELECTOR-145SELECTOR-146SELECTOR-147SELECTOR-148SELECTOR-149SELECTOR-150SELECTOR-151SELECTOR-152SELECTOR-153SELECTOR-154SELECTOR-155SELECTOR-156SELECTOR-157SELECTOR-158SELECTOR-159SELECTOR-160SELECTOR-161SELECTOR-162SELECTOR-163SELECTOR-164SELECTOR-165SELECTOR-166SELECTOR-167SELECTOR-168SELECTOR-169SELECTOR-170SELECTOR-171SELECTOR-172SELECTOR-173SELECTOR-174SELECTOR-175SELECTOR-176SELECTOR-177SELECTOR-178SELECTOR-179SELECTOR-180SELECTOR-181SELECTOR-182SELECTOR-183SELECTOR-184SELECTOR-185SELECTOR-186SELECTOR-187SELECTOR-188SELECTOR-189SELECTOR-190SELECTOR-191SELECTOR-192SELECTOR-193SELECTOR-194SELECTOR-195SELECTOR-196SELECTOR-197SELECTOR-198SELECTOR-199SELECTOR-200SELECTOR-201SELECTOR-202SELECTOR-203SELECTOR-204SELECTOR-205SELECTOR-206SELECTOR-207SELECTOR-208SELECTOR-209SELECTOR-210SELECTOR-211SELECTOR-212SELECTOR-213SELECTOR-214SELECTOR-215SELECTOR-216SELECTOR-217SELECTOR-218SELECTOR-219SELECTOR-220SELECTOR-221SELECTOR-222SELECTOR-223SELECTOR-224SELECTOR-225SELECTOR-226SELECTOR-227SELECTOR-228SELECTOR-229SELECTOR-230SELECTOR-231SELECTOR-232SELECTOR-233SELECTOR-234SELECTOR-235SELECTOR-236SELECTOR-237SELECTOR-238SELECTOR-239SELECTOR-240SELECTOR-241SELECTOR-242SELECTOR-243SELECTOR-244SELECTOR-245SELECTOR-246SELECTOR-247SELECTOR-248SELECTOR-249SELECTOR-250SELECTOR-251SELECTOR-252SELECTOR-253SELECTOR-254SELECTOR-255SELECTOR-256SHORT-TWIG-ASIOS-CHIEUCHSIOS-KHIEUKHSIOS-PHIEUPHSIOS-THIEUTHSTRAGGISMATATHUNDERSTORMTIKEUT-RIEULTRANSMISSIONTWENTY-EIGHTTWENTY-SEVENVOWEL-CARRIEXSHAAYATHIYAYOUTHFULNESSGREATER-THAINSTRUMENTAPRESENTATIOPERISPOMENIC-SIMPLIFIEARABIC-INDIPARENTHESISPUNCTUATIONINTERSECTIOCANDRABINDUERROR-BARRESUBSTITUTIOBLACK-LETTEAPPROXIMATECANTILLATIOEKFONITIKONJ-SIMPLIFIERIEUL-HIEUHSOUTH-SLAVEABBREVIATIOASTROLOGICAGAYANUKITTAMIEUM-PIEUPNIEUN-CIEUCNIEUN-HIEUHPARAGRAPHOSRIEUL-MIEUMRIEUL-PIEUPSEMICIRCULASSANGTIKEUTACKNOWLEDGECOMPOSITIONINTERSECTINPIEUP-CIEUCQUINDICESIMRIEUL-NIEUNSIXTY-FOURTTRITIMORIONTWENTY-FOURWEDGE-TAILEAESCULAPIUSAGGRAVATIONAMALGAMATIOAPPLICATIONAUGMENTATIOCANCELLATIOCIEUC-IEUNGCONJUNCTIONCONTRACTIONCONTRARIETYCORPORATIONCOUNTERBORECOUNTERSINKDAHYAAUSH-2DECRESCENDODELIVERANCEDENOMINATORDERET-HIDETDEVELOPMENTDISTINGUISHDOACHASHMEEDOTS-123456DOTS-123457DOTS-123458DOTS-123467DOTS-123468DOTS-123478DOTS-123567DOTS-123568DOTS-123578DOTS-123678DOTS-124567DOTS-124568DOTS-124578DOTS-124678DOTS-125678DOTS-134567DOTS-134568DOTS-134578DOTS-134678DOTS-135678DOTS-145678DOTS-234567DOTS-234568DOTS-234578DOTS-234678DOTS-235678DOTS-245678DOTS-345678DOUBLE-ENDEEAMHANCHOLLENLARGEMENTFINGERNAILSFRONT-TILTEGUARDEDNESSHAUPTSTIMMEHIEUH-MIEUMHIEUH-NIEUNHIEUH-PIEUPHIEUH-RIEULHORIZONTALLIEUNG-CIEUCIEUNG-MIEUMIEUNG-PIEUPINTEGRATIONINTERCALATEINTERROBANGKIROMEETORULAKKHANGYAOMIEUM-HIEUHMIEUM-RIEULMUUSIKATOANNAAKSIKYAYANEBENSTIMMENIEUN-PIEUPNON-BREAKINOBSTRUCTIONPARAKLITIKIPENETRATIONPERSPECTIVEPIEUP-NIEUNPIEUP-RIEULPOSTPOSITIOPRESCRIPTIOPROPORTIONARIGHT-SHADERINFORZANDOROUND-TIPPESAGITTARIUSSELECTOR-10SELECTOR-11SELECTOR-12SELECTOR-13SELECTOR-14SELECTOR-15SELECTOR-16SELECTOR-17SELECTOR-18SELECTOR-19SELECTOR-20SELECTOR-21SELECTOR-22SELECTOR-23SELECTOR-24SELECTOR-25SELECTOR-26SELECTOR-27SELECTOR-28SELECTOR-29SELECTOR-30SELECTOR-31SELECTOR-32SELECTOR-33SELECTOR-34SELECTOR-35SELECTOR-36SELECTOR-37SELECTOR-38SELECTOR-39SELECTOR-40SELECTOR-41SELECTOR-42SELECTOR-43SELECTOR-44SELECTOR-45SELECTOR-46SELECTOR-47SELECTOR-48SELECTOR-49SELECTOR-50SELECTOR-51SELECTOR-52SELECTOR-53SELECTOR-54SELECTOR-55SELECTOR-56SELECTOR-57SELECTOR-58SELECTOR-59SELECTOR-60SELECTOR-61SELECTOR-62SELECTOR-63SELECTOR-64SELECTOR-65SELECTOR-66SELECTOR-67SELECTOR-68SELECTOR-69SELECTOR-70SELECTOR-71SELECTOR-72SELECTOR-73SELECTOR-74SELECTOR-75SELECTOR-76SELECTOR-77SELECTOR-78SELECTOR-79SELECTOR-80SELECTOR-81SELECTOR-82SELECTOR-83SELECTOR-84SELECTOR-85SELECTOR-86SELECTOR-87SELECTOR-88SELECTOR-89SELECTOR-90SELECTOR-91SELECTOR-92SELECTOR-93SELECTOR-94SELECTOR-95SELECTOR-96SELECTOR-97SELECTOR-98SELECTOR-99SPRECHGESANSUPERIMPOSETETRAFONIASTHANTHAKHATTHREE-PER-ETOANDAKHIATTRANSMISSIOTWENTY-FIVETWENTY-NINEUNASPIRATEDCIRCUMFLEXSUPERSCRIPHORIZONTALPUNCTUATIOINDEPENDENPERISPOMENEXCLAMATIODESCRIPTIOPARENTHESIDOUBLE-LINMAHAAPRAANAPOSTROPHEUP-POINTINSINGLE-LINIMPERFECTURIGHTWARDSARROW-TAILDOACHASHMEAELA-PILLAALTERNATIVCOMPLETIONINTEGRATIOINTERLINEAOPEN-HEADEOPPOSITIONRIEUL-SIOSSEMI-VOICESSANGIEUNGSUPRALINEAAEDA-PILLACONSECUTIVDIVINATIONENTERPRISEIMPERFECTAMONOFONIASMONOGRAMMONAASIKYAYANIEUN-SIOSOVERLAPPINPARAKALESMPARAKLITIKPARTNERSHIPERCUSSIVEPROPORTIONRECTANGULARECTILINEAREPLACEMENSALLALLAHOSIOS-NIEUNSIOS-RIEULSSANGHIEUHSSANGNIEUNSSANGRIEULTABULATIONTETRASIMOUTHEMATISMOTWENTY-ONETWENTY-TWOALTERNATIOANGKHANKHUANTIKENOMAANUSVARAYAAPOSTROFOSASTERISCUSAURAMAZDAABACK-TILTEBARIYOOSANBATHAMASATCIRCULATIOCLUB-SPOKECOMPLEMENTCOMPLIANCECOMPOSITIOCONTENTIONCORRESPONDCROSSBONESDEFINITIONDENOMINATODIAERESIZEDIMENSIONADIRECTIONADISPERSIONDISTORTIONDIVERGENCEDOTS-12345DOTS-12346DOTS-12347DOTS-12348DOTS-12356DOTS-12357DOTS-12358DOTS-12367DOTS-12368DOTS-12378DOTS-12456DOTS-12457DOTS-12458DOTS-12467DOTS-12468DOTS-12478DOTS-12567DOTS-12568DOTS-12578DOTS-12678DOTS-13456DOTS-13457DOTS-13458DOTS-13467DOTS-13468DOTS-13478DOTS-13567DOTS-13568DOTS-13578DOTS-13678DOTS-14567DOTS-14568DOTS-14578DOTS-14678DOTS-15678DOTS-23456DOTS-23457DOTS-23458DOTS-23467DOTS-23468DOTS-23478DOTS-23567DOTS-23568DOTS-23578DOTS-23678DOTS-24567DOTS-24568DOTS-24578DOTS-24678DOTS-25678DOTS-34567DOTS-34568DOTS-34578DOTS-34678DOTS-35678DOTS-45678EKSTREPTONEMBROIDERYENCOUNTERSENTHUSIASMEQUIANGULAEXHAUSTIONFAHRENHEITFELLOWSHIPFORMATTINGFOUR-PER-EFOUR-STRINHBASA-ESASHOMOTHETICHYPHENATIOIMIDIARGONIMIFTHORONINFORMATIOINTERLOCKEKIROGURAMUKUNDDALIYALEFT-SHADELIMITATIONMEMBERSHIPNANGMONTHONON-JOINERNONFORKINGOPPRESSIONPALATALIZEPATHAMASATPOSSESSIONPROJECTIONPROJECTIVERADIOACTIVRAHMATULLARESISTANCERESOLUTIONREVOLUTIONSACRIFICIASELECTOR-1SELECTOR-2SELECTOR-3SELECTOR-4SELECTOR-5SELECTOR-6SELECTOR-7SELECTOR-8SELECTOR-9SHALSHELETSIOS-HIEUHSIOS-IEUNGSIOS-MIEUMSSANGARAEASTANDSTILLSUBPUNCTISSUBSTITUTESYNCHRONOUTERMINATORTHIRTY-ONETOP-LIGHTETRANSVERSATWENTY-SIXVERTICALLYWIDE-HEADEDESCENDERLESS-THANANNOTATIOEQUIVALENSEPARATORARROWHEADALPAPRAANDOWNWARDSEXTENSIONLENTICULAPHARYNGEAPROLATIONSEMICOLONTURNSTILETWO-HEADEAMPERSANDLEFTWARDSTROEZENIACOMMERCIASEMIDIRECSEVENTEENWOODS-CREBACKSLASHDIALYTIKAEXTRA-HIGFIXED-FORIMPERFECTINDICATORRECTANGLEVERTICALLCONTAININDELIMITERENCLOSUREEPIDAUREAHERMIONIAHOURGLASSSEMIBREVISEMIMINIMSNOWFLAKETRIANGULAAPOSTROFOAPOSTROFOARPEGGIATATHAPASCACENTRELINCHARACTERCOPRODUCTCROSSHATCEMBEDDINGFINANCIALFOLLOWINGFRETBOARDGERSHAYIMGORTHMIKOICHIMATOSKHAKASSIAPAA-PILLAPARAPHRASPENTASEMEPHILIPPINSEMICIRCLSUMMATIONSUPERVISESYMBOL-11SYMBOL-12SYMBOL-13SYMBOL-14SYMBOL-17SYMBOL-18SYMBOL-19SYMBOL-23SYMBOL-24SYMBOL-50SYMBOL-51SYMBOL-52SYMBOL-53SYMBOL-54TELEPHONETETRASEMETREMOLO-1TREMOLO-2TREMOLO-3TRIGRAMMOTROKUTASTAABAAFILIABUNDANCEAL-LAKUNAANTIFONIAAPPROACHEAR-RAHEEMASSERTIONATTENTIONBACKSPACEBEGINNINGBIBLE-CRECAPRICORNCHAVIYANICLOSENESSCOMPLETEDCONSTANCYCOPYRIGHTDAHYAAUSHDARKENINGDEPARTUREDESCENDINDIFFERENCDIFFICULTDOTS-1234DOTS-1235DOTS-1236DOTS-1237DOTS-1238DOTS-1245DOTS-1246DOTS-1247DOTS-1248DOTS-1256DOTS-1257DOTS-1258DOTS-1267DOTS-1268DOTS-1278DOTS-1345DOTS-1346DOTS-1347DOTS-1348DOTS-1356DOTS-1357DOTS-1358DOTS-1367DOTS-1368DOTS-1378DOTS-1456DOTS-1457DOTS-1458DOTS-1467DOTS-1468DOTS-1478DOTS-1567DOTS-1568DOTS-1578DOTS-1678DOTS-2345DOTS-2346DOTS-2347DOTS-2348DOTS-2356DOTS-2357DOTS-2358DOTS-2367DOTS-2368DOTS-2378DOTS-2456DOTS-2457DOTS-2458DOTS-2467DOTS-2468DOTS-2478DOTS-2567DOTS-2568DOTS-2578DOTS-2678DOTS-3456DOTS-3457DOTS-3458DOTS-3467DOTS-3468DOTS-3478DOTS-3567DOTS-3568DOTS-3578DOTS-3678DOTS-4567DOTS-4568DOTS-4578DOTS-4678DOTS-5678EEBEEFILIENARMONIOENDEAVOURENDOFONONESTIMATESEXCELLENTEYBEYFILIFOOTSTOOLFOSTERINGFRICATIVEGATHERINGGEMINATIOGNAVIYANIGORGOTERIGREATNESSGURAMUTONHEKUTAARUHOMOTHETIHYSTERESIILUUYANNAIMIFTHORAINCOMPLETINCREMENTINDUSTRIAINFLUENCEINNOCENCEIRUUYANNAJERUSALEMKATAVASMAKEMPHRENGKENTIMATAKIROWATTOKRATIMATAKURUZEIROLABOURINGLHAVIYANILIGHTNINGMAITAIKHUMATERIALSMETOBELUSMIRIBAARUMONOSTABLMOOSE-CREMUKPHRENGNIGGAHITAOABOAFILIOOBOOFILIORTHOGONAPAIYANNOIPARAGRAPHPIASUTORUPITCHFORKPIZZICATOPLUS-MINUPORRECTUSPRAM-BUONPRAM-MUOYPROTOVARYQUATERNIOQUESTIONEQUSHSHAYAREGISTERERELATIONAREPRESENTRESIDENCERESUPINUSRIGHT-SIDSCANDICUSSEPTEMBERSEVERANCESHAVIYANISHORTENERSHOULDERESIX-PER-ESIX-STRINSTROKE-10STROKE-11SUBSTITUTSUSPENSIOSYMBOL-10SYMBOL-15SYMBOL-16SYMBOL-20SYMBOL-21SYMBOL-22SYMBOL-25SYMBOL-26SYMBOL-27SYMBOL-29SYMBOL-30SYMBOL-32SYMBOL-36SYMBOL-37SYMBOL-38SYMBOL-39SYMBOL-40SYMBOL-42SYMBOL-43SYMBOL-45SYMBOL-47SYMBOL-48SYMBOL-49SYRMATIKITAKHALLUSTAWELLEMETHEREFORETHREE-LINTRIFOLIATTRIFONIASTRIGORGONTUTEYASATVISARGAYAWASSALLAMWHEELCHAIWORDSPACEYPOKRISISLESS-THADOWNWARDTRIANGLEOPERATORSUBSCRIPTHOUSANDUNDERBARQUOTATIOASTERISKORNAMENTRETROFLEARCHAIONDIAERESIBLACKFOODENTISTRDIALYTIKINTEGRALANUSVARAVERTICALLEFT-STERECYCLINABKHASIADIALECT-DODEKATAELLIPSISQUADRANTQUADRUPLDIATONIKENCLOSINOVERLINEPLASTICSARROWHEAITERATIONOTEHEADNUMERATOAVAGRAHAEIGHTEENFOURTEENNINETEENSUPERSETTHIRTEENDIAGONALEXTRA-LOFLORETTEIDENTICAKENTIMATPARAGRAPRELATIONSCISSORSSEBATBEISEPARATOALTERNATDDAYANNADEPARTINFANEROSIFISHHOOKINFINITYMOUNTAINMULTIMAPMUURDHAJPARALLELPRECEDESSIXTEENTSPHERICASUBLINEASUCCEEDSSUMMATIOTELEPHONTHOUSANDYESIEUNGALLIANCECAULDRONCONSTANTDIFONIASDIGRAMMODRACHMASFLATTENEGARSHUNIGATHERINGLISSANDGREGORIAINCREASEINSERTIOINVISIBLIS-PILLAOVERRIDEOYRANISMPEDESTALPNEUMATAPRAM-BUOPRAM-MUOPROLONGEPROPELLERESOURCERESPONSEREVERSEDSEMIVOWESUBGROUPSWAPPINGSYMBOL-1SYMBOL-2SYMBOL-4SYMBOL-5SYMBOL-7SYMBOL-8SYMMETRITOGETHERTRISIMOUTTAYANNAUNDERLINUNDERTIEUNIVERSAADDRESSEAEEYANNAAIRPLANEANUDATTAAPODEXIAAPOTHEMAAPPROACHAQUARIUSAR-RAHMAARAEA-EOARGOTERIARISTERAASCENDINASTERISKASTERISMATTHACANBACKSLASBEVERAGEBIOHAZARBISECTINBISMILLABRANCHINBULLSEYEBUSSYERUCADUCEUSCARYSTIACHAMILONCHATTAWACIVILIANCLIMACUSCONFLICTCONGRUENCONJUGATCONTOURECOPYRIGHCRESCENTDAMMATANDARKENINDAVIYANIDECEMBERDECREASEDELIMITEDIFTOGGODIGORGONDIMENSIODOTS-123DOTS-124DOTS-125DOTS-126DOTS-127DOTS-128DOTS-134DOTS-135DOTS-136DOTS-137DOTS-138DOTS-145DOTS-146DOTS-147DOTS-148DOTS-156DOTS-157DOTS-158DOTS-167DOTS-168DOTS-178DOTS-234DOTS-235DOTS-236DOTS-237DOTS-238DOTS-245DOTS-246DOTS-247DOTS-248DOTS-256DOTS-257DOTS-258DOTS-267DOTS-268DOTS-278DOTS-345DOTS-346DOTS-347DOTS-348DOTS-356DOTS-357DOTS-358DOTS-367DOTS-368DOTS-378DOTS-456DOTS-457DOTS-458DOTS-467DOTS-468DOTS-478DOTS-567DOTS-568DOTS-578DOTS-678DOTTED-LDOTTED-NDOTTED-PDURATIONDVISVARAEDITORIAENVELOPEEPEGERMAESTIMATEESUKUUDOETERNITYFACSIMILFATHATANFEBRUARYFESTIVALFIGURE-1FIGURE-2FIGURE-3FIVE-LINFOUR-LINFRAGMENTFRAGRANTFULLNESSFUNCTIONGENITIVEGEOMETRIHAN-AKATHARDNESSHARMONICHERMITIAHUARADDOILUYANNAIMIFONONINCLUDININCREASEIRUYANNAJAVIYANIKASRATANKATHISTIKEYBOARDKONTEVMAKREMASTILARYNGEALEFT-SIDLIABILITLOCATIVELORRAINEMAHAPAKHMAIMALAIMAIYAMOKMANGALAMMASCULINMEDICINEMESSENIAMINISTERMULTISETNIKHAHITNORTHWESNOVEMBEROVERLAIDPAASENTOPAIRTHRAPALOCHKAPAMUDPODPARICHONPAVIYANIPELASTONPERMANENPITCHFORPLETHRONPORRECTUPRAM-BEIPRAM-PIIPROFOUNDPROGRESSPSIFISTOQAIRTHRAQUARTERSQUESTIONRECEPTIVRECORDERRECORDINRECTANGLREFERENCRELIGIONRENTOGENRIGHTHANRUKKAKHASANTIIMUSAXIMATASCANDICUSCORPIUSSEMICOLOSEVENTEESHAMROCKSHE-GOATSICKNESSSPLITTINSTALLIONSTOPPAGESTOPPINGSTRENGTHSTRETCHESTROKE-1STROKE-2STROKE-3STROKE-4STROKE-5STROKE-6STROKE-7STROKE-8STROKE-9SUITABLESURROUNDSYMBOL-3SYMBOL-6SYMBOL-9SYMMETRYSYNDESMOTAVIYANITETRAPLITORCULUSTREADINGTRICOLONTROMIKONTRUNCATEUILLEANNUMBRELLAUNDERDOTUNMARRIEVERSICLEWANDERERWASALLAMYAMAKKANYPOKRISIZAVIYANIZWARAKAYINVERTENEGATIVUGARITIBUGINESHUNDREDCEDILLATRIANGLNOTEHEASUPERSEFRACTIOQUESTIOTAGBANWQUADRANDIAGONAUPSILONOVERLAYMARTYRIOVERBARDIAMONDEPSILONHANGZHOINTEGRAMEASUREOMICRONTORTOISORNAMENVISARGAEXTENDEHARPOONPRECEDESOLIDUSSUCCEEDTHESPIACONTAINDIGRAPHMETRICAMONOGRACROSSINSIMANSISTATERSSUBUNITSIDEWAYSQUAREDTALENTSTHOUSANBARLINEDIVISIOIOTIFIEPARALLESIXTEENSUBGROUSURROUNUPWARDSFIFTEENOPERATOORIGINADIASTOLDIVIDERFATHATAIZHITSAMYSLITEPOINTERSTRAIGHASTERISBAYANNACHRONONDIGORGOEIGHTHSFINGEREGAYANNAHARKLEAJAYANNAKORONISLEATHERLOZENGEMAKSURANO-BREAPINWHEEQUARTERREPEATESAYANNASELECTOSQUIGGLTETARTOTROMIKOACTIVATACTUALLAKHMIMIAPODERMARISTERBETWEENBILABIACAYANNACEILINGCHARIOTCHOREVMCHRONOUCLOTHESCORNERSDAMMATADAP-BUODAP-MUODAP-PRADEYTERODIGAMMADISIMOUEMPHASIFEMININFERMATAFISHHOOGLAGOLIINHERENINTERIOKASRATAKAYANNAKOMBUVAL-SHAPELATINATLAYANNALJUDIJELOGOTYPMEASUREMULTISENAYANNAOMISSIOPAYANNAPEDESTAPETALLEPRAM-BEPRAM-PIQUARTERRGYINGSS-SHAPESEMISOFSEMKATHSEVENTYSHAPINGSHTAPICSOCIETYSPARKLESPECIALSTANDARSTROKESTHESEOSTHUNDERTRISEMEUBADAMAWAITINGZHIVETEAAYANNAABAFILIADVANCEAEYANNAAIYANNAALEMBICALVEOLAANGSTROANGULARANUSVARAPOTHESARAEA-IARAEA-UARCHAIOAROUSINAUYANNABAARERUBAIRKANBARREKHBARRIERBATHTUBBECAUSEBELGTHOBERKANABIDENTABOUNDARBRAKCETBRISTLEBUUMISHCAESURACAPITALCARRIAGCELSIUSCHAMILICLINGINCOMPARECONSTANCONTACTCORONISCORRECTCREATIVCRESCENCRUZEIRCUSTOMECWEORTHCYPERUSCYRENAIDAGALGADECAYEDDEYTERODHALATHDIAMETEDIATONODIGRAMMDIMMINGDIPLOUNDIRECTLDIVIDESDOTS-12DOTS-13DOTS-14DOTS-15DOTS-16DOTS-17DOTS-18DOTS-23DOTS-24DOTS-25DOTS-26DOTS-27DOTS-28DOTS-34DOTS-35DOTS-36DOTS-37DOTS-38DOTS-45DOTS-46DOTS-47DOTS-48DOTS-56DOTS-57DOTS-58DOTS-67DOTS-68DOTS-78DRACHMADRAFTINEABHADHEADHADHEBEFILIEIGHTEEELAFRONELECTRIENQUIRYENTERINETNAHTAEVENINGFAILUREFAYANNAFEATHERFISHEYEFONGMANFOOTNOTFOURTEEFROWNINGARMENTGIRUDAAGRAPHEMHAFUKHAHALANTAHALBERDHASANTAHAYANNAHEADINGHEAVENLI-ARAEAIBIFILIICHADINIIYANNAINDIRECINFINITINTERESIODHADHJANUARYJAPANESJUPITERKAKABATKARATTOKARORIIKINSHIPKONTEVMKOOMUUTKUROONELANGUAGLOCATIOMAIKUROMAIMUANMANSYONMARBUTAMARCATOMARRIAGMARRYINMASSINGMAYANNAMEGATONMERCURYMETRETEMIKURONMILLIONMODESTYMOHAMMAMORNINGMULTIPLNATIONANEGATIONEPTUNENEWLINENGEADALNIKAHITNINETEEOBOFILIOCTOBERONE-LINONESELFOOYANNAORTHODOOUTLINEPACKINGPALLAWAPATTERNPELASTOPETASMAPETASTIPHINTHUPHUTHAOPODATUSPRECEDEPRECEDEPREVIOUPRIVATEPROPERTRAKHANGRAPISMARAYANNAREAHMUKRELEASERETREATRITTORURUUBURUSAIKURUSALTIRESAMPHAOSANYOOGSCHOLARSCRUPLESEGMENTSIMILARSINKINGSIRINGUSIX-LINSNOWMANSPIRANTSPRINGSSQUARESSTAUROSSTAVROSSTAVROUSTRATIASTRICTLSUBJECTSUCCEEDSYNEVMATAISYOUTATWEELTCHEHEHTESSAROTESSERATHIRTEETHURISATINAGMATIRONIATORCULUTRIISAPTRYBLIOTVIMADUTWO-LINU-EO-EUUBUFILIUMBRELLVASTNESVAYANNAVIEWDATVILLAGEVOICINGWASALLAWASTINGYAYANNAYOUTHFUYPORROIOSMANYCIRCLEBRACKEUPSILOACCENTDINGBAEPSILOSLANTESQUAREHANUNODAGESHGLOTTATAGALOOMICROPALATANASKAPCORNERELEMENBULLETDOTLESOGONEKVIRAMAKIRGHIREVERSDIAMONTWENTYDOUBLENEITHEQUARTESIMILASINGLESOLIDUSQUARECHINESNUNAVISUBSETTH-CRETRIGRAARKTIKELEVENHUNDREHYPHENINSIDEMARKEROPENINTWELVEEIGHTHPARTIATHIRTYVRACHYARROWSFALLINOBLIQUPERCENTHROUGCEDILLCONTROCURVINDIGRAPEQUALSFILLERGANGIAINVERSIOTATEKENTIMMEASURROUNDESANYAKTCHEHETOPBARTURTLEYIDDIS-KHYILBOTTOMCENTRECENTRECONTAICONTOUCROSSEDANTAJDIVIDEDOTTEDDRAGONFIFTHSHEAVENKOMBUVKRATIMLEADERMARBUTMEMBERNATURANINETYPENCILQAMATSSKLIROSOGDIASTIGMASYNAGMTAALUJTHESEOTONGUEACADEMACCOUNANCHORANCORAAPLOUNARCHAIBALUDABAMBOOBASHKIBINDINBISHOPBOWTIECHIEUCCHRIVICLUSTEDAGGERDAP-BEDAP-PIDECIMADIVIDEDJERVIDOUBLEDRACHMEARTHLEIGHTYESCAPEFEATHEFLEXUSGERESHGHUNNAGREATEHOLDININHIBIISSHARIZHITSKEEPINKHIEUKKLASMAKNIGHTKORANILEGETOMALAKOMARK-1MARK-2MORTARNEGATENOTCHEORDINAPHIEUPPHRASEPILCROPLAGIOPOKOJIRETURNRIKRIKSERIFSSHAPESSIXTEESLOPINSMALLESMILINSPEECHSPIDERTAMINGTELEIATELISHTESSERTHETHETHIEUTTHREADTHREE-TVRIDOUPTURNYELLOWYO-YAEYU-YEOZEMLJAABYSMAAFGHANAFRICAAHAGGAAIHVUSAIVILIALAYHEALIGNEANNUITAPAATOARAEAEARMOURARRIVEARSEOSARUHUAASCENTAUGUSTAUSTRAAVERAGBADGERBAIMAIBANTOCBARLEYBARREEBENZENBETWEEBEYYALBITTERBORUTOBRANCHBREVISBRONZEBUCKLECANCELCANCERCATAWACAUTIOCHAMKOCHANGECHARIOCHEVROCHIRETCHURCHCLEF-1CLEF-2CLIVISCLOSEDCOFFINCONICACORPSECURRENDAADHUDALATHDAMARUDASEIADDAHALDELETEDELPHIDHAALUDHARMADIESISDIPPERDIVORCDOTS-1DOTS-2DOTS-3DOTS-4DOTS-5DOTS-6DOTS-7DOTS-8DUTIESEIGHTHENARXIEXCESSEXISTSFACE-1FACE-2FACE-3FACE-4FACE-5FACE-6FAMILYFATHERFEMALEFERMATFIFTEEFLAG-1FLAG-2FLAG-3FLAG-4FLAG-5FLIGHTFLOWERFORCESFUNERAGEDOLAGEMINIGENERIGHAINUGHAMALGROUNDGUARANHAFUKHHEISEIHELMETHERAEUHERMESHERUTUHRYVNIHUIITOI-BEAMIMISEOINGWAZININGUINSECTINSULAJOINEDKANAKOKANTAJKEFULAKEYCAPKHOMUTKLITONKORUNAKYATHOKYURIILAMADHLATERALEGIONLEIMMALETTERLIMITELINE-1LINE-3LINE-7LINE-9LINKINLOZENGMAIDENMALTESMARK-3MARK-4MARUKUMATRIXMAXIMAMEDIUMMEGALIMERKHAMETRIAMIDLINMILLETMINIMAMODELSMOTHERMUQDAMNAUTHSNENANONIRUGUNOKHUKNOMINANUMBERNUNAVUOBELOSOMALONOPEN-POPPOSEORIGINOTHALAPALUTAPASHTAPENIHIPERSONPIKURUPIPINGPISCESPOINTOPRECEDPREFACPRODUCPURITYPUSHINQETANAQUBUTSREPEATRITUALRUNOUTSAADHUSAJDAHSAMEKHSANNYASATURNSCALESSCREENSCRIPTSEAGULSECONDSECRETSECTORSEISMASERVICSEVENTSHADDASHAKTISHEENUSHORTSSHUFFLSICKLESIXTHSSLOWLYSPATHISPIRITSPROUTSTAVROSTRAIFSTRIDESTROKESUBITOSUCCEESURFACSWORDSSYNAFISYOUWATATWEETAURUSTENUTOTHAALUTHAHANTHANNATHIRDSTHIUTHTIPEHATONE-2TONE-3TONE-4TONE-5TONE-6TRIPLITRIPODTSHUGSTTEHEHTURBANUPRIGHUPWARDURANUSVALLEYVAREIAVARIANVARIKAVICTORVIRIAMVISARGVOLTAGWARNINWEAPONWHEELEWRITINYFESISYO-YEOYPSILISYLOTCARONBREVEBLACKMIDDLACCENTRIPLDOTTESTROKVESSEEQUALGOTHIHEAVYSINGLBLOCKMANCHTONOSBOTTOFTHORMEDIUOMEGASIGMAALPHACLOSEDASIASUBSECOMMADELTAVULGACORNEEQUALLAMDACROSSICHOSSAYISTHETAWHITEALMOSKAPPAMACRONUBIAY-CREBESIDCENTRSHADDTWENTEARTHFIFTYLENGTNORMATHIRTDASHEDIGRAPRIMEUNIONCANDRREPEATEMPUTUARELUNATRISINRTAGSDIESIDIPLIINDEXKOPPANABLANUKTAOTTAVRAISESCHWASHIMASTAFFYFESIBALLOBARRECLICKCUBEDCURVEFEMALFENCEKOREALEIMMLITTLNESTEUIGHUWATERWEIGHALAYHBASSABRIDGCHROMDANDADEGREDEVICDOLLAPAIREPATAHPIECEPOETRSAMPISKEWETIMESTTEHEWIGGLZIGZAAROUNARSEOBROKECARETCLIFFCLOTHDAGESDAMMAFLORAFORTYHEARTLAMEDMAPIQN-CREPOSTAPTHAHSCHEMSEGOLSHADESMALLSTRESTHORNTITLOTOOTHVAREIWHEATZQAPHALAPHBEAMEBERBEBINARBINDIBOWTICHECKCURVEDALDADALETDDAHADEATHDOBRODZELOETEROFACTOFIGURFLOORFORKEFRITUGAPPEGENIKGHAINGHOSTGHUNNGNYISGORGIHAMMEHAMZAHIRIQHOLAMHORSEHWAIRIAUDAKAZAKKIYEOKLASMLABORLARGELAULALESSEMETALMOUTHNASHINOTESOGONEOLIGOORNATPIASMPLANCPOINTPOWERPROTOQATANQUEENQUILLREACHRGYANRITSISCREESEGNOSERIFSESAMSHANGSHARPSHCHASHEEPSHELFSHELLSHORTSHWAASHWIISHWOOSIGNSSINDHSIXTYSLOVOSPEARSPIRISTOCKSTUDYSUKUNTANNETELOUTHWAATIGERTIKEUTRUNKTSADITSHEGTSHESTWELVWATCHWOMANYESTUYO-YAYU-YEZZIET-CHAL-KHYU-PHRUADDAKAGAINAHSDAALIFUAMOUNANPEAAPARTAPRILAREPAARIESARLAUAROURARRAYARTABBBIEPBBIETBBIEXBBUOPBBUOXBBURXBEETABEFORBEHEHBEITHBHETHBIRGABITINBLANKBLOODBRACEBRANCBREATBRUSHBSTARBULLECAMNUCANCECAUDACCHAACCHEECEALCCEIRTCHADACHAIRCHANGCHILDCHINGCHOKECHULACHUOPCHUOTCHUOXCHURXCHYRXCLOUDCOENGCOLORCOMETCOMINCOMMOCOVERCREDICROIXDAASUDALATDARGADAVIDDDDHADDIEPDDIEXDDUOPDDUOXDDURXDELETDERETDIFATDIPTEDIVIDDOMAIDOUBTDRIVEDROPSEEKAAEIGHTELEVEELIFIENTEREOLHXEQUIDEU-EUEXISTFAAFUFAIHUFATHAFEARNFHTORFIELDFIFTHFIGHTFILLEFINITFLOWEFLUTEFOLLYFORCEFORTEFRAMEFRENCFROWNGAAFUGADOLGAMALGAMLAGANMAGARONGENTLGERESGERMAGGIEPGGIEXGGUOPGGUOTGGUOXGGURXGGWAAGGWEEGIMELGINIIGLEICGRACEGRAINGRASSH-TYPHA-HAHAGLAHAITUHANDSHEAVEHIDINHLIEPHLIEXHLUOPHLUOXHLURXHLYRXHMIEPHMIEXHMUOPHMUOXHMURXHMYRXHNIEPHNIETHNIEXHNUOXHOORUHOUSEHUMANHURANHXIEPHXIETHXIEXHXUOPHXUOTHXUOXHYPHEICHOUIGGWSINNERISAKIJJIEPJJIETJJIEXJJUOPJJUOXJJURXJOYOUJUDGEJUEUIKAAFUKAIRIKASRAKATAVKAUNAKEESUKEHEHKELVIKENATKHANDKHAPHKHUATKHWAIKNIFEKOOPOKUSMAKXWAAKXWEEL-TYPLAAMULAGUSLAMBDLAUKALEMOILIBRALIMITLINESLIQUILONGALOTUSLOUREMADDAMADDAMAHHAMAIRUMANNAMANNAMAQAFMARCHMASORMEEMUMEIZIMELONMEMBEMERKHMETEGMEZZOMGIEXMGUOPMGUOXMGURXMIKRIMIKROMIREDMISRAMODELMODULMONTHMOUNDMUNAHMUSICNARRONAUDINAXIANBIEPNBIEXNBURXNBYRXNDIEXNDURXNGAAINGIEPNGIEXNGOEHNGUOTNGUOXNINETNJIEPNJIETNJIEXNJUOXNJURXNJYRXNNGAANNGIINNGOONOONUNOTCHNOTTONRURXNRYRXNUMERNYIEPNYIETNYIEXNYUOPNYUOXNZIEPNZIEXNZUOXNZURXNZYRXOBJECOJEONOLIVEONKAROPTIOOTHALOUNKIOXEIAPAATUPASEQPASUQPATAKPAZERPEACEPEEZIPEHEHPEITHPENSUPEORTPERTHPESETPHNAEPHUNGPIANOPLUTOPOETIPONDOPRINTPROOFPROVEQAAFUQADMAQAMATQARNEQHWAAQHWEER-CRERAIDARASHARASOURATIORECORRETURREVIAREVMARHOTIRIVERRNOONROBATRRUOXRRURXRRYRXRUPIIRWAHASADHESAFHASAMEKSAMKASAMYOSANAHSAUILSEENUSEISMSENTISHEENSHEQESHEVASHIINSHOOTSHORTSHUOPSHUOXSHURXSHYRXSIXTHSLAVESLICESLOPESMEARSMILESNAKESNOUTSOUNDSOWILSPICESPOONSPUNGSQUISSSIEPSSIEXSSYRXSTANDSTARKSTEAMSTONESTOVESWEETSWORDSYRMATALENTAPERTCHEHTEIWSTEVIRTHIGHTHIRDTHIRDTHITATHONGTHUNGTINNETIPPITLHEETRACKTRITOTRUTHTSERETTSEETTTHATUGRITURO2TYPE-TYPE-TYPE-TYPE-TYPE-TYPE-TYPE-UNITYUPWARVAAVUVASISVATHYVECTOVERGEVIRGAVIRGOVOLUMWAAVUWASLAWHEELWINJAWREATWRONGXESTEYA-YOYAADOYAARUYADDHYAGHHYAKHHYEO-OYEO-UYETIVYIZETYU-EOZARQAZAYINZHAINZHUOPZHUOXZHURXZHYRXZILDEZINORZYGOSZZIEPZZIEXZZURXZZYRXNAGRSHORSHEEZEROROMATILDLEFTOGHAVOCANORTCURLATTISOUTBELOBUHIPOINTACKDASHDOWNIOTAN-ARRESTGHAIACUTBETABREVCOMMGRAVKOETVARIZETACHESCURLSHELTHETSOUNUNIOALEFATTADOTSFORTHALFNOTETONAIMAGPLUSAGOGEMPTHEARSUITFIFTFILLKATOKEHELARGSHADBEGICAREFARSFIREHORIKAPPMOONSEVESHEISHINSUNGTICKCLEFCROSFATHFIRSMADDQUADRUPESIGMSTEMTCHETIMETSHEYANGALTABEHECHECCROPDAMMFITAGREAHANDIZHEJOINKAPAKASRKHEIKWAALONGNGOEOBOLPEHERAFERNOORTAGSCHWSHARTHAATHEEVANEWAVEWINDALLOBIRDCAROCHARCHINCHROCIEUCWAADELTFOOTGHANGOLDGRASHATAIEUNJHANKETTKHARLLLALOOPMNASMUSIMWAANWAAOUTEOXEIPAPEPEDAPHARPOLEPRIMPWAAROOTSEENSHWASILKSIMASTARSWAASWASTHIITHIRTSHATTHOTWAAWINEYAGHYAZHYIWNYWAAZHARZHEE-DZUALFAAPESARGIBBUTBEATBLADBLUEBONEBRUSBUKYBZUNCARTCUOPCURVCWIICWOODALEDDURDEERDZHADZHEDZJEEARTERASFEEDFISHFLAGFLATFROGFWAAGATEGCIGGGOPGGUOGHADGHHAGIMEGOALGRACGSUMGYASGYONHATEHAVEHBASHERUHHAAHIEUHXITHXOPHXUOJADEJEEMJHEHJJIEJJUTKAKOKHAHKHANKHHAKNIFKSSAKWIIKWOOLEAFLIWNLONGLOW-LWAALWIILWOOMEATMEEMMEETMESOMIEUMOUNMWIIMWOONAMENANANBIENIEUNNNANODENYIPNYOPNZUPPAWNPIEUPIWRPLACPOUNPWIIPWOOQUOTRAYSRBASRIEURISHROOKRWAASALLSALTSEALSHAASHATSHEESHHASHIFSHOGSHURSHWESHWISHWOSLURSMASSNOUSPADSQUASTAFSUKUSWIISWOOTEXTTHERTHOOTIMETIWNTLHATLHETLHITLHOTREETRUETSHETWIITWOOUNDEVEDEVIDAWALKWASLWATEWHOLWOODWOOLWYNNYAKHYATIYERIYO-IYOGHYU-IYWIIYWOOZAINZAQEZATAZLAM-CHAAESCAFTEAHSAAILMAINNAKBAALGIALLAALPAAMPSANHUANKHANSUARMYATNAAUNNAYAHB018B019B022B034B047B049B056B063B064B079B082B083B086B089B105B105B106B106B107B107B108B108B109B109B132B142B146B150B152B153B154B155B157B158B160B161B164B165B166B167B168B169B170B171B172B174B177B178B179B180B181B182B183B184B185B189B190B200B201B202B203B204B205B206B207B208B209B210B211B212B213B214B215B216B217B218B219B221B222B226B227B228B229B232B234B236B245B246B248B249B250B251B252B253B255B256B257B258B259B305BACKBAGABAHTBARSBASEBBAPBBATBBAXBBEPBBEXBBIEBBIPBBITBBIXBBOPBBOTBBOXBBUOBBUPBBURBBUXBBYPBBYTBBYXBCADBEANBEEHBELLBELTBENDBEORBETHBIRUBLANBOARBOATBODYBSDUBSKABSKUBULLBUMPBWEECAAICALCCALLCAPOCAVECAYNCCAACCEECCHACCHECCHICCHOCCHUCHANCHAPCHATCHAXCHEPCHETCHEXCHOACHOECHOPCHOTCHOXCHUOCHUPCHURCHUXCHYPCHYRCHYTCHYXCIEPCIETCIEXCLANCLAWCLEACLOSCODACOLLCOPYCUOXCURXCYRXDAGADAGSDAIRDAMPDARTDDAADDALDDAPDDATDDAXDDEEDDEPDDEXDDHODDIEDDIPDDITDDIXDDOADDOPDDOTDDOXDDUODDUPDDUTDDUXDDWADEADDEBIDEELDEHIDEKADESIDHALDIPLDISHDITTDLEEDOITDOORDORUDRUMDYEHDZEEEHWAEJECENTEETHEEU-UEULEFAAIFANGFLIPFORMFRANFURXFUSEFWEEGAMAGDANGEARGGAAGGAPGGATGGAXGGEEGGEPGGETGGEXGGIEGGITGGIXGGOTGGOXGGUPGGURGGUTGGUXGGWAGGWEGGWIGHEEGIBAGIETGIGAGOINGORTGUEHGYAAGYEEHAEGHAGLHEMPHHEEHHWAHIEXHIZBHLAPHLATHLAXHLEPHLEXHLIEHLIPHLITHLIXHLOPHLOXHLUOHLUPHLURHLUTHLUXHLYPHLYRHLYTHLYXHMAPHMATHMAXHMIEHMIPHMITHMIXHMOPHMOTHMOXHMUOHMUPHMURHMUTHMUXHMYPHMYRHMYXHNAPHNATHNAXHNEPHNEXHNIEHNIPHNITHNIXHNOPHNOTHNOXHNUOHNUTHOONHOTAHPWGHUMAHXAPHXATHXAXHXEPHXEXHXIEHXIPHXIXHXOTHXOXHZWGHZZPHZZZI-EUI-YAIDLEIFINILUYINCHINNEINNNINTIISONITEMIUJAJERAJJEEJJIPJJITJJIXJJOPJJOTJJOXJJUOJJUPJJURJJUXJJYPJJYTJJYXJULYJUNEJUOTKAAFKAAIKAPHKAPOKCALKHAAKHAIKHANKHEEKHONKICKKIEPKIEXKIROKKEEKOMBKOTOKUOPKUOXKURTKURXKUUHKWEEKXAAKXEEKXWAKXWEKXWIKYAAKYEELAAILAANLAEVLAMELAMELDANLEEKLEGSLEVELEZHLHAALHIILHOOLIETLIFELITRLOLLLOOTLUISLUOTMAAIMAREMERIMESHMESIMGAPMGATMGAXMGEPMGEXMGIEMGOPMGOTMGOXMGUOMGUPMGURMGUTMGUXMICRMIINMILLMIMEMINYMIRIMNYAMONTMOUTMOVEMUINMULTMUOTMWEENAAINAIRNANDNBAPNBATNBAXNBIPNBITNBIXNBOPNBOTNBOXNBUPNBURNBUTNBUXNBYPNBYRNBYTNBYXNDAPNDATNDAXNDEPNDIENDIPNDITNDIXNDOPNDOTNDOXNDUPNDURNDUTNDUXNGAINGAPNGATNGAXNGEPNGEXNGIENGKANGOPNGOTNGOXNGUONJIENJIPNJITNJIXNJOPNJOTNJOXNJUONJUPNJURNJUXNJYPNJYRNJYTNJYXNNGANNGINNGONOSENRAPNRATNRAXNREPNRETNREXNROPNROXNRUPNRURNRUTNRUXNRYPNRYRNRYTNRYXNULLNUOPNURXNUUNNYAANYCANYEENYEHNYIENYITNYIXNYOANYOTNYOXNYUONYUPNYUTNYUXNYWANZAPNZATNZAXNZEXNZIENZIPNZITNZIXNZOPNZOXNZUONZURNZUXNZYPNZYRNZYTNZYXO-EOO-YEONSUOOMUOOZEOUNCPAAIPADMPARAPEACPEEPPENNPESOPHAAPHANPHEEPHOAPHWAPICKPIEPPIEXPIKOPLOWPRAMPRINPUOPPUOXPURXPWEEPYRXQAAFQAAIQAPHQHAAQHEEQHWAQHWEQHWIQIEPQIETQIEXQOPAQUOPQUOTQUOXQURXQUUVQWAAQWEEQYAAQYEEQYRXRAAIRAIDRANGREMURICERIELRIRAROARRRAXRREHRREPRRETRREXRROPRROTRROXRRUORRUPRRURRRUTRRUXRRYPRRYRRRYTRRYXRUISRULERUOPRUSISA-ISAAISADESAILSALASALASBRUSCWASDONSHAPSHAXSHEPSHETSHEXSHIISHIMSHOASHOOSHOTSHOXSHUOSHUPSHUTSHUXSHYPSHYRSHYTSHYXSIGESIXTSKINSKULSKWASNAKSPOTSPWASSAASSAPSSATSSAXSSEESSEPSSEXSSIESSIPSSITSSIXSSOPSSOTSSOXSSUPSSUTSSUXSSYPSSYRSSYTSSYXSTANSTEPSTILSTILSTWASUOPSUOXSURXSWUNSZAASZEESZWASZWGTAAITAKETALLTE-UTENTTETHTHEHTHEMTHEYTHOATHURTHWATIEPTIEXTIGHTINYTIWATLEETLHUTOTATRADTRIOTSAATSADTSWATTAATTEETTEHTTHETTHITTSATTSETTSITTSOTTSUTUOPTUOTTUOXTURXTZAATZEETZOAU-AEUATHVIEPVIETVIEXVURXVYRXWAENWALLWELLWESTWORKWRAPWUNJWUOPWUOXXIROXYAAXYEEXYRXYA-OYAAIYABHYACHYADDYADHYAGNYAHHYARRYASHYASSYATHYATTYAZZYERAYI-UYINGYO-OYOMOYORIYU-AYU-EYU-UYUANYUDHYUOTYURXYYRXZAYIZHAAZHAPZHATZHAXZHEPZHETZHEXZHOPZHOTZHOXZHUOZHUPZHURZHUTZHUXZHWAZHYPZHYRZHYTZHYXZUOPZZAAZZAPZZATZZAXZZEEZZEPZZEXZZIEZZIPZZITZZIXZZOPZZOXZZUPZZURZZUXZZYPZZYRZZYTZZYXOPEFULSEEIOTEASFROTODFIVHOUTENSIBFOUOVEHORQUADASNEOPHIPSITHEKOMRHOYUSGHAOXIROCBHASARTACTAUDOEJHARRAWIDRDESHIWAVZAIDIGSHOARCKAFLEGSTOTAMYANDZEGHEGOAGTENUNNYOSTASUNTAIWAVWAWWORZERAPLBEECLEDJEDKADYEDZAEIEFEHFISGANGUEHIEKSILAMLJEMEMMGOMUCMWANAMNARNJENOWNWANYENYIOOUPEERAATHETICTTEYODBASBEEBOWBZHCOWDONFLAFREHAEJILKEHKHIKHOKWEKWILASLOOLWAMENMWEMWINAANYIPARPEHPHOPWEPWIQAAQARRAERHASHOSHUSSISSOSSUTHATOOTWEVEEVINWAEWALWEOXANXEHYAKYATYYAZENALLAYBAZUBAABEHBENBOLBWACIPCLUCOOCUPCWECWICWOCYPCYTDDADDEDDIDDUDEIDJADLADOGDRUEWEFAAFEEFEIFLYFURFUSFWAGAYGGAGGEGGIGGOGGUGHOGIMGJEHARHMOHNAISOJJIJJOJJUJJYKAIKENKHEKITKJEKKAKOOKVAKWOLAALWELWILWOMAAMOOMOOMPAMWONEENGANIBNOONRANWENYUOHMOILOKTONNOTUPAAPARPATPHUPOLPOOPUTPWOPYTQAIQIIQOTQUOQUURGYRNARRERROSEHSHASHOSHYSIOSJESOOSOUSSESWESWISWOTAGTATTAVTETTJETLATLITLUTOTTRETTITWIUSEVAVVEPVERVEWVOUVURWAUXVAYAJYAQYAZYEAYERYFEYOOYWEYWIYWOZHIZHOZHUZOTZZAZZEZZIZZUAAYADAAMBARCATOAUEAWEAXEAYEB00B00B00B00B00B00B00B00B00B01B01B01B01B01B01B01B01B02B02B02B02B02B02B02B02B02B03B03B03B03B03B03B03B03B04B04B04B04B04B04B04B04B05B05B05B05B05B05B05B05B05B06B06B06B06B06B06B06B06B07B07B07B07B07B07B07B07B07B08B08B08B08B09B09B10B10B10B10B12B12B12B12B12B12B12B13B13B13B13B14B14B14B15B15B15B16B16B17B17B19B22B22B23B23B23B24B24B24B24B24B25BANBBABBEBBIBBOBBUBBYBCABELBELBETBETBHOBIBBIGBKABOABWEBWIBXGCADCANCARCATCAXCCACCECCICCOCCUCEDCENCEPCEXCHACHECIECIICITCIXCOACOPCOTCOXCUBCUOCURCUTCUXCYACYRCYXDADDAEDAMDARDATDEKDEZDLIDLODLUDRIDRYDULDWEDWODYODZIDZODZUEGGEISEKSENNENOEOHERGERREUREXOFANFAPFAXFEEFEHFENFEOFFIFFLFIIFILFILFIPFITFIXFOOFOPFOXFUPFUTFUXFWEFWIFYAFYPFYTFYXGAFGAGGALGARGCAGEBGETGHIGHUGHZGIPGOAGPAGSUGYAGYEGYFGYIGYOGYUHELHENHHEHHIHHOHHUHLAHLEHLIHLOHLUHLYHMIHMUHMYHNEHNIHPAHWUHXAHXEHXIHXOHZGHZTHZWHZZI-AI-OIORJAAJARJEHJERJHOJIAJJAJJEJOAJOYJWAKAHKAPKAUKAXKEPKEXKEYKHZKIEKIHKIIKIPKIXKKEKKIKKOKKUKOAKOHKOPKOTKOXKPAKRAKUOKUPKURKUTKUXKXAKXEKXIKXOKXUKYAKYEKYIKYOKYULAELAGLASLAZLEOLHALIDLIILINLIRLOALOGLOGLOTLYYMASMAYMCHMDUMETMEXMGAMGEMGUMHZMIIMILMILMIMMOAMOLMYAMYTNAGNAONBANBINBONBUNBYNDENENNETNEXNGGNJINJONJUNJYNNGNNONOANRENRONRUNRYNULNUPNURNUXNYENZANZINZUNZYO-EOAKOAYOBOPAPPATPAXPHUPIEPIGPIPPITPIXPLAPOAPOPPOXPPMPU2PUOPUPPURPUXPYPPYRPYXQALQAQQAUQEEQHAQHEQHIQHOQHUQIEQIPQITQIXQOAQOFQOOQOPQOXQUAQUEQUIQUKQUPQURQUTQUVQUXQWAQWEQWIQYAQYEQYIQYOQYPQYRQYTQYUQYXRA2RA3RADRADRAIRAMREIRIPRJERJEROAROORRERRURRYRUARUNRWARYARYYS-WSADSAYSBUSGASGOSGRSIISINSKWSNASOASOWSSYSUASUOSURSZASZESZISZOSZUTA2TAOTAPTAPTAWTAXTESTETTEXTHETHITHZTIITIPTITTIXTLVTOATOXTRITSVTTHTTUTUOTUPTURTUTTUXTYATYETYITYOTZATZETZITZOTZUUEEUEYUNDUNIURUVAAVAPVATVAXVEHVEXVIEVIPVITVIXVOIVOPVOTVOWVOXVUPVUTVUXVWAVYPVYRVYTVYXWAPWATWAXWEPWEXWOAWOEWOPWORWOXWUOWYNXOAXORXYAXYEXYIXYOXYPXYRXYTXYUXYXYABYADYAFYAGYAMYAPYARYAVYAWYAYYEAYEWYEYYIIYUDYURYYPYYRYYTYYXZAHZHYZLAZOOZRAZUTZZYKABEDATHFEDASAENQATAARNOLEMAOCBIRHTEWAYICHMGARBUCUGHNEPUTIGAKHZADIPHZHPHQIQUSICHMEMINEPEQOVEYOBABEDYFOHAKANAQERASIVA-UCHDADUDZEXGRGUHOHPHVIJIUIYJEJOKEKGKKLJMINJNUNVNYOHPAQORDSUSWWOYEYUANBEBOBQCMCUDLDMDRDVECFMFYGBGVGYHGHKISKBKIKLKMKTKVLALCLCLHLNLXMBMEMGMHMLMMMSMVMWNANFNGNHNMNWNYOVPCPEPFPOPRPVPWQOQYRIRJRUSNSOSRTATATETETITRVEVEWBWVXYYAYVZLBMAYDZKCDKMDLMMMMPQT  #(5AGMRZcgltw~ '-5>BGJQX^ajrw}+d  !%,/49<FOW^fjrz#(,9BGJTYbkmrw~P  "&-29=AFPVX]cEjntx{;p&<Qfz&8J\n0ARct'7GWgw  ' 7 G W g w   ' 7 G W g w   ' 7 G W g w   ' 7 G W g w   ' 7 G W g w '7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw'7GWgw  ' 7 G W g w !!'!7!G!W!g!w!!!!!!!!!""'"7"G"W"g"w"""""""""##'#7#G#W#g#w#########$$'$7$G$W$g$w$$$$$$$$$%%'%7%G%W%g%w%%%%%%%%%&&'&7&G&W&g&w&&&&&&&&&''''7'G'W'g'w'''''''''(('(7(G(W(g(w((((((((())')7)G)W)g)w)))))))))**'*7*G*W*g*w*********+++.+=+L+[+j+y+++++++++,,,-,<,K,Z,i,x,,,,,,,,,,--,-;-J-Y-h-w---------- ..+.:.I.X.g.v.......... //*/9/H/W/f/u////////// 00)080G0V0e0t0000000000 11(171F1U1d1s1111111111 22'262E2T2c2r222222222233&353D3S3b3q333333333344%444C4R4a4p444444444455$535B5Q5`5o5~55555555566#626A6P6_6n6}66666666677"717@7O7^7m7|77777777788!808?8N8]8l8{88888888899 9/9>9M9\9k9z999999999:::.:=:L:[:j:y:::::::::;;;-;<;K;Z;i;x;;;;;;;;;;<<,<;>*>9>H>W>f>u>>>>>>>>>> ??)?8?G?V?e?t?????????? @@(@7@F@U@d@s@@@@@@@@@@ AA'A6AEATAcArAAAAAAAAAABB&B5BDBSBbBqBBBBBBBBBBCC%C4CCCRCaCpCCCCCCCCCCDD$D3DBDQD`DoD~DDDDDDDDDEE#E2EAEPE_EnE}EEEEEEEEEFF"F1F@FOF^FmF|FFFFFFFFFGG!G0G?GNG]GkGyGGGGGGGGGGHH!H/H=HKHYHgHuHHHHHHHHHHIII+I9IGIUIcIqIIIIIIIIIII JJ$J1J>JKJXJeJrJJJJJJJJJJJKKK(K5KBKOK\KiKvKKKKKKKKKKKLLL,L9LFLSL`LmLzLLLLLLLLLLL MM#M0M=MJMWMdMqM~MMMMMMMMMMN NN'N4NANNN[NhNuNNNNNNNNNNNOOO+O8OEORO_OlOyOOOOOOOOOOOPP"P/PWJWVW>bWbnWzWWWWWWWWWWWW XX"X.X:XFXRX^XjXvXXXXXXXXXXXXYYY*Y6YBYNYZYfYrY~YYYYYYYYYYYZZZ&Z2Z>ZJZVZbZnZzZZZZZZZZZZZZ [["[.[:[F[R[^[j[v[n[[[[[[[[[[[\\\*\6\B\N\Z\f\r\~\\\\\\\\\\\]]]&]2]>]J]V]b]n]z]]]]]]]]]]]] ^^"^.^:^F^R^^^j^v^^^^^^^^^^^^___*_6_B_N_Z_f_r_~___________```&`2`>`J`V`b`n`z````````````aaa%a0a;aFaQa\agara}aaaaaaaaaaXaab bb"b-bi8bCbNbYbdbobzbbbbbbbbGbbbbb ccc*c5c@cKcVcaclcwcccccccccccccddd'd2d=dHdSd^didtdddddddddddddeee$e/e:eEePe[efeqe|eeeeeeeeeeeef ff!f,f7fBfMfXfcfnfyfffffffffffffggg)g4g?gJgUgH`gkgvggggggggggggghhh&h1huGuPuYubukutu}uuJuuuuuuuuuuuuuv vvv(v1v:vCvLvUv^vgvpvyvvvvvvvvvvvvvvvw w^aww$w-w6w?wHwQwZwcwlwuw~wwwwwwwwwwwwwww/bxxx x)x2x;xDxMxVx_xhxqxzxxxxxxxxxxxxxxxy yyy%y.y7y@yIytRy[ydymyvyyyyyyyyyyyyyyyyzzz!z*z3z~G~P~Y~b~k~t~}~~~~~~~~~~~~~~~ (1:CLU^gpy8 $-6?HQZclu~ƀπ؀ )2;CKS[qGcks{ÁˁӁہIk #+3;CLKS[cks{G5MÂ˂ӂGۂ)JZW #+3;CvKS[cks{Ã˃Ӄۃ #+3;CKS[cks{Ä˄ӄۄ #+j3;CKS[cks{xÅ˅Ӆۅ #+3;CKS[cks{ƈӆۆj #+3;CKS[cks{cgǡӇۇ #+3;CKS[cks{xÈˈӈۈ g#+3;CKS[cks{ÉˉӉۉ o*#+3;CKS[c[ks{Êˊӊۊ #+3;CKS[cJks{ËˋӋۋ #+3;CKS[cks{IÌˌӌی %q#+3;CKS[cjqx)Mō̍Ӎڍ'+  '.5ELSZahov}kVÑʑёؑߑ %,3:AHOV]dkrbyvƒ͒Ԓے !(/6=DKRY`gnu|“ɓГדޓ$+29@GNxU\cjqxŔ̔Ӕڔ g '.5ELSZahov}Øʘјؘxߘ&q %,3:AHOV]ciou{Ɣ}mÙəϙՙۙiW #)[j/5;AGMSY_ekqw}jaVcKmyJŚ˚ њך 4Xݚ㚫G隰WAIVK %+17=MCIOUj[agmsy*Ǜ͛ӛٛߛ W!'-39?EKQW]ciou{hy=jÜɜϜ՜ۜ #)/5;AGMSY_ekqjw}ŝ˝ѝםݝ %+17=CIOU[a]gmsyǞ͞Ӟٞߞ eg!'-39?EKQW]ciou{jßɟϟ՟۟ #)/5;AGMSÓY_ekqw}ŠˠѠנݠ %+17=CIOU[agmsyǡ͡ӡ١ߡ塍 X!'-39?EKQW]ciou{âɢϢբۢ #)/5;AGMSY_ekqw}ţˣѣףݣ %+17=CIOU[agmsyǤͤ1Ӥ٤ߤ !'-39?EKQW]ciou{åɥϥեۥ #)/5;AGMSY_ekqw}Ŧ˦Ѧצݦ馉~ %+17=CIOU[ag*msyWǧͧҘӧ٧ yߧ !'-39?EKQW]ciou{qèɨϨըۨ #)/5;AGMSY_ekpuzuJpũʩϩԩ٩ީ4l|r h$).38X=BGLQV[`ejoty~aĪEɪΪӪتݪ ğ#(-27CHMRcxW\afkpuzHnŮʮϮԮٮޮ $).3.8=BGLQV[`ejoty~ qįɯίӯدݯ #(-27CHMRW\afkpuzųʳϳԳٳ޳ $).38=BGLQV[`erxjoty~wĴɴδӴشݴ #(-27CHMRW\afk"puz(.4:ŸʸϸԸٸ޸@F .$L)RrX.38=BGLQV[`ejoty~ޚĹɹιӹعݹ dp#(-27CHMRW\afkpuzqyŽʽϽԽٽ޽ $).38=BGLQjV[`ejoty~jľɾξӾؾVݾ #(-27CȈȌȐȔȘȜȠȤȨȬȰȴȸfȝ  $(,048<@DɒHLPTX$\6.`d;38=BGLQhlptx|ɳt!+ vɄ05:ӣɌɐɔUgg~ɜɠɤɨɬɗɴɸɼ?~ oNSXƮˮЮy/Þ;%gϯž ʤEJOT^chmr w[|$(Y},0۷4n8Lu[D4qlJ ~}HϔgK[N{quب&Qϳ*TCaWǮ؄|IԿZg[ ̮]HGZ]EsX Iڝ.`cσZfbp*bV}i[`loru"xǗX{ϯX~ρτ{VϢ Scxύ䥐iPv Ė+l#ɩyiǜwgwWۓg**F8QJw`lK 7XϨϫπH8DZϠϷϺLrfGυ~ Ǒϰ4yoCHXϧWS`@`m~E b =#mi+y&),/2@5К8;>fADGнJFMDTPv]k`(SVY0k\_behkn6`qtwНDz}ЀЃUkg>g:ĉЏВЕИЛОСФ˯бͪЄгжймп4Hrд  Ю;u ѵM ќѴI<"Ѩ%ѵ(ǩ+.1y4K]$ %&b7{u9@э;ы=?ї_<AuwCQEGlNT[rIKa|juXFɿM_jĭ|q#aOQIZSUWLbY[9] *Œ'bf=F 4A"ϑ _`6E3E=4r4k4;(J&J414^%o,44D4ECHGIO(hK&h66CHGIO(h;&h6E'4444}44 W-3E4]4p441o16Q44(1:$-3E}!}TE030i00mbuuu0uu%4ul0kJ030i00mbuuu0uu4ul0kkGGiii0i0i50i50iiggglgl5050GGh0h0hhh50h50hhj0j0jljlGG50FGccs0s0mmddddddd(d(dldlbbbbbbb;lluuuuu-u-eeeeeeccc0c0ccccffffflfl3030--GGo0o0k0k0kaaa50a50aa)l)Z)|)|#IiZiZgZg|g|HV#HpZpZhZ blmZmZd}lͭb(Zb&uuuu**rZrZoo]&ifAZfZfZf6ZnZkZkZalall>wl6R]r];]6](ga(mdmqbquu88888888H885<5<hlhlhhmmuGuGuusXgXhh6bb3<3<uu------u-u-uue-e-ee--c.c.f.f.;;jjb&ug  aZaZ5050u8u8uuu50u50u5<u5<kkdbfFGYlilild}flc~a~>C)Z#IiggZHVIZ#H#H#Z#HFslhZT jZ4ZlGddd6Z+ͭlulZb(Zb6Z ;>n]#HhZsetZ>wl>wl((p^\pNO_M_jdj 11jZ111͐1eZ1쑐11191-911;11&1(1>1>1(1&1X1\161;116161;116161+1+1&1(1X1\114145030G-61SZ1&61 1111>1}1ȼ}1(}1}1W}1bE1zbE1,1/1-;1\1X1(1&1161-61-611T1N1N1N1N11#1(8262626222J225022-02302-622;)02-;)02-62M22020202<2.2.2(T.2&T.2(022(3.2XT.2\T.21.2.2-.26-.25.28.23.2.22G2;).2m.2-.2V.2.2.2.2.2*.22-2222S2S2&3.2m.2.2.2q02;2-J2E2E2G22;2#2m02.2-;).2(.20202(_02(&A.2A.22&L02(302 2q.2(L.2&L.2&LXL.2&3025<2.2-3.2~02-.2-2-2-*.2-2-2-MA.2C2H2G2I2O2222222244#E;9{*@5*; W&)!IUDCE*59{*5; W&)!IUDCE*5@5v[[5-[5-[58-[ [[A[MMMMyy> > >>>>>@>@>>>s>s>X>X>5>5[[C-[[C9[C9[nnC-[[C-[C-[C-[ * d  M  ~ G     ( `  O  C      {  G G     I     O   p X .  O4 S 4 H   C      {  G G     I     O   p X .  O4 S 4 H   * d  M  ~ G     ( `  O      H H eJ eJ eJ eJ J J J J   E E 9 9   -6 -6       C C M M r42 2 2 2 2 \r42 4   $4 $4 6$ 6$   l l Z Z   . .   ;l ;l l l       &Z &Z B B 7 7 - - O O ڄl ڄl : : -p -p   ;l ;l   BX BX B B E   Z Z 1 1 Z Z   ;X ;X         * * V V I I   . . B~ B~     u u  ̵. 5̵0 ̵. ̵0 50 n.  ^0 ^̵. ! n. l ':0 0 ̵-0 !0 . ̵. 50 ̵0 ̵. 350 35. .   } !0 0 '!0re)LwcH*d"WJSD6X%UMU=UUCUCUUGUUOUUUU=HUHUHUU=IUIUIUUU=UUMU2UU9UUYUNUGUUKUURU~U7UULUUUUAUUQUUUU`UU^UhUU.UBUUUQUPU!U!GU!U!OU!U!U!U!=HU!HU!HU!U!=IU!IU!IU!UHU+UUU6U6UUUUUKUUUUUU!U!UoU-oUUUoUUUUUUUUX4U>eMe=eeCeeGeeOeeeeHeeIeee=eeMe2ee9eeYeNeGeeKeeRe~e7eeLeeeAeeQeeeee.eBeeeQePe!e!Ge!e!Oe!e!e!e!He!e!Ie!eHe~e'3Ee`eeeee!e!eeeoeeeeeeee?Ve?Ve,Ee,4eOeOoeOeOeO}ee쭅CGOɅ=M29YNGKR~7LAQޅ؅^.ۅQ!!G!!O!!!!!Hυ`مo˅ÅʅkI)pMp=ppCppGppOpppp!=HpHpp!=IpIppp=ppMp2pp9ppYpNpGppKppRp~p7ppLpppAppQppppp^pp.pBpppQpPp!p!Gp!p!Op!p!p!p!=Hp!Hp!p!=Ip!Ip!pHp+ppp!p!pppopppppppp,4vMv=vvCvvGvvOvvvvHvvIvvv=vvMv2vv9vvYvNvGvvKvvRv~v7vvLvvvAvvQvvvvv^vv.vBvvvQvPv!v!Gv!v!Ov!v!v!Hv!v!Iv!vHv%3Ev'3Ev`vvvvvvvovvvvvvvvv=쭌CGOHIɌ2NGR~ތ،`^h.Bی!!G!!O!!H!!!I!!H'3EٌoˌÌʌ=5=}알=}14Z44;4D4<4,4=4|M|=||C||G||O||||H|||I||||=||M|2||9||Y|N|G||K||R|~|7||L|||A||Q||||`||^||.|B|||!|!G|!|!O|!|!|!|!H|!|!|!I|!|!|H|3E|%3E|||||o|||||||s=ssCssGssOssssHsssIssss=ssMs2ss9ssYsNsGssKssRs~s7ssLsssAssQssss`ss^ss.sBsssQsPs!s!Gs!s!Os!s!s!s!Hs!s!s!Is!s!sHs3Es%3Essssssosssssssʂ=쭂CGOHIɂ=M29YNGKR~7LAQނ؂`^h.Bۂ!!G!!O!!!H!!!I!!H'3Eقo˂Â{s{'{{5{8{{f{{{'{){{%{{;{{9{{{D{{:{{:{iY{z{{:{{:{Y{{z{{:{a{:a{h{za{.{:.{{:{{z{{:{{:{{{/{{{){{h{{{h{{Z{!C{!fQ{!kQ{!f{!k{!f<{!k<{!h{!{!k{!>{!@C{!@kC{!@Z{!Z{!kh{!kZ{3kc;[kc kckckc kckckc#kc#5kc#3kc#kc#kcBkc01kc1kckckckc3 kc0kckckckckc3kcEkcXFkckc+7kcu|kc kckcSCkc kcSkcS kcSGkcSkcSkcSkcSOkcSkck kcSHkcSkcSIkcS%kcS%7kckc8kckcZkcakckckc)kc?kckckkkokkkkkkkkcqkcl#x#xW#xИ#)xx)#+ט+6## #I xE!C!!! !G!!!M!O!!ؘ!H!Y!I!!!;ZaԘvE٘o˘Øʘ /+/C/Op/O1/6///1/A////1(///1/1/~//HQd//F/F/Y CF/Y/YC/e/e/e/eB/eB/ee///o/////////o/////////F/wtl/Hpd/wF///_H/_H/P/P////=//M/2//9//N/G//K//R/~/7//L///A//Q//Z/////c//N////./B///C///!/!G/!/!O/!/!/!/!/!/!H/!/!I/!/[//!G/!/t /'///F/zF/d/d/^"/^"//=//M/2//9//N/G//K//R/~/7//L///A//Q//Z/////c//N////./B///C/////<@=/<@pd/R`/R/R/R/ / |/ a/ |/ / / // // //eB/9/Y9؃Ƀ=M29YNGKR~7LAQރ؃ۃ^CGOHI!!G!!O!!H!=5.쭃Hكo˃Ãʃe҃҃ 4 f ? .B!!!!KKKKKK KKKKKKKK KKKKKKKKsKgK_KK!KXKdKKKWKKeKKKKKKKKKKKK KKKKKKKK KKKKKKKKsKgK_KK!KXKdKKKWKKeKKKKKKKK K^KKiK[1KfcfWfPfffefUfNfSfOf"f fKfGfMfffffJflfifaff8flfjfUfGf\f(fmffnfBffff4ffjfKf4f3f)ffcfffdfgffLffffef7f8f:f9ffxff fffjfffffDfNffBfFfEfsfwf>fffff=fff2f fhfffrrC;HI O=GST`456:$<VcabcA@rcrWr[rPr]r^rfrUrbr`rarJr+r*rUrNrSrBr"r rKrGrrrrrJrrrlrarZr/rJr8r=rrlrorrjrrrrrr7r6rLrrrr\rVr2r.rIrr(rr3rr)rcrdrgrLrrjrrNrCrsr:rr2r rrrrrfrPLef8<:9;no. vnyXF-bprqY][Z\  HI "$10   ~WT7%6)*/576vN}.>C>O>G>>>H>I>ZA" C O G   H Iuc{TK43$)29nD$&%FJHcgGI7yLMoa9C6X} A@DZ'p]<=>?B2EE*%E[o=5=M=e==2==&====1^e^$^B_^  S   T     mCmHmGmImOmmmmmmmmmmmmmmbmmmmmmmmmmmmmSmmmmmmsmgmhmimmmnmmmmmmmmm~mmmmmmmm7mmmmmmmZmpmmmmmmmmmmmmmmmm HGI,77GCjjjjjBjjB,>&--;-(ףl \ ,7P7jjjjjjvjv,vj7W,77~jj*j*ojo+j+jjBGb,bZjjjdjdjjAjABAlVVVV67*,*%,j,-j-j.j.jj[j[B[$.=p,pnjjjujujjmjmBmj/$fy,y|j|jnjnBn7!,ejjjkjkjljljjjjq<,jjjjjj}j}B}/9BBBbB|B]BBvInL.jjjjjyjyjHQ,jj=j=j>j>jjBbj$Jjjjjjq>X?<jooyya7Lj.VVV=VVNVVrV-d"#$!jjjj2$v$$n$.oya7.g.h/,XoXyXXaXX7XLX.9H9G9I9C999999999999$$$$77K77w77M7777777777777X7W7U77V7T77a7o7M7y77777777G77777777777D77777^7 77=777777a7k7777v777777o777777777$7777$77X7W7y77V7x7777f777777F77777h77-7g777$7"77#7!777777777777776777~7N7777777777n7v7 77.7H777p7'77Z77}7X767C79777777S4%`E7h>!0^~4H6EEwJww_OwwwwwmwRCwVIwCCwEwIwMIwIww wGwwwwwlw )w w(wwwwwwwwlMGwHwwwHw6Cwmw98wLawzwYwNwwwwOwwL wwwwPHHwow1ww̢wwbwhwwUIwwjwbww/wxwwPwwww KwKw&Kw[w"[wK[?C?G?O???2?~???????????!G?!O?H<C<G<O<<<2<~<<<<<<<<<<<?y? ?x?*E???;]?? ?;????o???????? ? c? ? q? ? ? ? O? N? ::E::%::::/]:6N_::%::":"o:":!:::o::::::::C:H:G:I:O:::::|::::::::.:~::9:::::::=:Z::r:q:::C:/!4:/H:/G:/I:/O:/:/:/|:/:/:/:/:/:/~:/:/9:/:/Z:/:/:/:/:/r:/s:/:/:6H:6G:6f:6:6O:6|:6:6:6:6:6.:6~:6:6:6:6:6r:6Z:6:6:69:6c:G::::c:$>:$:$$:$2:$2:$:$:$C:$G:$:$2:$:$G:$:$K:$R:$~:$:$:$A:$B:$c:$:$:/$~:/$c:$M:$2:$:$Y:$G:$:$~:$L:$B:$:$c:$:$O:$:$Q:$eAuɕ=M29Y˕~7LAQޕؕ.Bە!C!G!O!!!!!H!Iؕɕ2=~ޕԕ;6EEٕo˕ÕQQQ2QZQQQ~Q7QQQAQQQQQQ=QQQCQGQQ$QOQQIQQHQQQQQQQtQztQztQztQztQz2tQztQztQz2tQzZtQztQztQzZtQztQztQz~tQz7tQztQz~tQz7tQztQztQzAtQztQztQzAtQztQztQztQztQztQztQztQztQztQztQztQztQztQzctQztQzctQztQz!!tQz!tQz!tQz!OtQz!tQz!HtQz!tQz!ItQz!utQz!tQz!!tQz!tQz!tQz!tQz!8tQz!tQz!ftQztQztQztQztQztQztQztQztQztQztQztQzotQztQztQztQztQztQztQztQztQz$? ? t? E? Q? "? ? ? ? ? ? V? ? ? ? ? ? &? tP? EP? QP? "P? P? P? P? P? P? VP? P? P? P? P? P2s~{NC!G!O!H!I!C<mH#HGdlI#II#Iul II͐OOOͭ;1 i !IE 1C111<11H1H111G1111111I1 1111O11C1C11111H1V1#H1#H11G111l1I1#I1I1I111O1O1ͭ11i11 11D1C0G00O000 0I0D0C)gplbree cfa1 e]Rl*lrll5l)AZgAZpAZhAZmAZdAZlAZbAZrAZeAZcAZ&AZnAZqAZaAZ6Z6Zg-6Z#6Z#6ZI6Z6Z#u6Z&6Z6Z6Z111i1m1#H11Fsl1T11l11G1l1se1d6Z1dAZ11lZ1lu1b(Z1b6Z113E(-3E&-3E-3E->3E-E+E}55E)[`4c4`cDU4D49-999-99 W3E $3EZE-6EJcE%(4&4-E6E6E<4VEVME44o3E5KG9:5K05K5K:5E";: t{ &' &'11G1111111141D141(J1&J1000o00000000140D040(J0&J0C0H0I00V44`4u\444g4:4,44th4444444?4V44^442(02&02;)2;)2VA02>A02(A02&A0232>32V32̵02:02I32I;2I2I2(&A02I2Ik2I.2KS2-;2[22bm02A2-S렙pU.)[WvpTTPvZ;TGPGTTd)[4XiTߊߊTPEq44슊4w4w4P4<4TP[THTHTTTIS[5[[[x4  AъъHGD4}웫}k웫:}q0}70Oڲڲoڲڲڲڲڲڲڲڲ5ڲ[ڲaڲ2ڲ}ڲ0ڲ}1ڲڲoڲڲڲڲڲڲڲڲ5ڲ[ڲaڲ2ڲ}ڲ0ڲ}1ڲ}iڲ01ڲ1ڲ}앋88M8-8(&8X\888+8+888AlMAl8M8s8s8Ms8-s8AMAA,}A,}MA,}-A,}X\AAZMAZAiMAi(&8(&Al-~8AA?-A-A?MA -AV@8>@88A}A;MA}V#8>#8΋ ?MM -?-MA;8A-8A;M8uhuhMuh-uh;MM;쯋-Al(&-AlM-Al-8-8M-8--8(&-8X\-88-8+-8+-88-88M88M8A-l-A-l7878M78-78A}MA}@8@8M@8-@8@A,}@A"@A"}@A";}@-8@-A"M@A,8AC+ACX\@8&A3-A8MhA;lMA;l(&A;lA-;lMA-;l(&A-;lH8MH8(&H8|dZ:VdODDDDVB2A445 %D/3/)/wwwWe&666m6pVWW8[8X:<-<<<<<><>:  _Wѓ_W&+ D{%5/3//qT TDT{T5/&(\X^&N;&-;-&VC&Vr-;-&,\,\444˓_W4ˀ_W g#1h"&q&.8[8X:L/5//{(4&4(&q88[-W-T-X-:_W,(D(U,_UD___U_k_oV鹿 Vр  _Wѓ_W _Wѓ_W,WDWWW4V4됡4˓_WV4ˀ ;EEX&E\&EDlD;lD;lD50DDD2D-l;l;la~4i48X\g(&(&&7(7&7(74qqW*;4͡4'(C&C(C&C< > >줍 >s >3 g s ^} } >% > > >U O MO >8 >M8  \T2 \g >\ > \Ts O >8 XT죍 8g >X > XTs -O >-8 2 \2 L2 h2 2 Xs + 华 > XT 8 h گ \g (g ۯ D } 8 ύ z c2 > >U \ X 퍎 I  2 92 *2 2 5E&-~8#\r[;)([h[[[~[@.;R[Di[3[@8[[[[[[[! &o[ +_i[[[(8Z(8 (8Z&8Z&8 &8Z(4C(4 (4C&4C&4 &4C(4Z(4w(4Z4 &4Z&4w&4Z ) (&4ҽ&(4pphh4;h (;B&;Bwxyz: ;: ;: ;3: \3: X3: ;.: \.: X.: ;P: \P: XP: \2: X2: ;: ;^P[Q[;) 췷;l;B췷;췫;B췫g1R>U^  | |  >  g  ` k ) ;k & T    qn qno qn qn g  ,       O   '[#\  Q&o &oZ2s$fC a-o=5=[=a=U=R====Q=S=MRRoRRRRRRRR=5R=[R=aR=UR=RR=R=R=R=QR=SR=M}%%%:%0%%%%%=%=]%=%=%=%=F%=%=d%=%=%=0%RCRRRRHRRRRGRRRRRRIRRRRRRORRRRRCHGIOCHGIO=[=a=U=R====Q=S=M--o--------=5BF2BF`2BF?BF`?BF?2BF`?2BF??BF`??BFG?2BF`G?2BFG??BF`G??BF\BF\& BF\`& BF`\BF\BF\( BF\`( BF`\BFXBFX& BFX`& BF`XBFXBFX( BFX`( BF`XBF;BF;& BFX`&\ BF\`&X BF;`& BF\&X BFX&\ BF`;BF;BF;( BFX`(\ BF\`(X BF;`( BF\(X BFX(\ BF`;BF\2BF(`&\ BF&`(\ BF\ BF\` BF&(\ BF(&\ BF`\2BFX2BF(`&X BF&`(X BFX BFX` BF&(X BF(&X BF`X2BF;2BF(`&; BF&`(; BF; BFX`\ BF\`X BF;` BF(X`&\ BF&X`(\ BF(\`&X BF&\`(X BF\X BFX\ BF&(; BF(&; BF`;2BF-?2BF`-?2BF-??BF`-??BF-2BF-?BF\ &NBF\-&RBF-\BF\ (NBF\-(RBF-\BFX &NBFX-&RBF-XBFX (NBFX-(RBF-XBF; &NBF;-&RBF-;BF; (NBF;-(RBF-;BF\ NBF\-RBF-\2BFX NBFX-RBF-X2BF; NBF;-RBF-;2BF\BF\BFXBFXBF쟽&BF쟽(BF"BFBFBFBFBF`BF`BF`BF`BF(`BFX`BF`(BF`X콉 }> }P b 0b b % (b ( (0b ( (b (}P (}> & }> &}> 잨잨잽잽((잽(잽(&잽(&잽잽&잽&(V;@;@y@"V;;3(&&(3V;@;V@V;@;V0@0V<.@<.V<.@<.V$.@$.V$.@$.V$@$V[.@[.V[.@[.VW.@W.VW.@W.VW@WV@@L"V@33;V3(&&3((V3&V3tEt@3t@3t@3(q&q&q(q33V&.V(.V(.V&.@E(&(쟉&쟉@;@<(<(<&3@(F@(F@&F@&F@(F@(F@&F@&F(.&.(.@;V;@;V;&.V~= @V@Qbc@@@@@@VVVVVVV@@LV)@VVL@)` P > >ll4l4lJ48"+"A[A KA KA KA KA KA KA KA RVA[q[q[Jq4)[<=>?@A@5@V@5V@2828828@Vq:Mb\[44`4_4`_4_`4_4__`4;_4_4@3V3@3[-[^[O]V]]@]q4Y ;;&&@xVx5E`5E%`%[`["`"#."`#.""@""~"J::4:'4`:'4:{4V:J@:J@@#.VV.@V`V@`4#.4|4JVJJVJbV`JbVJVJ4:4#.:4`:4V@XVX@XVX#.J`:4*#*`**`*'4:4`:4@3&g@;&g@;&@;&@;VL@Έ;};}`;}` 35` 35`-35`-35_[5`65`65`Vx`VExE(85&85z(85z&85W45$45`W35`$35`W45`$45(45&45(45&4577o77777777=577o77777777=577o77777777=5`M8`+8`M8`+8M8`M88&A 8M8(&8-8M-8(&-8A,}MA,}-A,}M-A,}M8#$!#$.#$/#$q#$0#$r#$x#$#$1#$s#$y#$#$~#$#$#$q#$2#$t#$z#$#$#$#$#$r#$#$#$#$v#$#$#$#$#$3#$u#${#$#$#$#$#$s#$#$#$#$w#$#$#$#$#$#$#$#$z#$#$#$#$#$#$#$#$#$#$#$#$#$4#$v#$|#$#$#$#$#$t#$#$#$#$x#$#$#$#$#$#$#$#${#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$}#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$5#$w#$}#$#$#$#$#$u#$#$#$#$y#$#$#$#$#$#$#$#$|#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$~#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$#$@MA;lMA-;l-A;lM-A;l(&-A;lMA,}-A,}M-A,}-AlAl8-8-?8M-?8?8M?8M?8MA.A}-A}MA;lMA-;lMAMA;lMA-;l@M@-@M-@AVMAV줋A,VMA,V8+8+888AZ+AZ+AZ8AZ8A+8+A+8+A888A88EiViEV+A+8+A+8i+8E+8+A888A+8AoAMoAMo A-oA-o?>82V8V8V8>ADVA &b>8(bV8V8>8MA<׋8A>>/>/> > >>>>>>>A>A>>>>>>>>>>>>>>>>>>>I>I>>>>>{>{>U>U>J>J>>>>>E>E>>>C>C>L>i>L>i>]>]>C>>C>>C>C>]>]>L>>L>>y>y> > >L> >L> >L>]>L>]>@>@>C>C>L>>L>>L>>L>>>>L>Q>L>Q>L>>L>>L>s>L>s>L>6>L>6>L>X>L>X>L+X>L+X>L+>L+>L+>L+>L+>L+> [> R> > > > > J{>L+%>L+E>L+E>L+.>}>%>KKKKKK KKKKKKKK KKKKKKKKsKgK_KK!KXKdKKKWKKeKKKKKK׮خAծDʮʮBخ׮OCB®Bڮ7B7̮B̮BEFˮBٮB2GHۮBIݮܮޮ֮߮JKLͮ ͮ1EK >um1zGtvuBcg-.szutv 8?:9;',*(+&O_&O_(Oh&Oh(Oh&OhTk_Tk_d_(dh&dhT;(Th&Th \___-$6-j](=h&=hWWoW\oSoowoo;622ozzo8!;ozHz))o))A:oaaoa88oHHH^H0  oH`oHBHoHHHRH?::o:HcHHHUHHT]H]THTH}T}H}+++(+%++Z+o+++)+_++\\+C+T++#\++++}+&#\+$+5+S++++++$+1+++K++{++4+"+++%+ ++f+T+++++++++k++x+P+y+++H+;+ +++,++;+++++%+#++++0+Y+@+++i+++C+-++s+Y++8+P+++++3++j+!+g++'+[+D+;++8+++++++++z+o+++++[+++'++=+++++++l+?+++d+"+ $++++++++B+++++^+++ ++0++++++`+B+++r+U++++'+++(+y++R+?++c++++++l++u+++U+++++++++++J+++]+++}+pP7c(P7c<.P7c(P7c<.P7c%yP7c,0P7c,.P7c,P7c,P7c,P7c,P7cBPPP%EE,[PMEPEP=(h&h(-h&-h(h&h(@h&@h(V h&V hEE(h&h(@ h&@ h(@h&@h(@h&@h-u3E-u3E-u3E'즲즲o즲즲즲즲즲즲즲P*EPEEPbEP헼E 5E-5Eg;@E;@;E;@;@;;@EP)_[즲5즲M즲e;PMEEpEP"PiCiCiGiGiOiOiHiHiIiIiiiiiiiiiiiiiiiiiiiii~iiiiiiiiiWiiiiiiiiiii"iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii1ii2;E2KE;EKEiMEi;MEip-]*C*C*G*G*O*O*H*H*I*I*********************~*********W***********"*********************************1****0* * *(E*ME*;ME*pٛߛћ֛śқݛΛ HCIH$Y ʛ|lGOecW[P]^feUb`aJ+*UNSOB" KGMJC;HI O=GriaZ/o6\V.(mnj4)cfdLeNs: hf:<P{EPKEP}EPEPEP:EPEPEPEP)EPWEPEPEPEPEPoEiIV +;ߛ֛`]a^_****W************RcRPRfRURNRSR"RKRGRRRRRJRCRCRCRCRCRCRCRdCRZCRCRCRCRCRCRZORcc'RccuRnRnoRnRnRnRnRnRnRnRn5RnRnRniRn4RnRn1RnRnRnRn)RnRn+Rn5Rn=RnRnRnRnRnBRnTRnRntRnRnRnRn^4=0=0o=0=0=0=0=0=0=0=e=5=5o=5=5=5cPfUNS"KGJCCCCCCCdCZCCCCCCccccdOc,[nnonnnnnnnn5nnnin4nn1nnnn)nn+n5n=nnn>nDnxnnAn_nnnn]nnnnnn;n[nnBnTnntn =5=5=5=5===o========2P P P P  P P P P P P P AP v34*C*G*O*H*I***********~****W*************************** Dc[|{|pWn_efF?IiC.E$_]74 M@Xj Z\P 4P 4P 4oP 4P 4P 4P 4P 4P 4P 4P 45P 4[P 4aP 4UP 4RP 4P 4P 4P 4QP 4SP 4MP 4nP 4oP 4rP 4oR}55^e%Y%%%{WOCj=4l2=^4^l^2^l;l;cs~G;G;csTjlUjm~l~ i;jak2SPKn;;P P oP P P P P P P P 5P [P aP UP RP P P P QP SP MP nP oP rP oP -P P @P ?P .P eP ^V1pa0q3뿜T뙜ޜ삜3ɜ:ԜŜ6%"f릜? h ӜМ:ޜ[:5iWϜ :ҜQƓ BI轜耜ɜwA|뙜ݜuC0{f胜}Y시}R՜釜؜5FEEGfgeCCIxH}~"|zhig\wt#RDECA=><NIJHQOPTRSljmknonomkljqrpuvstyzwxGFRHISRab`rd?]]@0     1BAK(L~W/03.M-L'(K&O5N342+2*7846P |}{ ~ KSJ)#! ,-*+B@CADE12i09:8;n<mz{y  NE"# !_lmHkefFdnoIijGhrsJpqHDECLJKIGFOPMN[Y\Z2  ?0/SPQO75'&$! jki h cdb r pofest xy vw7(&6T+0U/!"z 1"!/#02$3%XW~}lmkjefBdopnihrsqvwtuc{g99: 8}X  ; <#`W+)*(&'%./,X-230Y1{%$&'E.DnOmMNn GHvFQRPoUVSpT768}:vwut~s|{`a_ ^ f-emokly{wxVWXY  }-.,+4230>@<=SRPXVU[\YZ_`M]^_/Emr0#xRYNiU( X1U1Uz1U1Uz1U1Uz1U1Uz1}1}1(}1}1W}1@}1@}1(@}1@}1W@}1@}1@}1(@}1@}1W@}CG OHIK=}r,Wax!C!G!O!H!xxxx D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                        cd'd'd'dd'D2DD~22vDDDbDbDbDbtDbDbDbDbDD14Dff(DfI(Dff(DfI(DSvDSDSD5=D=D=DLDL=D=D=D2=D=D=D&=D=Dr=D^=D&=D&=D=D=D=Df=D=DLD5FDFD&FDS S1' S1 '  6 q ,' , ,6 ,q 4' 4 46 4q |' | |6 |q K' K K6 Kq '  6 q /' / /6 /q E' E E6 Eq '  6 q '  6 q /' / /6 /q {' { {6 {q '  '  W' W 1' 1 g' g '  '  6 q '  6 q '  6 q C' C C6 Cq '  G' G G6 Gq |9<' |9< |' | |6 |q |A' |A |A6 |Aq 9\' 9\ 9\<' 9\< ,' , ,6 ,q '  !' ! $' $ <' A' A I!' I! I$' I$ '  6 q hIS6 hISq 9<S' 9<S 9<' 9< 9<' 9< 9<' 9< 9<!' 9<! 9<$' 9<$ 9<' 9< 9<6 hI9<S' hI9<S hI9<S6 9' 9 96 9q 9<g' 9<^' 9<3' 9<S' 9<9' g' ^' ' 3' S' 9' g' ^' ' 3' S' 9' Fg' F3' FS' F9' g^' g3' ^g' ^3' g' ^' 3' 'g' '^' '' '3' ^' 3' g' ^' ' 3' ^' 3' 3' g' 3' g' 3' g' ^' ' 3' S' 9' ^' 3' S' 9' S' g' ^' ' ' 3' S' 9' g' ^' ' 3' S' 9' 3g' 3^' 3' 33' 3S' 39' g' ^' ' 3' S' 9' |g' |3' |S' |9' 9g' 9^' 9' 93' 9S' 99' 1S' 1S' S1S' /' /' /(' /8' /?' /1S' 9< 9<h 9<3 9< 9<S 9<9  h 3  S 9  h 3  S 9 F Fh F3 F FS F9 S 9 S 9 S  3 S 9 3 S 9 3S 33  h 3  S 9 S1S 9 9h 93 9 9S 99 9<g6 9<^6 9<6 9<36 9<|6 g6 ^6 6 36 |6 g6 ^6 6 36 |6 F36 g^6 g36 ^g6 ^36 g6 36 'g6 '^6 '6 '36 ^6 6 36 g6 ^6 6 36 ^6 36 g6 36 g6 36 g6 ^6 6 36 ^6 36 g6 ^6 6 6 36 g6 ^6 6 36 |6 3g6 3^6 36 336 g6 ^6 6 36 |6 |g6 |36 |1S6 9g6 9^6 96 936 9|6 9<3q 9<|q 3q |q 3q |q F3q F|q '3q '|q 3q |q q 3q 3q 3q |q 93q 9|q /(q /8q /?q S' 9' S' 9' S' 9' 'S' '9' S' 9' ^S' ^9' gS' g9' S' 9' S' 9' S' 9' g' ^' ' 3' ' '' ' ' S 9 S 9 S 9 'S '9 S 9 ^S ^9 gS g9 S 9 S 9 S 9 g ^  3  '   g6 ^6 6 36 '|6 |6 36 'gq '^q 'q gq ^q q 3q 3q S S' (J&J g36 ^g ^g6 ^36 36 3g6 3^6 36 g3^ g3^6 ^39 ^3S '^g6 'g^6 'gS '3^ '3^6 '3g6 '33 '336 ^^ ^^6 33 ^3 ^36 g9 3 36 33 336 ^S 3 36 3^ 3^6 336 39 g3 33 336 3S 33 39 3S 3 36 3^ 33 ^3 ^9 ^S gg6 gg 3 36 3^ 3^6 3^g6 3^36 3^9 3g^6 3g36 3g6 336 3g6 |3g6 |336 ^36 ^S g3 g36 gS 39 3S 933 9336 9 g9 gS 9 S 39 3S g39 g^S g3S 'S ^9 ^9 ^9 g9 39 9^9 9g9 939 339 39 ^9 3^6 ^36 39 39 g^6 39 g36 33 g3 g^ g^9 ^g9 3g9 39 ^9 336 g36 336 '9 g9 w' Uw' M' K' ' @' M' k' -' ' dk .4 ]""""""""""""""""F&;F&;PF&;P%F&;F&;F&;6EF&;EF&;(@ hF&;&@ OF&;E2(2&2-(2-&F&;5F&;F&;F&;F&;gF&;(JF&;&JF&;(hF&;&hF&;(hF&;&hF&;(V hF&;&V hF&;(-hF&;&-hF&;(hF&;&hF&;(hF&;&hF&;(@hF&;&@h(@(F&;(hF&;&h7J0JgJ-gJ70gP%E6E(J&J(h&h(h&h=4414^,4D44Kr4k4 ' 0 '  ' (' (q 8' 8q ?' ?q /' /q ' q ' S*<' S*< S<' S< <' < S' S 9<' 9< 9<6 9,)@o,) X,) Y,) Z,) [,) \,) ],) ^,) _,) `,) a,) b,) c,) d,) e,)NA,)NB,)NC,)NDb,)Nf?,)Ngj,)Nh:,)Ni,)Njf,)Nk,)Nl,)Nm,)Nn,)No,)NE,)NF,)NG(,)NH{,)NIc,)J,)Kh,)NL,)NM,)Np,)N ,)O@,)NP,)NQ`,)Nq,)NR5,)Nr,)Ns,)NS,)Nt,)Nu,)Nv,)T,)Nx,)Ny,)NU,)Nz,)N{,)NV,)NW,)N|,)N},)N~,)N,)N,)N,)N,)N,)N,)NX,)N,)NY%,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)NZZ,)N[,)N\I,)N],)N^8,)N,)N_,)N,)N,)N`,)Na,)Nbt,)Nc,)N,)N,)dU,)N,)N,)N,)N,)N,)Ne#,)N,)N,)N,)N,)N,)Nw,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N,)N__(5E==o=====˧=ç=ʧ=5=M=e==2==&===}앧=앧=앧=:앧=0앧=앧=앧=앧=앧=}1=1=1=:1=01=1=1=1=1=1=01=51=1=1=Z1=1=\1= 1jj)켧jW켧j켧j켧w)켧w)켧wW켧w}!}}200110}\0\}00}\0\}k[}L&%oody%y5` &5<55e2` &22}%00000}101(0kk}4}` 4444494D4D4:D40D44o444,44444!44LCLLLLHL LLLoLGLLLLL]LILLvLLLLLOLLL^LLLXLLLLL5L2GFx SqDKbf+Nz=t!!@_i=LWGOLCLGLOLLLLLLLLL~LLLLL7LLLLLLLLLLL0LLLLLL.LBLLvLuLvLBLkL~LLQLL=L=oL=5L=ML=yGyHyCyyIyyGyHyCyyIyy!yyyyyyyyyy6yy\yCyy ymyMyyy]yyyyyyly*y[yGyHyCyyIyyGyHyCyyIyy!yyyyyyyyyy6yy\yCyy ymyMyyy]yyyyyyly*y[ =My:n#5V 5!T7dN222~222=2<222j2L222222"2T22222C2H2G2I2O222222o2222222ʬCHGIOɬ׬ˬجެάŬЬ¬ѬҬƬӬ~ìԬWĬޗC!G!O!!H!I!3E-3.=쭗ɗ=M9NGKR~7LAQޗؗ.Bۗa0,5.Ho=5=M=}앗=}13(33333_}393ܗ3o3-o3% % %% G% pS% pI% S% I% ,% % % +% I% 0% S% \S% % % t% -I% % % 7% b7% % % % U7% v7% Z7% `% G% % -7% 7% 7% % % R% 7% % t% % 7% % 7% % % % % % % \@% 7% % 7% % I% % .% 7% % \7% ]7% % % % T% T% ;% % U@% @% p@% % /% 3% /% @% Zj% vj% % -@% ,~@% 1% 0% % V% % @% @% R@% % r% % ]@% \@% % % % @% % @% % @% % d@% % % 5% % % % !% 6% B% ,% ,% @% m% m% % A?% % % % j% % j% C7% 7% T% @% @% S% I% % % % d% d9% d% d% da% bj% b\% b\% % \% \j% \% %% % % j% % % % % B% % % % #% #% #% #% #% $% #% #% #% #% :% ,:% c(% cW% cw% #% #% #% 9b% 9bn% 8A% &% % Bg% H% H% #% H% k% H% H% H>% H>j% nw% nW% in% n% % Y% Ym% Y% Z7% [% Zn% Hn% H7% H9D% HXD% Hx8D% HVD% Z9D% ZXD% Zx8D% ZVD% +% % % % I% /% /% % % l% % % % l% l% % % Z% Z% Z% Z% Z% Z% Z% Z% v% Z% v% % b  -  K 7  (@4 &@4 @  F       E. %E R # h Y #Y "Y Y Y Y 7 7 h% hR3 hRl i% p% pR3 pRl 9 9 - -     J J P P B  R3 Rl k3 kl _ 3  P > l p m }\q qN 1N qN '  X' X (' ( &' & \' \ X&' X& q' q 9\' 9\ 8N N  (N '   3   P  >  l  p  m  }\q  2. 2&. 2S 2T 2U S T U 2u( 2G 2H 2I 2J 2K         26 2i 2 2Q 2 2 2  2 . . 2G 2 2Z 2u 2 2- 2    =  s j  z% z3%  ) ) %  o p q r s t u v w      p% 2\ 2X 2" 2 rE rXE rE } }  "     (' (   )' ) A' A   & (  ) Aj  Aj U Aj f A>  A> U A> f A> ~ A>  E ~i% ~p%         M a  ~~~z~~~{~~~|~~C~D~E~F~~ ~G~H~I~ ~ ~ ~J~K~L~M~N~O~PE~E~E~E~E~E~E~CE~DE~EE~FE~GE~HE~IE~JE~KE~ E~E~E~E~E~E~E~E~E~E~E~E~E~E~E~E~E~LE~ME~NE~OE~P212R2>t181818881xx%3xxHxxzxxIxx{xxCxxxx[xx3x6x7xxxOx}xxx6xxzxxxsxexxxmxxxxxx}xxxxxxxLx(.xgxxxx}xxx|xxsxAxXxxxxmxlxmxxxkx!xExXxxrx}x"x|xx C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H   G      I      O      C    H    G      I      O      C    H    G      I      O      TC T T T T T T TI T T T T TO T T T T T TC T T T T T TG T T T T T T T T T T TO T T T T T TC T T T TH T T T TG T T T T T TI T T T T T TO T T T T T TC T T T TH T T T TG T T T T T TI T T T T T TO T T T T T ]C ] ] ]H ] ] ] ] ] ] ] ]I ] ] ] ] ]O ] ] ] ] ]C ] ] ] ]H ] ] ] ]G ] ] ] ] ] ]I ] ] ] ] ] ]O ] ] ] ] ] C   H   G     I   O     C    H    G      I      O      ]C ] ] ] ]H ] ] ] ]G ] ] ] ] ] ]I ] ] ] ] ] ]O ] ] ] ] ] ]C ] ] ] ]H ] ] ] ]G ] ] ] ] ] ]I ] ] ] ] ] ]O ] ] ] ] ] C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      C    H    G      I      O      FG F       W &  ) !      I [  U  D C E  O       W &  ) !      I   U  D C E  dZ 9[ [ [  [ [ [       W &  ) !      I [  U  D C E  O       W &  ) !      I   U  D C E  dZ 9[ [ [  [ [ [       W &  ) !      I [  U  D C E  O       W &  ) !      I   U  D C E  dZ 9[ [ [  [ [ [       W &  ) !      I [  U  D C E  O       W &  ) !      I   U  D C E  dZ 9[ [ [  [ [ [       W &  ) !      I [  U  D C E  O       W &  ) !      I   U  D C E  dZ 9[ [ [  [ [ [   o          o          o          o          o                         ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , -aa6Ea3Ea=4ar4ak4aa;a(Ja&Ja4a14aa^a%aaaaoaaaaaaaaaa,4a4aD4aEaaCaaaaHaaaaGaaaaaaIaaaaaaOaaaaaa(haKa&ha6aa6aCaaaaHaaaaGaaaaaaIaaaaaaOaaaaaa(ha;a&ha+""""""""""""""""""""""""""""""""""""""""""""""""""""""" " " " " """"""""""""""""""" "!"""#"$"%""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " " " " """"""""""""""""""" "!"""#"$"%"&"'"(")"*"+","-"."/"0"1"2"3"4"5  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  "$'),.02468:<>@BEHKNRVZ_cglptx| !%)-16:?DHKOPTY\_behklou|~!'.49@FLSY_bhnt{ $'-39@FMRY_elsz !)19AIQYaiqx '18?FMU]emx} (08@GNTZ`fmt| $+28?GOUZ_elsz !*18=DKRY`els{     $ + 4 = F O Y c l u z    ! & - 4 9 > E L V ` g n w    $ + 2 ; D M V _ h m r z    " * 2 8 ? F L S Z a j t ~     & + 0 9 A J O T ^ e m v { $*06?GLTYahnty #*.27?FKPTY^bgmsx~ ")/4:?EMUY]bhntz #(.49>BEKPUZ_eknrvz}   %)/49>CILPUZcimqvz %,7<AFKPUZ_dinsx}  %*/49>DINSX]bgow  %*/48<BFKQX]binsz !&+049>CHLQUZ_diotz~ ").38?DJOTY^chnty~ !(/6=BGLQUY]bgns| %+3;BIR[agow !(/7?FMU]dks{ #+39?EKQW^els{ $)-27<AFKPUZ_dinsx}  %*/49>CHMRW\afkpuz "',3<AFKPV[bipuz  #'+049=AEIMT\chmpty}       # ' + / 3 7 ; > B F J N R V Z ^ c g j m p s v y |  ! !!! !%!+!1!7!=!A!E!I!P!Z!^!b!f!l!t!x!|!!!!!!!!!!!!!!!!!!!!" """*"2":"B"J"P"Y"`"d"l"p"w"""""""""""""""""""""""# ####'#.#4#8#;#?#E#M#Q#W#]#c#j#m#t#y#####################$ $$$$($-$5$=$D$J$P$V$\$b$h$n$t$z$$$$$$$$$$$$$$$$$$$$$$$%% %%%%!%%%)%-%1%7%;%A%E%I%M%Q%U%Z%]%a%f%j%n%r%v%z%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&& &&&(&4&E&Q&\&c&j&u&&&&&&&&&&&&&&&&' '''!'+'/'3'7';'?'C'G'K'O'S'W'['_'c'g'k'o's'w'{'''''''''''''''''''''''''''''''''''''(( ( ((((("(&(+(0(3(7(:(>(B(F(J(N(R(V(Z(^(b(f(j(n(r(v(z(~((((((((((((((((((((((((((((((()) )))))")().)3)8)<)@)D)H)L)P)T)X)])b)g)m)p)t)x){)~))))))))))))))))))))))))))))))))))))** ******"*&***.*2*5*8*<*@*D*H*L*O*S*W*\*`*e*i*n*s*y*}*****************************++ ++"+%+++/+3+6+:+=+A+D+H+L+P+T+X+[+_+c+g+k+o+s+w+{+++++++++++++++++++++++++++++++++,, ,,,,,,#,&,),,,/,2,5,8,;,>,A,D,G,J,O,S,W,[,^,b,e,i,l,p,t,x,},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-- - -----!-%-*-.-3-8->-D-H-M-S-W-\-`-c-h-m-r-x-|-------------------------------------.. . .....!.%.).-.1.4.7.;.?.C.G.K.O.S.V.Z.^.c.g.l.p.u.z.~................................../// //////"/&/*/./2/6/9/:B:F:J:N:R:V:Z:^:b:f:j:n:r:v:z:}:::::::::::::::::::::::::::::::; ;;;;(;.;2;6;<;B;J;P;X;`;d;i;n;s;x;};;;;;;;;;;;;;;;;;;;;;;;;;;;<< <<<<<#<(</<5<<<C<P<W<^<f<n<t<z<<<<<<<<<<<<<<<<<<<<<<== ======#='=+=/=3=7=:===A=E=I=M=P=T=W=Z=^=a=e=h=k=o=t=x=}=================================>> >>>>!>&>+>0>5>:>?>D>I>N>S>X>]>b>g>l>q>v>{>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>?? ??????"?&?*?.?2?6?:?>?B?F?J?N?R?V?Z?^?b?f?j?o?s?x?}?????????????????????????????????@@ @ @@@@@!@%@)@-@1@5@9@=@A@E@I@M@Q@U@Y@]@a@e@i@m@q@u@y@}@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AA A AAAAA A$A(A,A0A4A8A;A?ACAGAKAOASAWA[A_AcAgAkAoAsAwA{AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABB BBBBBB#B'B+B/B3B7B;B?BCBGBKBOBSBWB[B_BcBgBkBoBsBwB{BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCC CCCCCC#C'C+C/C3C7C:C>CBCFCJCNCRCVCZC^CbCfCjCnCrCvCzC~CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDD D DDDDD!D%D)D-D1D5D9D=DADEDIDMDQDUDYD]DaDeDiDmDqDuDyD}DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEE EEEEE E$E(E,E0E4E8EGBGFGJGNGRGVGZG^GbGfGjGnGrGvGzG~GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHH HHHHHH"H&H*H.H2H6H:H>HBHFHJHNHRHVHZH^HcHgHjHnHqHtHwH|HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHII IIIII"I(I0I6IJBJFJJJNJRJVJZJ^JbJfJjJnJrJvJzJ~JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKK KKKK"K&K*K2K:KAKFKKKTK[KbKgKmKqKuKyK}KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLL L LLLLL$L(L,L0L5L9L>LBLGLJLNLRLWL[L`LdLiLoLrLvLzL~LLLLLLLLLLLLLLLLLLLLLLLLLLLLLMM MMMMM M$M*M.M2M6M;M?MDMHMMMQMVMZM_McMhMlMqMwM{MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNN NNNNN"N&N*N/N3N8NXAXFXKXPXTXXX\X`XdXhXlXqXvX{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXYY YYYY!Y&Y*Y.Y2Y6Y;Y@YEYJYOYTYYY]YaYfYkYpYuYyY~YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYZZ ZZZZZZ!Z%Z)Z-Z1Z5Z9Z=ZAZEZIZMZQZUZXZ\Z`ZfZlZrZxZ~ZZZZZZZZZZZZZZZZZZZZZZZ[[ [[[[[$[([,[0[4[8[<[@[D[H[L[R[V[Z[^[b[f[n[t[x[~[[[[[[[[[[[[[[[[[[[[[[[[[\\\ \\\\#\(\.\1\8\?\F\J\N\Q\T\W\Z\]\`\c\f\i\l\o\r\u\x\|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\]]]]] ]&],]2]7]=]C]I]O]U]Z]`]e]k]q]w]}]]]]]]]]]]]]]]]]]]]]]]]^^ ^^^^'^0^8^@^J^R^[^b^i^p^x^^^^^^^^^^^^^^^^^___&_0_:_D_N_X_b_l_t_|________________________________`` `````#`'`+`0`5`9`>`C`H`M`R`V`[```d`h`l`p`t`x`|````````````````````````````a aaaa a&a+a1a6adCdGdLdQdVd[d`dedjdodtdxd}ddddddddddddddddddddddddde eeee#e+e3e9e?eFeMeReXe^eceheneve}eeeeeeeeeeeeeeeeeeeeeeeeeeff ffffff#f(f,f1f6fjGjPjYjbjijpjxjjjjjjjjjjjjjjjjjk kkk$k+k2k:kBkKkTk\kdkokzkkkkkkkkkkkkkkkkkl lll'l0l9lBlKlTl[lbljlrlzlllllllllllllllmmm&m.m6m>mGmPmXm`mhmpmxmmmmmmmmmmmmmmmmmmn nnn"n*n1n8n@nHnPnXn`nhnqnznnnnnnnnnnnnnnnnoooo"o+o4o=oFoQo\oeonoxooooooooooooooooop ppp p'p.p6p>pFpNpVp^phprpzpppppppppppppppq qqq$q-q6qAqLqUq^qhqrqyqqqqqqqqqqqqqqqqqqrrrr'r0r8r@rIrRr[rdrlrtr}rrrrrrrrrrrrrrrs sss(s0s8sAsJsSs\sfspsxssssssssssssssssttt t(t0t9tBtKtTt^thtptytttttttttttttttttu uuuu&u-u4u;uBuIuPuWu^udujusu|uuuuuuuuuuuuvvv(v2v?vLvYvfvsvvvvvvvvvvvvw ww$w0w{D{K{R{W{\{`{f{i{l{o{r{u{x{}{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||| | |||||||$|'|*|-|0|3|7|;|B|J|O|T|X|\|a|h|o|s|x|}|||||||||||||||||||||||||||}} }}}}}}%}(}+}1}4}7};}>}B}E}I}K}N}Q}U}W}[}^}a}f}k}q}t}w}z}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~&~.~6~=~E~M~R~V~Z~^~b~f~j~n~r~v~{~~~~~~~~~~~~~~~~~~~~~~~ !#&),16;@DHLPU[`fkpu{ #)/6=CKQV\agnuzÀɀπӀ؀܀!*19AEKSW\agmsz~Ɂ΁ҁցځ݁ "&*,.037;?CGMSUWY[^`dfjlquy{~ƂʂՂ݂ !&,29@DHJNQT\djpyăȃ΃ԃڃ $'*-038<AFILPTX]`cfikmoqyńɄ̈́τՄׄلۄ݄ !&+17:=@CEJOTZ`gnsx}…ʅ҅م $39?FLTZguzÆņdžɆ͆цՆۆކ  "&*157;=AEIKMOT[bipw~Ň̇҇ڇ%-4<CJQX^fmszňˈ҈ڈ !)/2:=BGJMUX]`glsvy|ĉɉΉӉډ (/38CNRVZ^imrw|ˊՊ݊ #'.6>GNRVZ^`dkryNj΋Ջ܋  $'+/6=@DHNTZbimuz}Čnjʌ͌Ќӌ֌ٌ܌$*06<BHNTZ`flrx~Ǎ̍э׍܍ !',16;AFKPUZ`ejotyĎʎώԎَގ #)/5;AGMSY]aeimquy}ɏҏۏ$,4:AIQX^foxʐӐڐ #,5=ENW^enwʑӑܑ '-6>ENV\emt}Ē̒Ӓܒ ").37<AFJOV^emqxƓ͓ѓԓؓܓ "*47:AINS[dmuy}”ǔ̔єהݔ !'-39AMRW[`gnv~•˕ӕە ")-15:?EKOUWY[]`cegimqsux{ĖʖЖՖؖۖޖ  %*/49>CHNTZ\_adfhjlnprtvxz|~—Ǘ̗ї֗ۗ  (08@HPX`fkpux|ǘΘјԘ٘ۘߘ'.5:?EHKPRV[^cfkoqsw{ęș͙әٙ  #)/6>ENX_eiqvǚ̚Ӛښ!*08<DHPW^gpyʛћ؛ߛ #)/5;AGNV^fnv~œǜ͜Ԝלޜ %,4<AELPW_dlpuy~ɝΝӝٝޝ %+059=BGLQW]cfimquzŞɞ͞ў՞ٞݞ !%)-159=AEIMQUY]aeimquy}şɟ͟џ՟ٟݟ !%)-159=AEIMQUY]aeimquy}Šɠ͠Ѡՠ٠ݠ !%)-159=AEIMQUY]aeimquy}šɡ͡ѡա١ݡ !%)-159=AEIMQUY]aeimquy}¢Ȣ΢Ԣڢߢ $+5@CFJNTZdnxʣԣޣ $,6@KV]dkr|ƤΤؤ&.6=DLT\dmv~̥إ"0>FLSZahmsx}ȦϦ֦ݦ&-39@GNUY^elsy}ͧߧ+>CJRZbfilqtƨʨϨӨبݨ&),16<BFLSW]aemyũʩ̩ҩשީ %,39?EJOU[`gko|ĪƪͪԪ۪  (09BIOU^bkt|ëȫϫ֫۫ &,27<CJPV_gov}ǬѬج !(3:@FMT[bmxíɭҭۭ+29DOV]fotyƮӮ׮ۮ"(/6>FILQV]dkr{ǯίү֯ݯ  "',15=DKS_goz~ǰͰӰٰ !%(,06<BHLPW^elszűʱϱԱٱޱ $*/5>CKR[`ejpw|²Dz̲Ѳֲ۲ !',2;@HOX]bgmty~ijɳγӳسݳ !&+05:?DINSX]bglszǴδӴشߴ %,28>DKRY`gnu|µʵεԵڵ޵ !&+05:?DINSX]bglqv{ƶ˶жնڶ߶  $(06:>BHLRVZ`fjnrx~·ƷʷзԷڷ޷  $(,048<@DHLPTX\`dhlptx|ĸȸ̸иԸظܸ &*.4:@HNRVZ`fjlpuw{Źɹ͹ѹչڹ߹ !%*/38=FJNRY]bgkouzºƺ˺кֺܺ $).26>DJPUZ_eiosw}ûɻϻһֻڻ޻ ")/37;?CGKOSW[aeimquy}üǼ˼ϼӼ׼ۼ߼  $(,048<@GKOSW[_cgkosw~ýǽ˽Ͻӽ׽۽߽ %)-159=AEIMQUY]aeimquy}þǾ˾ϾӾ׾۾߾ !%)-159=AELS]goxſɿͿѿԿ׿ۿ߿ %)-18>EJNRVZ^bfjnsx} #'+/37;?CGKOSW[_cgkosw| "'+/37:>BGOW^eioty} #'+.26:>BFJNRVZ^bfimquy}  #'+/26:=@CFJNRVZ^bfjnqtx{ #'+.26:>BFILPTX\`dhlptx| "(.4:@FLRVZ^bfjnrvz~ "',16;@EJOSW[_cgkosw{ "&*.26:>BFJNRVZ^bfinsx} "',17=BGJMPSVY\_bfjnrvz~ #(-27<AFJPV\bhntz #&*.26:>BFJNRUX[^adgjmpsvy| !$'*-0369<?BEHKNQTWZbipw~ "$'*-27:AHOVY^aegilorux{~!$(+.369>ADINSVY\_filoqtwz (08@HPX`hpx"(,06<BJRVZ^dhqw{  $(,047;?CGKORVZ]aeimquy} !%)-159=AEIMQUY]aeimquy} !%)-159=AEIMQUY]aeimquy}  $(,048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx| #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ "&*.26:>BFJNRVZ^bfjnrvz~ "&*.26:>BFJNRVZ^bfjnrvz~ !%)-159=AEIMQUY]aeimquy} !%)-159=AEIMQUY]aeimquy} !%)-048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx| &/8AJS\dksz  '.5<CJQX_elsz #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW[_cgkosw{ #'+/37;?CGKOSW\afkpw|%+18?FMT[biqx %+17=CIOU[agmsy !'-39?EKQW]ciou{ %-5<CMW]cioty&1;EP[fq{ #+4<DLT\emu}'/7?GOW_gpx !)07>ELT[ckt|&1;DMU]fnw&.5<CKSZaipz #,4;BIPW^fnv~&.6>ELSZbipw~(09AJRZahpw %-6>FNV^gpy &.6>FOXajrz&0:DNW`is} (3=GQ[eoy (1:CLU^gpy *3=GR\fpy )2<FPZdnw  '/7@IT`insz$-7ALW[`irvz~ #(-27<AFKPYbjr{ "',16;@EJOTZ`flrx~ &,28>DJPV\bhntz ",6ALSZbfjmqux{ $*/49>CINTZ^cgkoty~       ! & * 0 5 : ? D I N S Y _ e m q u y }                                  ! & + 0 5 : ? C J Q U Z _ d i n s x }                                  # ( , 1 6 ; @ E J N R V Y [ _ c g m p t w {                           $ + 2 9 @ G N U \ c j q x                         & - 4 ; B I P W ^ e l s z                         !(/6=DKRY`gow~ #(-29>EJOTY^chmrw| &-4;BIPW^elsz #'+/37;AFKQW]ciouz$,49?GOW_goy '-39?ENTZbiqy #(-16;@EIMRW\aejoty~  %*/49>CJOTY^chmrw|  %*/49>CHMQV[_dinsx} %*/38=BGLQV[`ejoty~ "',16;@EJOTY^chmrw{ #'+/37<AFKPUZ_dinsx}  !%)-048<@DHLPTX\`dhlptx|  !%)-159=AEHKOSW[_cgjnrw{ $+05:AFKRY^chov}  %*/6;BINSX_fkpw~  %,18=DIPW\afkpuz "+4=FOX]hs|   ! * 3 < C J Q Z c n w               ! !!#!*!1!8!?!I!R!Y!`!g!r!}!!!!!!!!!!!!!!!""""("1"8"?"D"K"R"Y"`"g"n"u"~"""""""""""""""""""""## #######)#/#5#;#A#G#M#S#]#g#m#s#}######################$ $$$$"$,$2$8$?$F$M$V$_$h$q$z$$$$$$$$$$$$$$$$$$%%%%% %*%/%6%;%@%E%K%Q%W%^%c%h%m%r%w%}%%%%%%%%%%%%%%%%%%%%%%%%&& & &&&&&!&)&3&7&;&A&G&M&S&Y&_&e&k&q&w&}&&&&&&&&&&&&&&&&&&&&&&&&'' ''''"'*'2'8'>'D'J'V'b'p'|''''''''''''''''''''( (((("(((.(4(:(@(F(L(R(X(^(d(j(p(v(|(((((((((((((((((((((()) ))))$)*)0)6)<)B)H)N)T)Z)`)f)l)r)x)~)))))))))))))))))))))))))*** *****"*&***.*2*6*:*>*B*G*K*O*S*W*[*_*c*g*k*r*v*}*******************************+++ ++++ +$+(+,+1+5+9+>+B+F+J+N+S+W+[+_+c+g+l+p+t+x+|+++++++++++++++++++++++++++++++,, ,,,,, ,$,(,,,1,5,9,=,A,E,J,N,R,V,Z,^,c,g,l,q,u,y,~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-- ---- -%-*-/-5-:-?-D-I-N-T-Y-_-e-j-o-u-z---------------------------.. .....!.%.)...2.7.<.@.D.I.M.R.V.Z.^.c.g.k.o.s.x.|...........................// ////"/(/-/2/8/=/B/H/M/R/W/\/b/g/l/q/v/{/////////////////////////////00 000000$0(0,0004090=0A0E0I0M0R0V0Z0^0b0f0k0o0t0y0}0000000000000000000000000000000111 11111!1%1*1.13181=1B1H1M1R1X1]1b1g1l1r1w1|111111111111111111111111122 22222$2)2.23292>2D2J2N2R2W2[2_2d2h2l2p2t2y2}222222222222222222222222222222233 3 33333#3(3-32383=3B3H3M3R3W3\3b3g3l3q3v3{333333333333333333333333334 44444#4)4.444:4?4D4J4O4T4Z4_4d4i4n4t4y4~444444444444444444444444455 5555!5&5+50555;5@5F5L5R5X5_5e5k5r5x5~55555555555555555555566666!6'6-646:6@6F6L6R6Y6_6e6k6q6w6~6666666666666666666666666666677 777777#7'7+7074787<7@7D7I7M7Q7U7Y7]7b7f7k7p7v7|77777777777777777777777777788 8888!8&8+80858:8?8D8I8N8S8Y8^8c8h8m8r8w8|8888888888888888888888888899 99999"9'9,91969;9@9E9J9O9T9Y9^9c9h9m9r9w9}999999999999999999999999:: ::::$:*:1:7:=:C:I:O:U:[:`:f:l:r:x:~::::::::::::::::::::::; ;;;;";(;.;4;:;@;F;L;R;X;^;d;j;p;v;|;;;;;;;;;;;;;;;;;;;;;;<< <<<<$<+<1<7<=<C<I<O<U<\<b<h<n<t<z<<<<<<<<<<<<<<<<<<<<= ==="=)=0=6===D=K=R=Y=`=g=n=u=|===================> >>>>!>%>)>->1>5>9>=>A>F>J>N>R>V>Z>^>b>f>j>o>s>w>{>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>?? ??????#?'?+?/?3?7?;???C?G?K?O?S?W?[?_?c?g?k?o?s?w?{??????????????????????????????????@@ @@@@@@#@'@+@/@3@7@;@?@C@G@K@O@S@W@[@_@c@g@k@o@s@w@{@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AA AAAAAA#A'A+A/A3A7A;A?ACAGAKAOASAWA[A_AcAgAkAoAsAwA{AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABB BBBBBB#B'B+B/B3B7B;B?BCBGBKBOBSBWB[B_BcBgBkBoBsBwB{BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCC CCCCCC#C'C+C/C3C7C;C?CCCGCKCOCSCWC[C_CcCgCkCoCsCwC{CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDD DDDDDD#D'D+D/D3D7D;D?DCDGDKDODSDWD[D_DcDgDkDoDsDwD{DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEE EEEEEE#E'E+E/E3E7E;E?ECEGEKEOESEWE[E_EcEgEkEoEsEwE{EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFF FFFFFF#F'F+F/F3F7F;F?FCFGFKFOFSFWF[F_FcFgFkFoFsFwF{FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGG GGGGGG#G'G+G/G3G7G;G?GCGGGKGOGSGWG[G_GcGgGkGnGrGvGyG}GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHH HHHH!H&H+H0H6H;H@HEHJHOHUHZH`HfHjHoHsHwH{HHHHHHHHHHHHHHHHHHHHHHHHHHI IIIIII I#I&I)I,I/I2I5I8I;I>IAIDIGIJIMIPISIVIYI\I_IbIeIhIkInIqItIwIzI}IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJ J JJJJJJJ"J%J(J+J.J1J4J7J:J=J@JCJFJIJLJOJRJUJXJ[J^JaJdJgJjJmJpJsJvJyJ|JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKK K KKKKKKK!K$K'K*K-K0K3K6K9KD> Y[H Br! "!,'f!' /*1% 2H./ Q@" cJ-B ,0') "M u !)!j) mOo-!0t3)(!$*IL_ f"Ap#Z30*0 % A*C 2-, ,d |)/z'@$ %# .x Ro'|{,L#M1 t_ j,0"0+4fcW&(M=k!"a`c%#jd&j,n`#,Q 6*^Afj?f $@ihgIn T bR33*9'&pQT >/W"CX'k(X%M!*$#w0/#'u(r5w+/96l3 53 -C"$&My\3)O*XR!"|3[j$m_M 7W  )"A,zwX%.&/8"*/;\ M,/Q]2x8V%M<KJ/kW#/UE#0 " %D3B.7G'E HJJME& 2 E"&x3 O,._ G$a,kzq3S@Il<=U;!D"o;+F> h"AQC0'0 ޢ%B$ x2>>#w,0@cA'0v300 +`K !!A ,2n }ok'h? lG |2m4#e#)z3#`")(08-@3\2lW/ R=(x3v#M6^-3' A0"V.4,Fkw2s Gh)J #/::'3 ")F2 #9 ݢTҢڢ8:E=\6%8*BBn'EO@ci 4!]1X91"t\'%=6s 2&3.*o 3`Vi!.pN0hVl"-A#C2%&}237u&A3/p~/"%"P"\]006!Q?00d90 0k0%dh :o"32,32)%rE`)0)/b).!.**f$32z",#!g Ml1+wvyG&"Z3q'YSPp)d$* :OU4/qU:v )P{["\$r(1IQ2 6G !.4-7!7<-ƣo Z 'K ~$,P. !~ 3@{&3~9a}O/s2 w*Nxo-2Q/W\cKv"? 2p 9[-_22 2!0 +cy2 g*@=./7L1G#J) * M3bģl'<J'7n#/ R % E/*m)Q* `6' # &r+H@!3#.32&H3Q%6! %50! #/33,2633z2Z,-8{i0, #)h36.f2WH!Uu"L!$.Uy,)("'")}$]1** 23@%!+K) .=,M E)[u/ 9|r)SuJ Z#F dt? s .:)'*-2(0(2,02004*32/"]#0 03:%/L1U12&&"2&B&k-*3%Q"q 2%3/ C #0B(2 1'/"E)* /$ ( 2j y%eK% 0" )'(f 9" 80-?")g'}- Kt3u!m!+ >8  Rd =[ 2-"e/D UK#1' Fs$#'?Z? >.z1w33"')2@Ks!l :80"0 2 E!,3x='R23`2,# 5/ "% 5-{(\, {" .dq88Gx&5(M(C'(Dh#=/"' 0e%.G#/'v#a!Fd ,#Wt F.TMf &>&a/v3!!|0:|*x*= +3 9Ӡ,XzV3 }2(d()32!'&3'3S3]*-=2.(0H0(M`3318 .t@)!&3c"5j** 1(1"/11%ɡM&e^3*)Md/u.-.( $ E0m !3 3'y'(mR* z >*e8.IV %0)P@C9(74M "^ 3` -_38 31!211v 8*zc&G6?/%'2l-X'ˠŠ, C#3-or%$N/q$D33}b0]@ 2:*M1?,:qa&D%)&G0 )x0L*A0 I0-*a 0)1,^!1 N +x6P/" ~ &o1! e go/V XMM#'1*O9%.0 ~)z^,>63%p\ h \q @/DB J 4(~2nh -\,3^n15H)5 7i 51C&z( &I_0-PD_D%&( &R_'\*%,+![1,%a4%B3 F(?1<:8765e310 .]w)'1A' D3%)CpM -{"t"%,'-2/~3am)f$G| -, ,k(2 %nqn">_$2(%r*^(#9 5~$l'L*/2#//8H&B)=]19/O+&}3v v$'_X-'(*:* ) 7- T<H'|l03?3{J#:b(  BZ0 V0*( .X0H$&\0u*3+ &0J*Q .s)R!0> PB2,0. 0c*#W0 2t[\" G!Z3j2$](B S+22Z)r*2.=3S 5:/-32(#&V*' *I' F!$,0m(( Ǡ !)Z*#"0p0qs<&kb#:&:!&-N3^@, 5 , 9(f6 @#l !TW[,tOL] :=`>,(u %M ,)(%a:,^1 k  t2& UL"1J-%,P|.w% ',0 L!H,@ m8 j h0 E/n -s.l?k-p?Uro xK*1)W<) [((^"!D]%+)20'."U0T.G4!/&%(g2 Ip@r+)[3t/%i 2..s E&$)'e^'0hP;,0 fG'0!#00'%U ! 8 -s#3y%x )-5o $%A 1[1 05)O3 &,4c;1%l 2""E-g%2%Pf+!n GR#+|,0!0`Xo^%, ,h3OS k"v0$b{H7CGy$jT,/=#FM6"%iZ#[]2" A)/(, :)v0.L& ߣ0A*T! %%#~!~0_ /:(w-%0 K"I)"-1h5[!#N%,0u)0*2d)H  #)V/&>    (1I!Os# #*).,4"YGH$%L Q)+oO0-uH,!EM0QQ0<l*$3*Y*>|j j%+}g&0# sVU,029l/"}"" '#.2 @+1S6/ch/!kgj ,Cn G9-: 2-%9%8!g,.09.)*w0C 4q0,W /@"L2w]}K/?).!l%|2|%1;-h$%yUS1*ySy$,%%1[)b3 #o\3)1 p/<2'V*$p(M'-%-U $2?*j A2j0KB 1*+#)*8.i 212eSY"    7Il&H% y  i 1: {'E/-$^Ie02 -{-Ah--JF`0֢0;3* B7 [y)*n*4'{ j0̡ o3'C c<O%b18v0/D))(&ks0$#;p' M)A#;2".w/$(e18,!2dO ,z%gn*  1 DR'"Q [g2<c 'u0{ % 2r0 x01#{0a'> '#%#/{#_ 5*P0' n2*-R0-#"T0BQm"N0*1- $(j3*U%$0&6w$"@3"dL..%T"M-F"2*,l .)p ) S1  #@3/c$*   5,a|#/(&vm/M,_/̣H *($Mʣb).gC2Y_M1~"Р3#Y")Y1T-$ ^M-9U)]Zi/*x1F& *(%#3"! C)l a2w&Z623 O%JBMNu" 4!(|( '5 lg*.3E(%('%)# <H&{e|~%`L!&9*S%s!.2.NX3?!$7%04Y c03 y#z.!V-9&; "m= hLO%;@)v*iF%{*< cJ&3<Ql/d%ѣ(X(&H&w(W =h(P&,21%u%ZI0(:-/ p,*z))3-)EYf/  s #N*0 < " 02=0(D H*#s2 EX'_x$-bv"2AB` 1),w9-%a*) $u=yo& 3a$ zKg0/Q B ##MceS 0a *n1A `%L%&&g R)q!G Y `*U|!*(!4\ '- *M!%)$ 3I$0)-0 ")#Ta#- !~*D5,}x# 21l2*)_8k,ra] QHk1/t.<FU\ 3c%.V& [p%! f(j X MY$. 1QC11%)! ]3G&4,%0u'ݠ3%10O*>'% %0!* r,.~`0 [ $&K'[M j(0 i)g>3£i%d,ax! ,%&$0"70*K#"}( J-n$(4zt;>#^0""(G/2!,nE'+ P.l)JEX2+T  -*1GT- /%xo )e@-"P*L ?*c-! 3)yi0='0MOI0%6~ _%/= KV'c)3n2%mp2x P 9wvd/93)9..@"m#$l{% 3!D t$f"W)3Rl$2] '!-'%22.D0 $' /{;".!0 F3n&o!UuX 3 -!(7Q& ,*M2 H 3Xk" 2r 7q'2'>n%(3!2oh0vB *b0j'@i9!h0ҡv$$,$$ 0o*10)0D2wi3W2)3P- 33?2 ;!(vW-7F #=3-b2014 je-hAb>(x'P0)E (NW$~M%05)0%.%!/'30_-2v&^( w 0pK/0D$0*0Cm.  0 e?2# ~0;q)6/$*7 $$#:$A$$D$/E$(Pn3 $`! ($?{$K 0(  $ $$$$ !0:0 +00("o&?<.0k&Wz/*B\L%k50% )2Ƥ3Yâ0X*300 )t])@W ˣ2Y S t#"<%${3S)p!b!!-1S#30j,( 0n  -&0 աr122to ["&l ,@er/$C!C%R )*.'# N ^/ /@Y2V 3*" (z(a!( }1HJv!;V#0H r%*UsT20x0. 2T/2v40 )Ƣ%T0w?y ")&'K=%K*0f)TO12  H&*%C.3ע/`P&T|^0 b@,*G2- "1&O!?i1m$2-c1?-_!C'$G ,*!8,(@ ">-{ 2D"Le'M2!*] O0&_ ` }$21 lLOK32+0  ,- Rϡq."2"X 2)y)'2F3 "S_2; 'G- 2@"2) !6&a!`$=$!#$#11* 1"]%a  .2x MQ`p")S31^ #!G =+ 9,+ 5f'  )f1 *Y213G \qWh2!,.n T#0B,6 E3 -j|xL-Z~'8G .)  '  +n2 ΢* d M6f&)X)2 $*'?1 [) {>**I'H i2a0#%Q2<) d0# ]& %" 0)PgN /'<V'QV .0o%zS%/3 " u)i/$j.03_0\%,> +=4N _O(#(:+9*S$m])w|M;* !1)2("5X '20+l }3. wtG,J/""%((~1%w3"TXL ~&h.nHU*v)/m&'W-&kA ![3!W!j}%,/3w>),!: !+*upG%D#93r0 !"Q1d}mqX&!;,V1u'qW0Mb5 QU 3a%q*.3~|&'kh2'(Ve' -p']g/- `k02(C&x3)w!$%-#,1g0/'I"5&1rM  &k<; 2km0 ""3b0 8MS" M X1>Mh"5*\_14 C)y12-7 2rPK0=& 7%SF20j)2t0}0 "Yz0",)U9'kh8B9t#.$8# *1!!$265-3KMx###Z &#(e{' !Z>,'*3n'8 .K&#1"/hM2}22  )V ' # )%"( 0-$@`0,  LI* VWO/W30t l)',\u"2&.tR%/P({(a2PC2, //G- u W\; 6K,0 N-") ]/2  kf& -1-/,(';0&' :G|$<%5( ? ?9Y)#1J *b-h$IHס,@j\-AF !  &.),h/ Iz/!0!L,#) r2T2&'.the%81 7Ea")GIc1E) 5 7#3Q 1\) {S3jM G  ~! PXc. >Ae2|#{/,-(J! G-c^*23$ Т'%--M -!$2Xq"B*ۣ #S%!,4 8 -;a"  %#T)ȡbM*_2ʡ],ǡn%/K,  R^&"V!J$,!dP3p *{3+ ixS&'  C!!B2 %O+'8'/%Zs/7 gJZ0=!t;,Q *,+ $ /'A%y- u2M ^-(]&W%( S% ! (]!pn 9re* ٣գ l*!g0ף- Q'Sv%(|#!"Y*< a $R% X[  f*2'O"D$'JU 2MV *%H $2%$ +*2-b*52e-b) -pU* %3! 6Q,#,D^ @I4* 22!Q" $!0\/ 0}ĤAk*oH٢-/."$q!431)A [2J")d2*z ;1d"D1N,"1~(0'l3)"1[ &5 (3,T)i'f  !lgmrno\c0%h!di<,ejk)<'u53K(S9) /&w1q /ch%VDqB '2(;/.${#|3$Q-%2}"S/4Y0Ai"m/i*Gs 9 %V  /  ]y17JC 4ߢo]P2g3=%}"02 *7\Ji,N Y 3 A7M![ R: HRbD|1 O jl2`(x ;/ jb +A%46+*e )83-;# )% 1.\ZF,A1C0Z= Xp b(P. "8P"5 -T>08I/ ZU. n( #2"^(J*5#"J/? *T Z!* ]D9 yK UJR\A a" K/* d1t1( |/@mC/ll6Y~Y3A)%'$ (( cA-/^XU"/_>2*|*"!X "!9+KN T!/X$ 3G) M (`"i F D P x/[ 3Ya)aR&62~ >}'8 B:2]D&k H,$(D((5!Y (e)( $*I/ ?3G,.E*"A%0(P(WL103jr' H(Mf G36&ZJML*/#2OMI#W!V,RNRUH;P|"M& M/ +d "h'|"M40bOQP^knS^&  ai  # BV$?3d','ɣG {&#"c#}"!43K|#q 2H-e#'բE Ԣ(-1&A(ҠR N2#((N% d## *Jc2--y%/)c 2a;& 8&@T\*%* j -0%k2 u! v1 "x)^@&7( #'/( 5/?* o6(Fa 0oc" ?# ,f#;%c39!/Q*(/$4l1>+K 2"! R5 kP1z$  S\&b/ `/o)F)V !C .l zC D<;^NKq$r$m %F .b -{.4/ ` (2 m'd30e.?,Oۢ#g.p/h&63/#0" .4#u2r#w$Pc(>ct~ 0/ B"'h%{A Q,28 )? =OF C*@3(S 8%3!/J16/@3 .,B$"( $ K;3{1~'2a-p1II30 #Z($ˢ ?^rf*!v/H%*#/(,(b c +)`-$ d*-(93#Y >"#f'+(B'@3m3!  sQJT`34(lU,!At=L&!cqS)\W#C(a n ]"*!\#x4 __^ %oO' /T$ .:/3)39 1!% ܢ?i -%2&^` )~R,6)"3/0,1#3&šXU*l6_$&yW>!w;7*E8+53U3%B 3Yv|"*=!"G1 !3 =G m-2+" .i. &3$"  '*~#6st21(3.0%t& Mx/) 'h1r(]$&dUP3S"] &@B33#%m8"yRp61"i'"d-bnl0je2?0[W&(IL0$w^5|&U!$*13tCV'" -*0:p"} @!1-* >1'x,/X/0WHC)  -(yX|1 [$.&wgzt' r9# RjH{ 8xys m2%]!w*,/, z'B"{C%!J!D3v" 9 a--2e!m*ɢ=( "*-x$gcw"92I 'Dm '*:H.T 0p*n0$)3-{ K3! 3Z">z/[$ci$1[W]pA` !=r&aF" &K jL1EIڡ*#M.%Mfe$x ,8 ?I( }3Mdqi$M "%e/F%$!pڣ)Ws ޠ, ݣrߠqJ!/(& "&&:1!&Z  W +!'4.vJ7(9 (& !"e-";-?#-'*,%% 22Y#k -)-<1Zi($S(, }/v:o(!/ C"!"%3/2m  ,/b=P#L.';1*Qg(j:13N ho<2o?D/sv#C;b"$-Zti~"0#a)נ_))6 %tsrqpFP!&Z/; A۠8,%B# kV"/:\"LM&(.(N((,* 3!2?"}%CQG1F-3 K')c'&>&@ܣi G$a' )n`?Z%!?*(r)& -3R%%5f"?$E$$]-\Df 2,\b (~tP1 *}3NR"$+L UJ.<?##.]2w# h9 26(V(jf%j 5?@ )GM V @ !#''O#{)0 "H,g$Z- /x#q3G!%!SL /.g.| "wDfT#nl#0. {0"3(U Ec2>!&0)',(#=1 3:2"11 g .s86!y((h4)%)$$$N$$$b"$"$$ $-&k"". $$$"$ $$M%3'6G )Jpn9))p2, 5/>bF7{*B06&K`2 Y"rKi((C.N_X!we@Yo(j{!O<rUnn[&K /*'23AY(d#)f!+g s Bf2) 3}&yQ/ 3O$$/,=0spW27))LO%`, %V3H!I.3V $m ) !,s$""v1,*""3() +=* 52Rn !0- jE'.t%'\,, ! /Dm,1%H&y"2j(m$ u, Og"F-z"?(,( (I$!L($_(%<.rS-Kc'233k%~F2bq%)& )e"u$ g_A>!KѠ,, .$F s*P2 Ԡ&]f .#5 f $D,> *mk (W/S- d]8% cba U5 *IH;g241#.0n# 0Vwvut"zyxonmlsrqpgfedkjih$/R/=D1A)['h3#NLg)C#!a ,Jg"m/h/%&&&Zd(,*,370B1jmn.Mtc "&hV)A(H ' rW"I1Π_)Euc,!, $P%/ ! s &u3M R-*!)*6-!=-0)h*%e3-P't )*z!b'7-!!11>/qg/dp0Rj Xsӣ(n!T8'C'(2Oicv!!'w"' + &%*WD-}#=o$Z!aX}3n^yQ#7PD& M,!i%3,"&j#|2.EB R*V6( k2C 6'6b  (/e0d#'L Q"c'%-%-!#!Ϡ( ^'|b 7R)^ "c97h% @"%#.#Ktz9yO)2>0)vS()w'~N1$XmMF( * ? Y&%E%j4 "$,Y!* , !XmN A QBͣe&d*oB)C%'(k1Z-0(%*Ơ^ 1]'Z2+C$$U!  x2;PI%KE!" B#(')/ )4+T&.lm* )%$  #2~v"Z"(_J/(i# $( P3 (8 '>`*!0&S"B(\ >M;(A/2Y)O֡r$+K(%3' (%4$ 2 ?%\(yWnGuBsTSL/p['/%N&0 <( (('( g"Z(fIP٠H>%Cf :(W}ؠ1 *wѢӢ!@% u"# 6' ]$  ^H  `M *1 $3 e \L1(eu% o 2DR0x%a(fv-"2/7k# lS  )(-sE*2/%  ,)J 1#g!$ 3$/'C%Q"|j*o1"3#) d5Zu'e&[l (! . .%/3"I-~T-*}8.RG3s)%.$l cZ-e ? |QVv2$ 0 L 34b5U-P[]&Fpt"RN#-%3 (/F-X8!,AF31#]0 -i  0qW0 (@A "Bt[0Y?.`;, ^#F. #1)).g1( 'f*x.- {2!_) .1Z*A)c! -806X##W!#3&0'"0&OaQ%1fL3B#Q*{ϣ, $&}/'%0ңrU# (Mt)( ,)(w(FR\% :) a /*|1'K [**?&p&+I(@( g2).L5SI8 -*6 *Rg zv(kEH (^P,`os/h! !m ;3rhl%R'&> 3P"?H f0|'= sk͠0#,5 0;'`"60|/W n()Y)YM/ !v', X!)J '8)Y'7k +F,1 ,"$O p3-*H5 # 2"0)}rBgW_1(I1 $3irh) k?'3ȣ<\m-¢ymCGA @$(0Qe '%ޣ IN+o*|ԣZ!Xm1V''RQ.%0;, "oKI,!p3O)(Vz(,2 Y%o)cK%4|GYy,F"! M4 (!M  O ] # # P/ʠi Y&<"2"vs& )BL y` I ''_- $&-6 # bM<*#ġl# N#J}.dB% 8, %  391v'b)f&(oI5 _%S U% $,[%$ +2.I$*/"($9T1>?S%*2 H:3K @/+8T*/RD)3s0%#("(C('',,&m_&a2M)7 0 )~*/V NUC! /$ &?i# ((v* *;X,&',X %(a3/( (' $`*h,,8 /${"zۡ(  o"M1-!\!]2(p^4i.y 3G*VSޡߡ&)  3U((F.` U2/ * 'FX|-LX-* "z:;0> k$ aa  7d/_Yi.Q /71bj.E L=3r`%9 #$z#~&r"(QT(Nl(%,3-5F#-2 i ^lP B&2Je(8)MW)(. A& 3W3I?309)~V'zBADCFEHGJILKNMPORQTSVUXWZYu(Ql!R%T%%Y,%$ X.)&# K.kS *}'>& V)F+)")(TMooB30"+%S+E#}o()(_iH`D lt6/ Cf =),* b1P vV*N)&22T'+D/.q&a"3}&)1`1rq<u%vՠ#TtY' '*f\1xg!""D73 Cnh!n0u Q2&d7 Z~0b<L,4 4i x^Ra%%t*m- \ %Fx'fj%].d*/y0+261x[!L%u}32"@ %J% 1[1p; ','18`.z%1(74U (L&(XO_:#J(*(6I 9'!X6:1 U* 9&ve3wS!,$\ O(S,9V,* $f2#S: &/ )7"2>2(* R( <0L11F1.=(.B%k) ,l$DNq#.)e* 3fܠ/b%! ` (5'v Edt4"v iw^:D%gE3)F0<X#b*gMc=J00"] iD0!H/sY,6,9 6 !" 3%/ ? ,/1[Ρ2,(* /_*Z"\+3<f#N*wg)N)3&)[ѡ?#U"ӡ.i,С^\ GF/ @) C3^*,ij/*Yf)m h %)q$Q}M-3 #&Rs"|2/F#D*O5# (3MsD!1A-V%_ ڠc7""I1֠Z -,8%;ܡHM;0@ E,cB!A!^#Md@?+ =m'";(5g7`2d*#})*%&0-Q(s*T{gd(2*̠5=Y1`*{%Jup1s(~} C1[+ ^" iأ+R<F )7;-', CT[*"-2J .S07 fY71g JT 'W4U*1('111 1(1I1+ 1<*2r z$$$ $$.$t&!6 p5I ̢`16, 11g E $$$0h%7 #$$$$#$$$$$$$$N$$$N$%%*#5~CT.j!Va#,^"ap[4banq(,j7f+! آ1s1AT)R #)EI8(#*bD.N"n)Q/2"#!A!E")$!M)3 "%y I!#42   'b#n& ," }DI/ 2 x"3)*,+M* 1l E E P02U/J,)0g#Ma2>w &XZ1PF1c*K!#$GfD.Ja`H0<#" {b)"e^2"M|0 T#1@# f)? :!9 &~6 =0;yShxYdDpz3}!o2%gu! :w1  R9r 3. 3!o)/d0,3 j%$G.[B-ţ33ã0.4 M& "3%-#JGsX[kL)/-" i1;u>& p0* 2U-zg)s*q&q/Z'O&2e%."%+wU >`7^)KE $u1U'(L-Q( H*n!D(.  S2<')` dB  1~,5":'0^%% h$!!. !֣y/1#$3/z) M"^2-1EW H" (m-A/?'% ,{$@&w02 (q-p$`7's1U:'"+<1N+K-\!,"P v3Q"l((V(3'M9 F/ V h) :'.a 2X"g8d TV2_.!3<('(/FU 0 E&%x(z#9#,%[# &0,G(%L /fH &!*`& /]> Z1W-9w!r7(t!i4]]tH1_pL1u' q .f$N(& z&ݡ12* fs<3@ tP**}K?-b$I0((V% . J q'AD1- x(o'E3$!v[/M3J) 9*g(2>Y{y&w*}uvXw'O. $K'T$UuU5$"///+4,# '-gK'<$$B7/4&xiP Th2 'Mp% /R1#{3 #M *3=1| r;5-! M(1Q+({I 0h.=S*'xS()(e ~3)DMEg# AĠ#q(T@2u&E E%m%i<,]X3,//.D ")L^(, +# i 72s%! j3('  'hj8m@ Co !~" 4+ 6t# '#/z" 9:P)s'g(M../k3MP/0'd! 9 q2-#3{-.-!5M}W(p)'&l ȢC /2/2;0.[ :yG(| , 8J:X83$A-'9"As3(3T,%Zb.-f.d (3~,0A,U -T L0I, !6#@ R# YN"  8}!S*y-"T_Vày32%qMF,$]llC!Qb/o wa¤ 0١M*,V*iaQ!2"$!V8C,,m"_hԡT)jr"m/) .#F%L>k e*@' 3f3&j/V""7f*/F@e/ !a\* b &*&myf.$B X !cSB1 ,2t*q !.([4t <)q o0/3Y*f#0,A)%0Oy2B/##/Nk10K)AcS*6.V .+ Z<!8+, %4")G1. <P,>3="1pq&!'!) Bp/ 0(IXe1bcNR-2Zz]%B0 *͢ʢ#${CϢk .1j#O-1P3c/ء**%'1 '+ -:3C">U**&$/9"q7,-- '+'&L 263_s/+*'*M)[3/5#9(Y & '*,WHOh 1&)\, u I&'q2G',_#}O sK*/M2}V0'.U 1 F*ǣ'g3  (@((q1R($"@*R 2 '{3Z%D/ "3;)o.*3'|4A&$L"vK&1p #R3k %)3 %:F$i01 .%u5.E1,)2=)xk1-!82=)+#* .ut/\3~ $w-H1t) /ze\HHZ$- `Em >;i&1.R -yV: `NM3 - vŤ-.# C )" Nxts*&,3 XQ 'n%MZ(#/#,IB2!T #*1 ?20l "2%J3#".'L> -.'=4={Eo)E#, ()(90_# *W1_H< 1,mK 2l+'&#C #P zi r3G1: ,2"C-y-- -BS8%=M,zE0),x >q1 E- 8eZ"0<-1   $ 12M,, &%-122N/0a Q WLD'9 y*?/m]U:#M-<,V+*h Y } JC  ! ,Dp#!*R ftD12Z)&*W*"yOkz:-8TA )&$q 5!<, 3Pz6n~bd,)L)n,B]{|+# %x)J% /'?&0! _"/><;EG)h ,V +* 3@,\'('w2 @ *<!-%$!bW,`/\ #Z! T- Y-/ # e/$1mM43! .')0u+1K1-\0# /n)"0 K=;7"á&30lơUk 3p'ra)[#s2y')*&v/4[=<   #L''% .B,r yY,d %uo1  J<)!< (~&*KH#4rY[ 2( d#b'#?  0$AU&'S#J2)Y%1/b&* J[ K;^'^*!NP$3YeA$ A2gl7,88h7d7l7(8`7h7\7X7T7P7L7(8|8H7D7@7<787L847\707,78H8(7$7 777877 77776666666666@766L888666H86 76 7666688name(unichr[, default]) Returns the name assigned to the Unicode character unichr as a string. If no name is defined, default is returned, or, if not given, ValueError is raised.lookup(name) Look up character by name. If a character with the given name is found, return the corresponding Unicode character. If not found, KeyError is raised.<141Ѐ,1` 1``1Ȃ1p0 00@X0%@:0&:0@0r(l(;This module provides access to the Unicode Character Database which defines character properties for all Unicode characters. The data in this database is based on the UnicodeData.txt file version 4.1.0 which is publically available from ftp://ftp.unicode.org/. The module uses the same names and symbols as defined by the UnicodeData File Format 4.1.0 (see http://www.unicode.org/Public/4.1.0/ucd/UCD.html).N@,00+020000000011 1d1x11111111112(2/262O2e2x22222233%3,3J3c3q3x333333344!4(4/4s4z44444445#51585Q5X5_55555555(6/6N6_6f6|666666667g7u777@8)9<9C9h9999:8:I:R::::: ;;%;AB>X>_>t>>>>?A?H?O?v? 0000000001-11111112223@3|33F44=5x55555550676>6`6f66666727:7D7V7u7|777777777777778 8888*82898@8L8R8_8n8t88888888888888 999#9,929A9^9r99$:*:3:8:=:c:o:v::::::;;^;d;066L;P;\;`;l;p;;;P77 7$7(7,7074787<7@7D7H7L7P7T7X7\7`7d7h7l7p7t7x7|777777777777777777777777777777788 88888 8$8(8,8084888<8@8D8H8p ?08888999 99999 9$9(9,9094989<9@9D9H9L9P9T9X9\9`9d9h9l9p9t9x9|999999999999999999999999999: ::$:0:<:;;;;;;;;;;;;;;;;;;<< <<<< <$<,<0<4<<<@!P@ H p.text `.rdata  @@.data|0@.reloc$@@Bd h0Qh 3̋ T T$ $PQh@0RX t $jjjD$PQ\ t3 jT$RhD0`  ËD$h\2PX u0 h]2` ̋T$$PL$QhH0RX t<$tL hL0Qh 3ËT$jjjRP ̋D$ S\$ 9VWs.|$VP4 u _^[É3_^3[W|$u3_ÊSUV33t?-( >PՃt >Q, u ><\t<=uCD>Fu˅u^][_Ë d2^D;s+`2VP4 tB`25d2?5`2tbQՃt&R, u<\t<=t -^][3_\F0F0F0GFGu`2^][_W|$u3_Êt<\t BBu_À:tSSV:\u:J0r27w-Z0r%7w B<0r<7wˀ ȈFFBu^[_QL$ $Pht0QX  uYË$R)Phx0`  YQL$ $Ph|0QX  uYË$R Ph0`  YVhjjh1h 2< P@ jjh$2D Ph<2VX2H 0^ËD$u9h2~. h2   l2uOh Yt2u3y t2p2hq$0h04h2Y?u5~555555556 66D6Q6^6i666 t0x00000000,11111111111111122 2PK}8rdiff_backup/_librsync.pydMZ@ !L!This program cannot be run in DOS mode. $ԛԛԛa߉ԛ߽ԛ۴ԛۛԛۉԛ՛ԛۋԛۈԛێԛRichԛPELUH!  J2T`N~Ph~H`.textpHJ `.rdataN#`$N@@.datar@.relocz@BPQT$h RL` D$PQ`QL$ $Ph@Q` uYVhА`u^YFT$jRF ^YVt$F PB V`^̸B$$$PL$QhPR`tWD$D$$3҅L$D$ L$$ D$PT$Q RD$  ȃtt\3ËT$+PD$T$ R+D$3҅PRhl`Vt$ W|$ GtVP`tA_^VWh|` _^Vt$Fu`Fu^ËD$u3D$ NPQ`}`hP`^ËL$ VPQR` ^̸ fA$(D$PL$ QhR`u Wh``u_ SD$VPGL$T$L$L$QD$4VT$(D$0D$4D$,VVt ^[3_ ËT$ Rȃtđ^[3_ ËD$ GL$ Q^G [_ Vt$FPBN QV` ^̸&@$$$PL$QhR`tWD$D$$3҅L$D$ L$$ D$PT$Q RD$ Dȃtt3ËT$+PD$T$ R+D$3҅PRh`Vt$ W|$ GtVP`tA_^VWh` _^Vt$Fu`Fu^ËD$u3D$ NPQ`}`h(P`^ËL$ VPQR` ^QL$ $Ph Q` t6$H`;t-RQ`u`h4P`3YË$V0FhГ0`u^YFL$NT$R`Ph-F ^YVt$FF8u HPQV RV`^̸=$$$PL$QhLR`tWD$D$$3҅L$D$ L$$ D$PT$Q RD$ ȃttX3ËT$+PD$T$ R+D$3҅PRhd`Vt$ W|$ GtVP`tA_^VWht` _^Vt$Fu`Fu^ËD$u3D$ NPQ`}`hP`^ËL$ VPQR` ^̡x`SVWhjjhphԐd|`P`jjh`=`PhԕV׋`hhPhV׃DhhPhV׃_^[̃UWD$SD$ PWS>UVNQT$$RV(L$]H=QVt$ FWL$QPVD$! uEVvtGT$RD$PV! L$SQh`,|$\$,[_^YÃgu_3^YÅtWPh` _^YVt$h6srVFPVNQVVFRPh6srh`N(F ^h h4a!L$ T$HPVhTah`!L$D$PhDaFT1N ^Vt$t P;h`V!V; 3^h`ak̅uhalÉFWIVtJuMF = VthЋtՃt*F ~tXWNPQha-_ø_WF ~PFPha_@_ËVRhxaV t_̋D$HÃSUVt$ 3W|$(_oD$D$lj\$l$tuzW3;uq9L$uk;udt$;u\ \$tV tR|$(D$(}(b \$T$HD$H}(b\$l$8\$l$0$haj(k_^][̋D$P!3SVt$ F(^(WuE +Nj|$N;vP QS!Rh0b|$D$VPQ RV0PF,%Q R,_^[VW|$ Gpt9t$ D$ }(b$h\b0VW VW_^W1tG _^_^̃Vt$PTD$ L$߮H\$l$$hbTPLPHQRPV, +VdžPdžTdž f,^Ë t=Phb) QV RVVdž ^3^SUl$Vt$PWT3 t4HL;u ;\$uL$ 3PT-VT$ L$$HLPdžT  u++V S_^][̃Vt$WVV;s PVV3; ;T$RD$ PV t#L$T$ D$QRPV~0~,~(x +ыN,ʋV0N,N(+ЍAPhbV0F(NPT3 u ;r V5 ;4_^;uV;F u_^̃SVt$ WVV;s PVV3ۃ;> $IF ; L$$QT$RVg t(D$$L$T$ PQRV[^0^,^( <N +ϋ~,~,F(ϋT+ȋF0PF03 u;r V A 9t]VRPL$Q\$(\$$\$ F0V,L$( ‹T$$ ʃ ;tQPhb+ ;_^[;uF9Xt_F ^[_^[Vt$VFt)FuhLcl^F ^hcF ^h!hcaT$ P@0@,@(JɉH}Qhcj 3ËJɉH|~Qhpcj 3̋D$L$+Vjh 3t$FtF~pjP2F uf^ËN3~73W$N DNf| f| L N fL$w0$xR%u D$;T$(s L$$ BT$]L$EuD$(_^H;][ZD$˃w6R$Rme]UMD$GP<tD$Ӎ DJЉD$D$*u ]L$ED$D$.u D$D$Rt!D$,}3ˍTAЋD$T$,*u ]D$,ED$D$Lt>htluA]D$ED$]]D$ED$C]D$ED$)˃ۃSR$RuT$GVRj P6T$VRGj P"@uT$GVRjPT$VRGjP@uT$GVRj P @uT$GVRjPT$VRGjPT$,D$(L$$VR$PQL$0t$,D$(;GL$$ BT$D$,}T$(T$,D$,T$(PD$(VRT$$PD$$?bL$VQjRD$8L$4T$?@UVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~copy limited to %ld available output bytescopy limited to %ld available input bytes$@??0123456789abcdef0123456789ABCDEFmU~UUUW#WcWgWH~W>x`4 `ڂ`N@jz6( ցʁLV^fp0 ҀrZB2"PyErr_SetStringA_PyObject_NewPyArg_ParseTuplePyObject_FreePy_BuildValuePy_FindMethodWPyDict_GetItemString_PyDict_SetItemStringPyExc_AttributeErrorUPyDict_DelItemString\PyDict_NewPyFile_AsFilePyExc_TypeErrorqPyType_IsSubtypePyFile_TypenPyErr_NewExceptionePyModule_GetDictPy_InitModule4sPyType_Typepython25.dllsprintffreeqsortcallocrealloc strerror_errnofreadfseekmemmovemallocisdigitMSVCR71.dll?_initterm_adjust_fdivL__CppXcptFilter_except_handler3__security_error_handlerk__dllonexit_onexitExitProcessDisableThreadLibraryCallsQueryPerformanceCounterGetTickCount>GetCurrentThreadId;GetCurrentProcessIdGetSystemTimeAsFileTimeKERNEL32.dll_filenob_writeUH2(,0p@_librsync.pydinit_librsyncWlibrsync error %d while in %sl:new_sigmakers#:cyclesignature cycle(ils#)cycletdelete non-existing sigmaker attributesigmakerĐs#:new_deltamakerdelta rs_signature_t builderdelta rs_build_hash_tables#:cycledelta cycle(ils#)cycledelete non-existing deltamaker attributedeltamakerTPPO:new_patchmakerNeed true file objects#:cyclepatch cycle(ils#)cycleldelete non-existing patchmaker attributepatchmakernew_sigmakerReturn a sigmaker object, for finding the signature of an objectnew_deltamakerReturn a deltamaker object, for computing deltasnew_patchmakerReturn a patchmaker object, for patching basis files@@(8_librsync_librsync.librsyncErrorlibrsyncErrorlRS_JOB_BLOCKSIZElRS_DEFAULT_BLOCK_LEN>>6iiii|i{i{i{iN@ 000&0J0Q0`0f0000;1p1v11111222252\2c2w2}223j33330464e4{44444444 55$505=5D5K5^5f5555 66k666666717@7G7N7e7q77777777777777777889R9j99999!:E:x::::::;;;H<<<r>>w?00001t1122444444444444444444555 555555555556 6%6I6666777728=88899H9s9~99999:*:2:Y:r:k;;;<2<<2=T==?@87p7$888199K:R:t;;<<8)?0?P00x2|2222222222222222222222222233444%43484B4N4S4^4j4v444444444R555555555566 64666666667797E7L7|77777788#8+878E8M8Z8`8f8l8`== =(=0=8=p,>0><>@>L>P>\>`>>>T0|0000002 2l2x222t3x33333p5t5|5555555 6(6,6064686<6@6D6PK86v+v+ StringIO.pycPK8<8N +UserDict.pycPK8n$t JUserList.pycPK8FEa__future__.pycPK8"q_8_8 "q_strptime.pycPK8YW5jMM_threading_local.pycPK8q~ +atexit.pycPK8 "b)) Gbase64.pycPK8N8BB<bdb.pycPK8Dnp H7bisect.pycPK8Aݡhh KBcalendar.pycPK8tHT44|cmd.pycPK8Xㄋ~~ codecs.pycPK8 9**P^copy.pycPK88>> Mcopy_reg.pycPK8# difflib.pycPK8i$$dis.pycPK8E{/{/ )doctest.pycPK8!dummy_thread.pycPK8`encodings/__init__.pycPK8~}7z#z#encodings/aliases.pycPK8#!!_encodings/ascii.pycPK8Z!  encodings/base64_codec.pycPK8^^.encodings/big5.pycPK8b'†o5encodings/big5hkscs.pycPK8+Z66*<encodings/bz2_codec.pycPK8ݻ) Mencodings/charmap.pycPK8l O O KZencodings/cp037.pycPK8`6 dencodings/cp1006.pycPK8T] ] oencodings/cp1026.pycPK8r7dO O 1zencodings/cp1140.pycPK8wt t encodings/cp1250.pycPK8DT$q q Xencodings/cp1251.pycPK8_Rt t encodings/cp1252.pycPK8)]z encodings/cp1253.pycPK8;v v Tencodings/cp1254.pycPK8XM8 encodings/cp1255.pycPK8\?s s encodings/cp1256.pycPK8&{ { \encodings/cp1257.pycPK89xMy y  encodings/cp1258.pycPK8Ũm m encodings/cp424.pycPK8f!!Rencodings/cp437.pycPK8j O O Eencodings/cp500.pycPK8Ӊ""encodings/cp737.pycPK8p!!>encodings/cp775.pycPK8 `encodings/cp850.pycPK8g!!encodings/cp852.pycPK8""encodings/cp855.pycPK8KV Nencodings/cp856.pycPK8댳  encodings/cp857.pycPK8?!!encodings/cp860.pycPK8fA!!encodings/cp861.pycPK8~@]C"C"5encodings/cp862.pycPK8[椼!!3Xencodings/cp863.pycPK8/"/" zencodings/cp864.pycPK8(Y¼!!encodings/cp865.pycPK8n""mencodings/cp866.pycPK8rTad!!Eencodings/cp869.pycPK8& Oencodings/cp874.pycPK8EL L Oencodings/cp875.pycPK8sffencodings/cp932.pycPK8WDԙffcencodings/cp949.pycPK8tBFff%encodings/cp950.pycPK8r,encodings/euc_jis_2004.pycPK8ug3encodings/euc_jisx0213.pycPK8(knn=:encodings/euc_jp.pycPK8곰nn@encodings/euc_kr.pycPK8Svv}Gencodings/gb18030.pycPK83J#nn&Nencodings/gb2312.pycPK8x҇Hiencodings/hp_roman8.pycPK8M)NNyencodings/hz.pycPK8nn encodings/idna.pycPK8.L:encodings/iso2022_jp.pycPK8ljpencodings/iso2022_jp_1.pycPK8XKencodings/iso2022_jp_2.pycPK8 &encodings/iso2022_jp_2004.pycPK8<Оencodings/iso2022_jp_3.pycPK8(#ͳencodings/iso2022_jp_ext.pycPK8Wܓencodings/iso2022_kr.pycPK88:v v encodings/iso8859_1.pycPK8J Xencodings/iso8859_10.pycPK8N6 encodings/iso8859_11.pycPK8x) ,encodings/iso8859_13.pycPK8i encodings/iso8859_14.pycPK8i encodings/iso8859_15.pycPK8.8C u encodings/iso8859_16.pycPK8_\v v 2 encodings/iso8859_2.pycPK8~s} }  encodings/iso8859_3.pycPK8XMv v ) encodings/iso8859_4.pycPK8bw w :4 encodings/iso8859_5.pycPK8; > encodings/iso8859_6.pycPK8 vm~ ~ I encodings/iso8859_7.pycPK8 qT encodings/iso8859_8.pycPK8v v C_ encodings/iso8859_9.pycPK8dfĀffi encodings/johab.pycPK8U p encodings/koi8_r.pycPK8^)~ ~ C{ encodings/koi8_u.pycPK8F?? encodings/latin_1.pycPK80 !!e encodings/mac_arabic.pycPK8; + encodings/mac_centeuro.pycPK8u[  encodings/mac_croatian.pycPK8F  encodings/mac_cyrillic.pycPK8ic c  encodings/mac_farsi.pycPK8ˋ  encodings/mac_greek.pycPK8sj b encodings/mac_iceland.pycPK8wiiK encodings/mac_latin2.pycPK89  encodings/mac_roman.pycPK8*  encodings/mac_romanian.pycPK8N  encodings/mac_turkish.pycPK8U(=[[% encodings/mbcs.pycPK8t t ,- encodings/palmos.pycPK8|HH8 encodings/ptcp154.pycPK8zML encodings/punycode.pycPK8<:  nj encodings/quopri_codec.pycPK8 w encodings/raw_unicode_escape.pycPK8"  encodings/rot_13.pycPK8?̆ encodings/shift_jis.pycPK8?ba encodings/shift_jis_2004.pycPK8( encodings/shift_jisx0213.pycPK8nassr encodings/string_escape.pycPK8  encodings/tis_620.pycPK8X7_ _  encodings/undefined.pycPK8] 'x encodings/unicode_escape.pycPK8 º encodings/unicode_internal.pycPK8,ۡ encodings/utf_16.pycPK8XP>> encodings/utf_16_be.pycPK8q>> encodings/utf_16_le.pycPK8== encodings/utf_7.pycPK8- encodings/utf_8.pycPK8!!/ encodings/utf_8_sig.pycPK8볩   encodings/uu_codec.pycPK8|(ؿ encodings/zlib_codec.pycPK8X҅ 1 getopt.pycPK8ǁ:: K gettext.pycPK8Ҵ*6*6L gzip.pycPK8~% hashlib.pycPK8** heapq.pycPK8f/z inspect.pycPK8Gp2O O y linecache.pycPK8g B locale.pycPK85#U$U$ U0 macpath.pycPK8AT new.pycPK86 ?-?- W ntpath.pycPK8|m ! opcode.pycPK8p optparse.pycPK8vi\\bos.pycPK8F&~'~'޿os2emxpath.pycPK8[pdb.pycPK8_ Rpickle.pycPK8kk%% popen2.pycPK8{IV'.'. 5posixpath.pycPK8P## cpprint.pycPK8Õ/XX quopri.pycPK8iZiZ random.pycPK8X$00!re.pycPK8)-repr.pycPK8zrBDAsha.pycPK8f44 bBshutil.pycPK87&z00\zipextimporter.pycPK8U 00 msocket.pycPK8؜>sre.pycPK8Т++Vsre_compile.pycPK8fsre_constants.pycPK8KJJ 2sre_parse.pycPK8;/};/stat.pycPK8@@ %8string.pycPK8>\<\<_xstringprep.pycPK81z struct.pycPK8GA%kxkxsubprocess.pycPK8 s7s7 ;tempfile.pycPK8$)) )stextwrap.pycPK8y]] %threading.pycPK8o token.pycPK8MgH?,?, tokenize.pycPK8t>h+h+ 5traceback.pycPK8J<( ( atypes.pycPK8!A7yxyx kunittest.pycPK8k ~warnings.pycPK8A## Krdiff_backup/FilenameMapping.pycPK8 I::v'rdiff_backup/Globals.pycPK8~ee=rdiff_backup/Hardlink.pycPK8r+%wOrdiff_backup/Main.pycPK8\CPPrdiff_backup/Rdiff.pycPK8tl&&8rdiff_backup/Security.pycPK8 DaV%V%rdiff_backup/SetConnections.pycPK8wH119rdiff_backup/TempFile.pycPK8W9%%Ardiff_backup/Time.pycPK8Chppgrdiff_backup/__init__.pycPK8 9SllWhrdiff_backup/backup.pycPK8"δ%% rdiff_backup/compare.pycPK8i*__rdiff_backup/connection.pycPK8uxl3Y3YZrdiff_backup/eas_acls.pycPK83~y~yrdiff_backup/fs_abilities.pycPK8SO O -rdiff_backup/hash.pycPK89=gY7rdiff_backup/increment.pycPK8'bg@@"Hrdiff_backup/iterfile.pycPK8^rdiff_backup/lazy.pycPK85'i)rdiff_backup/librsync.pycPK8!3\++Srdiff_backup/log.pycPK8G%%rdiff_backup/longname.pycPK8[ rdiff_backup/manage.pycPK8Xmm6rdiff_backup/metadata.pycPK8F;;rdiff_backup/regress.pycPK8iSvSv}rdiff_backup/restore.pycPK8`Wrdiff_backup/robust.pycPK8t332nrdiff_backup/rorpiter.pycPK8((rdiff_backup/rpath.pycPK8ixxQrdiff_backup/selection.pycPK8' rdiff_backup/static.pycPK8+rZFZFfrdiff_backup/statistics.pycPK8Urdiff_backup/user_group.pycPK8$trdiff_backup/win_acls.pycPKaU82 Ɛ_hashlib.pydPKaU8^ !_socket.pydPKaU8%+ Q"_ssl.pydPKaU8V00?Q,bz2.pydPKaU8( d-select.pydPKaU8CPP-unicodedata.pydPK}8-4rdiff_backup/C.pydPK}85rdiff_backup/_librsync.pydPK38!5