+
    4Ssiö!  ã                   ó„   € ^ RI t ^ RIt^ RIHtHt ^ RIHt ^ RIHt ^ RI	H
t
 R tR t ! R R	]]4      t ! R
 R]4      tR# )é    N)Ú
gp_pol_extÚgp_misc_applier)Úmisc)Ú
get_string)Úlogc                 óL  € V P                   \        P                  8X  d<   \        V P                  4      P                  R R4      p\        P                  ! V4      # V P                   \        P                  8X  d!   V P                  R9   d   V P                  ^8H  # V P                  # )Ú Ú )r   é   )	Útyper   ÚREG_MULTI_SZr   ÚdataÚreplaceÚjsonÚloadsÚ	REG_DWORD)Úer   s   & Ú9/usr/lib/python3/dist-packages/samba/gp/gp_firefox_ext.pyÚparse_entry_datar      sp   € Ø‡v�v”×"Ñ"Ô"Ü˜!Ÿ&™&Ó!×)Ñ)¨&°"Ó5ˆÜ�zŠz˜$ÓÐØ	
�‰”4—>‘>Ô	! a§f¡f°Ô&6Ø�v‰v˜‰{ÐØ�6‰6€Mó    c                 ó`  € / p/ pV EF"  pVP                   P                  V 4      '       g   K'  R VP                  9   d   K:  VP                   P                  V R4      P	                  R4      pV'       Edž   VP                  R4      pTpRpVR,          P                  4       '       d   RP                  VRR 4      pMTVP                  P                  4       '       d   VP                   pM'RP                  VP                   VP                  .4      p\        \        V4      4       EFž  p	WY,          R8X  d   RWY&   \        p
V	\        V4      ^,
          8X  d<   VP                  P                  4       '       d   \        p
\        VP                  4      pV	\        V4      ^,
          8  dB   WY^,           ,          P                  4       '       d   \        p
\        WY^,           ,          4      p\        V4      \        8X  dB   WY,          V9  d#   V
\        8X  d   / WeV	,          &   M. WeV	,          &   WeV	,          ,          pEK  Wƒ9  d   / W8&   WsV,          P                  4       9  dJ   V
\        8X  d   VP                  / 4       MVP                  . 4       \        V4      ^,
          W8,          V&   WcV,          V,          ,          pEK¡  	  \        V4      \        8X  d   VP                  \!        V4      4       EKñ  \!        V4      WdP                  &   EK  \!        V4      W$P                  &   EK%  	  V# )z
**delvals.r
   Ú\NÚPDFjsÚPSFjséÿÿÿÿ)ÚkeynameÚ
startswithÚ	valuenamer   ÚstripÚsplitÚ	isnumericÚjoinÚrangeÚlenÚdictÚlistÚintr   ÚkeysÚappendr   )ÚsectionÚentriesÚresultÚ	index_mapr   Úsub_keysÚcurrentÚindexÚnameÚiÚctypes   &&         r   Úconvert_pol_to_jsonr4       s`  € Ø€FØ€IÜˆØ�y‰y×#Ñ# G×,Ò,ÙØ˜1Ÿ;™;Ô&ÙØ—9‘9×$Ñ$ W¨bÓ1×7Ñ7¸Ó=ˆßˆ8Ø—~‘~ dÓ+ˆHØˆGØˆEØ˜�|×%Ñ%×'Ò'Ø—y‘y ¨#¨2 Ó/‘Ø—‘×&Ñ&×(Ò(Ø—y‘y‘à—y‘y !§)¡)¨Q¯[©[Ð!9Ó:�Üœ3˜x›=×)�Ø•; 'Ô)Ø")�H‘KÜ�Øœ˜H› a�Ô'¨A¯K©K×,AÑ,A×,CÒ,CÜ �EÜ §¡Ó,�EØ”s˜8“} Q•Ô&¨8°aµC­=×+BÑ+B×+DÒ+DÜ �EÜ ¨1­¥Ó.�EÜ˜“=¤DÔ(Ø•{¨'Ô1Ø ¤Dœ=Ø35˜G¨Q¥KÒ0à35˜G¨Q¥KÑ0Ø%¨q¥kÕ2“GàÔ,Ø*,˜	™Ø¨d¥O×$8Ñ$8Ó$:Ô:Ø ¤Dœ=Ø#ŸN™N¨2Õ.à#ŸN™N¨2Ô.Ü14°W³¸aµ˜	�¨Ñ.Ø%°¥o°eÕ&<Õ=“Gñ5 *ô6 �G‹}¤Ô$Ø—‘Ô/°Ó2×3ä'7¸Ó':�Ÿ™Ô$ä"2°1Ó"5ˆF—;‘;Ôña ðb €Mr   c                   ó¢   a a€ ] tR t^Vt oRt]P                  P                  ]R4      tR t	R t
R tV 3R ltR tR tR	 tRR
 ltR tRtVtV ;t# )Úgp_firefox_extz/etc/firefox/policiesúpolicies.jsonc                ó   € R # )zMozilla/Firefox© ©Úselfs   &r   Ú__str__Úgp_firefox_ext.__str__Z   s   € Ù r   c                ó–  €  \         P                  ! V P                  R R7       \        V P                  R4      ;_uu_ 4       p\
        P                  ! W4       \        P                  ! RV P                  4       RRR4       R#   + '       g   i     R# ; i  \         d&    \        P                  ! RT P                  4        R# i ; i)T)Úexist_okÚwzWrote Firefox preferencesNz#Failed to write Firefox preferences)
ÚosÚmakedirsÚfirefox_installdirÚopenÚdestfiler   Údumpr   ÚdebugÚPermissionError)r;   ÚpoliciesÚfs   && r   Úset_machine_policyÚ!gp_firefox_ext.set_machine_policy]   s‚   € ð	-Ü�KŠK˜×/Ñ/¸$Õ?Ü�d—m‘m S×)Ô)¨QÜ—	’	˜(Ô&Ü—	’	Ð5°t·}±}ÔE÷ *×)×)Ò)ûô ô 	-Ü�IŠIÐ;Ø"Ÿm™m÷-ð	-ús0   ‚A B Á8BÁ:B ÂB	ÂB ÂB Â,CÃCc                óT  € \         P                  P                  V P                  4      '       da   \	        V P                  R 4      ;_uu_ 4       p\
        P                  ! V4      p\        P                  ! RV P                  4       RRR4       V# R/ /pV#   + '       g   i     X# ; i)ÚrzRead Firefox preferencesNrI   )	rA   ÚpathÚexistsrE   rD   r   Úloadr   rG   )r;   rN   rI   s   &  r   Úget_machine_policyÚ!gp_firefox_ext.get_machine_policyg   sy   € Ü�7‰7�>‰>˜$Ÿ-™-×(Ò(Ü�d—m‘m S×)Ô)¨QÜŸ9š9 Q›<�Ü—	’	Ð4°d·m±mÔD÷ *ð
 ˆð # BÐ'ˆHØˆ÷ *Ö)ð
 ˆús   Á8BÂB'	c                óÖ   <€ \         SV `  V4      pVP                  4        F  w  r4 \        P                  ! V4      W#&   K   	  V#   \        P
                  P                   d     KF  i ; i©N)ÚsuperÚparse_valueÚitemsr   r   ÚdecoderÚJSONDecodeError)r;   Úvaluer   ÚkÚvÚ	__class__s   &&   €r   rW   Úgp_firefox_ext.parse_valuep   s]   ø€ Ü‰wÑ" 5Ó)ˆØ—J‘J–L‰DˆAðÜŸ*š* Q›-�“ñ !ð
 ˆøô —<‘<×/Ñ/ô Úðús   §AÁA(Á'A(c                óü   € R  pV P                  4       pW&R,          P                  4       9   dN   Ve'   VR,          V,          V8X  d   V! VR,          W$4       MV! VR,          W$4       V P                  V4       R# R# )c                 ó   € Vf   W R # W V&   R # rU   r9   )rI   ÚpolicyÚvals   &&&r   Úset_valÚ.gp_firefox_ext.unapply_policy.<locals>.set_valz   s   € ØŠ{ØÒ$à#&˜Ó r   rI   N)rR   r(   rK   )r;   Úguidrb   Úapplied_valrc   rd   r/   s   &&&&&  r   Úunapply_policyÚgp_firefox_ext.unapply_policyy   su   € ò	'ð
 ×)Ñ)Ó+ˆØ˜ZÕ(×-Ñ-Ó/Ô/ØÒ&à˜:Õ& vÕ.°+Ô=Ù˜G JÕ/°Ô=øá˜ 
Õ+¨VÔ9Ø×#Ñ# GÖ,ñ 0r   c                óŠ  € V P                  V4      pVR 8X  dp   V P                  4       pVR,          P                  4        FC  pWdR,          R,          9   d   VR,          R,          V,          MRpV P                  WRV4       KE  	  M*T P                  YRV9   d
   VR,          MRVR,          4       V P	                  W4       R# )r7   rI   Úold_valNÚnew_val)rW   rR   r(   rh   Úcache_remove_attribute)r;   rf   rb   rc   Úcacher/   Úattrs   &&&&   r   ÚunapplyÚgp_firefox_ext.unapply‰   s¹   € Ø× Ñ  Ó%ˆØ�_Ô$Ø×-Ñ-Ó/ˆGØ 
Õ+×0Ñ0Ö2�à¨Õ#3°JÕ#?Ô?ð ˜IÕ& zÕ2°4Ö8ØEIð à×#Ñ# D°°cÖ:ò 3ð
 ×Ñ Ø4=ÀÔ4F  iÖ 0ÈDØ % iÕ 0ô2ð 	×#Ñ# DÖ1r   c                ó²  € V P                  W4      pVe   V P                  WV4       V P                  4       pR pW%R,          P                  4       9   d   VR,          V,          pV P	                  \
        P                  ! V4      \
        P                  ! V4      R7      pW5R,          V&   V P                  V4       V P                  W\        V4      4       R # )NrI   )rk   rl   )
Úcache_get_attribute_valuerp   rR   r(   Úgenerate_valuer   ÚdumpsrK   Úcache_add_attributer   )r;   rf   rb   rc   r   r/   ÚbeforeÚ	new_values   &&&&    r   ÚapplyÚgp_firefox_ext.apply—   sº   € à×-Ñ-¨dÓ;ˆØÒØ�L‰L˜ tÔ,à×)Ñ)Ó+ˆØˆØ˜ZÕ(×-Ñ-Ó/Ô/Ø˜ZÕ(¨Õ0ˆFð ×'Ñ'´·
²
¸6Ó0BÜ04·
²
¸3³ð (ó Aˆ	à&)�
Õ˜FÑ#Ø×Ñ Ô(Ø× Ñ  ¬z¸)Ó/DÖEr   c                óH  € Ve,   W0n         \        P                  P                  VR4      V n        V FR  w  rE\        V 4      V9   g   K  V\        V 4      ,          P                  4        F  w  rgV P                  WFV4       K  	  KT  	  V EF  pVP                  '       g   K  Rp	Rp
\        P                  P                  VP                  V	4      pV P                  V4      pV'       g   Ka  V P                  VP                  R4      pVe   V P                  VP                  RV4       \        W¬P                  4      pVP                  4        F!  w  rgV P                  VP                  Wg4       K#  	  V P                  VP                  VP!                  4       R7       EK  	  R # )Nr7   úMACHINE/Registry.polú!Software\Policies\Mozilla\Firefox)Úkeep)rC   rA   rO   r"   rE   ÚstrrX   rp   Úfile_sys_pathÚparsers   r1   r4   r+   ry   Úcleanr(   )r;   Údeleted_gpo_listÚchanged_gpo_listÚ
policy_dirrf   Úsettingsrb   rc   ÚgpoÚpol_filer*   rO   Úpol_confr   rI   s   &&&&           r   Úprocess_group_policyÚ#gp_firefox_ext.process_group_policy©   s;  € àÒ!Ø&0Ô#ÜŸG™GŸL™L¨°_ÓEˆDŒMÛ.‰NˆDÜ�4‹y˜HÖ$Ø#+¬C°«IÕ#6×#<Ñ#<Ö#>‘K�FØ—L‘L ¨sÖ3ó $?ñ /ô
 $ˆCØ× × Ò Ø1�Ø@�Ü—w‘w—|‘| C×$5Ñ$5°xÓ@�ØŸ:™: dÓ+�ßÙð ×5Ñ5°c·h±hÀÓP�ØÒ#Ø—L‘L §¡¨?¸DÔAä.¨w×8HÑ8HÓI�Ø#+§>¡>Ö#3‘K�FØ—J‘J˜sŸx™x¨Ö5ñ $4ð —
‘
˜3Ÿ8™8¨(¯-©-«/�
×:ó' $r   c                ó~  € / pR pRpVP                   '       d¥   \        P                  P                  VP                   V4      pV P	                  V4      pV'       g   V# VP
                   FO  pVP                  P                  V4      '       g   K&  VP                  W'P                  : RVP                  : 2&   KQ  	  V# )r|   r}   r   )
r€   rA   rO   r"   r�   r+   r   r   r   r   )r;   r‡   Úoutputrˆ   r*   rO   r‰   r   s   &&      r   ÚrsopÚgp_firefox_ext.rsopÈ   s’   € ØˆØ)ˆØ8ˆØ××ÐÜ—7‘7—<‘< × 1Ñ 1°8Ó<ˆDØ—z‘z $Ó'ˆHßØ�Ø×%Ô%�Ø—9‘9×'Ñ'¨×0Ô0ØBCÇ&Á&�F§y¤y°!·+³+Ð>Ó?ñ &ð ˆr   )rE   rC   rU   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rC   rA   rO   r"   rE   r<   rK   rR   rW   rh   rp   ry   rŠ   rŽ   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r^   Ú__classdict__s   @@r   r6   r6   V   sS   ù‡ € Ø0ÐØ�w‰w�|‰|Ð.°Ó@€Hò!ò-òõò-ò 2òFô$;÷>ò r   r6   c                   ób   a € ] tR t^Öt o Rt]P                  P                  ]R4      tR t	Rt
V tR# )Úgp_firefox_old_extz/usr/lib64/firefox/distributionr7   c                ó   € R # )z'Mozilla/Firefox (old profile directory)r9   r:   s   &r   r<   Úgp_firefox_old_ext.__str__Ú   s   € Ù8r   r9   N)r�   r‘   r’   r“   rC   rA   rO   r"   rE   r<   r”   r•   )r—   s   @r   r™   r™   Ö   s*   ø‡ € Ø:ÐØ�w‰w�|‰|Ð.°Ó@€H÷9ð 9r   r™   )rA   r   Úsamba.gp.gpclassr   r   Úsamba.dcerpcr   Úsamba.commonr   Úsamba.gp.util.loggingr   r   r4   r6   r™   r9   r   r   Ú<module>r       sA   ðó" 
Û ß 8Ý Ý #Ý %òò4ôl~�Z ô ~ô@9˜ö 9r   