JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbrў f&c @sdZddlZddlZddlZddlZddlZddlZdddgZdddddddddZ ddddddd dZ ddddddd dZ d d Z ed kree ZejendS(uModule/script to byte-compile all .py files to .pyc (or .pyo) files. When called as a script with arguments, this compiles the directories given as arguments recursively; the -l option prevents it from recursing into directories. Without arguments, if compiles all modules on sys.path, without recursing into subdirectories. (Even though it should do so for packages -- for now, you'll have to deal with packages separately.) See module py_compile for details of the actual byte-compilation. iNu compile_diru compile_fileu compile_pathi ic Cs|stdj|nytj|}Wn.tjk r_tdj|g}YnX|jd} x|D]} | dkrqwntjj|| } |dk rtjj|| } nd} tjj | s t | ||||||sd} qqw|dkrw| tj krw| tj krwtjj | rwtjj |  rwt| |d| |||||sd} qqwqwW| S(u[Byte-compile all modules in the given directory tree. Arguments (only dir is required): dir: the directory to byte-compile maxlevels: maximum recursion level (default 10) ddir: the directory that will be prepended to the path to the file as it is compiled into each byte-code file. force: if True, force compilation, even if timestamps are up-to-date quiet: if True, be quiet during compilation legacy: if True, produce legacy pyc paths instead of PEP 3147 paths optimize: optimization level or -1 for level of the interpreter uListing {!r}...uCan't list {!r}iu __pycache__iN(uprintuformatuosulistdiruerrorusortupathujoinuNoneuisdiru compile_fileucurdirupardiruislinku compile_dir( udiru maxlevelsuddiruforceurxuquietulegacyuoptimizeunamesusuccessunameufullnameudfile((u//opt/alt/python33/lib64/python3.3/compileall.pyu compile_dirs4       *%cCsd}tjj|}|dk r<tjj||} nd} |dk rj|j|} | rj|Sntjj|r|r|trdnd} nF|dkrtj |d| } ntj |} tjj | } |dd|dd} }|dkr|synt tj |j }tjd tj|}t| d }|jd }WdQX||kr|SWqtk rYqXn|std j|ny"tj|| | dd |}Wn tjk rq}zt|r tdj|ntddd|jjtjjdd}|jtjj}t|d}WYdd}~Xqt t!tfk r}zN|rtdj|ntdddt|j"j#d|d}WYdd}~XqX|dkrd}qqn|S(uByte-compile one file. Arguments (only fullname is required): fullname: the file to byte-compile ddir: if given, the directory name compiled in to the byte-code file. force: if True, force compilation, even if timestamps are up-to-date quiet: if True, be quiet during compilation legacy: if True, produce legacy pyc paths instead of PEP 3147 paths optimize: optimization level or -1 for level of the interpreter iucuoiudebug_overrideNiu.pyu<4slurbiuCompiling {!r}...uoptimizeu*** Error compiling {!r}...u*** uenduuerrorsubackslashreplaceu:iiT($uosupathubasenameuNoneujoinusearchuisfileu __debug__uimpucache_from_sourceudirnameuintustatust_mtimeustructupacku get_magicuopenureaduIOErroruprintuformatu py_compileucompileuTrueuPyCompileErrorumsguencodeusysustdoutuencodingudecodeu SyntaxErroru UnicodeErroru __class__u__name__(ufullnameuddiruforceurxuquietulegacyuoptimizeusuccessunameudfileumoucfileu cache_diruheadutailumtimeuexpectuchandleuactualuokuerrumsgue((u//opt/alt/python33/lib64/python3.3/compileall.pyu compile_fileAsh     !       cCstd}xgtjD]\}| s,|tjkr?|r?tdq|oit||d|d|d|d|}qW|S(u{Byte-compile all module on sys.path. Arguments (all optional): skip_curdir: if true, skip current directory (default True) maxlevels: max recursion level (default 0) force: as for compile_dir() (default False) quiet: as for compile_dir() (default False) legacy: as for compile_dir() (default False) optimize: as for compile_dir() (default -1) iuSkipping current directoryuquietulegacyuoptimizeN(usysupathuosucurdiruprintu compile_diruNone(u skip_curdiru maxlevelsuforceuquietulegacyuoptimizeusuccessudir((u//opt/alt/python33/lib64/python3.3/compileall.pyu compile_paths   c Cs4ddl}|jdd}|jdddddd d d d d d|jdddd dd d|jdddd dd d|jdddd dd d|jdddd dd dd d|jdddd d d dd d!|jd"dd#d d$d d%|jd&dd'd(d)d d*|j}|j}|jrt|d+ksutj j |d r|j d,n|j rddl }|j|j |_ n|jrEyX|jd-krtjn t|j+}x!|D]}|j|jqWWdQXWqEtk rAtd.j|jd0SYqEXnd1}y|rx|D]}tj j|rt||j|j|j |j|jsd0}qq[t||j |j|j|j |j|js[d0}q[q[W|St!d|jd|jd|jSWn t"k r/td/d0SYnXd1S(2uScript main program.iNu descriptionu1Utilities to support installing Python libraries.u-luactionu store_constuconstudefaulti udestu maxlevelsuhelpu!don't recurse into subdirectoriesu-fu store_trueuforceu/force rebuild even if timestamps are up to dateu-ququietuoutput only error messagesu-bulegacyu0use legacy (pre-PEP3147) compiled file locationsu-dumetavaruDESTDIRuddirudirectory to prepend to file paths for use in compile-time tracebacks and in runtime tracebacks in cases where the source file is unavailableu-xuREGEXPurxuskip files matching the regular expression; the regexp is searched for in the full path of each file considered for compilationu-iuFILEuflistuzadd all the files and directories listed in FILE to the list considered for compilation; if "-", names are read from stdinu compile_destuFILE|DIRunargsu*urzero or more file and directory names to compile; if no arguments given, defaults to the equivalent of -l sys.pathiu2-d destdir requires exactly one directory argumentu-uError reading file list {}u [interrupted]FT(#uargparseuArgumentParseru add_argumentuNoneu parse_argsu compile_destuddirulenuosupathuisdiruexiturxureucompileuflistusysustdinuopenuappendustripuEnvironmentErroruprintuformatuFalseuTrueuisfileu compile_fileuforceuquietulegacyu compile_diru maxlevelsu compile_pathuKeyboardInterrupt( uargparseuparseruargsu compile_destsureufulineusuccessudest((u//opt/alt/python33/lib64/python3.3/compileall.pyumainsn         * !         umainu__main__Fiii(u__doc__uosusysuerrnouimpu py_compileustructu__all__uNoneuFalseu compile_diru compile_fileu compile_pathumainu__name__uintu exit_statusuexit(((u//opt/alt/python33/lib64/python3.3/compileall.pyu s"       * I  L