Ë
     ƒh¢  ã                   ó¢   — d dl Z d dlZd dlZd dlZde j                   dedeeef   fd„Zdededz  fd„Zdej                  d	ed
edededz  f
d„Z
y)é    NÚrelease_dateÚm_monthsÚreturnc                 óž   — |dz  }|dz  }| j                   |z   | j                  |z   dz  z   }| j                  |z   dz  }|dk(  rd}|dz  }||fS )z³
    get the (year, month) tuple when the maintenance for the distribution
    ends. Needs the data of the release and the number of months that
    its is supported as input
    é   r   é   )ÚyearÚmonth)r   r   ÚyearsÚmonthsÚsupport_end_yearÚsupport_end_months         ú+/usr/lib/python3/dist-packages/apt/utils.pyÚget_maintenance_end_dater      sx   € ð ˜‰N€EØ˜‰]€FØ#×(Ñ(¨5Ñ0°L×4FÑ4FÈÑ4OÐTVÑ3VÑVÐØ%×+Ñ+¨fÑ4¸Ñ:Ðà˜AÒØÐØ˜AÑÐØÐ/Ð0Ð0ó    Úpathc                 óR  — | rt         j                  j                  | «      syt        j                  t	        j
                  | «      «      5 }t	        j                  |«      }t        |«      }d|vr
	 ddd«       y|d   }t	        j                  |«      cddd«       S # 1 sw Y   yxY w)zF
    return the release date as time_t for the given release file
    NÚDate)	Úosr   ÚexistsÚfdopenÚapt_pkgÚopen_maybe_clear_signed_fileÚTagFileÚnextÚstr_to_time)r   ÚdataÚtagÚsectionÚdates        r   Ú"get_release_date_from_release_filer!   /   sŒ   € ñ ”r—w‘w—~‘~ dÔ+Øä	�‰”7×7Ñ7¸Ó=Ó	>ð )À$Ü�o‰o˜dÓ#ˆÜ�s“)ˆØ˜Ñ Ø÷	)ð )ð
 �v‰ˆÜ×"Ñ" 4Ó(÷)÷ )ò )ús   Á&BÁ:BÂB&ÚcacheÚpkgnameÚlabelÚreleasec                 ó"  — || vry| |   }d}|j                   j                  D ]W  }|�|j                  €Œ|j                  D ]7  \  }}|j                  |k(  sŒ|j                  |k(  sŒ&|j
                  |k(  sŒ6|}Œ9 ŒY |sy| j                  j                  |j                  d   d   «      }	| j                  j                  D ]Ì  }
|
j                  D ]»  }|	sŒ|	j                  |j                  k(  sŒ |	j                  sŒ-t        j                  j                  d«      }dD ]k  }t        j                  |
j                   «      dj#                  |
j$                  |«      z   }t&        j(                  j+                  ||z   «      sŒb||z   c c c S  Œ½ ŒÎ y)z+get the release file that provides this pkgNr   zDir::State::lists)Ú	InReleaseÚReleasezdists_{}_{})Ú_pkgÚversion_listÚ	file_listÚoriginr$   ÚarchiveÚ_listÚ
find_indexÚlistÚindex_filesÚdescribeÚ
is_trustedr   ÚconfigÚfind_dirÚuri_to_filenameÚuriÚformatÚdistr   r   r   )r"   r#   r$   r%   ÚpkgÚverÚaverÚver_fileÚ_indexÚ	indexfileÚ	metaindexÚmÚdirnameÚrelfileÚnames                  r   Úget_release_filename_for_pkgrE   ?   s  € ð �eÑØØ
�‰.€CØ
€Cð —‘×%Ñ%ò 
ˆØˆ<˜4Ÿ>™>Ð1ØØ $§¡ò 	ÑˆH�fð —‘ 5Ó(Ø—N‘N eÓ+Ø×$Ñ$¨Ó/à‘ñ	ð
ñ ØØ—‘×&Ñ& s§}¡}°QÑ'7¸Ñ':Ó;€IØ—[‘[×%Ñ%ò .ˆ	Ø×&Ñ&ò 	.ˆAÚ˜Y×/Ñ/°1·:±:Ó=À)×BVÓBVÜ!Ÿ.™.×1Ñ1Ð2EÓF�Ø7ò .�GÜ"×2Ñ2Ø!Ÿ™óà%×,Ñ,Ø!Ÿ™Øóñ�Dô —w‘w—~‘~ g°¡nÕ5Ø&¨™~Ö-ñ.ñ	.ð.ð r   )Údatetimer   r   ÚaptÚintÚtupler   Ústrr!   ÚCacherE   © r   r   ú<module>rM      sŠ   ðó& Û 	ã ã 
ð1Ø×#Ñ#ð1Ø/2ð1à
ˆ3�ˆ8�_ó1ð()¨Sð )°S¸4±Zó )ð %Ø�9‰9ð%Ø"ð%Ø+.ð%Ø9<ð%àˆ4�Zô%r   