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@sgdZddlZddlmZddlmZddlTdddd gZejj d d d d gZ ejj ddddgZ ddZ dddZdddZdddZdddZdddZdddZdd d!Zdd"d#Zdd$d%Zddd&dZddd'dZd(d)Zed*krcendS(+u dyld emulation iN(uframework_info(u dylib_info(u*u dyld_finduframework_finduframework_infou dylib_infou~/Library/Frameworksu/Library/Frameworksu/Network/Library/Frameworksu/System/Library/Frameworksu~/libu/usr/local/libu/libu/usr/libcCsD|dkrtj}n|j|}|dkr7gS|jdS(Nu:(uNoneuosuenvironugetusplit(uenvuvarurval((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_envs    udyld_envcCs%|dkrtj}n|jdS(NuDYLD_IMAGE_SUFFIX(uNoneuosuenvironuget(uenv((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_image_suffix's  udyld_image_suffixcCs t|dS(NuDYLD_FRAMEWORK_PATH(udyld_env(uenv((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_framework_path,sudyld_framework_pathcCs t|dS(NuDYLD_LIBRARY_PATH(udyld_env(uenv((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_library_path/sudyld_library_pathcCs t|dS(NuDYLD_FALLBACK_FRAMEWORK_PATH(udyld_env(uenv((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_fallback_framework_path2sudyld_fallback_framework_pathcCs t|dS(NuDYLD_FALLBACK_LIBRARY_PATH(udyld_env(uenv((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_fallback_library_path5sudyld_fallback_library_pathcCs5t|}|dkr|S||dd}|S(u>For a potential path iterator, add DYLD_IMAGE_SUFFIX semanticscssSxL|D]D}|jdr=|dtd |dVn ||V|VqWdS(Nu.dylib(uendswithulen(uiteratorusuffixupath((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyu_inject=s  ! u)dyld_image_suffix_search.._injectN(udyld_image_suffixuNone(uiteratoruenvusuffixu_inject((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_image_suffix_search8s   udyld_image_suffix_searchccst|}|dk rJx/t|D]}tjj||dVq%Wnx4t|D]&}tjj|tjj|VqWWdS(Nuname(uframework_infouNoneudyld_framework_pathuosupathujoinudyld_library_pathubasename(unameuenvu frameworkupath((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_override_searchFs   udyld_override_searchccsF|jdrB|dk rBtjj||tddVndS(Nu@executable_path/(u startswithuNoneuosupathujoinulen(unameuexecutable_path((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_executable_path_searchWsudyld_executable_path_searchccs|Vt|}|dk rUt|}x)|D]}tjj||dVq0Wnt|}x.|D]&}tjj|tjj|VqhW|dk r| rx)tD]}tjj||dVqWn|s x1t D]&}tjj|tjj|VqWndS(Nuname( uframework_infouNoneudyld_fallback_framework_pathuosupathujoinudyld_fallback_library_pathubasenameuDEFAULT_FRAMEWORK_FALLBACKuDEFAULT_LIBRARY_FALLBACK(unameuenvu frameworkufallback_framework_pathupathufallback_library_path((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyudyld_default_search^s      $  udyld_default_searchcCsnxTttt||t||t|||D]}tjj|r7|Sq7Wtd|fdS(u: Find a library or framework using dyld semantics udylib %s could not be foundN( udyld_image_suffix_searchuchainudyld_override_searchudyld_executable_path_searchudyld_default_searchuosupathuisfileu ValueError(unameuexecutable_pathuenvupath((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyu dyld_findts    cCsyt|d|d|SWn%tk rA}zWYdd}~XnX|jd}|dkrvt|}|d7}ntjj|tjj|d|}yt|d|d|SWntk r|YnXdS(u Find a framework using dyld semantics in a very loose manner. Will take input such as: Python Python.framework Python.framework/Versions/Current uexecutable_pathuenvNu .frameworkii(u dyld_findu ValueErrorurfindulenuosupathujoinubasename(ufnuexecutable_pathuenvueu fmwk_index((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyuframework_finds    + cCs i}dS(N((uenv((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyutest_dyld_findsutest_dyld_findu__main__(u__doc__uosuctypes.macholib.frameworkuframework_infouctypes.macholib.dylibu dylib_infou itertoolsu__all__upathu expanduseruDEFAULT_FRAMEWORK_FALLBACKuDEFAULT_LIBRARY_FALLBACKudyld_envuNoneudyld_image_suffixudyld_framework_pathudyld_library_pathudyld_fallback_framework_pathudyld_fallback_library_pathudyld_image_suffix_searchudyld_override_searchudyld_executable_path_searchudyld_default_searchu dyld_finduframework_findutest_dyld_findu__name__(((u9/opt/alt/python33/lib64/python3.3/ctypes/macholib/dyld.pyus: