ó
Þ‡GTc           @   s  d  d l  Z  d  d l Z d  d l m Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l	 Z	 d  d l
 Z
 d  d l m Z d „  Z d „  Z e
 j Z d „  Z d e f d „  ƒ  YZ d	 „  Z d
 e f d „  ƒ  YZ d e d „ Z e j ƒ  Z e j ƒ  d a d „  Z d „  Z e d „ Z d „  Z  d e d „ Z! d d „ Z# i  Z$ d d „ Z% d „  Z& d „  Z' d „  Z( e d „ Z) d „  Z* d „  Z+ d „  Z, d „  Z- e
 j j. d ƒ Z/ d  e f d! „  ƒ  YZ0 i  Z1 d" „  Z2 d# „  Z3 d$ „  Z4 d Z5 e re
 j6 j7 d% ƒ Z5 n  d S(&   iÿÿÿÿN(   t   StringIO(   t   dumpsc         C   s?   t  j j r% t j |  | t j ƒ n t j |  | t j ƒ d  S(   N(   t   renpyt   configt   use_cpicklet   cPicklet   dumpt   HIGHEST_PROTOCOLt   pickle(   t   ot   f(    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyR   )   s    c         C   s*   t  j j r t j |  ƒ St j |  ƒ Sd  S(   N(   R   R   R   R   t   loadsR   (   t   s(    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyR   /   s    c            sR   i  ‰ ‡ ‡ ‡  f d †  ‰ t  d d ƒ ‰  ˆ |  d ƒ ˆ | d ƒ ˆ  j ƒ  d  S(   Nc            s…  t  |  ƒ } | ˆ k r< ˆ j d j d | ˆ | ƒ ƒ d St |  t t t j t j t j	 f ƒ rr t
 |  ƒ } n&t |  t t f ƒ rÑ t |  ƒ d k r± t
 |  ƒ j d ƒ } q˜t
 |  d  d ƒ j d ƒ } nÇ t |  t t f ƒ rý d |  j j d } n› t |  t ƒ r#d |  j j d } nu t |  t j ƒ rVd j |  j j |  j j ƒ } nB t |  t ƒ r€d	 j t |  ƒ j ƒ } n d
 j t |  ƒ j ƒ } | ˆ | <t |  t t t j t j t j	 f ƒ rÒd } nt |  t t f ƒ rþt |  ƒ d d } nct |  t t f ƒ rbd } xEt |  ƒ D]5 \ } } | d 7} | ˆ | d j | | ƒ ƒ 7} q&Wnÿt |  t ƒ rÀd } xç|  j ƒ  D]5 \ } } | d 7} | ˆ | d j | | ƒ ƒ 7} q„Wn¡t |  t j ƒ rïd ˆ |  j | d ƒ } nry |  j d ƒ ‰  Wn g  ‰  d | } n X‡  f d †  }	 d } |	 d i  ƒ }
 t |
 t ƒ r”xY |
 j ƒ  D]1 \ } } | d 7} | ˆ | | d | ƒ 7} q\Wn | ˆ |
 | d ƒ 7} xL t |	 d g  ƒ ƒ D]5 \ } } | d 7} | ˆ | d j | | ƒ ƒ 7} qÁWxd |	 d g  ƒ D]S } t | ƒ d k r(q
n  | \ } } | d 7} | ˆ | d j | | ƒ ƒ 7} q
Wˆ j d j | | ˆ | ƒ ƒ | S(   Ns   {0: 7d} {1} = alias {2}
i    iP   s   utf-8s   ...t   <t   >s   <method {0}.{1}>s   <{0}>s   BAD TYPE <{0}>i   i(   s
   {0}[{1!r}]i   s   .im_selfs   BAD REDUCTION c            s2   |  t  ˆ  ƒ k  r* ˆ  |  d  k	 r* ˆ  |  S| Sd  S(   N(   t   lent   None(   t   idxt   default(   t	   reduction(    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   get„   s    "t   .s   .__getstate__()i   s   {0}[{1}]i   s   {0: 7d} {1} = {2}
(   t   idt   writet   formatt
   isinstancet   intt   floatt   typest   NoneTypet
   ModuleTypet	   ClassTypet   reprt   strt   unicodeR   t   encodet   tuplet   listt	   __class__t   __name__t   dictt
   MethodTypet   im_classt   im_funct   objectt   typet	   enumeratet	   iteritemst   im_selft   __reduce_ex__(   R	   t   patht   idot   o_reprt   sizet   it   oot   kt   vR   t   state(   t   visitt   o_repr_cacheR
   (   R   s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyR;   C   sx     ' !
'	
&
&
""
#
# s   save_dump.txtt   wt   rootst   log(   t   filet   close(   R>   R?   (    (   R
   R<   R;   s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt	   save_dump9   s    ft	   SaveAbortc           B   s   e  Z RS(    (   R'   t
   __module__(    (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRC   ¶   s   c         C   s6   t  j j | ƒ r" t  j | ƒ n  t  j |  | ƒ d  S(   N(   t   osR2   t   existst   unlinkt   rename(   t   oldt   new(    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   safe_rename¹   s    t
   SaveRecordc           B   s   e  Z d  „  Z d „  Z RS(   c         C   s1   | |  _  | |  _ | |  _ | |  _ d  |  _ d  S(   N(   t
   screenshott
   extra_infot   jsonR?   R   t   first_filename(   t   selfRM   RN   RO   R?   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   __init__Ê   s
    				c         C   sá   | d } |  j  d  k	 r= t j |  j  | ƒ t | | ƒ d  St j | d t j ƒ } | j d |  j	 ƒ | j d |  j
 j d ƒ ƒ | j d |  j ƒ | j d t j ƒ | j d |  j ƒ | j ƒ  t | | ƒ | |  _  d  S(	   Ns   .newR=   s   screenshot.pngRN   s   utf-8RO   t   renpy_versionR?   (   RP   R   t   shutilt   copyRK   t   zipfilet   ZipFilet   ZIP_DEFLATEDt   writestrRM   RN   R#   RO   R   t   versionR?   RA   (   RQ   t   filenamet   filename_newt   zf(    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt
   write_fileÒ   s    

(   R'   RD   RR   R^   (    (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRL   Ã   s   	t    c   	      C   s  | r t  t j _ n  t j j j d  ƒ } t j j	 rL t	 | t j j ƒ n  t
 ƒ  } t | t j j f | ƒ | rŒ t j j rŒ t ƒ  ‚ n  t j j j ƒ  } i | d 6} x t j j D] } | | ƒ q¸ Wt | ƒ } t | | | | j ƒ  ƒ } t j |  | ƒ t j ƒ  t |  ƒ d  S(   Nt
   _save_name(   t   FalseR   t   pythont   mutate_flagt   gameR?   t   freezeR   R   RB   R    R   RC   t	   interfacet   get_screenshott   save_json_callbackst
   json_dumpsRL   t   getvaluet   locationt   savet   scant
   clear_slot(	   t   slotnameRN   Rc   R>   t   logfRM   RO   R6   t   sr(    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRl   ø   s$    	
i    c         C   s“   z ys t  d t j j ƒ t j j r7 t j j ƒ  } n d } |  rY t j j d t ƒ n  t d d t d | ƒd a	 Wn n XWd  t
 j ƒ  Xd  S(   Ns   auto-R_   t
   backgrounds   auto-1Rc   RN   i    (   t   cycle_savesR   R   t   autosave_slotst   auto_save_extra_infot   exportst   take_screenshott   TrueRl   t   autosave_countert   autosave_not_runningt   set(   Rw   RN   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   autosave_thread0  s    
c           C   sŠ   t  j j s d  St j ƒ  s  d  St  j j r0 d  St t  j j ƒ d k rL d  St	 d 7a	 t	 t  j j k  rl d  St  j
 j r| d  St t ƒ d  S(   Ni   (   R   R   t   autosave_frequencyRz   t   isSett   skippingR   Rd   t   contextsRy   t   storet	   main_menut   force_autosaveRx   (    (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   autosaveM  s    
c         C   sl   t  j ƒ  s d  St j j r  d  St j j r0 d  St  j ƒ  t j d t	 d |  f ƒ } t
 | _ | j ƒ  d  S(   Nt   targett   args(   Rz   R~   R   R   R‚   t
   _in_replayt   cleart	   threadingt   ThreadR|   Rx   t   daemont   start(   Rw   t   t(    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRƒ   i  s    
	c         C   s   t  |  ƒ } | j ƒ  } | d  k r( d  S| j ƒ  } | d  k rD d  S| j d d ƒ } | j ƒ  } | d  k rr d  S| | | f S(   NR`   R_   (   t	   get_cachet	   get_mtimeR   t   get_jsonR   Rg   (   Ro   t   ct   mtimeRO   RN   RM   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   scan_saved_game‹  s    R   c   
      C   sÊ   t  j ƒ  } |  d  k	 rF g  | D] } t j |  | ƒ r | ^ q } n  | j ƒ  | rZ | Sg  } xc | D][ } t | ƒ } | j ƒ  j d d ƒ } | j	 ƒ  } | j
 ƒ  }	 | j | | | |	 f ƒ qg W| S(   NR`   R_   (   Rk   R%   R   t   ret   matcht   sortRŽ   R   R   Rg   R   t   append(
   t   regexpt   fastt   slotsR6   t   rvR   R‘   RN   RM   R’   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   list_saved_games¢  s    .
c         C   sT   t  j ƒ  } |  d  k	 rF g  | D] } t j |  | ƒ r | ^ q } n  | j ƒ  | S(   N(   Rk   R%   R   R”   R•   R–   (   R˜   Rš   R6   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt
   list_slotsÑ  s
    
.
c         C   s¼   t  j |  t ƒ } | t k r® d } d  } t j ƒ  } xu | D]j } |  d  k	 rh t j |  | ƒ rh q= n  t | ƒ j	 ƒ  } | d  k rŒ q= n  | | k r= | } | } q= q= Wn  | t  |  <| S(   Ni    (
   t   newest_slot_cacheR   t   unknownR   Rk   R%   R”   R•   RŽ   R   (   R˜   R›   t	   max_mtimeRš   R6   R’   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   newest_slotç  s     

c         C   s   t  |  ƒ j ƒ  S(   N(   RŽ   R   (   Ro   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt
   slot_mtime
  s    c         C   s   t  |  ƒ j ƒ  S(   N(   RŽ   R   (   Ro   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt	   slot_json  s    c         C   s   t  |  ƒ j ƒ  S(   N(   RŽ   Rg   (   Ro   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   slot_screenshot  s    c         C   s$   t  |  ƒ } | j ƒ  r t St Sd  S(   N(   RŽ   R   Rx   Ra   (   R[   t   testR‘   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   can_load'  s    c         C   s2   t  t j |  ƒ ƒ \ } } | j | d d ƒd  S(   Nt   labelt   _after_load(   R   Rk   t   loadt   unfreeze(   R[   R>   R?   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyR©   5  s    c         C   s   t  j |  ƒ t |  ƒ d  S(   N(   Rk   RG   Rn   (   R[   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   unlink_save@  s    c         C   s(   t  j |  | ƒ t |  ƒ t | ƒ d  S(   N(   Rk   RH   Rn   (   RI   RJ   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   rename_saveK  s    
c         C   sJ   xC t  | d d d ƒ D]+ } t |  t | ƒ |  t | d ƒ ƒ q Wd  S(   Ni   i    iÿÿÿÿ(   t   rangeR¬   R!   (   t   namet   countR6   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRs   Y  s    RŸ   t   Cachec           B   s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s   | |  _  |  j ƒ  d  S(   N(   Ro   Rˆ   (   RQ   Ro   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRR   s  s    	c         C   s   t  |  _ t  |  _ t  |  _ d  S(   N(   RŸ   R’   RO   RM   (   RQ   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRˆ   w  s    		c         C   s5   |  j  } | t k r1 t j  |  j ƒ } |  _  n  | S(   N(   R’   RŸ   Rk   Ro   (   RQ   R›   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyR     s    	c         C   s5   |  j  } | t k r1 t j  |  j ƒ } |  _  n  | S(   N(   RO   RŸ   Rk   Ro   (   RQ   R›   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyR   Š  s    	c         C   s8   |  j  } | t k r1 t j  |  j ƒ } |  _  n  |  j  S(   N(   RM   RŸ   Rk   Ro   (   RQ   R›   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRg   “  s    	(   R'   RD   RR   Rˆ   R   R   Rg   (    (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyR°   n  s
   		
				c         C   s9   t  j |  d  ƒ } | d  k r5 t |  ƒ } t  |  <n  | S(   N(   t   cacheR   R   R°   (   Ro   R›   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRŽ      s    c         C   s+   t  |  ƒ j ƒ  t j ƒ  t j j ƒ  d  S(   N(   RŽ   Rˆ   Rž   R   Rv   t   restart_interaction(   Ro   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyRn   ª  s    
c          C   s<   x t  j ƒ  D] }  |  j ƒ  q Wt j ƒ  t j j ƒ  d  S(   N(   R±   t   valuesRˆ   Rž   R   Rv   R²   (   R‘   (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   clear_cacheµ  s    
t   blah(8   R   R   t	   cStringIOR    RV   R”   R‰   R   RT   RE   R   RO   R   Ri   R   R   t   savegame_suffixRB   t	   ExceptionRC   RK   R,   RL   Ra   Rl   t   EventRz   R{   Ry   R|   R„   Rƒ   R“   Rœ   R   R   Rž   R¡   R¢   R£   R¤   R¦   R©   R«   R¬   Rs   t   SentinelRŸ   R°   R±   RŽ   Rn   R´   Rk   t   savelocationt   FileLocation(    (    (    s^   C:\Users\Administrator Reset\Downloads\bundestrojaner_all\Unteralterbach-all\renpy\loadsave.pyt   <module>   s\   				}	
52
		"	/#			
	
				0	
		