Xj_!vUddlmZddlmZddlZddlZddlZddlZ ddl m Z ddl m Z ddl m Z ddl mZddl mZddl mZdd l mZdd l mZdd l mZdd l mZdd l mZddlmZddlmZddlmZddlmZddlmZddlmZej>dk(sJddl Z ddl m!Z!ddl m"Z"eeZ#e!jHZ$e$jJZ%e$jLZ&e$jNZ'e$jPZ(e$jRZ)e"ede!jHfZ*e"eeeeede!jVfZ,e"eede!jHfZ-e%dZ.e%dZ/e%dZ0dZ1dZ2dZ3dZ4dZ5dZ6dZ7d Z8d!Z9d"Z:e jvr dd#lmm5:u= ) 377*K!,!9!9#''!BC U3Z ( U3Z (s /A==Bc(eZdZddZdfd ZxZS)_WindowsConsoleRawIOBasec||_yr7)handle)selfrEs r5__init__z!_WindowsConsoleRawIOBase.__init__xs  r4c"t|yNT)superisatty)rF __class__s r5rKz_WindowsConsoleRawIOBase.isatty{s r4)rEz int | NonereturnNonerMzt.Literal[True])r.r/r0rGrK __classcell__)rLs@r5rCrCwsr4rCceZdZddZddZy)_WindowsConsoleReadercyrIr3rFs r5readablez_WindowsConsoleReader.readabler4ct|}|sy|dzr tdt|d}|dz}t}t t |j ||t|d}ttk(rtjd|s,ttdjt|dtk(ryd|j zS) Nrrz>cannot read odd number of bytes from UTF-16-LE encoded consoleT)r=g?Windows error: {error}error)r% ValueErrorrAr ReadConsoleWrrEr GetLastErrorERROR_OPERATION_ABORTEDtimesleepOSError_r)EOFvalue)rFbbytes_to_be_readbuffercode_units_to_be_readcode_units_readrvs r5readintoz_WindowsConsoleReader.readintosq6  !P A- 0A 5!)  4;;   ! / "    >4 4 JJsO!45<<<><RS S !9 ?((((r4NrOrerrMint)r.r/r0rUrkr3r4r5rRrRs )r4rRc.eZdZddZeddZddZy)_WindowsConsoleWritercyrIr3rTs r5r=z_WindowsConsoleWriter.writablerVr4c`|tk(ry|tk(rytdj|S)N ERROR_SUCCESSERROR_NOT_ENOUGH_MEMORYrXrY)rrrsrbr))errnos r5_get_error_messagez(_WindowsConsoleWriter._get_error_messages3 M !" - -,)*111>>r4c8t|}t|}t|tdz}t }t t |j||t|dd|jz}|dk(r'|dkDr"t|jt|S)Nrr) r%rAminMAX_BYTES_WRITTENr WriteConsoleWrrErrdrarur])rFrebytes_to_be_writtenr#code_units_to_be_writtencode_units_written bytes_writtens r5writez_WindowsConsoleWriter.writes!!fm#&':)rencodingrTs r5__repr__zConsoleStream.__repr__s %dii]*T]] K 66!((M+}E FFr4cttjttddd}t j t jt||Sr) rrBufferedWriterro STDOUT_HANDLErrrrrs r5_get_text_stdoutrG* / >? K 66!((M+}E FFr4cttjttddd}t j t jt||Sr) rrrro STDERR_HANDLErrrrrs r5_get_text_stderrrrr4)rrrz5cabc.Mapping[int, t.Callable[[t.BinaryIO], t.TextIO]]_stream_factoriesc t|dsy |j}t j |}tt|ttS#ttjf$rYywxYw)NfilenoF) hasattrrrarUnsupportedOperationmsvcrt get_osfhandlerGetConsoleModerr)frrEs r5 _is_consolersh 1h  ! !& )F vuUW~6 77 R,, -sAA65A6ct|dvs|dvs t|sytj|j }|yt |dd}|y||S)N>Nr>Nrrg)rArrgetrr)rrerrorsfuncres r5_get_windows_console_streamrsc  . . ) )1~   ,D |8T"Ay 7Nr4)F)r$rr=rrMz Array[c_char])rrrMr)rrrMr)rrr str | NonerrrMzt.TextIO | None)P __future__rcollections.abcabccabcrsysr_typingrctypesrrrrrr r r r r rctypes.wintypesrrrrrrb_compatrplatformrrrr1kernel32 GetStdHandler\ryrr]rshell32rrrrrr9r8rrrsr^ STDIN_FILENO STDOUT_FILENO STDERR_FILENOrcrx TYPE_CHECKINGr ImportErrortyping_extensionsr r"r:r<rA RawIOBaserCrRrorrrrr__annotations__rrr3r4r5rsh# !"#" - ||w  I  ??$$ $$ && (($$ %+f%'8&//&JKJ['75>J6>>* ,K( +[&//,J K C S! S!       ??- +$)   I  #55 11 )r|| )4 )F4@PP@GGGLH 8%/9Q -,- Js$ HH. H+*H+.H87H8