+
    âCëi�   ã                   ó  € ^ RI t^ RIt^ RIHt ^ RIt^ RIHt ^ RIt]P                  ! RR4       ^ RI	H
t
HtHtHtHt ^ RIt^ RIt^ RIt^ RIt]P&                  ! ]4      t^ RItRtR tR	 tR
 tR tR tR tRR ltRR ltR t R# )é    N)Údatetime©ÚwrapsÚGtkz4.0)ÚGior   ÚGdkÚGdkX11ÚGObjectz%/var/lib/ubuntu-advantage/status.jsonc                 ó  € \         P                  ! 4       V n        \        V \        P
                  4      '       d   V P                  P                  V 4       V P                  P                  V4       V P                  P                  V4       V P                  P                  4        Fb  p\        \        V4      \         P                  4      '       d   \        WP                  4       V4       KH  \        P                   ! R V R24       Kd  	  R# )zcan not get name for object 'Ú'N)r   ÚBuilderÚbuilderÚ
isinstancer
   ÚObjectÚset_current_objectÚset_translation_domainÚadd_from_fileÚget_objectsÚ
issubclassÚtypeÚ	BuildableÚsetattrÚget_buildable_idÚloggingÚdebug)ÚselfÚpathÚdomainÚos   &&& Ú>/usr/lib/python3/dist-packages/softwareproperties/gtk/utils.pyÚsetup_uir!   &   s«   € ä—;’;“=€D„Lä�$œŸ™×'Ò'Ø�‰×'Ñ'¨Ô-Ø‡L�L×'Ñ'¨Ô/Ø‡L�L×Ñ˜tÔ$Ø�\‰\×%Ñ%Ö'ˆÜ”d˜1“gœsŸ}™}×-Ò-Ü�D×,Ñ,Ó.°Ö2ä�MŠMÐ9¸!¸¸AÐ>Ö?ó	 (ó    c                  óF   € \         P                  P                  R 4      R8g  # )z#gnome-online-accounts-panel.desktopN)r   ÚDesktopAppInfoÚnew© r"   r    Úhas_gnome_online_accountsr'   4   s   € Ü×Ñ×!Ñ!Ð"GÓHÈDÑPÐPr"   c                  óž   € \         P                  P                  4       p \        P                  ! 4       pVP                  V P                  4      # ©N)Ú
aptsourcesÚdistroÚ
get_distroÚdistro_infoÚUbuntuDistroInfoÚis_ltsÚcodename©r+   Údis     r    Úis_current_distro_ltsr3   7   s7   € Ü×Ñ×)Ñ)Ó+€FÜ	×	%Ò	%Ó	'€BØ�9‰9�V—_‘_Ó%Ð%r"   c                  óæ   € \         P                  P                  4       p \        P                  ! 4       pV P
                  VP                  \        P                  ! 4       P                  4       4      9   # r)   )
r*   r+   r,   r-   r.   r0   Ú	supportedr   ÚnowÚdater1   s     r    Úis_current_distro_supportedr8   <   sK   € Ü×Ñ×)Ñ)Ó+€FÜ	×	%Ò	%Ó	'€BØ�?‰?˜bŸl™l¬8¯<ª<«>×+>Ñ+>Ó+@ÓAÑAÐAr"   c                  óà   € \         P                  P                  4       p \        P                  ! 4       pVP                  R R7      pV F"  pVP                  V P                  8X  g   K   Vu # 	  R# )Úobject)ÚresultN)r*   r+   r,   r-   r.   Úget_allÚseriesr0   )r+   r2   ÚreleasesÚreleases       r    Úcurrent_distror@   A   sS   € Ü×Ñ×)Ñ)Ó+€FÜ	×	%Ò	%Ó	'€BØ�z‰z ˆzÓ*€HÛˆØ�>‰>˜VŸ_™_Ö,ØŠNó r"   c                 ó(  € Rp \         P                  P                  \        4      '       d2   \	        \        4      ;_uu_ 4       pVP                  4       p RRR4       Md \        P                  ! . RO\        P                  R7      pTP                  ^ 8w  d   \        RTP                  ,          4       / # TP                  p V '       g   \        R4       / #  \        P                  ! V 4      pTP!                  RR	4      R	8w  d   \        R
TR,          ,          4       T#   + '       g   i     Ln; i  \         d   p\        RT,          4       / u Rp?# Rp?ii ; i  \        P                   d   p\        RT,          4       / u Rp?# Rp?ii ; i)zBReturn a dict of all UA status information or empty dict on error.Ú N)ÚstdoutzFailed to run `pro status`:
%sz"Ubuntu Pro client returned code %dzKWarning: no Ubuntu Pro Client status found. Is ubuntu-pro-client installed?z0Failed to parse ubuntu advantage client JSON:
%sÚ_schema_versionz0.1z$Pro status schema version change: %s)ÚproÚstatusz--format=json)Úosr   ÚexistsÚUA_STATUS_JSONÚopenÚreadÚ
subprocessÚrunÚPIPEÚ	ExceptionÚprintÚ
returncoderC   ÚjsonÚloadsÚJSONDecodeErrorÚget)Ústatus_jsonÚstreamr;   ÚerF   s        r    Úget_ua_statusrY   J   sC  € ð €KÜ	‡w�w‡~�~”n×%Ò%Ü”.×!Ô! VØ Ÿ+™+›-ˆK÷ "Ð!ð	ä—^’^Ú2¼:¿?¹?ôˆFð ×Ñ Ô!ÜØ4°v×7HÑ7HÕHôð ˆIØ—m‘mˆßÜð/ô	
ð ˆ	ðÜ—’˜KÓ(ˆð ‡z�zÐ# UÓ+¨uÔ4ÜØ2°VÐ<MÕ5NÕNô	
ð €M÷A "×!ûô ô 	ÜÐ3°aÕ7Ô8Ø�Iûð	ûô" ×Ñô ÜÐAÀAÕEÔFØ�	ûðúsH   ÁDÁ(D2 ÃE ÄD/	Ä2EÄ=EÅEÅEÅFÅ3FÆFÆFc                óò   € V'       g   \        4       pRpRpVP                  R. 4       FI  pVP                  R4      V 8w  d   K  RV9   d   \        RVR,          8H  4      pRV9   g   K@  VR,          pKK  	  W#3# )a?  Get service availability and status for a specific UA service.

Return a tuple (available, service_status).
  :boolean available: set True when either:
    - attached contract is entitled to the service
    - unattached machine reports service "availability" as "yes"
  :str service_status: will be one of the following:
    - "disabled" when the service is available and applicable but not
      active
    - "enabled" when the service is available and active
    - "n/a" when the service is not applicable to the environment or not
      entitled for the attached contract
Fzn/aÚservicesÚnameÚ	availableÚyesrF   )rY   rU   Úbool)Úservice_namerF   r]   Úservice_statusÚservices   &&   r    Úget_ua_service_statusrc   w   sz   € ÷ Ü“ˆà€IØ€NØ—:‘:˜j¨"Ö-ˆØ�;‰;�vÓ ,Ô.ÙØ˜'Ô!Ü˜U g¨kÕ&:Ñ:Ó;ˆIØ�wÖØ$ XÕ.ŠNñ .ð Ð&Ð&r"   c                ó    a aaa€ VVV V3R lpV# )as  
Retry calling the decorated function using an exponential backoff.

Args:
    exceptions: The exception to check. may be a tuple of
        exceptions to check.
    tries: Number of times to try (not retry) before giving up.
    delay: Initial delay between retries in seconds.
    backoff: Backoff multiplier (e.g. value of 2 will double the delay
        each retry).
c                 ó:   <a € \        S 4      VVVV V3R  l4       pV# )c                  ó  <€ S
Sr2V^8”  d
    S	! V / VB # S	! V / VB #   S d[   pRP                  YC4      p\        P                  ! T4       \        P                  ! T4       T^,          pTS,          p Rp?Kt  Rp?ii ; i)é   z{}, Retrying in {} seconds...N)Úformatr   ÚwarningÚtimeÚsleep)ÚargsÚkwargsÚmtriesÚmdelayrX   ÚmsgÚbackoffÚdelayÚ
exceptionsÚfÚtriess   *,    €€€€€r    Úf_retryÚ*retry.<locals>.deco_retry.<locals>.f_retry¢   s…   ø€ à" E�FØ˜1”*ð&Ù˜dÐ- fÑ-Ð-ñ �dÐ%˜fÑ%Ð%øð "ô &Ø9×@Ñ@ÀÓK�CÜ—O’O CÔ(Ü—J’J˜vÔ&Ø˜a•K�FØ˜gÕ%–Fûð&ús   � �A>¤AA9Á9A>r   )rt   rv   rq   rr   rs   ru   s   f €€€€r    Ú
deco_retryÚretry.<locals>.deco_retry    s%   ù€ ä	ˆq‹÷	&ð 	&ó 
ð	&ð ˆr"   r&   )rs   ru   rr   rq   rx   s   ffff r    Úretryrz   ”   s   û€ ÷ð ð$ Ðr"   c                óð   € \         P                  P                  4       p\        V\        P
                  4      '       g   R# R pV P                  4       '       d   V! V 4       R# V P                  RV4       R# )z®
Workaround for GTK4 removal of set_type_hint.
Manually sets _NET_WM_WINDOW_TYPE_DIALOG on X11.
See: https://discourse.gnome.org/t/replacing-gtk-window-set-type-hint-in-gtk4
Nc                 ó^  € V P                  4       pVP                  4       pVP                  4       p\        P                  ! R 4      p^p^ p\        P
                  VP                  n        \        P
                  \        P                  \        P                  .VP                  n        \        P                  VP                  n        VP                  R4      pV'       g   R#  VP                  VR^ 4      pVP                  VR^ 4      p	\        P                  ^,          ! V	4      p
VP                  VVVV^ V\        P                  ! V
\        P                  ! \        P                   4      4      ^4       VP#                  V4       VP%                  V4       R#   TP%                  T4       i ; i)zlibX11.so.6Ns   _NET_WM_WINDOW_TYPEs   _NET_WM_WINDOW_TYPE_DIALOG)Ú
get_nativeÚget_surfaceÚget_xidÚctypesÚCDLLÚc_void_pÚXOpenDisplayÚrestypeÚc_char_pÚc_intÚXInternAtomÚargtypesÚc_ulongÚXChangePropertyÚcastÚPOINTERÚc_ubyteÚXFlushÚXCloseDisplay)ÚwinÚnativeÚsurfaceÚxidÚlibx11ÚXA_ATOMÚPropModeReplaceÚdisplay_ptrÚ	atom_typeÚatom_dialogÚdatas   &          r    Ú_apply_x11_hintÚ1maybe_hint_dialog_window.<locals>._apply_x11_hintÀ   sN  € Ø—‘Ó!ˆØ×$Ñ$Ó&ˆØ�o‰oÓˆô —’˜]Ó+ˆàˆØˆÜ&,§o¡oˆ×ÑÔ#Ü'-§¡¼¿¹ÌÏÉÐ&Vˆ×ÑÔ#Ü%+§^¡^ˆ×ÑÔ"ð ×)Ñ)¨$Ó/ˆßÙð	.Ø×*Ñ*¨;Ð8NÐPQÓRˆIØ ×,Ñ,¨[Ð:WÐYZÓ[ˆKÜ—N‘N QÖ&¨Ó4ˆDð ×"Ñ"ØØØØØØÜ—’˜D¤&§.¢.´·±Ó"@ÓAØô	ð �M‰M˜+Ô&à× Ñ  Ö-øˆF× Ñ  Õ-ús   Ã#B#F ÆF,Úrealize)r   ÚDisplayÚget_defaultr   r	   Ú
X11DisplayÚget_realizedÚconnect)ÚwindowÚdisplayr›   s   &  r    Úmaybe_hint_dialog_windowr¥   µ   sY   € ô �k‰k×%Ñ%Ó'€Gä�gœv×0Ñ0×1Ò1Ùò&.ðR ×Ñ×ÒÙ˜Öà�‰�y /Ö2r"   )z	esm-infraN)é
   gš™™™™™¹?é   )!Úaptsources.distror*   r€   r   r-   Ú	functoolsr   ÚgiÚrequire_versionÚgi.repositoryr   r   r   r	   r
   rR   rG   rL   r   Ú	getLoggerÚ__name__ÚLOGrj   rI   r!   r'   r3   r8   r@   rY   rc   rz   r¥   r&   r"   r    Ú<module>r°      s…   ðó& Û Ý Û Ý Û 	Ø × Ò �5˜%Ô  ß 8Õ 8Û Û 	Û ã Ø×Ò�hÓ€ã à8€ò@òQò&ò
Bò
ò*ôZ'ô:ôB73r"   