[ {"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"} ]