(module (import_from_statement module_name: (dotted_name (identifier)) name: (dotted_name (identifier)) name: (dotted_name (identifier)) name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (import_statement name: (aliased_import name: (dotted_name (identifier)) alias: (identifier))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (identifier) right: (identifier))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (binary_operator left: (float) right: (parenthesized_expression (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (identifier) right: (float)))))))) (return_statement (identifier)))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier) (identifier) (default_parameter name: (identifier) value: (false))) (comment) (comment) (comment) (comment) (comment) (comment) (comment) (comment) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier)) (comment) (comment) (comment) body: (block (for_statement left: (identifier) right: (identifier) body: (block (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)))) (comment) body: (block (if_statement condition: (boolean_operator left: (comparison_operator (tuple (identifier) (identifier)) (attribute object: (identifier) attribute: (identifier))) right: (comparison_operator (tuple (identifier) (identifier)) (attribute object: (identifier) attribute: (identifier)))) consequence: (block (if_statement condition: (attribute object: (identifier) attribute: (identifier)) (comment) consequence: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (tuple (identifier) (identifier))) right: (parenthesized_expression (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (attribute object: (identifier) attribute: (identifier))))))) alternative: (else_clause (comment) body: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (tuple (identifier) (identifier))) right: (true)))))))))))) (comment) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (list_comprehension body: (tuple (identifier) (identifier)) (for_in_clause left: (identifier) right: (identifier)) (for_in_clause left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier))))) (if_clause (boolean_operator left: (comparison_operator (tuple (identifier) (identifier)) (attribute object: (identifier) attribute: (identifier))) right: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (tuple (identifier) (identifier)))))))))) (if_statement condition: (boolean_operator left: (attribute object: (identifier) attribute: (identifier)) right: (comparison_operator (identifier) (integer))) consequence: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (call function: (identifier) arguments: (argument_list (identifier)))))))) alternative: (else_clause (comment) (comment) body: (block (expression_statement (assignment left: (identifier) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (parenthesized_expression (identifier)))))))) (if_statement condition: (comparison_operator (identifier) (integer)) consequence: (block (if_statement condition: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (assignment left: (identifier) right: (true)))) alternative: (else_clause (comment) body: (block (expression_statement (assignment left: (identifier) right: (false))))))) alternative: (else_clause body: (block (if_statement condition: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (identifier)) consequence: (block (expression_statement (assignment left: (identifier) right: (false)))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (true))))))))) (return_statement (identifier)))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) (comment) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier)))))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (integer)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (dictionary))) (expression_statement (assignment left: (identifier) right: (dictionary))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))) (expression_statement (assignment left: (identifier) right: (integer))) (while_statement condition: (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (integer)) body: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (identifier) (call function: (identifier) arguments: (argument_list (identifier))))))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (slice (integer) (identifier))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (slice (identifier))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (identifier))))))))) (expression_statement (assignment left: (identifier) right: (dictionary_comprehension body: (pair key: (identifier) value: (list)) (for_in_clause left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))))))) (expression_statement (assignment left: (identifier) right: (dictionary_comprehension body: (pair key: (identifier) value: (list)) (for_in_clause left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))))))) (comment) (comment) (for_statement left: (pattern_list (identifier) (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier))) body: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (binary_operator left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier)))))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier)))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier)))))) (comment) (expression_statement (assignment left: (identifier) right: (dictionary))) (expression_statement (assignment left: (identifier) right: (dictionary))) (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))) body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (subscript value: (identifier) subscript: (identifier)))))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (subscript value: (identifier) subscript: (identifier)))))) (expression_statement (augmented_assignment left: (identifier) right: (integer))))) (comment) (comment) (for_statement left: (pattern_list (identifier) (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier))) body: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (binary_operator left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier)))))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (parenthesized_expression (boolean_operator left: (subscript value: (identifier) subscript: (identifier)) right: (subscript value: (identifier) subscript: (identifier)))))) (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)))) body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (tuple (identifier) (identifier))) right: (identifier))))))))) (return_statement (expression_list (identifier) (identifier))))))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (identifier) right: (dictionary))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))))) (for_statement left: (tuple_pattern (identifier) (identifier)) right: (identifier) body: (block (if_statement condition: (comparison_operator (tuple (identifier) (identifier)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (tuple (identifier) (identifier))) right: (false)))) alternative: (elif_clause condition: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (tuple (identifier) (identifier))) right: (false))))) alternative: (else_clause body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (tuple (identifier) (identifier))) right: (true)))))))) (return_statement (expression_list (identifier) (identifier))))))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier) (identifier) (identifier) (identifier)) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (assert_statement (parenthesized_expression (comparison_operator (attribute object: (identifier) attribute: (identifier)) (integer)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list)))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (return_statement (attribute object: (identifier) attribute: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (pattern_list (identifier) (identifier)) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (attribute object: (identifier) attribute: (identifier))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (list_comprehension body: (tuple (identifier) (identifier)) (for_in_clause left: (tuple_pattern (identifier) (identifier)) right: (identifier)) (if_clause (subscript value: (identifier) subscript: (tuple (identifier) (identifier))))))))) (expression_statement (assignment left: (pattern_list (identifier) (identifier)) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (identifier)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (call function: (identifier) arguments: (argument_list (list_comprehension body: (tuple (identifier) (identifier)) (for_in_clause left: (tuple_pattern (identifier) (identifier)) right: (identifier)) (if_clause (subscript value: (identifier) subscript: (tuple (identifier) (identifier))))))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (integer))) (for_statement left: (tuple_pattern (identifier) (identifier)) right: (identifier) body: (block (expression_statement (augmented_assignment left: (identifier) right: (integer))) (if_statement condition: (comparison_operator (tuple (identifier) (identifier)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (if_statement condition: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (tuple (identifier) (identifier))))))))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (binary_operator left: (identifier) right: (identifier)) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (dictionary_comprehension body: (pair key: (tuple (identifier) (identifier)) value: (false)) (for_in_clause left: (tuple_pattern (identifier) (identifier)) right: (identifier))))) (for_statement left: (tuple_pattern (identifier) (identifier)) right: (identifier) body: (block (if_statement condition: (comparison_operator (tuple (identifier) (identifier)) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (tuple (identifier) (identifier))) right: (true)))) alternative: (else_clause body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (tuple (identifier) (identifier))) right: (false)))))))) (return_statement (expression_list (identifier) (identifier))))))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier) (identifier) (default_parameter name: (identifier) value: (integer))) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (return_statement (attribute object: (identifier) attribute: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (default_parameter name: (identifier) value: (none)) (default_parameter name: (identifier) value: (none))) (comment) body: (block (if_statement condition: (comparison_operator (identifier) (none)) consequence: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))) (if_statement condition: (comparison_operator (identifier) (none)) consequence: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))))) (for_statement left: (tuple_pattern (identifier) (identifier)) right: (binary_operator left: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (attribute object: (identifier) attribute: (identifier))) right: (identifier)) body: (block (if_statement condition: (boolean_operator left: (comparison_operator (tuple (identifier) (identifier)) (attribute object: (identifier) attribute: (identifier))) right: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (attribute object: (identifier) attribute: (identifier)))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (tuple (identifier) (identifier))))))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (binary_operator left: (call function: (identifier) arguments: (argument_list (identifier))) right: (attribute object: (identifier) attribute: (identifier))))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))) (expression_statement (assignment left: (identifier) right: (dictionary_comprehension body: (pair key: (identifier) value: (call function: (identifier) arguments: (argument_list))) (for_in_clause left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))))))) (expression_statement (assignment left: (identifier) right: (integer))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))) (for_statement left: (tuple_pattern (identifier) (identifier)) right: (identifier) body: (block (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))) (expression_statement (augmented_assignment left: (identifier) right: (integer))) (if_statement condition: (comparison_operator (tuple (identifier) (identifier)) (identifier)) consequence: (block (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (tuple (identifier) (identifier))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (tuple (identifier) (identifier))))) (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)))) body: (block (if_statement condition: (boolean_operator left: (comparison_operator (tuple (identifier) (identifier)) (identifier)) right: (comparison_operator (identifier) (identifier))) consequence: (block (assert_statement (parenthesized_expression (comparison_operator (tuple (identifier) (identifier)) (identifier)))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (tuple (identifier) (identifier))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (tuple (identifier) (identifier))))))))))))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (dictionary))) (for_statement left: (identifier) right: (identifier) body: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (list_comprehension body: (tuple (identifier) (identifier)) (for_in_clause left: (tuple_pattern (identifier) (identifier)) right: (subscript value: (identifier) subscript: (identifier))) (if_clause (comparison_operator (tuple (identifier) (identifier)) (attribute object: (identifier) attribute: (identifier))))))))) (if_statement condition: (comparison_operator (identifier) (integer)) consequence: (block (if_statement condition: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (assignment left: (identifier) right: (true)))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (false))))))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)))) (if_statement condition: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (identifier)) consequence: (block (expression_statement (assignment left: (identifier) right: (false)))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (true))))))))) (for_statement left: (tuple_pattern (identifier) (identifier)) right: (subscript value: (identifier) subscript: (identifier)) body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (tuple (identifier) (identifier))) right: (identifier))))))) (return_statement (expression_list (identifier) (identifier))))))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (default_parameter name: (identifier) value: (float))) body: (block (pass_statement))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (dictionary (pair key: (string (string_start) (string_content) (string_end)) value: (integer)) (pair key: (string (string_start) (string_content) (string_end)) value: (integer)) (pair key: (string (string_start) (string_content) (string_end)) value: (integer))))) (expression_statement (assignment left: (identifier) right: (dictionary))) (expression_statement (assignment left: (identifier) right: (dictionary))) (return_statement (expression_list (identifier) (identifier) (identifier))))))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (default_parameter name: (identifier) value: (float))) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (unary_operator argument: (integer)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (integer) right: (attribute object: (identifier) attribute: (identifier)))))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (return_statement (attribute object: (identifier) attribute: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (unary_operator argument: (integer)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (integer) right: (attribute object: (identifier) attribute: (identifier)))))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) (comment) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (binary_operator left: (identifier) right: (identifier)))))))) (expression_statement (assignment left: (identifier) right: (dictionary))) (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))) body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (list))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))))) (expression_statement (call function: (identifier) arguments: (argument_list (identifier)))) (for_statement left: (pattern_list (identifier) (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier) (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (identifier))))))) body: (block (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier)))))) (expression_statement (assignment left: (identifier) right: (dictionary))) (expression_statement (assignment left: (identifier) right: (integer))) (for_statement left: (pattern_list (identifier) (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (identifier))) (if_statement condition: (not_operator argument: (identifier)) consequence: (block (expression_statement (augmented_assignment left: (identifier) right: (integer))))))) (expression_statement (assignment left: (identifier) right: (dictionary (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier))))) (return_statement (expression_list (identifier) (identifier) (identifier))))))))