+
    ">ºj—  ã                   ó`   € ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RItR t ! R R4      t	R# )é    Nc                 ól   € \         P                  f   \        4       \         n        \         P                  # )z'Return a singleton _Telemetry instance.)Ú
_TelemetryÚ
_telemetry© ó    Ú7/usr/lib/python3/dist-packages/DistUpgrade/telemetry.pyÚgetr	   !   s$   € ä×ÑÒ$Ü *£Œ
ÔÜ× Ñ Ð r   c                   óH   a € ] tR t^(t o RtR tR tR tR tR t	R t
RtV tR# )	r   Nc                ó¬  € / V n         / V n        V P                  4       V n        \        P
                  ! 4       P                  R 4      V P                   R&   V P                  R4       RV n        RV n	         \        R4      ;_uu_ 4       pVP                  4       V P                   R&   RRR4       R#   + '       g   i     R# ; i  \         d     R# i ; i)Ú
VERSION_IDÚFromÚstartz/var/log/upgrade/telemetryÚubuntu_release_upgraderz/var/log/installer/media-infoÚInstallMediaN)Ú_metricsÚ_stages_histÚ_get_current_uptimeÚ_start_timeÚplatformÚfreedesktop_os_releaser	   Ú	add_stageÚ
_dest_pathÚ_sourceÚopenÚreadlineÚFileNotFoundError)ÚselfÚfs   & r   Ú__init__Ú_Telemetry.__init__,   sª   € ØˆŒØˆÔØ×3Ñ3Ó5ˆÔÜ (× ?Ò ?Ó A× EÑ EØó!
ˆ�‰�fÑð 	�‰�wÔØ6ˆŒØ0ˆŒð	ÜÐ5×6Ô6¸!Ø01·
±
³�—‘˜nÑ-÷ 7×6×6Ò6ûä ô 	Úð	ús0   Á5C ÂB0Â&C Â0C	Â;C ÃC ÃCÃCc                ó\  € Rp \        R4      ;_uu_ 4       p\        VP                  4       P                  4       ^ ,          4      pRRR4       V#   + '       g   i     T# ; i  \        \
        \        3 d2   p\        P                  ! R\        T4      ,           4        Rp?T# Rp?ii ; i)z6Get current uptime info. None if we couldn't fetch it.Nz/proc/uptimez)Exception while fetching current uptime: )
r   ÚfloatÚreadÚsplitr   ÚOSErrorÚ
ValueErrorÚloggingÚwarningÚstr)r   Úuptimer   Úes   &   r   r   Ú_Telemetry._get_current_uptime<   sŽ   € àˆð	$Ü�n×%Ô%¨Ü˜qŸv™v›xŸ~™~Ó/°Õ2Ó3�÷ &ð
 ˆ÷ &Ö%ð
 ˆûô "¤7¬JÐ7ô 	$Ü�OŠOÐGÜ ›Fõ#÷ $ð $àˆûð	$ús4   „A$ —/AÁA$ ÁA!	ÁA$ Á!A$ Á$B+Á:&B&Â&B+c                óœ   € V P                  4       pV P                  e   Vf   R# WP                  \        W P                  ,
          4      &   R# )z(Record installer stage with current timeN)r   r   r   Úint)r   Ú
stage_nameÚnows   && r   r   Ú_Telemetry.add_stageG   s?   € à×&Ñ&Ó(ˆØ×ÑÒ# s¢{ÙØ9C×Ñœ#˜c×$4Ñ$4Õ4Ó5Ó6r   c                ó"   € WP                   R&   R# )zRecord updater typeÚTypeN©r   )r   Úupdater_types   &&r   Úset_updater_typeÚ_Telemetry.set_updater_typeN   s   € à ,�‰�fÓr   c                ó"   € WP                   R&   R# )z*Record if the user had third party sourcesÚThirdPartySourcesNr4   )r   Úusings   &&r   Úset_using_third_party_sourcesÚ(_Telemetry.set_using_third_party_sourcesR   s   € à-2�‰Ð)Ó*r   c           
     óº
  € V P                   V P                  R&   \        P                  P	                  V P
                  4      p \        P                  P                  V4      '       g   \        P                  ! V4       \        V P
                  R4      ;_uu_ 4       p\        P                  ! V P                  V4       RRR4       \        P                  ! V P
                  \        P                  \        P                  ,          \        P                  ,          \        P                   ,          4       \*        P,                  ! R4      '       g   \$        P.                  ! R4       R#  \0        P2                  ! 4        Uu. uFZ  pTP4                  R8¼  g   K  \        P                  P7                  TP8                  R,           4      '       g   KN  TP:                  NK\  	  ppT'       g   \$        P&                  ! R
4       R# T EFÉ  p\        P>                  PA                  4       p\0        PB                  ! T4      P8                  TR&   R\0        PB                  ! T4      P4                   2TR&    \D        PF                  ! RRT PH                  .TT\D        PJ                  \D        PJ                  R7      pTPL                  ^ 8w  dÈ    \D        PF                  ! RR.RTTR7      pTPL                  ^ 8w  d   Kñ  TPN                  PQ                  R4      PS                  4       PU                  4       p	T	PW                  R4      p
 \D        PF                  ! RRT PH                  R\)        T
4      PU                  4       .TT\D        PJ                  R7        \D        PF                  ! RRT PH                  T P
                  .TT\D        PJ                  R7       EKÌ  	  R#   + '       g   i     EL; i  \"         d2   p\$        P&                  ! R\)        T4      ,           4        Rp?R# Rp?ii ; iu upi   \<         d2   p\$        P&                  ! R	\)        T4      ,           4        Rp?R# Rp?ii ; i  \<         d6   p\$        P&                  ! RT PH                   RT RT 24        Rp?EK¢  Rp?ii ; i  \<         d)   p\$        P&                  ! RT RT 24        Rp?EKØ  Rp?ii ; i  \<         d5   p\$        P&                  ! RT PH                   RT RT 24        Rp?EL’Rp?ii ; i  \<         d)   p\$        P&                  ! RT RT 24        Rp?EKP  Rp?ii ; i)z4Close telemetry collection

Save to destination fileÚStagesÚwNz(Exception while storing telemetry data: zubuntu-insightsz2ubuntu-insights not available, skipping collectioniè  z/.config/ubuntu-insightsz"Exception while retrieving users: z,No regular users with home directories foundÚHOMEz
/run/user/ÚXDG_RUNTIME_DIRÚconsent)ÚuserÚenvÚstdoutÚstderrzException while checking z' consent with ubuntu-insights for user z: T)Úcapture_outputrC   rD   zGException while checking default consent with ubuntu-insights for user zutf-8Útruez-s)rC   rD   rE   zException while setting Úcollectz9Exception while collecting with ubuntu-insights for user ),r   r   ÚosÚpathÚdirnamer   ÚexistsÚmakedirsr   ÚjsonÚdumpÚchmodÚstatÚS_IRUSRÚS_IWUSRÚS_IRGRPÚS_IROTHr%   r'   r(   r)   ÚshutilÚwhichÚinfoÚpwdÚgetpwallÚpw_uidÚisdirÚpw_dirÚpw_nameÚ	ExceptionÚenvironÚcopyÚgetpwnamÚ
subprocessÚrunr   ÚDEVNULLÚ
returncoderE   ÚdecodeÚstripÚlowerÚendswith)r   Ú
target_dirr   r+   ÚuÚusersrC   rD   ÚresultÚconsent_strrB   s   &          r   ÚdoneÚ_Telemetry.doneV   sA  € ð
 #'×"3Ñ"3ˆ�‰�hÑä—W‘W—_‘_ T§_¡_Ó5ˆ
ð	Ü—7‘7—>‘> *×-Ò-Ü—’˜JÔ'Ü�d—o‘o s×+Ô+¨qÜ—	’	˜$Ÿ-™-¨Ô+÷ ,ä�HŠH�T—_‘_Ü—\‘\¤D§L¡LÕ0Ü—\‘\õ"Ü$(§L¡Lõ1ô2ô �|Š|Ð-×.Ò.Ü�LŠLÐMÔNÙð		ô Ÿšœóá'�AØ—8‘8˜tÑ#ô ô —G‘G—M‘M !§(¡(Ð-GÕ"G×Hô �—	”	Ù'ð ð ÷ Ü�OŠOÐJÔKÙäˆDÜ—*‘*—/‘/Ó#ˆCÜŸ,š, tÓ,×3Ñ3ˆC�‰KØ'1´#·,²,¸tÓ2D×2KÑ2KÐ1LÐ%MˆCÐ!Ñ"ðÜ#ŸšØ&¨	°4·<±<Ð@ØØÜ%×-Ñ-Ü%×-Ñ-ô�ð" × Ñ  AÔ%ðÜ'Ÿ^š^Ø*¨IÐ6Ø'+Ø!Øô	�Fð ×$Ñ$¨Ô)áð %Ÿm™m×2Ñ2°7Ó;×AÑAÓC×IÑIÓK�Ø%×.Ñ.¨vÓ6�ðÜ—N’Nà-Ø%Ø ŸL™LØ Ü ›L×.Ñ.Ó0ðð "ØÜ)×1Ñ1õð&Ü—’à)Ø!ØŸ™ØŸ™ð	ð ØÜ%×-Ñ-÷
ð 
óE ÷; ,×+Ð+ûô
 ô 	Ü�OŠOÐFÜ ›Fõ#ô $åûð	üòøô ô 	Ü�OŠOÐ@Ä3ÀqÃ6ÕIÔJÝûð	ûô, ô Ü—’Ø/°·±¨~ð >5Ø59°F¸"¸Q¸CðAôö ûðûô" !ô Ü—O’Oð9Ø9=¸¸bÀÀðEôö ûðûô6 !ô Ü—O’OØ2°4·<±<°.ð A9Ø9=¸¸bÀÀðE÷ò ûðûô& ô Ü—’ð Ø $˜v R¨ sð,÷ó ûðúsÐ   Á$O) Á)4O) Â"OÂ?A6O) Å*P- ÆP(Æ3P(ÇP(Ç!P- É1AQ,ËR/Ì?AS%ÎA T'ÏO&	Ï 	O) Ï)P%Ï4&P Ð P%Ð(P- Ð-Q)Ð8&Q$Ñ$Q)Ñ,R,Ñ7)R'Ò'R,Ò/S"Ò:SÓS"Ó%T$Ó0)TÔT$Ô'UÔ2UÕU)r   r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r   r   r6   r;   rq   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r   (   s0   ø‡ € à€Jòò 	òDò-ò3÷yð yr   r   )
rO   r'   rJ   r   rZ   rW   rR   rd   r	   r   r   r   r   Ú<module>rz      s0   ðó. Û Û 	Û Û 
Û Û Û ò!÷gó gr   