<s> from sys import stdin , stderr , stdout , argv , exit <EOL> import argparse <EOL> import subprocess <EOL> import os <EOL> import platform <EOL> from converter import write <EOL> from blueprint import blueprint2json , fetch_blueprint <EOL> class bcolors : <EOL> HEADER = '<STR_LIT>' <EOL> OKBLUE = '<STR_LIT>' <EOL> OKGREEN = '<STR_LIT>' <EOL> WARNING = '<STR_LIT>' <EOL> FAIL = '<STR_LIT>' <EOL> ENDC = '<STR_LIT>' <EOL> BOLD = '<STR_LIT>' <EOL> UNDERLINE = '<STR_LIT>' <EOL> def readInput ( ) : <EOL> content = "<STR_LIT>" <EOL> for line in stdin : <EOL> content += line <EOL> return content <EOL> def check_drafter ( ) : <EOL> try : <EOL> assert subprocess . check_output ( [ '<STR_LIT>' , '<STR_LIT>' ] ) . startswith ( '<STR_LIT>' ) <EOL> except : <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , bcolors . BOLD + '<STR_LIT>' + bcolors . ENDC <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' + bcolors . BOLD + '<STR_LIT>' + bcolors . ENDC <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' + bcolors . BOLD + '<STR_LIT>' + bcolors . ENDC <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' + bcolors . HEADER + '<STR_LIT>' + bcolors . ENDC <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> print >> stderr , '<STR_LIT>' <EOL> exit ( <NUM_LIT:3> ) <EOL> def main ( ) : <EOL> parser = argparse . ArgumentParser ( description = '<STR_LIT>' , formatter_class = argparse . RawDescriptionHelpFormatter , <EOL> epilog = '<STR_LIT>' + argv [ <NUM_LIT:0> ] + '<STR_LIT>' <EOL> + argv [ <NUM_LIT:0> ] + '<STR_LIT>' <EOL> + argv [ <NUM_LIT:0> ] + '<STR_LIT>' <EOL> + '<STR_LIT>' + argv [ <NUM_LIT:0> ] + '<STR_LIT>' ) <EOL> subparsers = parser . add_subparsers ( help = '<STR_LIT>' , title = '<STR_LIT>' , <EOL> description = '<STR_LIT>' ) <EOL> parser_blueprint = subparsers . add_parser ( '<STR_LIT>' , description = '<STR_LIT>' , <EOL> help = '<STR_LIT>' ) <EOL> parser_json = subparsers . add_parser ( '<STR_LIT>' , description = '<STR_LIT>' , help = '<STR_LIT>' ) <EOL> parser_api = subparsers . add_parser ( '<STR_LIT>' , description = '<STR_LIT>' , <EOL> help = '<STR_LIT>' ) <EOL> parser . add_argument ( '<STR_LIT>' , dest = '<STR_LIT>' , action = '<STR_LIT:store_true>' , default = False , <EOL> help = '<STR_LIT>' ) <EOL> parser . add_argument ( '<STR_LIT>' , dest = '<STR_LIT>' , action = '<STR_LIT>' , <EOL> const = True , default = False , <EOL> help = '<STR_LIT>' ) <EOL> parser_api . add_argument ( '<STR_LIT:key>' , metavar = '<STR_LIT>' , nargs = '<STR_LIT:?>' , <EOL> help = '<STR_LIT>' ) <EOL> parser_api . add_argument ( '<STR_LIT:name>' , metavar = '<STR_LIT>' , nargs = <NUM_LIT:1> , <EOL> help = '<STR_LIT>' ) <EOL> parser_json . add_argument ( '<STR_LIT:input>' , metavar = '<STR_LIT:input>' , type = file , nargs = '<STR_LIT:?>' , default = stdin , <EOL> help = '<STR_LIT>' ) <EOL> parser_blueprint . add_argument ( '<STR_LIT>' , metavar = '<STR_LIT:input>' , type = file , nargs = '<STR_LIT:?>' , default = stdin , <EOL> help = '<STR_LIT>' ) <EOL> parser . add_argument ( '<STR_LIT>' , metavar = '<STR_LIT>' , type = argparse . FileType ( '<STR_LIT:w>' ) , nargs = <NUM_LIT:1> , default = stdout , <EOL> help = '<STR_LIT>' ) <EOL> args = parser . parse_args ( ) <EOL> input = '<STR_LIT>' <EOL> if hasattr ( args , '<STR_LIT:input>' ) : <EOL> input = args . input . read ( ) <EOL> elif hasattr ( args , '<STR_LIT>' ) : <EOL> check_drafter ( ) <EOL> input = blueprint2json ( args . blueprint_input . read ( ) ) <EOL> else : <EOL> check_drafter ( ) <EOL> apikey = None <EOL> if args . key != None : <EOL> apikey = args . key <EOL> else : <EOL> apikey = os . environ . get ( '<STR_LIT>' ) <EOL> if apikey == None : <EOL> print '<STR_LIT>' <EOL> exit ( <NUM_LIT:4> ) <EOL> blueprint = fetch_blueprint ( args . name [ <NUM_LIT:0> ] , apikey ) <EOL> input = blueprint2json ( blueprint ) <EOL> output = args . output <EOL> if args . output != stdout : <EOL> output = output [ <NUM_LIT:0> ] <EOL> write ( input , output , args . only_collection , args . pretty ) <EOL> if __name__ == '<STR_LIT:__main__>' : <EOL> main ( ) </s>
