ó . ^c@s}dZddlZddlZddlZddlmZdZdZdZ dZ dZ dd „Z dd „Zd „ZdS( sX Re-implementation of find_module and get_frozen_object from the deprecated imp module. iÿÿÿÿNi(tmodule_from_speciiiic Csötjj||ƒ}|d kr4td|ƒ‚n|j rht|dƒrhtjjd|jƒ}nd}d }t |jt ƒ}|j dks³|rÌt |jtj jƒrÌt}d }d}}n|j dksù|rt |jtj jƒrt}d }d}}nÎ|jrÐ|j }tjj|ƒd}|tj jkrRd nd }|tj jkrst}n6|tj jkrŽt}n|tj jkr©t}n|tthkràt||ƒ}qànd }d}}|||||ffS( s7Just like 'imp.find_module()', but with package supports Can't find %stsubmodule_search_locationss __init__.pyiÿÿÿÿtfrozentsbuilt-initrtrbN(t importlibtutilt find_spectNonet ImportErrort has_locationthasattrtspec_from_loadertloadert isinstancettypetorigint issubclasst machinerytFrozenImportert PY_FROZENtBuiltinImportert C_BUILTINtostpathtsplitexttSOURCE_SUFFIXESt PY_SOURCEtBYTECODE_SUFFIXESt PY_COMPILEDtEXTENSION_SUFFIXESt C_EXTENSIONtopen( tmoduletpathstspectkindtfiletstaticRtsuffixtmode((s3/usr/lib/python2.7/dist-packages/setuptools/_imp.pyt find_modulesB         cCs>tjj||ƒ}|s.td|ƒ‚n|jj|ƒS(Ns Can't find %s(RRRR Rtget_code(R"R#R$((s3/usr/lib/python2.7/dist-packages/setuptools/_imp.pytget_frozen_object>scCs8tjj||ƒ}|s.td|ƒ‚nt|ƒS(Ns Can't find %s(RRRR R(R"R#tinfoR$((s3/usr/lib/python2.7/dist-packages/setuptools/_imp.pyt get_moduleEs(t__doc__Rtimportlib.utilRtimportlib.machineryt py34compatRRRR RRR R*R,R.(((s3/usr/lib/python2.7/dist-packages/setuptools/_imp.pyts    *