hyb
2025-11-10 e0a856b5072c5a09f3f6de6da85abf90e00ee704
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
Ë
ñúhãXã
ó¬—UdZddlZddlZddlmZdZeed<ejdk(rejej«Zn e
e ›d«‚ddl Z ddlm Z mZmZddlmZmZmZmZdd    lmZdd
lmZd Zd Zej4ZGd „de«ZGd„de«ZGd„de «ZGd„dej«Z ejBjDZ#ejHge#_%ejLe#_'efde(dejLfd„Z"ejBjRZ*ejLejVge*_%ejXe*_'dejLde(fd„Z)ejBjZZ.ejLej^ejHeeee«ej`ejH«ge._%ejXe._'dejLde1de(dede(f
d„Z2ejBjfZ4ejLejjejHeeee«ej`ejH«ge4_%ejXe4_'dejLde(de(dede(f
d„Z3ejBjlZ7ejLejjge7_%ejXe7_'dejLdejjde8fd „Z6ejBjrZ:ejLej`e«ge:_%ejXe:_'dejLdefd!„Z9ejBjvZ<ejLeeee«ge<_%ejXe<_'dejLd"ede8fd#„Z;ejBjzZ>ejLej`e «ge>_%ejXe>_'dejLd$e de8fd%„Z=ejBj~Z@ejLej`e «ge@_%ejXe@_'dejLd$e de8fd&„Z?ejBj‚ZBej†geB_%ejXeB_'d'e1de8fd(„ZDGd)„d*«ZEe d+k(r¹e"«ZFdd,lGmHZHeH«ZIeEej”«ZKeKj™d-«ed.d/¬0«ZMejœd1«ZOeIj¡d2«eIj£d3«eIj£d4«eIj£d5«eIj£d6«eIj£d7«eIj£d8«eIj£d9«eIj£d:«eIj£d;«eIj£d<«eIj£d=«eIj£d>«eIj£d?«eIj£d@«eIj£dA«eIj¡dB«eIj£«eKj¥«eKj¥«eKj§dC«e j¨dD«eKj««eKj§dE«e j¨dD«eKj­«eKj§dF«e j¨dD«eKj««eKj¥«eKj¥«eKj§dG«e j¨dD«eKj­«eKj¥«eKj¥«eKj§dH«e j¨dD«eKj¯«eIj£«eIj¡dI«eIj£dJ«eKj§dK«e j¨dD«eKj±dL«eKj³dMejœdN««eKj¥«e j¨dD«eKjµ«e j¨dD«eIj£dO«eKj§dK«e j¨dD«eKj±dL«eKj³dPejœdN««e j¨dD«eKj·«e j¨dD«eIj£dQ«eKj³dRejœdS«¬T«e j¨dD«eKj¹«eKj»«eQdU«yy)VzÐLight wrapper around the Win32 Console API - this module should only be imported on Windows
 
The API that this module wraps is documented at https://docs.microsoft.com/en-us/windows/console/console-functions
éN)ÚAnyÚwindllÚwin32z  can only be imported on Windows)Ú    StructureÚbyrefÚwintypes)ÚIOÚ
NamedTupleÚTypeÚcast)Ú ColorSystem)ÚStyleiõÿÿÿécó —eZdZy)ÚLegacyWindowsErrorN)Ú__name__Ú
__module__Ú __qualname__©óúRH:\Change_password\venv_build\Lib\site-packages\pip/_vendor/rich/_win32_console.pyrrs„Ørrcó@—eZdZUdZeed<eed<edddefd„«Zy)ÚWindowsCoordinateszôCoordinates in the Windows Console API are (y, x), not (x, y).
    This class is intended to prevent that confusion.
    Rows and columns are indexed from 0.
    This class can be used in place of wintypes._COORD in arguments and argtypes.
    ÚrowÚcolÚvalueÚreturncóB—t|j|j«S)aEConverts a WindowsCoordinates into a wintypes _COORD structure.
        This classmethod is internally called by ctypes to perform the conversion.
 
        Args:
            value (WindowsCoordinates): The input coordinates to convert.
 
        Returns:
            wintypes._COORD: The converted coordinates struct.
        )ÚCOORDrr)Úclsrs  rÚ
from_paramzWindowsCoordinates.from_param+s€ôU—Y‘Y §    ¡    Ó*Ð*rN)    rrrÚ__doc__ÚintÚ__annotations__Ú classmethodrr!rrrrr!s4…ñð
ƒHØ     ƒHàð
+Ð3ð
+¸ò
+óñ
+rrcóV—eZdZdefdefdej
fdej fdefgZy)ÚCONSOLE_SCREEN_BUFFER_INFOÚdwSizeÚdwCursorPositionÚ wAttributesÚsrWindowÚdwMaximumWindowSizeN)rrrrrÚWORDÚ
SMALL_RECTÚ_fields_rrrr'r'9s;„à    5ÐØ    ˜UÐ#Ø    ˜Ÿ ™ Ð&Ø    X×(Ñ(Ð)Ø     Ð&ð Hrr'cóD—eZdZdejfdej
fgZy)ÚCONSOLE_CURSOR_INFOr(ÚbVisibleN)rrrrÚDWORDÚBOOLr/rrrr1r1Cs„ؘ8Ÿ>™>Ð*¨Z¸¿¹Ð,GÐHHrr1ÚhandlercóH—ttjt|««S)zþRetrieves a handle to the specified standard device (standard input, standard output, or standard error).
 
    Args:
        handle (int): Integer identifier for the handle. Defaults to -11 (stdout).
 
    Returns:
        wintypes.HANDLE: The handle
    )r rÚHANDLEÚ _GetStdHandle)r5s rÚ GetStdHandler9Ns€ô ”—‘¤¨vÓ!6Ó 7Ð7rÚ
std_handlecó†—tj«}tt||««}|s t    d«‚|j
S)aRetrieves the current input mode of a console's input buffer
    or the current output mode of a console screen buffer.
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
 
    Raises:
        LegacyWindowsError: If any error occurs while calling the Windows console API.
 
    Returns:
        int: Value representing the current console mode as documented at
            https://docs.microsoft.com/en-us/windows/console/getconsolemode#parameters
    z)Unable to get legacy Windows Console Mode)rr3ÚboolÚ_GetConsoleModerr)r:Ú console_modeÚsuccesss   rÚGetConsoleModer@_s<€ô—>‘>Ó#€LÜ”? :¨|Ó<Ó=€GÙ Ü Ð!LÓMÐMØ × Ñ ÐrÚcharÚlengthÚstartc    óä—tj|j««}tj|«}tjd«}t ||||t |««|jS)aÿWrites a character to the console screen buffer a specified number of times, beginning at the specified coordinates.
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
        char (str): The character to write. Must be a string of length 1.
        length (int): The number of times to write the character.
        start (WindowsCoordinates): The coordinates to start writing at.
 
    Returns:
        int: The number of characters written.
    r)ÚctypesÚc_charÚencoderr3Ú_FillConsoleOutputCharacterWrr)r:rArBrCÚ    characterÚnum_charactersÚ num_writtens       rÚFillConsoleOutputCharacterrL€s^€ô"— ‘ ˜dŸk™k›mÓ,€IÜ—^‘^ FÓ+€NÜ—.‘. Ó#€KÜ ØØØØ Ü ˆkÓô ð × Ñ ÐrÚ
attributesc    óȗtj|«}tj|«}tjd«}t||||t    |««|j
S)alSets the character attributes for a specified number of character cells,
    beginning at the specified coordinates in a screen buffer.
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
        attributes (int): Integer value representing the foreground and background colours of the cells.
        length (int): The number of cells to set the output attribute of.
        start (WindowsCoordinates): The coordinates of the first cell whose attributes are to be set.
 
    Returns:
        int: The number of cells whose attributes were actually set.
    r)rr3r-Ú_FillConsoleOutputAttributerr)r:rMrBrCÚ    num_cellsÚ style_attrsrKs       rÚFillConsoleOutputAttributerR©sT€ô$—‘˜vÓ&€IÜ—-‘- 
Ó+€KÜ—.‘. Ó#€KÜØK ¨E´5¸Ó3Eôð × Ñ Ðrcó,—tt||««S)a|Set the colour attributes for all text written after this function is called.
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
        attributes (int): Integer value representing the foreground and background colours.
 
 
    Returns:
        bool: True if the attribute was set successfully, otherwise False.
    )r<Ú_SetConsoleTextAttribute)r:rMs  rÚSetConsoleTextAttributerUÌs€ô Ô(¨°ZÓ@Ó AÐArcóD—t«}t|t|««|S)aqRetrieves information about the specified console screen buffer.
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
 
    Returns:
        CONSOLE_SCREEN_BUFFER_INFO: A CONSOLE_SCREEN_BUFFER_INFO ctype struct contain information about
            screen size, cursor position, colour attributes, and more.)r'Ú_GetConsoleScreenBufferInfor)r:Úconsole_screen_buffer_infos  rÚGetConsoleScreenBufferInforYäs#€ô"<Ó!=ÐÜ 
¬EÐ2LÓ,MÔNØ %Ð%rÚcoordscó,—tt||««S)aESet the position of the cursor in the console screen
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
        coords (WindowsCoordinates): The coordinates to move the cursor to.
 
    Returns:
        bool: True if the function succeeds, otherwise False.
    )r<Ú_SetConsoleCursorPosition)r:rZs  rÚSetConsoleCursorPositionr]üs€ô Ô)¨*°fÓ=Ó >Ð>rÚ cursor_infocó>—tt|t|«««S)a’Get the cursor info - used to get cursor visibility and width
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
        cursor_info (CONSOLE_CURSOR_INFO): CONSOLE_CURSOR_INFO ctype struct that receives information
            about the console's cursor.
 
    Returns:
          bool: True if the function succeeds, otherwise False.
    )r<Ú_GetConsoleCursorInfor©r:r^s  rÚGetConsoleCursorInforbs€ô Ô% j´%¸ Ó2DÓEÓ FÐFrcó>—tt|t|«««S)awSet the cursor info - used for adjusting cursor visibility and width
 
    Args:
        std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
        cursor_info (CONSOLE_CURSOR_INFO): CONSOLE_CURSOR_INFO ctype struct containing the new cursor info.
 
    Returns:
          bool: True if the function succeeds, otherwise False.
    )r<Ú_SetConsoleCursorInforras  rÚSetConsoleCursorInfore+s€ô Ô% j´%¸ Ó2DÓEÓ FÐFrÚtitlecó*—tt|««S)zÂSets the title of the current console window
 
    Args:
        title (str): The new title of the console window.
 
    Returns:
        bool: True if the function succeeds, otherwise False.
    )r<Ú_SetConsoleTitle)rfs rÚSetConsoleTitleri?s€ô Ô  Ó'Ó (Ð(rcóø—eZdZdZdZgd¢Zdd„Zedefd„«Z    edefd„«Z
d    e ddfd
„Z d    e d e ddfd „Zd eddfd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdeddfd„Zdd„Zdd„Zdd„Zde ddfd„Zdefd„Zy)ÚLegacyWindowsTerma‚This class allows interaction with the legacy Windows Console API. It should only be used in the context
    of environments where virtual terminal processing is not available. However, if it is used in a Windows environment,
    the entire API should work.
 
    Args:
        file (IO[str]): The file which the Windows Console API HANDLE is retrieved from, defaults to sys.stdout.
    é)rréééééérlé é
éé    é é érNcó*—tt«}||_t|«j}||_|dz|_|dz    dz|_|j |jdzz|_||_    |j|_
|j|_ y)Nrrr) r9ÚSTDOUTÚ_handlerYr*Ú _default_textÚ _default_foreÚ _default_backÚ_default_attrsÚ_fileÚwriteÚflush)ÚselfÚfiler5Ú default_texts    rÚ__init__zLegacyWindowsTerm.__init__js…€ÜœfÓ%ˆØˆŒ Ü1°&Ó9×EÑEˆ Ø)ˆÔà)¨AÑ-ˆÔØ*¨aÑ/°1Ñ4ˆÔØ"×0Ñ0°D×4FÑ4FÈ!Ñ4KÑLˆÔàˆŒ
Ø—Z‘ZˆŒ
Ø—Z‘Zˆ
rcó‚—t|j«j}t|j|j
¬«S)zŒReturns the current position of the cursor (0-based)
 
        Returns:
            WindowsCoordinates: The current cursor position.
        ©rr)rYr|r)rÚYÚX)r„Úcoords  rÚcursor_positionz!LegacyWindowsTerm.cursor_positionxs-€ô2°$·,±,Ó?×PÑPˆÜ! e§g¡g°5·7±7Ô;Ð;rcó‚—t|j«j}t|j|j
¬«S)zÉReturns the current size of the console screen buffer, in character columns and rows
 
        Returns:
            WindowsCoordinates: The width and height of the screen as WindowsCoordinates.
        r‰)rYr|r(rrŠr‹)r„Ú screen_sizes  rrzLegacyWindowsTerm.screen_size‚s-€ô8¸¿ ¹ ÓE×LÑLˆ Ü! k§m¡m¸¿¹ÔGÐGrÚtextcóF—|j|«|j«y)z—Write text directly to the terminal without any modification of styles
 
        Args:
            text (str): The text to write to the console
        N)r‚rƒ)r„rs  rÚ
write_textzLegacyWindowsTerm.write_textŒs€ð      
‰
4ÔØ 
‰
 rÚstylecóÊ—|j}|j}|jr||}}|rv|jtj
«j }||nd}|jr||jz}|jr||jz}|j|}n |j}|r?|jtj
«j }||nd}|j|}n |j}|€J‚|€J‚t|jtj ||dzz«¬«|j#|«t|j|j$¬«y)z•Write styled text to the terminal.
 
        Args:
            text (str): The text to write
            style (Style): The style of the text
        Nrrrr)rM)ÚcolorÚbgcolorÚreverseÚ    downgrader ÚWINDOWSÚnumberÚboldÚ
BRIGHT_BITÚdimÚANSI_TO_WINDOWSr~rrUr|rEÚc_ushortr’r})r„rr“r•r–ÚforeÚbacks       rÚ write_styledzLegacyWindowsTerm.write_styled•s:€ð— ‘ ˆØ—-‘-ˆØ =Š=Ø$ e7ˆEá Ø—?‘?¤;×#6Ñ#6Ó7×>Ñ>ˆDØÐ+‘4°ˆD؏zŠzؘdŸo™oÑ-ØyŠyؘtŸ™Ð.Ñ.Ø×'Ñ'¨Ñ-‰Dà×%Ñ%ˆDá Ø×$Ñ$¤[×%8Ñ%8Ó9×@Ñ@ˆDØÐ+‘4°ˆDØ×'Ñ'¨Ñ-‰Dà×%Ñ%ˆDàÐÐÐØÐÐÐäØ L‰L¤V§_¡_°T¸TÀQ¹YÑ5GÓ%Hõ    
ð     ‰˜ÔÜ § ¡ ¸×9KÑ9KÖLrÚ new_positioncóp—|jdks|jdkryt|j|¬«y)z©Set the position of the cursor
 
        Args:
            new_position (WindowsCoordinates): The WindowsCoordinates representing the new position of the cursor.
        rN©rZ)rrr]r|)r„r£s  rÚmove_cursor_toz LegacyWindowsTerm.move_cursor_to¼s0€ð × Ñ ˜aÒ  <×#3Ñ#3°aÒ#7Ø Ü  §¡°lÖCrcóò—|j}|j}|j}t|jd¬«}t |j d||¬«t|j |j||¬«y)z@Erase all content on the line the cursor is currently located atrr‰ú ©rBrCN)    rrrrrrLr|rRr€)r„rrÚcells_to_eraseÚstart_coordinatess     rÚ
erase_linezLegacyWindowsTerm.erase_lineÆsj€à×&Ñ&ˆ Ø×.Ñ.ˆØ$Ÿ™ˆÜ.°?×3FÑ3FÈAÔNÐÜ"Ø L‰L˜# nÐ<Mõ    
ô    #Ø L‰LØ × Ñ Ø!Ø#ö        
rcóڗ|j}|jj|jz
}t|jd||¬«t |j|j ||¬«y)zBErase all content from the cursor position to the end of that liner¨r©N)rrrrLr|rRr€)r„rrªs   rÚerase_end_of_linez#LegacyWindowsTerm.erase_end_of_lineÖs^€à×.Ñ.ˆØ×)Ñ)×-Ñ-°×0CÑ0CÑCˆÜ"Ø L‰L˜# n¸Oõ    
ô    #Ø L‰LØ × Ñ Ø!Ø!ö        
rcó²—|j\}}t|d«}t|jd||¬«t    |j|j
||¬«y)zDErase all content from the cursor position to the start of that linerr¨r©N)rrrLr|rRr€)r„rrrCs    rÚerase_start_of_linez%LegacyWindowsTerm.erase_start_of_lineäsJ€à×'Ñ'‰ˆˆSÜ" 3¨Ó*ˆÜ" 4§<¡<°¸SÈÕNÜ"Ø L‰L˜$×-Ñ-°cÀö    
rcóŽ—|j}t|jt|jdz
|j
¬«¬«y)z Move the cursor up a single cellror‰r¥N©rr]r|rrr©r„rs  rÚmove_cursor_upz LegacyWindowsTerm.move_cursor_upís:€à×.Ñ.ˆÜ Ø L‰LÜ%Ø#×'Ñ'¨!Ñ+°×1DÑ1Dôö    
rcóŽ—|j}t|jt|jdz|j
¬«¬«y)z"Move the cursor down a single cellror‰r¥Nr²r³s  rÚmove_cursor_downz"LegacyWindowsTerm.move_cursor_down÷s;€à×.Ñ.ˆÜ Ø L‰LÜ%Ø#×'Ñ'¨!Ñ+Ø#×'Ñ'ôö    
rcó¸—|j\}}||jjdz
k(r|dz }d}n|dz }t|jt ||¬«¬«y)zIMove the cursor forward a single cell. Wrap to the next line if required.rorr‰r¥N©rrrr]r|r©r„rrs   rÚmove_cursor_forwardz%LegacyWindowsTerm.move_cursor_forwardsZ€à×'Ñ'‰ˆˆSØ $×"Ñ"×&Ñ&¨Ñ*Ò *Ø 1‰HˆC؉Cà 1‰HˆCÜ Ø L‰LÔ!3¸ÀÔ!Eö    
rÚcolumncód—|j\}}t|jt||«¬«y)zÀMove cursor to the column specified by the zero-based column index, staying on the same row
 
        Args:
            column (int): The zero-based column index to move the cursor to.
        r¥N)rr]r|r)r„r»rÚ_s    rÚmove_cursor_to_columnz'LegacyWindowsTerm.move_cursor_to_columns)€ð ×%Ñ%‰ˆˆQÜ  §¡Ô6HÈÈfÓ6UÖVrcó¸—|j\}}|dk(r|dz}|jjdz
}n|dz}t|jt ||¬«¬«y)zNMove the cursor backward a single cell. Wrap to the previous line if required.rror‰r¥Nr¸r¹s   rÚmove_cursor_backwardz&LegacyWindowsTerm.move_cursor_backwardsY€à×'Ñ'‰ˆˆSØ !Š8Ø 1‰HˆCØ×"Ñ"×&Ñ&¨Ñ*‰Cà 1‰HˆCÜ Ø L‰LÔ!3¸ÀÔ!Eö    
rcól—|j«}t|d¬«}t|j|¬«y)zHide the cursorr©r(r2©r^N©Ú_get_cursor_sizer1rer|)r„Úcurrent_cursor_sizeÚinvisible_cursors   rÚ hide_cursorzLegacyWindowsTerm.hide_cursor#s/€à"×3Ñ3Ó5ÐÜ.Ð6IÐTUÔVÐܘTŸ\™\Ð7GÖHrcól—|j«}t|d¬«}t|j|¬«y)zShow the cursorrorÂrÃNrÄ)r„rÆÚvisible_cursors   rÚ show_cursorzLegacyWindowsTerm.show_cursor)s-€à"×3Ñ3Ó5ÐÜ,Ð4GÐRSÔTˆÜ˜TŸ\™\°~ÖFrrfcóD—t|«dksJd«‚t|«y)zySet the title of the terminal window
 
        Args:
            title (str): The new title of the console window
        éÿz.Console title must be less than 255 charactersN)Úlenri)r„rfs  rÚ    set_titlezLegacyWindowsTerm.set_title/s$€ô 5‹z˜CÒÐQÐ!QÓQÐܘÕrcón—t«}t|j|¬«t|j«S)zEGet the percentage of the character cell that is filled by the cursorrÃ)r1rbr|r#r()r„r^s  rrÅz"LegacyWindowsTerm._get_cursor_size8s)€ä)Ó+ˆ ܘTŸ\™\°{ÕCܐ;×%Ñ%Ó&Ð&r)r…zIO[str]rN)rN)rrrr"rœržr‡ÚpropertyrrrÚstrr’rr¢r¦r¬r®r°r´r¶rºr#r¾rÀrÈrËrÏrÅrrrrkrkKs„ñð€Jò€Oó&  ðð<Ð!3ò<óð<ððHÐ/òHóðHð˜sð tóð%M ð%M¨Uð%M°tó%MðNDÐ+=ðDÀ$óDó
ó  
ó
ó
ó    
ó
 
ðW¨CðW°DóWó
 
óIó Gð ˜sð tóð' #ô'rrkÚ__main__)ÚConsolezWin32 Console ExamplesÚblackÚred)r•r–zblack on greenzChecking colour outputz[on red]on red!z [blue]blue!z[yellow]yellow!z[bold yellow]bold yellow!z[bright_yellow]bright_yellow!z%[dim bright_yellow]dim bright_yellow!z[italic cyan]italic cyan!z'[bold white on blue]bold white on blue!z7[reverse bold white on blue]reverse bold white on blue!z'[bold black on cyan]bold black on cyan!z[black on green]black on green!z[blue on green]blue on green!z[white on black]white on black!z[black on white]black on white!z'[#1BB152 on #DA812D]#1BB152 on #DA812D!zChecking cursor movementz"went back and wrapped to prev linerozwe go upzand downzwe went up and back 2zwe went down and back 2zChecking line erasingz(
...Deleting to the start of the line...z?The red arrow shows the cursor location, and direction of eraseéú<z black on redz"
 
...And to the end of the line...ú>z)
 
...Now the whole line will be erased...zI'm going to disappear!z black on cyan)r“ú
)^r"rEÚsysÚtypingrrr$ÚplatformÚ LibraryLoaderÚWinDLLÚ ImportErrorrÚtimerrrr    r
r r Úpip._vendor.rich.colorr Úpip._vendor.rich.stylerr{Ú"ENABLE_VIRTUAL_TERMINAL_PROCESSINGÚ_COORDrÚ    Exceptionrrr'r1Úkernel32r9r8r3Úargtypesr7Úrestyper#r@r=ÚLPDWORDr4ÚFillConsoleOutputCharacterWrHrFÚPOINTERrÒrLrRrOr-rUrTr<rYrWr]r\rbr`rerdÚSetConsoleTitleWrhÚLPCWSTRrirkr5Úpip._vendor.rich.consolerÔÚconsoleÚstdoutÚtermrÏr“ÚparseÚheadingÚruleÚprintrÀr’Úsleepr´r¶rÈr¾r¢r°r®r¬rËrrrú<module>røsjðòó
Û
Ýà€ˆÓØ‡<<7ÒØ !ˆV× !Ñ ! &§-¡-Ó 0Fá
˜˜
Ð"BÐCÓ
DÐDã ß-Ñ-ß-Ó-å.Ý(à     €Ø%&Ð"à‰€ô    ˜ô    ô+˜ô+ô0 ôôI˜&×*Ñ*ôIð—‘×,Ñ,€ à ‡NNð€ Ôð!Ÿ™€ Ôð &ñ    8˜ð    8¨(¯/©/ó    8ð—/‘/×0Ñ0€Ø$ŸO™O¨X×-=Ñ-=Ð>€ÔØ"Ÿ-™-€Ôð˜xŸ™ð°3óð, &Ÿ™×JÑJÐà ‡OOØ
‡MMØ ‡NNÙˆˆe‰Ð(Ó)Ø€F‡NN8—>‘>Ó"ð )ÐÔ%ð(0§}¡}ÐÔ$ðØ—‘ðà
ðð ðð ð    ð
    ó ð<%Ÿo™o×HÑHÐà ‡OOØ ‡MMØ ‡NNÙˆˆe‰Ð(Ó)Ø€F‡NN8—>‘>Ó"ð (ÐÔ$ð'/§m¡mÐÔ#ðØ—‘ðàðð ðð ð    ð
    ó ð6"Ÿ?™?×BÑBÐà ‡OOØ ‡MMð%ÐÔ!ð$,§=¡=ÐÔ ð BØ—‘ð BØ-5¯]©]ð Bà    ó Bð %Ÿo™o×HÑHÐà ‡OOØ€F‡NNÐ-Ó.ð(ÐÔ$ð'/§m¡mÐÔ#ð &Ø—‘ð &àó &ð #ŸO™O×DÑDÐà ‡OOÙˆˆe‰Ð(Ó)ð&ÐÔ"ð%-§M¡MÐÔ!ð ?Ø—‘ð ?Ø);ð ?à    ó ?ðŸ™×<Ñ<Ðà ‡OOØ€F‡NNÐ&Ó'ð"ÐÔð!)§ ¡ ÐÔð GØ—‘ð GØ.Að Gà    ó Gð Ÿ™×<Ñ<Ðà ‡OOØ€F‡NNÐ&Ó'ð"ÐÔð!)§ ¡ ÐÔð GØ—‘ð GØ.Að Gà    ó Gð—?‘?×3Ñ3ÐØ%×-Ñ-Ð.ÐÔØ#Ÿ=™=ÐÔð    )˜3ð    ) 4ó    )÷q'ñq'ðh ˆzÓÙ ‹^€Få0á‹i€Gá ˜SŸZ™ZÓ (€D؇NNÐ+Ô,á ˜¨Ô /€Eàˆek‰kÐ*Ó+€Gð ‡LLÐ)Ô*Ø ‡MMÐ#Ô$Ø ‡MM-Ô Ø ‡MMÐ#Ô$Ø ‡MMÐ-Ô.Ø ‡MMÐ1Ô2Ø ‡MMÐ9Ô:Ø ‡MMÐ-Ô.Ø ‡MMÐ;Ô<Ø ‡MMÐKÔLØ ‡MMÐ;Ô<Ø ‡MMÐ3Ô4Ø ‡MMÐ1Ô2Ø ‡MMÐ3Ô4Ø ‡MMÐ3Ô4Ø ‡MMÐ;Ô<ð ‡LLÐ+Ô,Ø ‡MM„OØ×ÑÔØ×ÑÔØ‡OOÐ8Ô9Ø€D‡JJˆq„MØ×ÑÔØ‡OOJÔØ€D‡JJˆq„MØ×ÑÔØ‡OOJÔØ€D‡JJˆq„MØ×ÑÔØ×ÑÔØ×ÑÔØ‡OOÐ+Ô,Ø€D‡JJˆq„MØ×ÑÔØ×ÑÔØ×ÑÔØ‡OOÐ-Ô.Ø€D‡JJˆq„Mð    ×ÑÔØ ‡MM„OØ ‡LLÐ(Ô)Ø ‡MMÐ=Ô>؇OOÐUÔVØ€D‡JJˆq„MØ×јrÔ"Ø×ѐc˜;˜5Ÿ;™; ~Ó6Ô7Ø×ÑÔØ€D‡JJˆq„MØ×ÑÔØ€D‡JJˆq„Mà ‡MMÐ8Ô9؇OOÐUÔVØ€D‡JJˆq„Mà×јrÔ"Ø×ѐc˜;˜5Ÿ;™; ~Ó6Ô7Ø€D‡JJˆq„MØ×ÑÔØ€D‡JJˆq„Mà ‡MMÐ?Ô@Ø×ÑÐ/°{°u·{±{À?Ó7SÐÔTØ€D‡JJˆq„M؇OOÔà×ÑÔÙ    ˆ$…Kðmr