__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
�

��g�h��@�SSKrSSKrSSKrSSKrSSKJr SSKJrJrJ	r	J
r
JrJr SSK
JrJrJrJrJrJrJrJrJrJr SSKJr SSKJrJrJr SSKJr \R@"5r!\RD"\RF"\$55r%Sr&"S	S
\RN5r(g)�N)�exists)�Any�Dict�List�Optional�Tuple�Union)
�api�apt�contract�event_logger�
exceptions�http�messages�secret_manager�system�util)�base)�ApplicationStatus�CanDisableFailure�CanDisableFailureReason)�status_cache_filez<^linux-image-([\d]+[.-][\d]+[.-][\d]+-[\d]+-[A-Za-z0-9_-]+)$c	�^^�\rSrSrSrSrSrSrSrSr	Sr
\S\\
\S44S	j5r\S\4S
j5r\S\4Sj5r\S\\4Sj5r\S\\4S
j5r\S\\4Sj5r\S\\4Sj5rS\4SjrS\4Sjr\\R8S\4Sj55rS-S\S\\\\44U4Sjjjr S\
4Sjr!S\"RFS\4Sjr$S\
4Sjr%S\"RF4Sjr&S\"RF4Sjr'S\"RF4Sjr(Sr)Sr*S\\+\\,RZ44Sjr.Sr/S-S \0\\14S!\0\\14S"\S\4U4S#jjjr2S.S\"RFS$\\\S%\SS4S&jjr3S\"RFSS4S'jr4S/S(\\\4S)jjr5S0S\"RFS*\4S+jjr6S,r7U=r8$)1�RepoEntitlement�$z1/etc/apt/sources.list.d/ubuntu-{name}.{extension}z$/etc/apt/preferences.d/ubuntu-{name}z	{}/ubuntuNFT�returnc��g�N���selfs �</usr/lib/python3/dist-packages/uaclient/entitlements/repo.py�repo_pin_priority�!RepoEntitlement.repo_pin_priority7s���c��Sn[R"5RnU[R;aSnUR
R
URUS9$)N�sources�list)�name�	extension)r�get_release_info�seriesr�SERIES_NOT_USING_DEB822�repo_file_tmpl�formatr))r!r*r,s   r"�	repo_file�RepoEntitlement.repo_file;sN���	��(�(�*�1�1���S�0�0�0��I��"�"�)�)�t�y�y�I�)�N�Nr%c� �URS-$)Nz {})�
repo_url_tmplr s r"�repo_policy_check_tmpl�&RepoEntitlement.repo_policy_check_tmplCs���!�!�E�)�)r%c���/nURRS05nU(a:URS05n[R"URS/55nUnU$)zdebs to install on enablement�entitlement�
directives�additionalPackages)�entitlement_cfg�get�copy)r!�packagesr7r8�additional_packagess     r"r=�RepoEntitlement.packagesGs^�����*�*�.�.�}�b�A���$����r�:�J�"&�)�)����3�R�8�#��+�H��r%c�x�URRS05RS05RS5$)Nr7r8�aptURL�r:r;r s r"�apt_url�RepoEntitlement.apt_urlX�4��
� � �$�$�]�B�7�
�S��r�
"�
�S��]�	
r%c�z�URRS05RS05RS/5$)Nr7r8�aptSnapshotURLsrBr s r"�
snapshot_urls�RepoEntitlement.snapshot_urls`s8��
� � �$�$�]�B�7�
�S��r�
"�
�S�"�B�
'�	
r%c�x�URRS05RS05RS5$)Nr7r8�suitesrBr s r"�
apt_suites�RepoEntitlement.apt_suiteshrEr%c���URRS5nU(d�URRSnURSRS05nURS5(dS[R
"UR5nURX R5nU(aURS5nU(d"Un[RSUR5 U$)N�
resourceToken�machineTokenr7�obligations�enableByDefaultzWNo resourceToken present in contract for service %s. Using machine token as credentials)r:r;�machine_token_file�
machine_tokenr�UAContractClient�cfg�get_resource_machine_accessr)�LOG�warning�title)r!�tokenrTrQ�client�machine_accesss      r"�get_resource_token�"RepoEntitlement.get_resource_tokenps����$�$�(�(��9��� �3�3�A�A���M��.�.�}�=�A�A��r��K��?�?�#4�5�5�"�2�2�4�8�8�<��!'�!C�!C�!�9�9�"��"�*�.�.��?�E��%�����:��J�J��
�r%c�~�[R"[UR5S9n[RU5 U$)z%Check if system needs to be rebooted.)�installed_pkgs)r�
should_reboot�setr=�event�needs_reboot)r!�reboot_requireds  r"�_check_for_reboot�!RepoEntitlement._check_for_reboot�s4�� �.�.��t�}�}�-�
��	���?�+��r%c��grrr s r"�
repo_key_file�RepoEntitlement.repo_key_file�s��	
r%�ignore_dependent_servicesc	�>�[TU]US9up#USLaX#4$UR(d]UR(aLS[	[
R[RRURURS954$X#4$)N)rlF��entitlement_namerZ)�super�can_disable�origin�purgerr�NO_PURGE_WITHOUT_ORIGINr�REPO_PURGE_FAIL_NO_ORIGINr/rZ)r!rl�result�reason�	__class__s    �r"rq�RepoEntitlement.can_disable�s������,�&?�-�
����U�?��>�!��{�{�t�z�z��!�+�C�C��6�6�=�=�)-���4�:�:�>����
��~�r%c��URSL=(a [UR5S:�nUR(dU(dgg)Nr��)r=�len�access_only)r!�will_installs  r"�enable_steps�RepoEntitlement.enable_steps�s8���}�}�D�0�K�S����5G�!�5K�����<��r%�progressc��UR[RRURS95 URU5 UR(aqUR(a`[UR5S:�aFURS[RRSRUR5S95 gURU5 g)z�Enable specific entitlement.

@return: True on success, False otherwise.
@raises: UbuntuProError on failure to install suggested packages
��servicer�info� �r=T)r�r�CONFIGURING_APT_ACCESSr/rZ�setup_apt_config�supports_access_onlyr~r}r=�emit�SKIPPING_INSTALLING_PACKAGES�join�install_packages)r!r�s  r"�_perform_enable�RepoEntitlement._perform_enable�s���	����+�+�2�2�4�:�:�2�F�	
�	
���h�'��$�$��)9�)9��4�=�=�!�A�%��
�
���9�9�@�@�!$���$�-�-�!8�A����
�!�!�(�+�r%c�(�UR(dgg)Nr{r|)rsr s r"�
disable_steps�RepoEntitlement.disable_steps�s���z�z��r%c�d�UR(a�UR(a�URS[R5 URSS5 [
R"UR5nURX!5(dg/n/nUHWn[
R"XPRS9nU(aURU[U545 MFURU5 MY URXCU5(dg[US5(aUR5 URU5 UR(aiUR(aXUR[R R#UR$S95 UR'W5 UR)W5 g)Nr��F)�exclude_origin�remove_packages�rZT)rsrrr�r�PURGE_EXPERIMENTALr� get_installed_packages_by_origin�purge_kernel_check�get_remote_versions_for_package�append�max�prompt_for_purge�hasattrr��remove_apt_configr��PURGING_PACKAGESr/rZ�execute_reinstall�execute_removal)r!r��repo_origin_packages�packages_to_reinstall�packages_to_remove�package�alternativess       r"�_perform_disable� RepoEntitlement._perform_disable�s_���:�:�$�+�+��M�M�&�(�"=�"=�>��M�M�&�"�%�#&�#G�#G����$� ��*�*�+?�J�J��$&�!�!#��/��"�B�B��K�K� �� �*�0�0� �#�l�"3�4��'�-�-�g�6�0��(�(�"�8�����4�*�+�+�� � �"����x�(��:�:�$�+�+�����)�)�0�0�t�z�z�0�B�
�
�"�"�#8�9�� � �!3�4�r%c�~�/nUHQn[R"[UR5nU(dM1UR	URS55 MS U(GaWUR
5(d[R"5eURS[RRURS95 URSSRU55 [R "5R"nURS[R$RUS95 [R&"5nUVs/sHnX�;dM
UPM n	nU	(d!URS[R(5 gURS[*R,S[R.04/5 g	s snf)
a�
Checks if the purge operation involves a kernel.

When package called 'linux-image-*' is in the package list, warn the
user that a kernel is being removed. Then, show the user what the
current kernel is.

If the current kernel is to be removed, and there are no other valid
Ubuntu Kernels installed in the system, return False to abort the
operation.

If there is another Ubuntu kernel - besides the one installed - then
prompt the user for confirmation before proceeding.
�r�r�r�)�kernel_versionF�message_operation�msgT)�re�search�
RE_KERNEL_PKGr)r��group�is_interactiver�#NonInteractiveKernelPurgeDisallowedr�r�PURGE_KERNEL_REMOVALr/rZr�r�get_kernel_info�
uname_release�PURGE_CURRENT_KERNEL�get_installed_ubuntu_kernels�PURGE_NO_ALTERNATIVE_KERNELr�prompt_for_confirmation�PURGE_KERNEL_CONFIRMATION)
r!�package_listr��linux_image_versionsr��m�current_kernel�installed_kernels�version�alternative_kernelss
          r"r��"RepoEntitlement.purge_kernel_checks|�� "��#�G��	�	�-����6�A��q�$�+�+�A�G�G�A�J�7�$� ��*�*�,�,� �D�D�F�F��M�M���-�-�4�4�T�Z�Z�4�H�
�
�M�M�&�#�(�(�+?�"@�A�#�3�3�5�C�C�N��M�M���-�-�4�4�#1�5��
�!'� C� C� E�� 1�#�0�G��6��0�
 �#�'��
�
�f�h�&J�&J�K���M�M�#��4�4��� B� B�C���
���)#s�		F:�F:c�@�SnU(abURS[R5 URS[R"UVs/sHoUR
PM sn55 SnU(agURS[R5 URS[R"UVVs/sHupVUR
PM snn55 SnU(a3URS[RS[R04/5 gs snfs snnf)NFr�Tr�r�)	r�r�WARN_PACKAGES_REMOVALr�create_package_list_strr)�WARN_PACKAGES_REINSTALLr��PROCEED_YES_NO)r!r�r�r��promptr��_s       r"r�� RepoEntitlement.prompt_for_purgeFs�������M�M�&�(�"@�"@�A��M�M���,�,�1C�D�1C�g�\�\�1C�D��
��F� ��M�M�&�(�"B�"B�C��M�M���,�,�6K�L�6K�l�w�W�\�\�6K�L��
��F���M�M�#��4�4��� 7� 7�8���
���3E��Ms�
D�4Dc��[R"5nUVs/sH!nURU;dMURPM# nnU(a3[R"U[R
R
US95 ggs snf)Nr�)r�get_installed_packages_namesr)�purge_packagesr�UNINSTALLING_PACKAGES_FAILEDr/)r!r��installed_packagesr��	to_removes     r"r��RepoEntitlement.execute_removalms���
!�=�=�?��.�
�-���|�|�1�1�
�G�L�L�-�	�
�
������5�5�<�<�&�=��
���
s
�A?�A?c��[R"5nUVVs/sH=up4URU;dMSRURUR5PM? nnnU(a[R
"U5 ggs snnf)Nz{}={})rr�r)r/�ver_str�reinstall_packages)r!r�r�r�r��to_reinstalls      r"r��!RepoEntitlement.execute_reinstall�sw��!�=�=�?��'<�
�&;�"���|�|�1�1�
:�G�N�N�7�<�<����9�&;�	�
�
��"�"�<�0���
s
�B�*Bc�4�[R[RR	UR
S94nURnURS05RS05nURS5nU(d7[R[RR	UR
S94$URS5nU(d7[R[RR	UR
S94$[R"[RS9nUHsn[R"URR	XG5U5nU(dM<[R [R"R	UR
S94n O UR$(ahUR&HXn	[R("U	5(aM [R[R*R	UR,U	S94s $ U$)Nr�r7r8rArK)�	error_msg)r�r�)r�DISABLEDr�SERVICE_NOT_CONFIGUREDr/rZr:r;�NO_APT_URL_FOR_SERVICE�NO_SUITES_FOR_SERVICEr�get_apt_cache_policy�APT_POLICY_FAILEDr�r�r4�ENABLED�SERVICE_IS_ACTIVE�check_packages_are_installedr=�is_installed� SERVICE_DISABLED_MISSING_PACKAGEr))
r!�current_statusr:r8�repo_url�repo_suites�policy�suite�
service_matchr�s
          r"�application_status�"RepoEntitlement.application_status�s���
�&�&��+�+�2�2����2�D�
��
�.�.��$�(�(���;�?�?��"�
�
��>�>�(�+���!�*�*��/�/�6�6�T�Z�Z�6�H��
�!�n�n�X�.���!�*�*��.�.�5�5�D�J�J�5�G��
�
�)�)�H�4N�4N�O�� �E��I�I��+�+�2�2�8�C�V��M��}�%�-�-��.�.�5�5�D�J�J�5�G�"���!��,�,��=�=���'�'��0�0�)�2�2� �A�A�H�H�$(�I�I�w�I����)��r%c��URn[S[R"U5R	5RS555(agU(dg[
U[R"U5;5$)z�Check if apt url delta should be applied.

:param apt_url: string containing the apt url to be used.

:return: False if apt url is already found on the source file.
         True otherwise.
c3�D# �UHnURS5v� M g7f)�#N)�
startswith)�.0�lines  r"�	<genexpr>�<RepoEntitlement._check_apt_url_is_applied.<locals>.<genexpr>�s#���
�F��
�O�O�C� � �F�s� �
FT)r0�allr�	load_file�strip�split�bool)r!rC�apt_files   r"�_check_apt_url_is_applied�)RepoEntitlement._check_apt_url_is_applied�sr���>�>���
��(�(��2�8�8�:�@�@��F�
�
�
�����G�v�/�/��9�9�:�:r%�orig_access�deltas�allow_enablec�>�[T
U]XU5(agURS05nURS05nURS5nURS5n[R"5nU(aU(aUR5n	OUR
5up�U	[R:XagURU5(Gd[RSURU5 [R[RR!URS95 URS05nURS05RS5nU(a+["R$"UR&X�R(5 UR+[,R."55 UR1[,R."55 U(ax[RS	U5 [R[R2R!S
R5U5S95 UR7[,R."5US9 g)
a�Process any contract access deltas for this entitlement.

:param orig_access: Dictionary containing the original
    resourceEntitlement access details.
:param deltas: Dictionary which contains only the changed access keys
and values.
:param allow_enable: Boolean set True if allowed to perform the enable
    operation. When False, a message will be logged to inform the user
    about the recommended enabled service.

:return: True when delta operations are processed; False when noop.
Tr7r8rAr9Fz.New aptURL, updating %s apt sources list to %sr�z%New additionalPackages, installing %r�, r�)r�)rp�process_contract_deltasr;r�read�"_check_application_status_on_cacher�rr�rrXr�r)rdr�REPO_UPDATING_APT_SOURCESr/r�remove_auth_apt_repor0rHr�r
�ProgressWrapperr�� REPO_REFRESH_INSTALLING_PACKAGESr�r�)r!rrr�delta_entitlement�delta_directives�
delta_apt_url�delta_packages�status_cacher�r��orig_entitlement�old_urlrxs             �r"r�'RepoEntitlement.process_contract_deltas�s����$�7�*�;��M�M��"�J�J�}�b�9��,�0�0��r�B��(�,�,�X�6�
�)�-�-�.B�C��(�-�-�/����!%�!H�!H�!J��$(�$;�$;�$=�!���!2�!;�!;�;���-�-�m�<�<��H�H�@��	�	��
�

�J�J��2�2�9�9�$�)�)�9�L�
� +���}�b�A��&�*�*�<��<�@�@��J�G���(�(��N�N�G�-?�-?��
�"�"�3�#6�#6�#8�9��!�!�#�"5�"5�"7�8���H�H�<�n�M��J�J��9�9�@�@�!�Y�Y�~�6�A��
�

�!�!��#�#�%�N�
"�
�r%r��cleanup_on_failurec��U(dURnU(dgURSURRS55 UR	U5 UR[RRURS95 UR(a	SS0n/SQnOSn/n[ R""UUUS9 g![
Ra- U(a$UR[R"55 ef=f![
Ra[ U(aR[$R'S	RUR(55 UR[R"55 ef=f)
z�Install contract recommended packages for the entitlement.

:param package_list: Optional package list to use instead of
    self.packages.
:param cleanup_on_failure: Cleanup apt files if apt install fails.
Nr��pre_installr��DEBIAN_FRONTEND�noninteractive)z--allow-downgradesz$-o Dpkg::Options::="--force-confdef"z$-o Dpkg::Options::="--force-confold")r=�apt_options�override_env_varsz.Apt install failed, removing apt config for {})r=r��	messagingr;�_update_sources_listr�UbuntuProErrorr�r
rr�r�INSTALLING_SERVICE_PACKAGESr/rZ�apt_noninteractiver�run_apt_install_commandrXr�r))r!r�r�rrrs      r"r�� RepoEntitlement.install_packagessC����=�=�L����
�
�)�4�>�>�+=�+=�m�+L�M�	��%�%�h�/�	����0�0�7�7�d�j�j�7�I�	
��"�"�!2�4D� E���K�!%���K�	��'�'�%�'�"3�
��+�(�(�	�!��&�&�s�':�':�'<�=��	��4�(�(�	�!����D�K�K��	�	���
�&�&�s�':�':�'<�=��	�s�C�.D	�AD�	A/E8c��	�SnSnSnURR(dURR(a�[R"SURR[R
5n[R"SURR[R5n[RRnO�URR(dURR(a�[R"SURR[R
5n[R"SURR[R5n[RRn[R"X#US9 URnURnUSR!S05nUR#5nUR!S5n	U	(d[$R&"UR(S9eUR!S	5n
U
(d[$R*"UR(S9eUR!S
5nU(d[$R,"UR(S9eUR.(a�UR0(d)[$R2"UR(UR4S9eUR6R9UR(S9n[R:"UU
UR0UR.5 /n
[=[R>5(dU
RAS
5 [=[RB5(dU
RAS5 U
(aQURES[FRHR9SRKU
5S95 [RL"U
S9 [RV"UURXR9U
5UUURZUR\5 UR_[FR`R9UR4S95 [Rb"U5 g![$RNa& URQ[RRT"55 ef=f![$RNa% URQ[RRT"5SS9 ef=f)z�Setup apt config based on the resourceToken and directives.
Also sets up apt proxy if necessary.

:raise UbuntuProError: on failure to setup any aspect of this apt
   configuration
Nr�https)�
http_proxy�https_proxy�proxy_scoper7r8�aptKey�rorArKrn�r)zapt-transport-httpszca-certificatesr�rr�F)�run_apt_update)2rV�global_apt_http_proxy�global_apt_https_proxyr�validate_proxy�PROXY_VALIDATION_APT_HTTP_URL�PROXY_VALIDATION_APT_HTTPS_URLr�
AptProxyScope�GLOBAL�ua_apt_http_proxy�ua_apt_https_proxy�UACLIENT�setup_apt_proxyr0r:r;r^r�RepoNoAptKeyr)�MissingAptURLDirective�RepoNoSuitesr#rr�RepoPinFailNoOriginrZ�repo_pref_file_tmplr/�add_ppa_pinningr�APT_METHOD_HTTPS_FILEr��CA_CERTIFICATES_FILEr�r�INSTALLING_PACKAGESr�r"rr�r
r�add_auth_apt_repor3rjrHr��APT_UPDATING_LIST�update_sources_list)r!r�r&r'�scope�
repo_filename�resource_cfgr8r[r)r�r��repo_pref_file�prerequisite_pkgss              r"r�� RepoEntitlement.setup_apt_configXs����
������8�8�)�)�T�X�X�-L�-L��,�,�����.�.��2�2��J�
�-�-�����/�/��3�3��K�
�%�%�,�,�E�
�X�X�
'�
'�4�8�8�+F�+F��,�,�����*�*��2�2��J�
�-�-�����+�+��3�3��K�
�%�%�.�.�E����!��	
����
��+�+��!�-�0�4�4�\�2�F�
��'�'�)������)����)�)�4�9�9�E�E��>�>�(�+����3�3�T�Y�Y�O�O� �n�n�X�.����)�)�4�9�9�E�E��!�!��;�;� �4�4�%)�Y�Y��*�*���"�5�5�<�<�$�)�)�<�L�N����������&�&�	
����c�/�/�0�0��$�$�%:�;��c�.�.�/�/��$�$�%6�7���M�M���,�,�3�3�!�Y�Y�'8�9�4��
�
��+�+�5F�G�	�������%�%�h�/���������
	
�	���(�4�4�;�;����;�L�M�	��#�#�M�2��#�,�,�
��&�&�s�':�':�'<�=��
��$�(�(�	��"�"�3�#6�#6�#8��"�O��	�s�Q-�R*�-:R'�*9S#�override_snapshot_urlsc���UbUnOURnUR5nURRS05RS05RS5nURRU5nUR
S5upV[RRU5 U/U-H#nU(dM[R"XuU5 M% g![a SnUnN]f=f)Nr7r8rA�:�bearer)
rHr^r:r;r3r/r��
ValueErrorr�secrets�
add_secretr�add_apt_auth_conf_entry)r!rJrH�credentialsr��username�password�urls        r"�update_apt_auth�RepoEntitlement.update_apt_auth�s���"�-�2�M� �.�.�M��-�-�/��� � �$�$�]�B�7�
�S��r�
"�
�S��]�	�
�%�%�,�,�X�6��	#�!,�!2�!2�3�!7��H�	���)�)�(�3��:�
�-�C��s��+�+�C�8�D�.��	�	#��H�"�H�	#�s�:C�C+�*C+r,c��[R"5RnURnURR5URRS05nURS05nURS5nU(d[R"URS9eURRU5nUR[RRURS95 [ R""XGUR$UR&5 [ R("Xs5 UR*(a9UR,RURS9n[R."U5 U(a5UR[R05 [ R2"5 gg)z�Remove any repository apt configuration files.

:param run_apt_update: If after removing the apt update
    command after removing the apt files.
r7r8rAr*r�r+N)rr+r,r0rS�entitlementsr)r;rr9r3r/r�r�REMOVING_APT_CONFIGURATIONrZrrrHrj�remove_apt_list_filesr#r<�ensure_file_absent�APT_UPDATING_LISTS�run_apt_update_command)	r!r�r,r,rEr7�access_directivesr�rGs	         r"r��!RepoEntitlement.remove_apt_config�sW���(�(�*�1�1�����
��-�-�:�:�<�T�Y�Y�G�K�K��2�
��(�O�O�L�"�=��$�(�(��2����3�3�T�Y�Y�O�O��%�%�,�,�X�6������/�/�6�6�T�Z�Z�6�H�	
�	� � ��T�%7�%7��9K�9K�	
�	�!�!�(�3��!�!�!�5�5�<�<�$�)�)�<�L�N��%�%�n�5�����h�9�9�:��&�&�(�r%r)F)NTr)T)9�__name__�
__module__�__qualname__�__firstlineno__r.r<r3rrr!r��supports_purge�propertyr	�int�strr#r0r4rr=rrCrHrLr^r�rg�abc�abstractmethodrjrrrqr�r
rr�r�r�r�r�r�r�rr�NamedMessager�rrrrr�r�rVr��__static_attributes__�
__classcell__)rxs@r"rr$s
���H�N�@���M��F���$)� ��N���5��c�4��#8�����O�3�O��O��*��*��*���$�s�)���� �
��#��
��
��
�t�C�y�
��
��
�H�S�M�
��
��C��8�4������
�s�
���
�16��)-��	�t�X�/�0�0�	1���,�c����(;�(;����.�s��*��)<�)<�*�X?��9L�9L�?�B%��%�%�	%�N�&1�/�	� �(�8�+@�+@�"A�A�	B�/�b;�<#�	C��#�s�(�^�C��S�#�X��C��	C�

�C�C�P-1�#'�	9��%�%�9��t�C�y�)�9�!�	9�

�9�vd��)<�)<�d��d�N=A�E�&.�t�C�y�&9�E�6 $�$)��%�%�$)��$)�$)r%r))rir<�loggingr��os.pathr�typingrrrrrr	�uaclientr
rrr
rrrrrr�uaclient.entitlementsr�(uaclient.entitlements.entitlement_statusrrr�uaclient.files.state_filesr�get_event_loggerrd�	getLogger�replace_top_level_logger_namerarXr��
UAEntitlementrrr%r"�<module>rys���
���	��:�:����'���
9��%�%�'��
����:�:�8�D�E��P�
�V)�d�(�(�V)r%

Filemanager

Name Type Size Permission Actions
__init__.cpython-313.pyc File 10.54 KB 0644
anbox.cpython-313.pyc File 4.5 KB 0644
base.cpython-313.pyc File 52.53 KB 0644
cc.cpython-313.pyc File 1.67 KB 0644
cis.cpython-313.pyc File 2.21 KB 0644
entitlement_status.cpython-313.pyc File 5.94 KB 0644
esm.cpython-313.pyc File 6.54 KB 0644
fips.cpython-313.pyc File 27.2 KB 0644
landscape.cpython-313.pyc File 6.84 KB 0644
livepatch.cpython-313.pyc File 17.61 KB 0644
realtime.cpython-313.pyc File 10.54 KB 0644
repo.cpython-313.pyc File 30.89 KB 0644
ros.cpython-313.pyc File 2.93 KB 0644
Filemanager