chroma/lexers/testdata/python/test_complex_file2.expected
2025-03-22 20:46:00 +13:00

1760 lines
66 KiB
Text

[
{"type":"CommentSingle","value":"# From CPython (Lib/asyncio/subprocess.py)"},
{"type":"Text","value":"\n"},
{"type":"Name","value":"__all__"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"LiteralStringSingle","value":"'create_subprocess_exec'"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"LiteralStringSingle","value":"'create_subprocess_shell'"},
{"type":"Text","value":"\n\n"},
{"type":"KeywordNamespace","value":"import"},
{"type":"Text","value":" "},
{"type":"NameNamespace","value":"subprocess"},
{"type":"Text","value":"\n\n"},
{"type":"KeywordNamespace","value":"from"},
{"type":"Text","value":" "},
{"type":"NameNamespace","value":"."},
{"type":"Text","value":" "},
{"type":"KeywordNamespace","value":"import"},
{"type":"Text","value":" "},
{"type":"Name","value":"events"},
{"type":"Text","value":"\n"},
{"type":"KeywordNamespace","value":"from"},
{"type":"Text","value":" "},
{"type":"NameNamespace","value":"."},
{"type":"Text","value":" "},
{"type":"KeywordNamespace","value":"import"},
{"type":"Text","value":" "},
{"type":"Name","value":"protocols"},
{"type":"Text","value":"\n"},
{"type":"KeywordNamespace","value":"from"},
{"type":"Text","value":" "},
{"type":"NameNamespace","value":"."},
{"type":"Text","value":" "},
{"type":"KeywordNamespace","value":"import"},
{"type":"Text","value":" "},
{"type":"Name","value":"streams"},
{"type":"Text","value":"\n"},
{"type":"KeywordNamespace","value":"from"},
{"type":"Text","value":" "},
{"type":"NameNamespace","value":"."},
{"type":"Text","value":" "},
{"type":"KeywordNamespace","value":"import"},
{"type":"Text","value":" "},
{"type":"Name","value":"tasks"},
{"type":"Text","value":"\n"},
{"type":"KeywordNamespace","value":"from"},
{"type":"Text","value":" "},
{"type":"NameNamespace","value":".log"},
{"type":"Text","value":" "},
{"type":"KeywordNamespace","value":"import"},
{"type":"Text","value":" "},
{"type":"Name","value":"logger"},
{"type":"Text","value":"\n\n\n"},
{"type":"Name","value":"PIPE"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"subprocess"},
{"type":"Operator","value":"."},
{"type":"Name","value":"PIPE"},
{"type":"Text","value":"\n"},
{"type":"Name","value":"STDOUT"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"subprocess"},
{"type":"Operator","value":"."},
{"type":"Name","value":"STDOUT"},
{"type":"Text","value":"\n"},
{"type":"Name","value":"DEVNULL"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"subprocess"},
{"type":"Operator","value":"."},
{"type":"Name","value":"DEVNULL"},
{"type":"Text","value":"\n\n\n"},
{"type":"Keyword","value":"class"},
{"type":"Text","value":" "},
{"type":"NameClass","value":"SubprocessStreamProtocol"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"streams"},
{"type":"Operator","value":"."},
{"type":"Name","value":"FlowControlMixin"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"protocols"},
{"type":"Operator","value":"."},
{"type":"Name","value":"SubprocessProtocol"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"LiteralStringDouble","value":"\"\"\"Like StreamReaderProtocol, but for a subprocess.\"\"\""},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunctionMagic","value":"__init__"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"limit"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"loop"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltin","value":"super"},
{"type":"Punctuation","value":"()"},
{"type":"Operator","value":"."},
{"type":"NameFunctionMagic","value":"__init__"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"="},
{"type":"Name","value":"loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_limit"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"limit"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_process_exited"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"False"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_pipe_fds"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Punctuation","value":"[]"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_stdin_closed"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Operator","value":"."},
{"type":"Name","value":"create_future"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunctionMagic","value":"__repr__"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"info"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Punctuation","value":"["},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"NameVariableMagic","value":"__class__"},
{"type":"Operator","value":"."},
{"type":"NameVariableMagic","value":"__name__"},
{"type":"Punctuation","value":"]"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"info"},
{"type":"Operator","value":"."},
{"type":"Name","value":"append"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringAffix","value":"f"},
{"type":"LiteralStringSingle","value":"'stdin="},
{"type":"LiteralStringInterpol","value":"{"},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"LiteralStringInterpol","value":"!r}"},
{"type":"LiteralStringSingle","value":"'"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"info"},
{"type":"Operator","value":"."},
{"type":"Name","value":"append"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringAffix","value":"f"},
{"type":"LiteralStringSingle","value":"'stdout="},
{"type":"LiteralStringInterpol","value":"{"},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"LiteralStringInterpol","value":"!r}"},
{"type":"LiteralStringSingle","value":"'"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"info"},
{"type":"Operator","value":"."},
{"type":"Name","value":"append"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringAffix","value":"f"},
{"type":"LiteralStringSingle","value":"'stderr="},
{"type":"LiteralStringInterpol","value":"{"},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"LiteralStringInterpol","value":"!r}"},
{"type":"LiteralStringSingle","value":"'"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"LiteralStringSingle","value":"'\u003c"},
{"type":"LiteralStringInterpol","value":"{}"},
{"type":"LiteralStringSingle","value":"\u003e'"},
{"type":"Operator","value":"."},
{"type":"Name","value":"format"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringSingle","value":"' '"},
{"type":"Operator","value":"."},
{"type":"Name","value":"join"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"info"},
{"type":"Punctuation","value":"))"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"connection_made"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Text","value":"\n\n "},
{"type":"Name","value":"stdout_transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_pipe_transport"},
{"type":"Punctuation","value":"("},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"stdout_transport"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"streams"},
{"type":"Operator","value":"."},
{"type":"Name","value":"StreamReader"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"limit"},
{"type":"Operator","value":"="},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_limit"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"="},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Operator","value":"."},
{"type":"Name","value":"set_transport"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"stdout_transport"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_pipe_fds"},
{"type":"Operator","value":"."},
{"type":"Name","value":"append"},
{"type":"Punctuation","value":"("},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n "},
{"type":"Name","value":"stderr_transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_pipe_transport"},
{"type":"Punctuation","value":"("},
{"type":"LiteralNumberInteger","value":"2"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"stderr_transport"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"streams"},
{"type":"Operator","value":"."},
{"type":"Name","value":"StreamReader"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"limit"},
{"type":"Operator","value":"="},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_limit"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"="},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Operator","value":"."},
{"type":"Name","value":"set_transport"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"stderr_transport"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_pipe_fds"},
{"type":"Operator","value":"."},
{"type":"Name","value":"append"},
{"type":"Punctuation","value":"("},
{"type":"LiteralNumberInteger","value":"2"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n "},
{"type":"Name","value":"stdin_transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_pipe_transport"},
{"type":"Punctuation","value":"("},
{"type":"LiteralNumberInteger","value":"0"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"stdin_transport"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"streams"},
{"type":"Operator","value":"."},
{"type":"Name","value":"StreamWriter"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"stdin_transport"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"protocol"},
{"type":"Operator","value":"="},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"="},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"pipe_data_received"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"data"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"elif"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"2"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Operator","value":"."},
{"type":"Name","value":"feed_data"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"data"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"pipe_connection_lost"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"exc"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"0"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"pipe"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"pipe"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"pipe"},
{"type":"Operator","value":"."},
{"type":"Name","value":"close"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"connection_lost"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"exc"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"exc"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_stdin_closed"},
{"type":"Operator","value":"."},
{"type":"Name","value":"set_result"},
{"type":"Punctuation","value":"("},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_stdin_closed"},
{"type":"Operator","value":"."},
{"type":"Name","value":"set_exception"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"exc"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"elif"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"2"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"reader"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"exc"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Operator","value":"."},
{"type":"Name","value":"feed_eof"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"reader"},
{"type":"Operator","value":"."},
{"type":"Name","value":"set_exception"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"exc"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"in"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_pipe_fds"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_pipe_fds"},
{"type":"Operator","value":"."},
{"type":"Name","value":"remove"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"fd"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_maybe_close_transport"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"process_exited"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_process_exited"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"True"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_maybe_close_transport"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"_maybe_close_transport"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltin","value":"len"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_pipe_fds"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"0"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"and"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_process_exited"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"close"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"_get_close_waiter"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stream"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"stream"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_stdin_closed"},
{"type":"Text","value":"\n\n\n"},
{"type":"Keyword","value":"class"},
{"type":"Text","value":" "},
{"type":"NameClass","value":"Process"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunctionMagic","value":"__init__"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"loop"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_protocol"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"loop"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"pid"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_pid"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunctionMagic","value":"__repr__"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"LiteralStringAffix","value":"f"},
{"type":"LiteralStringSingle","value":"'\u003c"},
{"type":"LiteralStringInterpol","value":"{"},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"NameVariableMagic","value":"__class__"},
{"type":"Operator","value":"."},
{"type":"NameVariableMagic","value":"__name__"},
{"type":"LiteralStringInterpol","value":"}"},
{"type":"LiteralStringSingle","value":" "},
{"type":"LiteralStringInterpol","value":"{"},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"pid"},
{"type":"LiteralStringInterpol","value":"}"},
{"type":"LiteralStringSingle","value":"\u003e'"},
{"type":"Text","value":"\n\n "},
{"type":"NameDecorator","value":"@property"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"returncode"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_returncode"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"async"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"wait"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"LiteralStringDouble","value":"\"\"\"Wait until the process exit and return the process return code.\"\"\""},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"await"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_wait"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"send_signal"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"signal"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"send_signal"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"signal"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"terminate"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"terminate"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"kill"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"kill"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"async"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"_feed_stdin"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltin","value":"input"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"debug"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_debug"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Operator","value":"."},
{"type":"Name","value":"write"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltin","value":"input"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"logger"},
{"type":"Operator","value":"."},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":"("},
{"type":"Text","value":"\n "},
{"type":"LiteralStringSingle","value":"'"},
{"type":"LiteralStringInterpol","value":"%r"},
{"type":"LiteralStringSingle","value":" communicate: feed stdin ("},
{"type":"LiteralStringInterpol","value":"%s"},
{"type":"LiteralStringSingle","value":" bytes)'"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltin","value":"len"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltin","value":"input"},
{"type":"Punctuation","value":"))"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"try"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"await"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Operator","value":"."},
{"type":"Name","value":"drain"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"except"},
{"type":"Text","value":" "},
{"type":"Punctuation","value":"("},
{"type":"NameException","value":"BrokenPipeError"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameException","value":"ConnectionResetError"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"as"},
{"type":"Text","value":" "},
{"type":"Name","value":"exc"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"CommentSingle","value":"# communicate() ignores BrokenPipeError and ConnectionResetError"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"logger"},
{"type":"Operator","value":"."},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringSingle","value":"'"},
{"type":"LiteralStringInterpol","value":"%r"},
{"type":"LiteralStringSingle","value":" communicate: stdin got "},
{"type":"LiteralStringInterpol","value":"%r"},
{"type":"LiteralStringSingle","value":"'"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"exc"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"logger"},
{"type":"Operator","value":"."},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringSingle","value":"'"},
{"type":"LiteralStringInterpol","value":"%r"},
{"type":"LiteralStringSingle","value":" communicate: close stdin'"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdin"},
{"type":"Operator","value":"."},
{"type":"Name","value":"close"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"async"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"_noop"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"async"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"_read_stream"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"transport"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_pipe_transport"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"fd"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"2"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stream"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"assert"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stream"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_debug"},
{"type":"Punctuation","value":"():"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"name"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"LiteralStringSingle","value":"'stdout'"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"else"},
{"type":"Text","value":" "},
{"type":"LiteralStringSingle","value":"'stderr'"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"logger"},
{"type":"Operator","value":"."},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringSingle","value":"'"},
{"type":"LiteralStringInterpol","value":"%r"},
{"type":"LiteralStringSingle","value":" communicate: read "},
{"type":"LiteralStringInterpol","value":"%s"},
{"type":"LiteralStringSingle","value":"'"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"name"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"output"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Keyword","value":"await"},
{"type":"Text","value":" "},
{"type":"Name","value":"stream"},
{"type":"Operator","value":"."},
{"type":"Name","value":"read"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_loop"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_debug"},
{"type":"Punctuation","value":"():"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"name"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"LiteralStringSingle","value":"'stdout'"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"Name","value":"fd"},
{"type":"Text","value":" "},
{"type":"Operator","value":"=="},
{"type":"Text","value":" "},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"else"},
{"type":"Text","value":" "},
{"type":"LiteralStringSingle","value":"'stderr'"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"logger"},
{"type":"Operator","value":"."},
{"type":"Name","value":"debug"},
{"type":"Punctuation","value":"("},
{"type":"LiteralStringSingle","value":"'"},
{"type":"LiteralStringInterpol","value":"%r"},
{"type":"LiteralStringSingle","value":" communicate: close "},
{"type":"LiteralStringInterpol","value":"%s"},
{"type":"LiteralStringSingle","value":"'"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"name"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"transport"},
{"type":"Operator","value":"."},
{"type":"Name","value":"close"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"Name","value":"output"},
{"type":"Text","value":"\n\n "},
{"type":"Keyword","value":"async"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"communicate"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"NameBuiltin","value":"input"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltin","value":"input"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stdin"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_feed_stdin"},
{"type":"Punctuation","value":"("},
{"type":"NameBuiltin","value":"input"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stdin"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_noop"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stdout"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stdout"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_read_stream"},
{"type":"Punctuation","value":"("},
{"type":"LiteralNumberInteger","value":"1"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stdout"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_noop"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"if"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"is"},
{"type":"Text","value":" "},
{"type":"OperatorWord","value":"not"},
{"type":"Text","value":" "},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_read_stream"},
{"type":"Punctuation","value":"("},
{"type":"LiteralNumberInteger","value":"2"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"else"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_noop"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stdin"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdout"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stderr"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Keyword","value":"await"},
{"type":"Text","value":" "},
{"type":"Name","value":"tasks"},
{"type":"Operator","value":"."},
{"type":"Name","value":"gather"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"stdin"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdout"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stderr"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"await"},
{"type":"Text","value":" "},
{"type":"NameBuiltinPseudo","value":"self"},
{"type":"Operator","value":"."},
{"type":"Name","value":"wait"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"stdout"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stderr"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n\n"},
{"type":"Keyword","value":"async"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"create_subprocess_shell"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"cmd"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdin"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdout"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stderr"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"limit"},
{"type":"Operator","value":"="},
{"type":"Name","value":"streams"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_DEFAULT_LIMIT"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Operator","value":"**"},
{"type":"Name","value":"kwds"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"loop"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"events"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_running_loop"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"protocol_factory"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Keyword","value":"lambda"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":" "},
{"type":"Name","value":"SubprocessStreamProtocol"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"limit"},
{"type":"Operator","value":"="},
{"type":"Name","value":"limit"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"="},
{"type":"Name","value":"loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"transport"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Keyword","value":"await"},
{"type":"Text","value":" "},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"."},
{"type":"Name","value":"subprocess_shell"},
{"type":"Punctuation","value":"("},
{"type":"Text","value":"\n "},
{"type":"Name","value":"protocol_factory"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"cmd"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdin"},
{"type":"Operator","value":"="},
{"type":"Name","value":"stdin"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdout"},
{"type":"Operator","value":"="},
{"type":"Name","value":"stdout"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stderr"},
{"type":"Operator","value":"="},
{"type":"Name","value":"stderr"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Operator","value":"**"},
{"type":"Name","value":"kwds"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"Name","value":"Process"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"transport"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n\n\n"},
{"type":"Keyword","value":"async"},
{"type":"Text","value":" "},
{"type":"Keyword","value":"def"},
{"type":"Text","value":" "},
{"type":"NameFunction","value":"create_subprocess_exec"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"program"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Operator","value":"*"},
{"type":"Name","value":"args"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdin"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdout"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stderr"},
{"type":"Operator","value":"="},
{"type":"KeywordConstant","value":"None"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"limit"},
{"type":"Operator","value":"="},
{"type":"Name","value":"streams"},
{"type":"Operator","value":"."},
{"type":"Name","value":"_DEFAULT_LIMIT"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Operator","value":"**"},
{"type":"Name","value":"kwds"},
{"type":"Punctuation","value":"):"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"loop"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Name","value":"events"},
{"type":"Operator","value":"."},
{"type":"Name","value":"get_running_loop"},
{"type":"Punctuation","value":"()"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"protocol_factory"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Keyword","value":"lambda"},
{"type":"Punctuation","value":":"},
{"type":"Text","value":" "},
{"type":"Name","value":"SubprocessStreamProtocol"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"limit"},
{"type":"Operator","value":"="},
{"type":"Name","value":"limit"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"="},
{"type":"Name","value":"loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Name","value":"transport"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Text","value":" "},
{"type":"Operator","value":"="},
{"type":"Text","value":" "},
{"type":"Keyword","value":"await"},
{"type":"Text","value":" "},
{"type":"Name","value":"loop"},
{"type":"Operator","value":"."},
{"type":"Name","value":"subprocess_exec"},
{"type":"Punctuation","value":"("},
{"type":"Text","value":"\n "},
{"type":"Name","value":"protocol_factory"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"program"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Operator","value":"*"},
{"type":"Name","value":"args"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stdin"},
{"type":"Operator","value":"="},
{"type":"Name","value":"stdin"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"stdout"},
{"type":"Operator","value":"="},
{"type":"Name","value":"stdout"},
{"type":"Punctuation","value":","},
{"type":"Text","value":"\n "},
{"type":"Name","value":"stderr"},
{"type":"Operator","value":"="},
{"type":"Name","value":"stderr"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Operator","value":"**"},
{"type":"Name","value":"kwds"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n "},
{"type":"Keyword","value":"return"},
{"type":"Text","value":" "},
{"type":"Name","value":"Process"},
{"type":"Punctuation","value":"("},
{"type":"Name","value":"transport"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"protocol"},
{"type":"Punctuation","value":","},
{"type":"Text","value":" "},
{"type":"Name","value":"loop"},
{"type":"Punctuation","value":")"},
{"type":"Text","value":"\n"}
]