(module (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (import_statement name: (aliased_import name: (dotted_name (identifier)) alias: (identifier))) (import_statement name: (aliased_import name: (dotted_name (identifier)) alias: (identifier))) (class_definition name: (identifier) superclasses: (argument_list (attribute object: (identifier) attribute: (identifier))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (assert_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (false))) (string (string_start) (string_content) (string_end))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (none))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (none))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)))))))) (if_statement condition: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (false))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))) (comment) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (pass_statement))) (comment) (function_definition name: (identifier) parameters: (parameters (identifier)) (comment) body: (block (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (attribute object: (identifier) attribute: (identifier))) (string_end))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier))))) (string_content) (string_end))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (string_end))))))) (comment) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (if_statement condition: (comparison_operator (attribute object: (identifier) attribute: (identifier)) (none)) consequence: (block (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (attribute object: (identifier) attribute: (identifier))) (string_end))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (attribute object: (identifier) attribute: (identifier))))))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (pass_statement))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (assert_statement (comparison_operator (string (string_start) (string_content) (string_end)) (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))) (string (string_start) (string_content) (string_end))) (assert_statement (comparison_operator (string (string_start) (string_content) (string_end)) (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))) (string (string_start) (string_content) (string_end))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (list (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end))))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier))))))) (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (string (string_start) (string_content) (string_end))) right: (parenthesized_expression (call function: (attribute object: (call function: (attribute object: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) arguments: (argument_list (lambda parameters: (lambda_parameters (identifier)) body: (parenthesized_expression (binary_operator left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier)))))))) attribute: (identifier)) arguments: (argument_list (lambda parameters: (lambda_parameters (identifier)) body: (attribute object: (identifier) attribute: (identifier)))))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (if_statement condition: (attribute object: (identifier) attribute: (identifier)) consequence: (block (for_statement left: (pattern_list (identifier) (identifier)) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list)) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (identifier)))))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (string (string_start) (string_content) (interpolation expression: (identifier)) (string_end)))) (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (call function: (attribute object: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (integer))))) (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (call function: (attribute object: (call function: (attribute object: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)))) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (list (identifier)) (keyword_argument name: (identifier) value: (true)) (keyword_argument name: (identifier) value: (integer))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (if_statement condition: (attribute object: (identifier) attribute: (identifier)) consequence: (block (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier))))) (string_content) (string_end))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (keyword_argument name: (identifier) value: (true)) (keyword_argument name: (identifier) value: (integer))))))))) (comment) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))) (function_definition name: (identifier) parameters: (parameters (identifier)) (comment) body: (block (assert_statement (comparison_operator (string (string_start) (string_content) (string_end)) (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))) (string (string_start) (string_content) (interpolation expression: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (string_end))) (assert_statement (comparison_operator (string (string_start) (string_content) (string_end)) (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))) (string (string_start) (string_content) (interpolation expression: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (string_end))) (comment) (for_statement left: (identifier) right: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (string (string_start) (string_content) (string_end))) body: (block (expression_statement (assignment left: (identifier) right: (binary_operator left: (attribute object: (parenthesized_expression (binary_operator left: (call function: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) arguments: (argument_list)) right: (call function: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) arguments: (argument_list)))) attribute: (identifier)) right: (integer)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (integer)))))) (if_statement condition: (comparison_operator (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (integer)))) (identifier)) consequence: (block (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (subscript value: (identifier) subscript: (integer))) (string_content) (interpolation expression: (identifier)) (string_content) (interpolation expression: (identifier)) (string_content) (string_end))))))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (pass_statement))) (comment) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (string_end))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier) (attribute object: (identifier) attribute: (identifier)))))) (for_statement left: (identifier) right: (attribute object: (identifier) attribute: (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (identifier) right: (string (string_start) (interpolation expression: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))) (string_content) (string_end)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (identifier)) (keyword_argument name: (identifier) value: (identifier)))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (identifier)) (string_end))))) (expression_statement (assignment left: (identifier) right: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (comparison_operator (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) (identifier))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier))))) (string_content) (string_end))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier))))) (string_content) (string_end))))))))))