-
<c       s    d  Z    d k Z 	 d d d d g Z  e a  e a  d   Z ' d   Z h e i d j o p e a n_ t e i d	 j o u d
 e i	   d a n0 v e i d d f j o w d a n
 y d a { d   Z
  d d  Z  d f  d     YZ  d d d d  Z  d f  d     YZ  y  d k Z WnP  e j
 oA  d f  d     YZ  e e    Z  e   Z  [ n, X e e i    Z  e i   Z  [  [ d S(   s   Temporary files and filenames.Ns   mktemps   TemporaryFiles   tempdirs   gettempprefixc      sZ       t  t j	 o  t  Sn ! t i   " z # t   SWd $ % t i   Xd S(   s+   Function to calculate the directory to use.N(   s   tempdirs   Nones   _tempdir_locks   acquires   _gettempdir_inners   release(    (    (    s   /usr/lib/python2.2/tempfile.pys
   gettempdir s   c     s  ' ( ) * t  t j	 o + t  Sn , y - t i   } Wn+ . t t i f j
 o / t i } n X0 d d d | g }	 1 t i	 d j o* 2 |	 i
 d d  3 |	 i
 d d  n 4 t i	 d j o 5 d	 k } d	 k }
 6 y_ 7 | i |
 i 8 |
 i d
  \ } } 9 | i | | d f  i   } : |	 i
 d |  Wn ; | i j
 o
 < n XnK = t i	 d j o7 > t i d  } ? | o @ |	 i
 d |  n n A xN d d d f DA ]: } B t i i |  o C |	 i
 d t i |  n qWD t   d } E xV|	 DE ]K} F y&G t i i | |  } H t i	 d j o I y0 J t i  | K t i! t i" Bt i# Bd  } Wn L t% j
 o
 M nZ XO t i& | d  }  P |  i( d  Q |  i)   R t i* |  S ~  ~ T | a  U PnM W t  | d  }  X |  i( d  Y |  i)   Z t i* |  [ | a  \ PWn ] t+ j
 o
 ^ n XqW_ t  t j o ` d |	 } a t+ |  n b t  Sd	 S(   s+   Function to calculate the directory to use.s   /tmps   /var/tmps   /usr/tmps   nti    s   C:\TEMPs   \TEMPs   macNi   s    s   riscoss   Wimp$ScrapDirs   TMPDIRs   TEMPs   TMPs   tests   posixi  s   ws   blats0   Can't find a usable temporary directory amongst (-   s   tempdirs   Nones   oss   getcwds   pwds   AttributeErrors   errors   curdirs
   attempdirss   names   inserts   macfss   MACFSs
   FindFolders   kOnSystemDisks   kTemporaryFolderTypes   refnums   dirids   FSSpecs   as_pathnames   dirnames   getenvs   scrapdirs   envnames   environs   has_keys   gettempprefixs   testfiles   dirs   paths   joins   filenames   opens   O_RDWRs   O_CREATs   O_EXCLs   fds   OSErrors   fdopens   fps   writes   closes   unlinks   IOErrors   msg(   s   fps   macfss   scrapdirs   refnums   msgs   pwds   envnames   fds   dirnames
   attempdirss   MACFSs   filenames   testfiles   dirids   dir(    (    s   /usr/lib/python2.2/tempfile.pys   _gettempdir_inner' sv   !
 	"
 	$			s   posixs   nts   ~s   -s   macs   riscoss   Python-Tmp-s   tmpc      s>   {    t  t j o  d t i   d Sn  t  Sd S(   s   Function to calculate a prefix of the filename to use.

    This incorporates the current process id on systems that support such a
    notion, so that concurrent processes don't generate the same prefix.
    s   @s   .N(   s   templates   Nones   oss   getpid(    (    (    s   /usr/lib/python2.2/tempfile.pys   gettempprefix{ s
   s    c    s      t    }  t   }  xf  d o[  t i   }  t i i	 | | t
 |  |   }  t i i |  o  | Sn q$ Wd S(   s>   User-callable function to return a unique temporary file name.i   N(   s
   gettempdirs   dirs   gettempprefixs   pres   _counters   get_nexts   is   oss   paths   joins   strs   suffixs   files   exists(   s   suffixs   pres   files   is   dir(    (    s   /usr/lib/python2.2/tempfile.pys   mktemp s    
&s   TemporaryFileWrapperc      sP    t  Z d  Z   e i Z  d   Z  d   Z  d   Z  d   Z RS(   s   Temporary 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.
    c    s+     | |  _   | |  _  d |  _ d  S(   Ni    (   s   files   selfs   paths   close_called(   s   selfs   files   path(    (    s   /usr/lib/python2.2/tempfile.pys   __init__ s   c    sH     |  i o3  d |  _  |  i i    |  i |  i  n d  S(   Ni   (   s   selfs   close_calleds   files   closes   unlinks   path(   s   self(    (    s   /usr/lib/python2.2/tempfile.pys   close s   c    s     |  i   d  S(   N(   s   selfs   close(   s   self(    (    s   /usr/lib/python2.2/tempfile.pys   __del__ s   c    sc     |  i d }  t | |  }  t |  t d  j o  t |  | |  n  | Sd  S(   Ns   filei    (   s   selfs   __dict__s   files   getattrs   names   as   types   setattr(   s   selfs   names   as   file(    (    s   /usr/lib/python2.2/tempfile.pys   __getattr__ s
   (	   s   __name__s
   __module__s   __doc__s   oss   unlinks   __init__s   closes   __del__s   __getattr__(    (    (    s   /usr/lib/python2.2/tempfile.pys   TemporaryFileWrapper s   s   w+bic    s      t  |  }  t i d j o}  t i | t i t i Bt i Bd  }  y*  t i	 |   t i
 | |  |  SWn    t i |     n Xn&  t | |  |  }  t | |  Sd S(   sB   Create and return a temporary file (opened read-write by default).s   posixi  N(   s   mktemps   suffixs   names   oss   opens   O_RDWRs   O_CREATs   O_EXCLs   fds   unlinks   fdopens   modes   bufsizes   closes   files   TemporaryFileWrapper(   s   modes   bufsizes   suffixs   files   fds   name(    (    s   /usr/lib/python2.2/tempfile.pys   TemporaryFile s   )s   _ThreadSafeCounterc      s&    t  Z  d d  Z  d   Z RS(   Ni    c    s     | |  _   | |  _ d  S(   N(   s   mutexs   selfs   initialvalues   i(   s   selfs   mutexs   initialvalue(    (    s   /usr/lib/python2.2/tempfile.pys   __init__ s   c    s     |  i i    |  i }  y  | d } Wn)  t j
 o  t |  d } n X | |  _  |  i i    | Sd  S(   Ni   (	   s   selfs   mutexs   acquires   is   results   newis   OverflowErrors   longs   release(   s   selfs   newis   result(    (    s   /usr/lib/python2.2/tempfile.pys   get_next s   (   s   __name__s
   __module__s   __init__s   get_next(    (    (    s   /usr/lib/python2.2/tempfile.pys   _ThreadSafeCounter s   	s   _DummyMutexc      s     t  Z  d   Z  e Z RS(   Nc    s
     d  S(   N(    (   s   self(    (    s   /usr/lib/python2.2/tempfile.pys   acquire s   (   s   __name__s
   __module__s   acquires   release(    (    (    s   /usr/lib/python2.2/tempfile.pys   _DummyMutex s   	(   s   __doc__s   oss   __all__s   Nones   tempdirs   templates
   gettempdirs   _gettempdir_inners   names   getpids   gettempprefixs   mktemps   TemporaryFileWrappers   TemporaryFiles   _ThreadSafeCounters   threads   ImportErrors   _DummyMutexs   _counters   _tempdir_locks   allocate_lock(   s   mktemps   _counters   TemporaryFileWrappers   threads   __all__s   _DummyMutexs   _gettempdir_inners   _ThreadSafeCounters
   gettempdirs   gettempprefixs   _tempdir_locks   oss   TemporaryFile(    (    s   /usr/lib/python2.2/tempfile.pys   ? s:   		A	$