MINI MINI MANI MO
3
  \                 @   s8  d Z ddlZejdkZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlmZ G dd de
ZG dd deZG d	d
 d
eZerddlZddlZddlZG dd dZnhddlZddlZddlZyddlZW n ek
r   ddlZY nX eed
dZeedrejZnejZddddddddddddd
dgZ erddlm!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z( e j)ddddd d!d"d#dg	 G d$d% d%e*Z+g Z,d&d' Z-d<Z.d=Z/d>Z0d+d, Z1d-d. Z2dd/d0dZ3d1d Z4dd/d2dZ5G d3d de6Z7ddd4d5d6dZ8d7d8 Z9d9d Z:d:d Z;e6 Z<G d;d de6Z=dS )?a  Subprocesses with accessible I/O streams
This module allows you to spawn processes, connect to their
input/output/error pipes, and obtain their return codes.
For a complete description of this module see the Python documentation.
Main API
========
run(...): Runs a command, waits for it to complete, then returns a
          CompletedProcess instance.
Popen(...): A class for flexibly executing a command in a new process
Constants
---------
DEVNULL: Special value that indicates that os.devnull should be used
PIPE:    Special value that indicates a pipe should be created
STDOUT:  Special value that indicates that stderr should go to stdout
Older API
=========
call(...): Runs a command, waits for it to complete, then returns
    the return code.
check_call(...): Same as call() but raises CalledProcessError()
    if return code is not 0
check_output(...): Same as check_call() but returns the contents of
    stdout instead of a return code
getoutput(...): Runs a command in the shell, waits for it to complete,
    then returns the output
getstatusoutput(...): Runs a command in the shell, waits for it to complete,
    then returns a (exitcode, output) tuple
    NZwin32)	monotonicc               @   s   e Zd ZdS )SubprocessErrorN)__name__
__module____qualname__ r   r   "/usr/lib64/python3.6/subprocess.pyr   9   s    r   c               @   s<