+
    4Ssi                     J   ^ RI t R t] P                  ! R4      tR tR tR tR tR t]	R	8X  d)   ^ RI
t
 ]
P                  ^,          t]! ]! ]4      4       R# R#   ] dB    ]! R
]
P                  ^ ,          ,          ]
P                  R7       ]
P                   ! ^4        LYi ; i)    Nc                    Tp V P                  4       pVR,          R8X  d   VR8w  d   VR8w  g   Q hW#,           pK9  VR8X  d   TpVR8X  d    W!3# KO  Tp W!3# )z+Read a line from an LDIF file, unfolding itN   N  
)readline)fbufferlinels   &&  =/usr/lib/python3/dist-packages/samba/ms_display_specifiers.py__read_folded_liner      sw    D
JJLR5C< 2:$$,/. 8D rz7 >  >    z^([A-Za-z][A-Za-z0-9-]*):c              #    "   Rp . p \        W4      w  r1VR,          R8X  d   K  VR8X  g   VR8X  d   Mz\        P                  V4      pV'       d#   VR	R R8X  d   VRR	 pVP                  V4       Kl  \	        RV,          R\
        P                  R7       \
        P                  ! ^4       K  \        V4      '       d   Vx  VR8X  g   K  R# 5i)
z(Read an LDIF entry, only unfolding linesr   r   #r   NzInvalid line: %sr   )endfile)	r   attr_type_rematchappendprintsysstderrexitlen)r
   r   entryr   ms   &    r   __read_raw_entriesr    >   s      F
,Q7KQu|DyAG""1%ARS6T>#2AQ(1,#CJJGu::K7s   ACA6CCc                z    V P                  R4      R8w  d%   V P                  RR4      p V P                  RR4      # V # )z"Fix a string DN to use ${CONFIGDN}z%<Configuration NC Distinguished Name>z
 r   z${CONFIGDN}r   )findreplace)dns   &r   fix_dnr%   a   s=     
ww672=ZZr"zzA=QQ	r   c                    . pV  F_  pV^,          ^ 8X  d)   VP                  V^ ,          : RV^,          : 24       K9  VP                  V^ ,          : RV^,          : 24       Ka  	  RP                  V4      # )zWrite out entry as LDIF: :: r   )r   join)r   outr   s   &  r   __write_ldif_oner+   k   sd    
CQ419JJ1Q441./ JJAaDD!A$/0  99S>r   c                N   . pV  EF  p. pVP                  R4      R8w  d%   VP                  R^4      pVP                  ^4       M#VP                  R^4      pVP                  ^ 4       V^ ,          P                  4       pVR8X  d   K  VR8X  d   K  VR8X  d   K  VR8X  d   K  VR8X  d   K  VR	8X  d   K  VR
8X  d=   V^,          P	                  4       P                  4       P                  4       pVR8X  d   K  \        V^,          4      V^&   VP                  V4       EK  	  Tp V # )z?Perform required transformations to the Microsoft-provided LDIFz::r(   r'   
changetypedistinguishednameinstancetypenamecnobjectcategoryshowinadvancedviewonlyTRUEr   )r"   splitr   lowerupperlstriprstripr%   )r   
temp_entryr   tkeyvalues   &     r   __transform_entryr>   y   s    J66$<2q!AHHQKa AHHQKdjjl,%%. &=$;""**aDJJL'')002E ad|!!Q T ELr   c           
     
   . p^ RI Hp V! V RRR7      ;_uu_ 4       p\        V4       F&  pVP                  \	        \        V4      4      4       K(  	  RRR4       RP                  V4      R,           #   + '       g   i     L(; i)z0Read and transform Microsoft-provided LDIF file.)openrzlatin-1)encodingNz

)ior@   r    r   r+   r>   r)   )filenamer*   r@   r
   r   s   &    r   read_ms_ldifrE      sh     C	hi	0	0A'*EJJ'(9%(@AB + 
1 ;;sf$$	 
1	0s   6A22B	__main__z*Usage: %s display-specifiers-ldif-file.txt)r   )rer   compiler   r    r%   r+   r>   rE   __name__r   argvdisplay_specifiers_file
IndexErrorr   r   r    r   r   <module>rN      s   * 
F zz56 F1h
% z"%((1+
 
,.
/0 
  :chhqkJQTQ[Q[\s   A AB"!B"