add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
�

Jz`fd��\�SSKrSSKrSSKJrJr SSKrSSKJr /SQr	\
r"SS\
5r"SS\
5r
S	r\"S
S\55r\"SS
\55r/SQr"SS5r"SS5r\"S5r\"S5r\"S5r\"S5rSrSrSrSrSrSrSr"SS\5r "S S!\ 5r!"S"S#\ 5r""S$S%5r#S&r$"S'S(\!5r%"S)S*\"5r&\!"5r'\'RPr)S+r*\'RVr,\'RZr-\'R\r/\'R`r1\'Rdr2\'Rfr4\'Rjr6\'Rnr8S,r9S-r:\9\:4S.jr;\9\:4S/jr<S0r=\R|"\=S1S15R5r@S2rAS5S3jrB\CS4:Xa\B"5 gg)6�N)�IntEnum�global_enum)�repeat)-�IllegalMonthError�IllegalWeekdayError�setfirstweekday�firstweekday�isleap�leapdays�weekday�
monthrange�
monthcalendar�prmonth�month�prcal�calendar�timegm�
month_name�
month_abbr�day_name�day_abbr�Calendar�TextCalendar�HTMLCalendar�LocaleTextCalendar�LocaleHTMLCalendar�
weekheader�Day�Month�JANUARY�FEBRUARY�MARCH�APRIL�MAY�JUNE�JULY�AUGUST�	SEPTEMBER�OCTOBER�NOVEMBER�DECEMBER�MONDAY�TUESDAY�	WEDNESDAY�THURSDAY�FRIDAY�SATURDAY�SUNDAYc� �\rSrSrSrSrSrg)r�c��Xlg�N�r)�selfrs  �!/usr/lib64/python3.13/calendar.py�__init__�IllegalMonthError.__init__s���
�c� �SUR-$)Nz!bad month number %r; must be 1-12r7�r8s r9�__str__�IllegalMonthError.__str__!s��2�T�Z�Z�?�?r<r7N��__name__�
__module__�__qualname__�__firstlineno__r:r?�__static_attributes__�r<r9rrs
���@r<rc� �\rSrSrSrSrSrg)r�%c��Xlgr6�r)r8rs  r9r:�IllegalWeekdayError.__init__&s���r<c� �SUR-$)Nz7bad weekday number %r; must be 0 (Monday) to 6 (Sunday)rKr>s r9r?�IllegalWeekdayError.__str__(s��H�4�<�<�W�Wr<rKNrArGr<r9rr%s
���Xr<rc��US;a6SSKnURSUSUR5S3[SS9 US:Xag	g[	S
[
SUS35e)
N)�January�FebruaryrzThe 'z ' attribute is deprecated, use 'z	' instead�)�
stacklevelrP�zmodule 'z' has no attribute '�')�warnings�warn�upper�DeprecationWarning�AttributeErrorrB)�namerVs  r9�__getattr__r\,sf���&�&���
�
��d�V�#C�D�J�J�L�>�QZ�[�(�Q�	�	8��9����
�8�H�:�-A�$��q�I�
J�Jr<c�D�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrg)r�:rTrR�������	�
��rGN)rBrCrDrEr r!r"r#r$r%r&r'r(r)r*r+rFrGr<r9rr:s>���G��H�
�E�
�E�
�C��D��D�
�F��I��G��H��Hr<rc�0�\rSrSrSrSrSrSrSrSr	Sr
S	rg
)r�KrrTrRr_r`rarbrGN)rBrCrDrEr,r-r.r/r0r1r2rFrGr<r9rrKs%��
�F��G��I��H�
�F��H�
�Fr<r)
r��rkr4rkr4rkrkr4rkr4rkc
���\rSrSr\"S5VVVs/sH(n[
R"SUS-S5RPM* snnnr\RSS5 Sr
SrS	rS
r
gs snnnf)�_localized_month�^rh��rTrc��g)N�rG)�xs r9�<lambda>�_localized_month.<lambda>as�r<c��Xlgr6��format�r8rxs  r9r:�_localized_month.__init__c����r<c��URUn[U[5(a!UVs/sHo3"UR5PM sn$U"UR5$s snfr6)�_months�
isinstance�slicerx�r8�i�funcs�fs    r9�__getitem__�_localized_month.__getitem__fsI�����Q����a����,1�2�q�A�d�k�k�N�2�2�����%�%��3��Ac��g)N�
rGr>s r9�__len__�_localized_month.__len__ms��r<)rxr}N)rBrCrDrE�range�datetime�date�strftimer}�insertr:r�r�rF��.0r�r�s000r9rnrn^sS��=B�2�Y�G�G��x�}�}�T�1�Q�3��*�3�3�G�G��N�N�1�l�#��&���Hs�.A%rnc��\rSrSr\"S5VVVs/sH(n[
R"SSUS-5RPM* snnnrSr	Sr
SrSrg	s snnnf)
�_localized_day�qrcrprTc��Xlgr6rwrys  r9r:�_localized_day.__init__vr{r<c��URUn[U[5(a!UVs/sHo3"UR5PM sn$U"UR5$s snfr6)�_daysr~rrxr�s    r9r��_localized_day.__getitem__ysI���
�
�1�
���a����,1�2�q�A�d�k�k�N�2�2�����%�%��3r�c��g�NrcrGr>s r9r��_localized_day.__len__�s��r<)rxr�N)
rBrCrDrEr�r�r�r�r�r:r�r�rFr�s000r9r�r�qsH��<A��8�D�D�a�X�]�]�4��A�a�C�
(�
1�
1�D�E��&���
Es�.Ar�z%Az%az%Bz%bc�N�US-S:H=(a US-S:g=(d US-S:H$)Nr`r�d�rG)�years r9r
r
�s*���!�8�q�=�A�d�S�j�A�o�@����q��Ar<c�\�US-nUS-nUS-US--
US-US--
-
US-US--
-$)NrTr`r�r�rG)�y1�y2s  r9rr�sL���!�G�B��!�G�B���E�B��E�M�b�#�g��C��/�0�B��G�b�#�g�4E�F�Fr<c���[RUs=::a[R::d
O SUS--n[[R"XU5R55$)Ni�r�)r��MINYEAR�MAXYEARrr�r)r�r�days   r9rr�sH�����t�7�x�'7�'7�7��d�S�j� ���x�}�}�T�#�.�6�6�8�9�9r<c��SUs=::aS::d
O [U5e[XS5n[UU[:H=(a [	U5-nX#4$�NrTrh)rr�mdaysr!r
)r�r�day1�ndayss    r9r
r
�sL��
�������&�&��4��"�D��%�L�E�X�-�>�&��,�?�E��;�r<c�L�[UU[:H=(a [U5-$r6)r�r!r
�r�rs  r9�	_monthlenr��s����<�5�H�,�=����>�>r<c�(�US:XaUS-
S4$XS-
4$r�rGr�s  r9�
_prevmonthr��s#����z��A�v�r�z���1�W�}�r<c�(�US:XaUS-S4$XS-4$)NrhrTrGr�s  r9�
_nextmonthr��s#����{��A�v�q�y���1�W�}�r<c��\rSrSrSSjrSrSr\"\\5rSr	Sr
SrSrS	r
S
rSrSrS
rSSjrSSjrSSjrSrg)r�c��Xlgr6�r	�r8r	s  r9r:�Calendar.__init__�s��(�r<c� �URS-$r���
_firstweekdayr>s r9�getfirstweekday�Calendar.getfirstweekday�s���!�!�A�%�%r<c��Xlgr6r�r�s  r9r�Calendar.setfirstweekday�s��)�r<c#�n# �[URURS-5H
nUS-v� M g7fr�)r�r	)r8r�s  r9�iterweekdays�Calendar.iterweekdays�s7���
�t�(�(�$�*;�*;�a�*?�@�	�A��A�#�I�	�s�35c#�t# �URX5Hup4n[R"X4U5v� M! g7fr6)�itermonthdays3r�r�)r8r�r�y�m�ds      r9�itermonthdates�Calendar.itermonthdates�s6����*�*�4�7�	)�G�A�!��-�-��a�(�(�	)�s�68c#��# �[X5up4X0R-
S-n[SU5Shv�N [SUS-5Shv�N URU-
U-
S-n[SU5Shv�N gNEN0N	7f)NrcrrT)r
r	rr�)r8r�rr�r��days_before�
days_afters       r9�
itermonthdays�Calendar.itermonthdays�s���
!��-����/�/�/�1�4���!�[�)�)�)���E�A�I�&�&�&��'�'�$�.��6�!�;�
��!�Z�(�(�(�	*�&�(�s3�.A<�A6�A<�A8�(A<�0A:�1A<�8A<�:A<c#�x# �[URX5UR5H
up4XCS-4v� M g7fr�)�	enumerater�r	)r8r�rr�r�s     r9�itermonthdays2�Calendar.itermonthdays2�s;���
�d�0�0��=�t�?P�?P�Q�	�D�A���U�(�N�	�s�8:c#�h# �[X5up4X0R-
S-nURU-
U-
S-n[X5upx[Xx5S-n	[	X�-
U	5H	n
XxU
4v� M [	SUS-5H	n
XU
4v� M [X5upx[	SUS-5H	n
XxU
4v� M g7f)NrcrT)r
r	r�r�r�r�)r8r�rr�r�r�r�r�r��endr�s           r9r��Calendar.itermonthdays3�s����
!��-����/�/�/�1�4���'�'�$�.��6�!�;�
��$�&�����o��!���s���,�	�A���'�M�	��q�%�!�)�$�	!�A��q�.� �	!��$�&����q�*�q�.�)�	�A���'�M�	�s�B0B2c#�# �[URX55HunupEnXEX`RU-S-4v� M! g7fr�)r�r�r	)r8r�rr�r�r�r�s       r9�itermonthdays4�Calendar.itermonthdays4sI���
&�d�&9�&9�$�&F�G�	7�L�A�y��a���-�-��1�Q�6�6�6�	7�s�?Ac��[URX55n[S[U5S5Vs/sH	oCXDS-PM sn$s snf�Nrrc)�listr�r��len)r8r�r�datesr�s     r9�monthdatescalendar�Calendar.monthdatescalendar
s@��
�T�(�(��5�6��',�Q��E�
�A�'>�@�!�q�1���@�@��@��Ac��[URX55n[S[U5S5Vs/sH	oCXDS-PM sn$s snfr�)r�r�r�r��r8r�r�daysr�s     r9�monthdays2calendar�Calendar.monthdays2calendars@���D�'�'��4�5��&+�A�s�4�y�!�&<�>��a�!���>�>��>r�c��[URX55n[S[U5S5Vs/sH	oCXDS-PM sn$s snfr�)r�r�r�r�r�s     r9�monthdayscalendar�Calendar.monthdayscalendars@��
�D�&�&�t�3�4��&+�A�s�4�y�!�&<�>��a�!���>�>��>r�c��[Vs/sHo0RX5PM nn[S[U5U5Vs/sH	oTXUU-PM sn$s snfs snf�Nr)rr�r�r��r8r��widthr��monthsr�s      r9�yeardatescalendar�Calendar.yeardatescalendar'�O��=B�B�q�)�)�$�2�B��B�+0��C��K��+G�I�a�q�5��!�I�I��C��I�
�A�Ac��[Vs/sHo0RX5PM nn[S[U5U5Vs/sH	oTXUU-PM sn$s snfs snfr�)rr�r�r�r�s      r9�yeardays2calendar�Calendar.yeardays2calendar1r�r�c��[Vs/sHo0RX5PM nn[S[U5U5Vs/sH	oTXUU-PM sn$s snfs snfr�)rr�r�r�r�s      r9�yeardayscalendar�Calendar.yeardayscalendar;sO��<A�A�a�(�(��1�A��A�+0��C��K��+G�I�a�q�5��!�I�I��B��Ir�)r	r�N)r�r_)rBrCrDrEr:r�r�propertyr	r�r�r�r�r�r�r�r�r�r�r�r�rFrGr<r9rr�s_��)�&�*��O�_�=�L��)�
)���$7�A�?�?�J�J�Jr<rc�d�\rSrSrSrSrSrSrSrSSjr	SSjr
SS	jrSS
jrSSjr
Srg
)riEc�6�[URX5SS9 g�Nrr)r�)�print�
formatweek�r8�theweekr�s   r9�prweek�TextCalendar.prweekKs��	�d�o�o�g�-�2�6r<c�@�US:XaSnOSU-nURU5$)Nrrrz%2i��center)r8r�rr��ss     r9�	formatday�TextCalendar.formatdayQs'���!�8��A����A��x�x���r<c�>^^�SRUU4SjU55$)N� c3�J># �UHupTRXT5v� M g7fr6�r)r�r��wdr8r�s   ��r9�	<genexpr>�*TextCalendar.formatweek.<locals>.<genexpr>_s ����L��!����q�e�4�4�L��� #��joinrs` `r9r��TextCalendar.formatweek[s����x�x�L�G�L�L�Lr<c�T�US:�a[nO[nX1SURU5$)Nre)rrr)r8r�r��namess    r9�
formatweekday�TextCalendar.formatweekdayas/���A�:��E��E��z�&�5�!�(�(��/�/r<c�Z^^�SRUU4SjTR555$)Nrc3�F># �UHnTRUT5v� M g7fr6�r)r�r�r8r�s  ��r9r�0TextCalendar.formatweekheader.<locals>.<genexpr>os ����R���*�*�1�e�4�4�R�s�!�rr�)r8r�s``r9�formatweekheader�TextCalendar.formatweekheaderks#����x�x�R�d�>O�>O�>Q�R�R�Rr<c�V�[UnU(a	U<SU<3nURU5$)Nr)rr)r8�theyear�themonthr��withyearrs      r9�formatmonthname�TextCalendar.formatmonthnameqs)��
�x� ����g�&�A��x�x���r<c�8�[URXX45SS9 gr�)r��formatmonth)r8r!r"�w�ls     r9r�TextCalendar.prmonthzs��	�d���w�!�7�R�@r<c�p�[SU5n[SU5nURXSUS--S-
5nUR5nUSU--
nXPRU5R5-
nUSU--
nUR	X5H,nXPRXc5R5-
nUSU--
nM. U$)NrRrTrc�
)�maxr$�rstriprr�r�)r8r!r"r(r)r�weeks       r9r'�TextCalendar.formatmonth�s���
��1�I����1�I��� � ��A��Q��K�!�O�D��
�H�H�J��	�T�A�X�
��	�
"�
"�1�
%�
,�
,�
.�.��	�T�A�X�
���+�+�G�>�	�D�
����)�0�0�2�2�A�
����M�A�	��r<c	�^^^^�[SU5n[SU5n[SU5nUS-S-S-
m/nURnU"[T5RTU-XES-
--5R	55 U"SU-5 TRU5m[
TRTU55GHGup�[XX-S-[XXS--S-S55n
U"SU-5 UUU4SjU
5nU"[UTU5R	55 U"SU-5 U4SjU
5nU"[UTU5R	55 U"SU-5 [SU	55n
[U
5H�n/nU	HInU[U5:�aURS	5 M%URTRUUU55 MK U"[UTU5R	55 U"SU-5 M� GMJ S	RU5$)
NrRrTrcr,r�c3�J># �UHnTRTUTS5v� M g7f)FN)r$)r��k�colwidthr8r!s  ���r9r�*TextCalendar.formatyear.<locals>.<genexpr>�s,����&���)�)�'�1�h��F�F�&�rc3�&># �UHnTv� M	 g7fr6rG)r�r3�headers  �r9rr5�s����.�!�v�.�s�c3�6# �UHn[U5v� M g7fr6)r�)r��cals  r9rr5�s���1�c��S���1�s�rr)r-�append�reprrr.rr�r�r��min�formatstringr�r�r)r8r!r(r)�cr��v�ar��rowr�r�headers�height�j�weeksr9r4r7s``               @@r9�
formatyear�TextCalendar.formatyear�s����
��1�I����1�I����1�I����E�Q�;��?����
�H�H��	�$�w�-�
�
�x��z�!�q�S�'�1�
2�
9�
9�
;�<�	�$�q�&�	��&�&�q�)��!�$�"8�"8��!�"D�E�	�H�Q��1�3�q�5�#�a�1��g�a�i��"4�5�F�
�d�1�f�I�&�$�&�E�
�l�5�(�A�.�5�5�7�8�
�d�1�f�I�.�v�.�G�
�l�7�H�a�0�7�7�9�:�
�d�1�f�I��1�S�1�1�F��6�]�
�����A�C��C��H�}����R�(����T�_�_�S��V�Q�%?�@�	A�
�,�u�h��2�9�9�;�<��$��(��
�	�,�w�w�q�z�r<c	�:�[URXX4U5SS9 gr�)r�rF)r8r!r(r)r>r�s      r9�pryear�TextCalendar.pryear�s��
�d�o�o�g�!��2��;r<rGN�T)rr)rRrTrbr_)rrrbr_)rBrCrDrErrr�rrr$rr'rFrIrFrGr<r9rrEs8��7��M�0�S��A�� #�J<r<rc�t�\rSrSr/SQr\rSrSrSrSr	Sr
SrSrSr
S	rSS
jrSSjrSSjrSSjrSrg
)ri�)�mon�tue�wed�thu�fri�sat�sun�nodayrr�c�T�US:XaSUR-$SURUU4-$)Nrz<td class="%s">&nbsp;</td>z<td class="%s">%d</td>)�cssclass_noday�
cssclasses)r8r�rs   r9r�HTMLCalendar.formatday�s5���!�8�/�$�2E�2E�E�E�+�t���w�/G��.M�M�Mr<c�D^�SRU4SjU55nSU-$)Nrrc3�H># �UHupTRX5v� M g7fr6r
)r�r�rr8s   �r9r�*HTMLCalendar.formatweek.<locals>.<genexpr>�s����A�g�q�D�N�N�1�)�)�A�s�"�<tr>%s</tr>r)r8rrs`  r9r��HTMLCalendar.formatweek�s$���
�G�G�A��A�A���q� � r<c�@�SURU<S[U<S3$)Nz<th class="�">z</th>)�cssclasses_weekday_headr)r8r�s  r9r�HTMLCalendar.formatweekday�s"��

�(�(��-�x��}�>�	>r<c�`^�SRU4SjTR555nSU-$)Nrrc3�D># �UHnTRU5v� M g7fr6r)r�r�r8s  �r9r�0HTMLCalendar.formatweekheader.<locals>.<genexpr>�s����G�a�D�&�&�q�)�)�G�s� r\r)r8rs` r9r�HTMLCalendar.formatweekheader�s-���
�G�G�G�4�3D�3D�3F�G�G���q� � r<c�t�U(a[U<SU<3nOS[U-nSUR<SU<S3$)Nrz%sz<tr><th colspan="7" class="r_z
</th></tr>)r�cssclass_month_head)r8r!r"r#rs     r9r$�HTMLCalendar.formatmonthname�s;���%�h�/��9�A��z�(�+�+�A���$�$�a�)�	)r<c��/nURnU"SUR-5 U"S5 U"URXUS95 U"S5 U"UR55 U"S5 UR	X5H"nU"URU55 U"S5 M$ U"S5 U"S5 SR
U5$)N�=<table border="0" cellpadding="0" cellspacing="0" class="%s">r,�r#�</table>rr)r:�cssclass_monthr$rr�r�r)r8r!r"r#r?r@r/s       r9r'�HTMLCalendar.formatmonth�s���
��
�H�H��	�
I����!�	"�	�$��	�$�
�
�w�8�
�
D�E�	�$��	�$�
�
�
!�"�	�$���+�+�G�>�	�D�
�d�o�o�d�#�$�
�d�G�	�	
�*�
�	�$���w�w�q�z�r<c
��/nURn[US5nU"SUR-5 U"S5 U"SX RU4-5 [	[
[
S-U5HZn[	U[
XR-S55nU"S5 UH)nU"S5 U"URXS	S
95 U"S5 M+ U"S5 M\ U"S
5 SRU5$)NrTrjr,z,<tr><th colspan="%d" class="%s">%s</th></tr>rhr�z<tr>z<td>Frkz</td>z</tr>rlrr)	r:r-�
cssclass_year�cssclass_year_headr�r r<r'r)r8r!r�r?r@r�r�r�s        r9rF�HTMLCalendar.formatyears���
��
�H�H���E�1�
��	�
I�
�
�
��	�	�$��	�
8��*�*�G�<5�5�	6��w���
�E�2�	�A��1�c�!�'�2�.�/�F�
�f�I��
���&�	��$�"�"�7��"�>�?��'�
�
�
�g�J�	�	
�*�
��w�w�q�z�r<Nc��Uc[R"5n/nURnU"SU-5 U"S5 U"S5 U"S5 U"SU-5 UbU"SU-5 U"SU-5 U"S5 U"S	5 U"URX55 U"S
5 U"S5 SR	U5RUS
5$)Nz$<?xml version="1.0" encoding="%s"?>
zn<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
z<html>
z<head>
zC<meta http-equiv="Content-Type" content="text/html; charset=%s" />
z4<link rel="stylesheet" type="text/css" href="%s" />
z<title>Calendar for %d</title>
z</head>
z<body>
z</body>
z</html>
rr�xmlcharrefreplace)�sys�getdefaultencodingr:rFr�encode)r8r!r��css�encodingr?r@s       r9�formatyearpage�HTMLCalendar.formatyearpage*s������-�-�/�H���
�H�H��	�
1�H�
<�=�	�
{�|�	�*�
�	�*�
�	�
P�S[�
[�\��?�
�E��K�L�	�
,�w�
6�7�	�+��	�*�
�	�$�/�/�'�
)�*�	�+��	�+���w�w�q�z� � ��+>�?�?r<)rWrmrqrVr`rprgrKr�)r_�calendar.cssN)rBrCrDrErWr`rVrgrmrqrprr�rrr$r'rFrzrFrGr<r9rr�sa��C�J�)���N�"���N� ���M�N�!�>�!�	)��(�0@r<rc�&�\rSrSrSrSrSrSrg)�different_localeiBc��XlSUlgr6��locale�	oldlocale)r8r�s  r9r:�different_locale.__init__Cs������r<c��[R"[RS5Ul[R"[RUR5 gr6)�_locale�	setlocale�LC_TIMEr�r�r>s r9�	__enter__�different_locale.__enter__Gs2�� �*�*�7�?�?�D�A������'�/�/�4�;�;�7r<c�b�[R"[RUR5 gr6)r�r�r�r�)r8�argss  r9�__exit__�different_locale.__exit__Ks�����'�/�/�4�>�>�:r<r�N)rBrCrDrEr:r�r�rFrGr<r9r~r~Bs���8�;r<r~c���[R"[RS5nUS:Xa;[S5 [R"[RS5nSSS5 U$U$!,(df   U$=f)N�Crr)r�r�r�r~�r�s r9�_get_default_localer�Osf��
�
�
�w����
5�F�
��}�
�b�
!�	>��&�&�w����=�F�	>��M�6�M�		>�	>��M�s�&A)�)
A8c�B^�\rSrSrSSjrU4SjrSU4SjjrSrU=r$)riYc�T�[RX5 Uc
[5nX lgr6)rr:r�r��r8r	r�s   r9r:�LocaleTextCalendar.__init___�"�����d�1��>�(�*�F��r<c�>�[UR5 [TU]
X5sSSS5 $!,(df   g=fr6�r~r��superr)r8r�r��	__class__s   �r9r� LocaleTextCalendar.formatweekdayes1���
�d�k�k�
*�	5��7�(��4�	5�	5�	5���0�
>c�>�[UR5 [TU]
XX45sSSS5 $!,(df   g=fr6�r~r�r�r$)r8r!r"r�r#r�s     �r9r$�"LocaleTextCalendar.formatmonthnameis7���
�d�k�k�
*�	O��7�*�7�e�N�	O�	O�	O���1�
?r��rNrK�	rBrCrDrEr:rr$rF�
__classcell__�r�s@r9rrYs����5�O�Or<rc�B^�\rSrSrSSjrU4SjrSU4SjjrSrU=r$)rinc�T�[RX5 Uc
[5nX lgr6)rr:r�r�r�s   r9r:�LocaleHTMLCalendar.__init__sr�r<c�>�[UR5 [TU]
U5sSSS5 $!,(df   g=fr6r�)r8r�r�s  �r9r� LocaleHTMLCalendar.formatweekdayys1���
�d�k�k�
*�	.��7�(��-�	.�	.�	.�r�c�>�[UR5 [TU]
XU5sSSS5 $!,(df   g=fr6r�)r8r!r"r#r�s    �r9r$�"LocaleHTMLCalendar.formatmonthname}s7���
�d�k�k�
*�	H��7�*�7�h�G�	H�	H�	H�r�r�r�rKr�r�s@r9rrns���
�.�H�Hr<rc�^�[Us=::a
[::d
O [U5eU[lgr6)r,r2rr>r	r�s r9rr�s!���\�+�V�+�!�,�/�/�!�A�Nr<�rbc�.�[[XU55 gr6)r�r=��colsr4�spacings   r9rxrx�s��	�,�t�w�
/�0r<c�D^�US-nURU4SjU55$)Nrc3�B># �UHoRT5v� M g7fr6r)r�r>r4s  �r9r�formatstring.<locals>.<genexpr>�s����9�q����*�*�9�s�rr�s ` r9r=r=�s!����s�N�G��<�<�9�D�9�9�9r<i�rTc��USSupp4pV[R"XS5R5[-
U-S-
nUS-U-nUS-U-n	U	S-U-n
U
$)NrbrT��<)r�r��	toordinal�
_EPOCH_ORD)�tupler�rr��hour�minute�secondr��hours�minutes�secondss           r9rr�sj��-2�2�A�Y�*�D��F��=�=��a�(�2�2�4�z�A�C�G�!�K�D���G�d�N�E��B�h���G��b�j�6�!�G��Nr<c���SSKnUR5nURS5nURS5nURSS[SSS9 URS	S
[SSS9 URS
S[SSS9 URSS[SSS9 URSSSSS9 URSSSSS9 URSSSSS9 URS S!S"S#S$S%9 URS&S'[SS(S9 URS)S*[S+S,9 URS-S*[S.S,9 URU5nUR(a8UR(d'URS/5 [R"S5 URUR4nURS0:XGaDUR(a'URS15 [R"S5 UR(a
[US29nO
[5nURUR 5 URnUc[R""5n[%X�R&S39n	[R(R*R,n
UR.c@U
"UR0"[2R4R75R.40U	D65 gU
"UR0"UR.40U	D65 gUR(a
[9US29nO
[;5nURUR 5 [%UR<UR>S49n	URcUR@U	S5'URBU	S6'UR.c:URD"[2R4R75R.40U	D6nOSURcURD"UR.40U	D6nO(URF"UR.UR40U	D6n[R(R,n
UR(a?URIUR5n[R(R*R,n
U
"U5 g)7Nrztext only argumentszhtml only argumentsz-wz--widthrRz width of date column (default 2))�type�default�helpz-lz--linesrTz)number of lines for each week (default 1)z-sz	--spacingrbz"spacing between months (default 6)z-mz--monthsr_zmonths per row (default 3)z-cz--cssr|zCSS to use for page)r�r�z-Lz--localez)locale to use for month and weekday namesz-ez
--encodingzencoding to use for outputz-tz--type�text)r��htmlzoutput type (text or html))r��choicesr�z-fz--first-weekdayzAweekday (0 is Monday, 6 is Sunday) to start each week (default 0)r��?zyear number)�nargsr�r�rzmonth number (1-12, text only)z/if --locale is specified --encoding is requiredr�zincorrect number of argumentsr�)ryrx)r(r)r>r�)%�argparse�ArgumentParser�add_argument_group�add_argument�int�
parse_argsr�ry�errorru�exitr�rrrr�
first_weekdayrv�dictrx�stdout�buffer�writer�rzr�r��todayrrr��linesr�r�rFr'rw)r�r��parser�	textgroup�	htmlgroup�optionsr�r9ry�optdictr��results            r9�mainr��s����
�
$�
$�
&�F��)�)�*?�@�I��)�)�*?�@�I�
����i�
�!�
/���
����i�
�!�
8���
����k�
�!�
1���
����j�
�!�
)���
����g��
"���
����j��
8���
����l��
)���
����h�� �
)�	�������
�!�
P���
������
���
������
-�������%�G��~�~�g�.�.����F�G������
�^�^�W�-�-�
-�F��|�|�v���=�=��L�L�8�9��H�H�Q�K��>�>�$�F�3�C��.�C����G�1�1�2��#�#�����-�-�/�H���k�k�:���
�
�!�!�'�'���<�<���#�$�$�X�]�]�%8�%8�%:�%?�%?�K�7�K�L��#�$�$�W�\�\�=�W�=�>��>�>�$�F�3�C��.�C����G�1�1�2�����'�-�-�8���=�=� �"�?�?�G�C�L�"�>�>�G�C�L��<�<���^�^�H�M�M�$7�$7�$9�$>�$>�J�'�J�F�
�]�]�
"��^�^�G�L�L�<�G�<�F��_�_�W�\�\�7�=�=�L�G�L�F��
�
� � ������]�]�7�#3�#3�4�F��J�J�%�%�+�+�E�
�f�
r<�__main__r6)Drur��enumrrr�r��	itertoolsr�__all__�
ValueErrorr�rrr\rrr�rnr�rrrrr
rrr
r�r�r��objectrrrr~r�rrr>r�r	rr�rrr�r/rrrr'rrFrrIr�	_colwidth�_spacingrxr=�EPOCHr�r�r�rr�rBrGr<r9�<module>r�s����%���
!��	��@�
�@�X�*�X�
K�
��G��
�� 
��'��
��	<����&��(�$����$����d�
#�
�
�d�
#�
�B�
G�:��?���EJ�v�EJ�Pr<�8�r<�jE@�8�E@�P
;�
;��O��O�*H��H�(�N��� � ��"�
�#�#�
�	
�����|�|��
�
�
�
�
�)�)��	�
�
���<�<��	����
�	���$�X�1�
!*�8�:�	
��
�]�]�5�!�Q�
'�
1�
1�
3�
��l�^�z���F�r<