403Webshell
Server IP : 178.105.222.151  /  Your IP : 216.73.216.38
Web Server : nginx/1.28.3
System : Linux MNK 7.0.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Wed Apr 22 16:06:43 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.5.4
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/lib/python3/dist-packages/uaclient/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3/dist-packages/uaclient/__pycache__/status.cpython-314.pyc
+
���gr���^RIt^RIt^RIt^RIt^RIHt^RIHtHt^RIH	t	^RI
HtHtH
t
HtHt^RIHtHtHtHtHtHtHt^RIHt^RIHtHt^R	IHtHt^R
I H!t!H"t"^RI#H$t$^RI%H&t&H't'H(t(H)t)^R
I*H+t+H,t,H-t-H.t.^RI/H0t0^RI1H2t2]Pf!4t4]Pj!]Pl!]744t8Rt9Rt:Rt;])PxPz]2P|]P~,]2P�,])P�Pz]2P�]P�,]2P�,])P�Pz]2P�]P�,]2P�,])P�Pz]2P�]P�,]2P�,])P�Pz]2P�]P�,]2P�,]&P�Pz]2P|]P�,]2P�,]&P�Pz]2P�]P�,]2P�,]9]2P|]P�,]2P�,]:]2P|]P�,]2P�,];]2P|]P�,]2P�,/
tSRtTRtURP�]P�]P�]P�]P�R7t[Rt\Rt]/RRbRRbR]P�!4bRRbRR bR!RbR"RbR#RbR$.bR%](P�PzbR&]P�bR'/bR(.bR)R*R+R,R+R-R+R..R/])P�Pz/bR0R,R+R*R+R-R+R1./bR2R bt`R3taR4R5ltbR6R7ltcR8R9ltdR:R;lteRMR<R=lltfR>R?ltgRMR@RAllthRBRCltiRDREltjRNRFRGlltkRHRIltlRMRJRKlltmRLtnR#)O�N)�OrderedDict)�datetime�timezone)�Enum)�Any�Dict�List�Optional�Tuple)�event_logger�
exceptions�	livepatch�lock�messages�util�version)�_is_attached)�UA_CONFIGURABLE_KEYS�UAConfig)�get_available_resources�get_contract_information)�ATTACH_FAIL_DATE_FORMAT�PRINT_WRAP_WIDTH)�entitlement_factory)�ContractStatus�UserFacingAvailability�UserFacingConfigStatus�UserFacingStatus)�
machine_token�notices�state_files�user_config_file)�Notice)�TxtColor�	essential�standard�advancedz({name: <17}{available: <11}{description}zJ{name: <17}{available: <11}{entitled: <11}{auto_enabled: <16}{description}z4{name: <17}{entitled: <10}{status: <13}{description})�name�entitled�status�descriptionz4{name: <17}{entitled: <19}{status: <22}{description}z={marker} {name: <15}{entitled: <19}{status: <22}{description}�_doczUContent provided in json response is currently considered Experimental and may change�_schema_versionz0.1r�
machine_id�attachedF�	effective�expires�origin�services�execution_status�execution_details�featuresr �contract�id�r(�
created_at�products�tech_support_level�account�external_account_ids�	simulatedc	�4�VP4Uu.uFypRVPP'gVPPMVPPRVP
PRVP
P/NK{	up#uupi)r(�reason_code�reason)�blocking_incompatible_services�entitlement�
is_variantr(�variant_name�	named_msg�msg)�ent�services& �1/usr/lib/python3/dist-packages/uaclient/status.py�_get_blocked_by_servicesrL�s����9�9�;��<�G�
��*�*�5�5�5��#�#�(�(��(�(�5�5��7�,�,�1�1��g�'�'�+�+�	
�<����s�!B�ABc�F�V^8�dQhR\\\3,/#���return�r�strr)�formats"rK�__annotate__rT�s��8�8�	�#�s�(�^�8�c�t�RpRpVP4pVP4pVPV9dRMRp/pV\P8Xd\
Pp	M�VPV9d$\
Pp	WP,pM�VP4wr�V	\
P8XdRV
PRV
P/pMV
'd
V
PpV	\
P8XdRpVP'dAVPP4UUu/uFwr�V\V!VR7VV4bK	ppp\V4p
RVPRVP R	VP"R
V	P"RVRVR
VRV
RV/	pVP$'gW�R&V#uuppi)Nr9�no�yes�code�message)�cfgr(r+r)r*�status_details�description_override�	available�
blocked_by�warning�variants)�status_description_override�contract_statusr(r�
UNENTITLEDr�UNAVAILABLE�INAPPLICABLE�user_facing_status�WARNINGrHra�items�_attached_service_statusrL�presentation_namer+�valuerE)rI�inapplicable_resourcesr[r`r\r]rcr^ra�
ent_status�detailsrF�variant_clsr_�service_statuss&&&            rKrjrj�s����G��N��:�:�<���)�)�+�O����$:�:���I��H��.�3�3�3�%�1�1�
��8�8�-�-�)�6�6�J�#9�(�(�#C� �"%�"8�"8�":��J��-�5�5�5��G�L�L��w�{�{����!(�����-�:�:�:� �	��|�|�|�69�\�\�5G�5G�5I�
�6J�1��!�":�#��,�.��#��
6J�
��*�#�.�J�	��%�%��s����O�)�)��*�"�"��.�� 4��Y��j��7�
�N��>�>�>�%-�z�"����5s�2 F4c�R�V^8�dQhR\R\\\3,/#�rOr[rP�rrrRr)rSs"rKrTrT�s&��D�D�(�D�t�C��H�~�DrUc��\P!\P4\P!\P4\V4P'd%\P!\P4\P!\4p\P!V4pVPR,pVR,p\PPpTP!RVR,RRRVP#R4R\P$!4;'g.R	R
VR
,RVR,RVP#R
R4RVP#R.4RV/RRVP&R,R
VP&R
,RVP&P#R
R4RVP&P#R.4//4VP#R4'dVP(VR&VP#R4'd
VR,VR&VPP#R4pV'g\+V4p\-VRR7Uu/uF5pVP#R4'dKVR,VP#R4bK7	ppVFBp\/WP#RR4R7p	TR,P5\7Y�T44KD	VR,P9RR7VP;4P#R /4P#R!4p
V
'd5V
P#R"/4P#R#4pV'dW�R	,R&V#uupi \0P2dK�i;i)$z8Return configuration of attached status as a dictionary.�machineTokenInfo�contractInfor.�	machineIdr/Tr2r r7r8r(r:�	createdAtr9r;r<r=r>�externalAccountIDs�effectiveTor1�
effectiveFromr0�availableResourcesc�&�VPRR4#�r(r9��get��xs&rK�<lambda>�"_attached_status.<locals>.<lambda>s�����f�b�8IrU��keyr^r+�r[r(r3c�&�VPRR4#rr�r�s&rKr�r����A�E�E�&�"�,=rU�supportrD�affordances�supportLevel)r �remover#�AUTO_ATTACH_RETRY_FULL_NOTICE�AUTO_ATTACH_RETRY_TOTAL_FAILUREr�is_attached_and_contract_valid�CONTRACT_EXPIRED�copy�deepcopy�DEFAULT_STATUSr�get_machine_token_filerrfrl�updater��listr=�contract_expiry_datetimer�sortedrr
�EntitlementNotFoundError�appendrj�sort�entitlements)r[�response�machine_token_filervrwr<�	resources�resourcermrIr�r�s&           rK�_attached_statusr��s���N�N�6�7�7�8��N�N�6�9�9�:��C��7�7�7����v�.�.�/��}�}�^�,�H�&�=�=�c�B��)�7�7�8J�K��#�N�3�L�)�6�6�<�<���O�O��*�;�7����l�&�&�x�0��w�|�|�~�+�+����l�4�(���V�,��l�.�.�{�B�?��L�,�,�Z��<�$�&8��
��*�2�2�6�:��(�0�0��6��0�8�8�<�<�[�"�M�&�(:�(B�(B�(F�(F�(�"�)�	�	
��.���
�&�&�0�I�I��������(�(� ,�_� =����"�0�0�4�4�5I�J�I��+�C�0�	��y�.I�J��J�H��|�|�K�(�	6����(�,�,�}�5�5�J�����	�%�#�L�L���4L�M�C�	���#�#�$�S�#�F�	
�
�
�Z����"=��>�	�'�'�)�-�-�i��<�@�@��O����{�{�=�"�5�9�9�.�I���9E�Z� �!5�6��O��1���2�2�	��	�s�M'�9M'�M,�,N�Nc�R�V^8�dQhR\R\\\3,/#rsrt)rSs"rKrTrTs"��+�+�H�+��c�3�h��+rUc� �\P!\4p\V4pVEFpVP	R4'd\
PPpM\
PPp\WP	RR4R7pTPR8XdD\P !4\P"P$8XdTP'4pMRpTR	,P)RTP	R
TR,4RTP*RTRT/4EK	VR	,P-R
R7V# \Pd,\PRTP	RR44EKdi;i)z#Return unattached status as a dict.r^r(r9r�z@Ignoring availability of unknown service %s from contract serverzwithout a 'name' keyrNr3�presentedAsr+r]c�&�VPRR4#rr�r�s&rKr��$_unattached_status.<locals>.<lambda>Gr�rUr�)r�r�r�rr�r�	AVAILABLErlrerr
r��LOG�debugr(r�on_supported_kernel�LivepatchSupport�UNSUPPORTEDrbr�r+r�)r[r�r�r�r^rI�descr_overrides&      rK�_unattached_statusr�sO���}�}�^�,�H�'��,�I����<�<��$�$�.�8�8�>�>�I�.�:�:�@�@�I�		�%�#�L�L���4L�M�C�
�H�H��#��-�-�/��)�)�5�5�6�!�<�<�>�N�!�N����#�#�����]�H�V�4D�E��s���&���Y�	
�	
�7�F
�Z����"=��>��O��;�2�2�	��I�I�����V�%;�<�
�

�
	�s�9E
�
;F
�F
c�F�V^8�dQhR\\\3,/#rNrQ)rSs"rKrTrTLs��,�,�t�C��H�~�,rUc�n�\pVPPp\Pp\
P!4wrE\P!4;'g.pV^8�d8VPPp\PPWER7pMX\PP'd9VPPpRp\P PVR7pRVRVRVRVP"RVP$R	VP&/p\(P*P,P/4p	\0FSp
\3W
4'gKW�,eK"\5W
4p\7V\84'd
VPpW�V
&KU	W�R,R
&V#)a/Return a dict with execution_status, execution_details and notices.

Values for execution_status will be one of UserFacingConfigStatus
enum:
    inactive, active, reboot-required
execution_details will provide more details about that state.
notices is a list of tuples with label and description items.
)�pid�lock_holderzconfiguration changes)�	operationr4r5r �config_path�configr6�	ua_config)r�INACTIVErlr�NO_ACTIVE_OPERATIONSr�check_lock_infor r��ACTIVE�	LOCK_HELDrSr!�reboot_cmd_marker_file�
is_present�REBOOTREQUIRED�ENABLE_REBOOT_REQUIRED_TMPL�cfg_pathr[r6r"�user_config�
public_config�to_dictr�hasattr�getattr�
isinstancer)r[�
userStatus�
status_val�status_desc�lock_pidr��notices_listr��retr�r��vals&           rK�_get_config_statusr�Lsm��(�J��$�$�*�*�J��/�/�K�"�2�2�4��X��<�<�>�'�'�R�L��!�|��&�&�,�,�
��(�(�/�/��0�
��
�	+�	+�	6�	6�	6��.�.�4�4�
�+�	��:�:�A�A��B�
��	�J��[��<��s�|�|��#�'�'��C�L�L�
�C�!�,�,�:�:�B�B�D�I�#���3�����!7��#�#�C��#�t�$�$��i�i�� �c�N�$�"+��M�+���JrUc�^�V^8�dQhR\R\R\\\3,/#)rOr[�show_allrP)r�boolrrRr)rSs"rKrTrT{s)������D��T�#�s�(�^�rUc��\V4P'd
\V4pM\V4pVP	\V44\P!4'd \PPV4V'g?VPR.4Uu.uFpVPRR4R8XgKVNK 	ppWBR&V#uupi)z�Return status as a dict, using a cache for non-root users

When unattached, get available resources from the contract service
to report detailed availability of different resources for this
machine.

Write the status-cache when called by root.
r3r^rX)r�is_attachedr�r�r�r�r�we_are_currently_rootr!�status_cache_file�writer�)r[r�r�rJ�available_servicess&&   rKr*r*{s����C��$�$�$�#�C�(��%�c�*���O�O�&�s�+�,��!�!�#�#��%�%�+�+�H�5��$�<�<�
�B�7�
�7���{�{�;��.�%�7�
�G�7�	�
�
 2����O��
s�#C�Cc��V^8�dQhR\\\\3,,R\R\\\3,/#)rOr��entitlement_namerP)r	rrRr)rSs"rKrTrT�s>��G�G��t�C��H�~�&�G�:=�G�	�#�s�(�^�GrUc
��VFupVPR4V8XgKRVPR4'dRMRRVPR/4PR4'dRMRRVPR/4/u#	RRRRR//#)	z0Extract information from the entitlements array.�typer)rXrW�auto_enabled�obligations�enableByDefaultr�r�)r�r�rDs&& rK�_get_entitlement_informationr��s���$���?�?�6�"�&6�6��[�_�_�Z�%@�%@�E�d��"���}�b�9�=�=�)������{���}�b�A�
�

�$�
��n�d�M�2�F�FrUc	��V^8�dQhR\R\R\\\\3,\
3,/#)rO�tokenr�rP)rRr�rrr�int)rSs"rKrTrT�s;��u�u��u�#�u�
�4��S��>�3���urUc�
�^p\P!\4p\W4pTPR/4pTPR/4pTPRRTPRR4R	TPR	R4R
TPRR4RTPR.4/R
R	TPR	R4RTPR4R
TPRR4RTPR.4/RR/4\P!\P4p	TPR4'd�TPR4TR&TR,p
Y�,
pTP4^8:d�\ P"P%TR,R,T
P'\(4R7p\*P-TP.TP0R7\*P3\ P4R,TP.,R,4^pTPR4'd�TPR4TR&TR,p
Y�,
pTP4^8:d�\ P6P%TR,R,T
P'\(4R7p\*P-TP.TP0R7\*P3\ P4R,TP.,R,4^p\9T4p\;TRR7Uu.uFpTR,'dKTR	,NK	ppTPR.4pTF�pTPR	R4p\=TTR7p\ATT4pTR,PCR	TPRTP04R TPDR!TR!,R"TR",RTP0T9dR#MR$/4K�	TR,PGR%R7\ATR&4pTR!,'d-TR',PR(4pT'd
TTR,R)&TP\IT44T'g@TPR.4Uu.uFpTPRR#4R#8XgKTNK 	ppTTR&YC3# \P
d@p\
TR4'd'TPR8Xd\P!4hThRp?ii;iuupi \P>dEK�i;iuupi)*z�Get a status dictionary based on a token.

Returns a tuple with the status dictionary and an integer value - 0 for
success, 1 for failure
rYi�Nrw�accountInfor7r8r9r(r:ryr;r=r>rzr?Tr{r1)�contract_id�date)�	error_msg�
error_code�
r|r0c��VR,#�r(�r�s&rKr��!simulate_status.<locals>.<lambda>�s���&�	rUr�r^�resourceEntitlementsr�r3r�r+r)r�rXrWc�&�VPRR4#rr�r�s&rKr�r�r�rUr�r�r�r<)%r�r�r�rr
�ContractAPIErrorr�rY�AttachInvalidTokenErrorr�r�r�nowr�utc�
total_secondsr�E_ATTACH_FORBIDDEN_EXPIREDrS�strftimer�event�errorrHr(�info�STATUS_TOKEN_NOT_VALID�E_ATTACH_FORBIDDEN_NOT_YETrr�rr�r�r�r+r�r�)r[r�r�r�r��contract_information�e�
contract_info�account_infor��expiration_datetime�deltarZ�effective_datetimer�r�rmr�r�rI�entitlement_informationr�r�rJr�s&&&                      rK�simulate_statusr�s����C��}�}�^�,�H��7��C��)�,�,�^�R�@�M�'�+�+�M�2�>�L��O�O���m�'�'��b�1��
�)�)�&�"�5��m�/�/��R�@��M�-�-�j�"�=�	�
���(�(���4��l�&�&�t�,��l�.�.�{�B�?�&��(8�(8�(�"�)�	�
��	
��(�,�,�x�|�|�
$�C�����'�'�+�/�/�
�>����&�y�1��#�)����� �A�%��9�9�@�@�$�Z�0��6�(�1�1�2I�J�A��G�
�K�K�'�+�+�'�,�,�K�G��J�J��/�/�$�6����D�t�K�
��C�����)�)� -� 1� 1�/� B����%�k�2���(����� �A�%��9�9�@�@�$�Z�0��6�'�0�0�1H�I�A��G�
�K�K�'�+�+�'�,�,�K�G��J�J��/�/�$�6����D�t�K�
��C�'��,�I��y�.A�B��B�H���$�$�	�����B���!�$�$�%;�R�@�L���#�<�<���3��	�%�#�4D�E�C�#?��*�#
��	���#�#�����]�C�H�H�=��s����3�J�?�� 7�� G�� �X�X�-C�C�E��

�
	
��(
�Z����"=��>�*�<��C�G��z����}�-�1�1�.�A���9E�H�Z� �!5�6��O�O�&�s�+�,��$�<�<�
�B�7�
�7���{�{�;��.�%�7�
�G�7�	�
�
 2�����=���Q�&�&���1�f���!�&�&�C�-��4�4�6�6������v���2�2�	��	��6
sA�S�6T%�
T%�
T*� U�>U�T"�#:T�T"�*U�Uc�0�V^8�dQhR\R\/#)rO�stringrP)rR)rSs"rKrTrT%s�������rUc�x�\PP4'd\P	W4#T#)z=Return colorized string if using a tty, else original string.)�sys�stdout�isatty�STATUS_HUMANIZE_COLORIZEr�)rs&rK�for_human_colorizedr%s6���:�:�����	!�$�$�V�4���rUc�\�V^8�dQhR\\\,,R\/#)rO�commandsrP)r	rR)rSs"rKrTrT.s"�����T�#�Y���C�rUc�T�RpVF,pV'd
VR,
pVRPV4,
pK.	RP\P!V\^,
RR74pRV9dRpRpMR	pR
pRP	\
PVVV\
PR7#)
r9z && � z \
z  )�width�subsequent_indentr�z{
  z
}z{ z }z%{color}{prefix}{content}{suffix}{end})�color�prefix�content�suffix�end)�join�textwrap�wraprrSr$�DISABLEGREY�ENDC)rr�cmd�wrapped_contentrrs&     rK�colorize_commandsr!.s����G�����v��G��3�8�8�C�=� ����l�l��
�
��,�q�0�T�	
��O�
�����������2�9�9��"�"�����M�M�:��rUc��V^8�dQhR\\\\3,,R\\,R\\,/#)rO�column_data�headerrP)r	rrRr
)rSs"rKrTrTJs9�����e�C��H�o�&��08��
��	�#�Y�rUc	��.pV'dVPV4\VUu.uFp\V^,4NK	up4pV^8�dBRPV4pTP	VUu.uFq5P!V!NK	up4V#TP	VUu.uFq3^,NK
	up4V#uupiuupiuupi)z�Return a list of content lines to print to console for a section

Content lines will be center-aligned based on max value length of first
column.
z{{:>{}}}: {{}})r��max�lenrS�extend)r#r$r�pair�template_length�templates&&    rK�get_section_column_contentr,Js����G�
����v���K�@�K�D�3�t�A�w�<�K�@�A�O����#�*�*�?�;�����;�G�;�4����.�;�G�H��N�	���K�8�K�D�Q���K�8�9��N��A��H��9s�B8�.B=�Cc�F�V^8�dQhR\\,R\/#)rOr1rP)r
rrR)rSs"rKrTrT_s��%�%�H�X�.�%�3�%rUc��Vf\P#VP4pVP	R4# \dLi;i)Nz%c %Z)r�STATUS_CONTRACT_EXPIRES_UNKNOWN�
astimezone�	Exceptionr�)r1s&rK�format_expiresr2_sM�����7�7�7�
��$�$�&�����G�$�$���
��
�s�7�A�Ac�^�V^8�dQhR\\\3,R\R\/#)rOr*r�rP)rrRrr�)rSs"rKrTrTis.��y�y�4��S��>�y�T�y�c�yrUc���VPR4'Eg�VPR4'd�VPRR4'g\P#\P	\P
\P\P\P\PR7.pVPR.4F(pVP\P!R&/VB4K*	RPV4#VPRR4'g\P.pM�\P	\P
\P\PR7.pVPR.4F�pVPR4pV'dTMVPR	R
4pVPR4R8Xd\PM\PpVP\P	VPR
R
4VVR74K�	VPR4pV'd1VP\P4VP!V4VPR4'dyVPR\P",4\%VPR/4P'44F%wr�VPRP	W�44K'	V'g"VP!R
\P(.4VP!R
\P*P,.4\.P0!4\.P2P48Xd"VP!R
\P6.4RPV4#.p
RpVPRR4'g\P.pEM\8.pVPR.4EF�pVPRR
4p
VPR4pV'dTMVPR	R
4pR
VPR
R
4R\;V
4R\;VPRR
44R	V/pVPRR4pVe(VPRR4pVeV
PV4VPR4pV'd&V'gRpRP	VR
,4VR
&VP\<P!R&/VB4V'gEK*V'gEK5\?VP'44F�wpwppV\AV4^,
8wdRMRpVP\BP	VVPR
4\;VPRR
44\;VPRR
44VPR	R
4R74K�	EK�	V'd1VPR
4VP\PD4VPR4'g\AV
4^8�d|VPR
4VP\P4VPR4pV'dVP!V4\AV
4^8�dVP!V
4VPR4'dyVPR\P",4\%VPR/4P'44F%wr�VPRP	W�44K'	VPR
4V'gHV'd!VP\PF4MVP\P(4VP\PHP	RR74.pVPR/4PR
R4pV'd"VP\PJV34VPR /4PR
R4pV'd"VP\PLV34VPR!R4R"8wd�VP\PN\QVPR#4434VPR /4PR$R4pVP\PR\;V434V'd-VPR
4VP!\UVR%74RPV4#)'z&Format status dict for tabular output.r/r?r3N)r(r^r)r�r+r�)r(r^r+r]r+r9r^rXr(r r6z{}: {}Fr)r*r`rZraTz{}*u├u└)�markerr(r)r*r+zpro enable <service>)�commandr=�unknownr7r2�freer1r<)r#r�)+r�r�STATUS_NO_SERVICES_AVAILABLE�STATUS_SIMULATED_TMPLrS�STATUS_SERVICE�STATUS_AVAILABLE�STATUS_ENTITLED�STATUS_AUTO_ENABLED�STATUS_DESCRIPTIONr�r�STATUS_UNATTACHED_TMPL�STANDALONE_YES�
STANDALONE_NO�STATUS_NOTICESr(�STATUS_FEATURESr�ri�STATUS_ALL_HINT�E_UNATTACHEDrHrr�r�r��)LIVEPATCH_KERNEL_NOT_SUPPORTED_UNATTACHED�
STATUS_HEADERr�STATUS_TMPL�	enumerater'�VARIANT_STATUS_TMPL�STATUS_SERVICE_HAS_VARIANTS�STATUS_ALL_HINT_WITH_VARIANTS�"STATUS_FOOTER_ENABLE_SERVICES_WITH�STATUS_FOOTER_ACCOUNT�STATUS_FOOTER_SUBSCRIPTION�STATUS_FOOTER_VALID_UNTILr2�STATUS_FOOTER_SUPPORT_LEVELr,)r*r�rrJr�r+r^r r�rl�service_warnings�has_variantsrqr)�fmt_argsr`�warning_messagera�idx�_�variantr5�pairs�account_name�
contract_namer<s&&                        rK�format_tabularr]isc���:�:�j�!�!��:�:�k�"�"��:�:�j�$�/�/��<�<�<�&�,�,�!�0�0�&�7�7�%�5�5�!)�!=�!=� (� ;� ;�-���G�"�:�:�j�"�5�����4�;�;�F�g�F�G�6��9�9�W�%�%��z�z�*�d�+�+��<�<�=�G�'�-�-�!�0�0�&�7�7� (� ;� ;�.���G�"�:�:�j�"�5��!(���-C�!D��&�#� ���]�B�7���{�{�;�/�5�8��+�+�!�/�/��
���*�1�1�$�[�[���4�"+�$/�2���6�(�*�*�Y�'����N�N�8�2�2�3��N�N�7�#��:�:�j�!�!��N�N�4�(�":�":�:�;�$�V�Z�Z�
�B�%?�%E�%E�%G�H�
�����x���s�:�;�I���N�N�B�� 8� 8�9�:�����H�1�1�5�5�6�7��)�)�+��)�)�5�5�
6�
�N�N��X�G�G�H�
��y�y��!�!����L��:�:�j�$�'�'��8�8�9�� �/��$�j�j��R�8�N�%�)�)�*�b�9�H�+�/�/�0F�G�N�"��#�'�'�
�r�:�
���*�*�6�2�6��/��9��-�"�&�&�x��4���{�
�H�%�(�(��D�9�G��"�")�+�+�i��">��"�.�$�+�+�O�<�%�)�)�*�5�H���#��#(�<�<���0@�#A��� ��N�N�;�-�-�9��9�:��x�H�H�)2�8�>�>�3C�)D�%�C��!�W�&)�S��]�Q�->�&>�U�E�F��N�N�+�2�2�#)�!(���V�!4�%8� '���J�� ;�&�$7� '���H�b� 9�$�)0���M�2�(F�3�
��*E�99�X����r�����x�;�;�<�
�z�z�)����$4� 5�� 9����r�����x�.�.�/��*�*�Y�'����N�N�7�#��� �1�$��N�N�+�,�
�z�z�*������t�h�6�6�6�7� ����J��!;�!A�!A�!C�D�J�C��N�N�8�?�?�3�6�7�E��N�N�2�����N�N�8�A�A�B��N�N�8�3�3�4��N�N��3�3�:�:�*�	;�	
��

�E��:�:�i��,�0�0���C�L��
���h�4�4�l�C�D��J�J�z�2�.�2�2�6�9�E�M��
���h�9�9�=�I�J�
�z�z�(�D�!�V�+�
����2�2��v�z�z�)�4�5�
�	
�$�Z�Z�
�B�7�;�;� �)�
��	����4�4�#�$6�7�
�	
�
����r�����1�e�D�E��9�9�W��rUc�h�\V4pRp\4pWR&VF?pVR,V8XgVPR4V8XgK)\WR,R7pTpM	Vf\P!VR7h\V4P'd(\X/V4pVR,pVR,VR&W�R&MHVR,'d\PPp	M\PPp	W�R&XPVR	&V# \P
dEKi;i)
z�Return help information from an uaclient service as a dict

:param name: Name of the service for which to return help data.

:raises: UbuntuProError when no help is available.
Nr(r�r�r�r*r)r^�help)rrr�rr
r��
NoHelpContentrr�rjrr�rlre�	help_info)
r[r(r��
help_resource�
response_dictr��help_entrq�
status_msgr^s
&&        rKr_r_%s)��(��,�I��M�
 �M�M� �&�����F��t�#�x�|�|�M�'B�d�'J�
�.�3�f�=M�N��%�M������&�&�D�1�1��C��$�$�$�1�(�B��D��#�H�-�
�$2�:�$>�
�j�!�",�h����%�%�.�8�8�>�>�I�.�:�:�@�@�I�%.�k�"�$�.�.�M�&�����1�6�6�
��
�s�D�D1�0D1)F)N)or��loggingr
r�collectionsrrr�enumr�typingrrr	r
r�uaclientrr
rrrrr�(uaclient.api.u.pro.status.is_attached.v1r�uaclient.configrr�uaclient.contractrr�uaclient.defaultsrr�uaclient.entitlementsr�(uaclient.entitlements.entitlement_statusrrrr�uaclient.filesrr r!r"�uaclient.files.noticesr#�uaclient.messagesr$�get_event_loggerr��	getLogger�replace_top_level_logger_name�__name__r��	ESSENTIAL�STANDARD�ADVANCEDr�rl�OKGREEN�STATUS_STATUS_ENABLEDrr��FAIL�STATUS_STATUS_DISABLEDrfr�STATUS_STATUS_INAPPLICABLEre�STATUS_STATUS_UNAVAILABLErh�
WARNINGYELLOW�STATUS_STATUS_WARNING�ENTITLED�STATUS_ENTITLED_ENTITLEDrd�STATUS_ENTITLED_UNENTITLED�STATUS_SUPPORT_ESSENTIAL�STATUS_SUPPORT_STANDARD�STATUS_SUPPORT_ADVANCEDr
r@r:rSr;r=�
STATUS_STATUSr?rHrIrK�get_versionr�r�rLrjr�r�r�r*r�rrr!r,r2r]r_r�rUrK�<module>r�s4����
��#�'��3�3����B�:�O�G�5�����*�&��%�%�'��
����:�:�8�D�E��
�	�����
���!�!����8�9�9�9�H�M�M�I����#�#��
�
��7�7�7�(�-�-�G��!�!�'�'����
�
-�
-�	.�
�-�-�	�� � �&�&����
�
,�
,�	-�
�-�-�	����"�"�����!?�!?�?�(�-�-�O����!�!����8�<�<�<�x�}�}�L����#�#����
�
-�
-�	.�
�-�-�	��x����'�'�(��m�m��
�h����&�&�'��m�m��
�h����&�&�'��m�m��E%��PD��N��G�M�M�	�	 �	 �
�
%�
%��!�!��+�+�	N��
�E��C���
�
#���u���w�"�"�$�	�
�$����
�����t��
�d������.�7�7�=�=����6�6������r����b����b��B��.�;�;�A�A���,����b��b���	�-�8��9��@�8�vD�N+�\,�^�<G�(u�p��8�*%�y�x,rU

Youez - 2016 - github.com/yon3zu
LinuXploit