def main(cl_args=None):
if cl_args is None and len(sys.argv) > <NUM_LIT:1>:<EOL><INDENT>cl_args = sys.argv[<NUM_LIT:1>:]<EOL><DEDENT>args = options.parse_args(cl_args)<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>" + livvkit.timestamp)<EOL>print("<STR_LIT>" + livvkit.user)<EOL>print("<STR_LIT>" + livvkit.os_type)<EOL>print("<STR_LIT>" + livvkit.machine)<EOL>print("<STR_LIT:U+0020>" + livvkit.comment)<EOL>from livvkit.components import numerics<EOL>from livvkit.components import verification<EOL>from livvkit.components import performance<EOL>from livvkit.components import validation<EOL>from livvkit import scheduler<EOL>from livvkit.util import functions<EOL>from livvkit.util import elements<EOL>summary_elements = []<EOL>if livvkit.verify or livvkit.validate:<EOL><INDENT>functions.setup_output()<EOL><DEDENT>if livvkit.verify:<EOL><INDENT>summary_elements.append(scheduler.run("<STR_LIT>", numerics,<EOL>functions.read_json(livvkit.numerics_model_config)))<EOL>summary_elements.append(scheduler.run("<STR_LIT>", verification,<EOL>functions.read_json(livvkit.verification_model_config)))<EOL>summary_elements.append(scheduler.run("<STR_LIT>", performance,<EOL>functions.read_json(livvkit.performance_model_config)))<EOL><DEDENT>if livvkit.validate:<EOL><INDENT>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>validation_config = {}<EOL>for conf in livvkit.validation_model_configs:<EOL><INDENT>validation_config = functions.merge_dicts(validation_config,<EOL>functions.read_json(conf))<EOL><DEDENT>summary_elements.extend(scheduler.run_quiet(validation, validation_config,<EOL>group=False))<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL><DEDENT>if livvkit.verify or livvkit.validate:<EOL><INDENT>result = elements.page("<STR_LIT>", "<STR_LIT>", element_list=summary_elements)<EOL>functions.write_json(result, livvkit.output_dir, "<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT>")<EOL>print("<STR_LIT:U+0020>" + os.path.join(livvkit.output_dir, '<STR_LIT>'))<EOL>print("<STR_LIT>")<EOL><DEDENT>if args.serve:<EOL><INDENT>try:<EOL><INDENT>import http.server as server<EOL>import socketserver as socket<EOL><DEDENT>except ImportError:<EOL><INDENT>import SimpleHTTPServer as server<EOL>import SocketServer as socket<EOL><DEDENT>httpd = socket.TCPServer(('<STR_LIT>', args.serve), server.SimpleHTTPRequestHandler)<EOL>sa = httpd.socket.getsockname()<EOL>print('<STR_LIT>'.format(host=sa[<NUM_LIT:0>], port=sa[<NUM_LIT:1>]))<EOL>print('<STR_LIT>')<EOL>print('<STR_LIT>'.format(host=sa[<NUM_LIT:0>], port=sa[<NUM_LIT:1>],<EOL>path=os.path.relpath(livvkit.output_dir)<EOL>))<EOL>print('<STR_LIT>')<EOL>try:<EOL><INDENT>httpd.serve_forever()<EOL><DEDENT>except KeyboardInterrupt:<EOL><INDENT>print('<STR_LIT>')<EOL>sys.exit(<NUM_LIT:0>)<EOL><DEDENT><DEDENT>
Direct execution.