(module (import_statement name: (dotted_name (identifier))) (import_from_statement module_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))) (import_from_statement module_name: (dotted_name (identifier)) name: (dotted_name (identifier)) name: (dotted_name (identifier))) (comment) (expression_statement (assignment left: (identifier) right: (integer))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (list (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end))))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (binary_operator left: (list (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end))) (line_continuation) right: (identifier)))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (list (identifier)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (slice (integer))))))) (comment) (expression_statement (assignment left: (identifier) right: (binary_operator left: (parenthesized_expression (binary_operator left: (integer) right: (identifier))) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (integer))) (while_statement condition: (comparison_operator (identifier) (call function: (identifier) arguments: (argument_list (identifier)))) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (subscript value: (identifier) subscript: (identifier)) right: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (integer))))) (assert_statement (parenthesized_expression (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (identifier) arguments: (argument_list (identifier))) (integer))))) (return_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (with_statement (with_clause (with_item value: (as_pattern (call function: (identifier) arguments: (argument_list (identifier))) alias: (as_pattern_target (identifier))))) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))))) (return_statement (call function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))))) (comment) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (with_statement (with_clause (with_item value: (as_pattern (call function: (identifier) arguments: (argument_list (identifier))) alias: (as_pattern_target (identifier))))) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (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 (identifier))))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))) (comment) (assert_statement (parenthesized_expression (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (assert_statement (parenthesized_expression (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (comment) (expression_statement (assignment left: (identifier) right: (list))) (expression_statement (assignment left: (identifier) right: (list))) (comment) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (identifier))))))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (identifier))))) (if_statement condition: (comparison_operator (identifier) (identifier)) consequence: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (identifier) (identifier))))))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (identifier)))) (expression_statement (assignment left: (pattern_list (identifier) (identifier)) right: (call function: (identifier) arguments: (argument_list (keyword_argument name: (identifier) value: (identifier)))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))) (comment) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))) (comment) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (identifier))))))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (tuple (identifier) (identifier)))))) (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))) body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier) subscript: (identifier)) right: (subscript value: (subscript value: (identifier) subscript: (identifier)) subscript: (string (string_start) (string_content) (string_end))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (identifier))))) (if_statement condition: (comparison_operator (identifier) (identifier)) consequence: (block (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (identifier))))) (if_statement condition: (comparison_operator (identifier) (subscript value: (identifier) subscript: (identifier))) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier) subscript: (identifier)) right: (subscript value: (subscript value: (identifier) subscript: (identifier)) subscript: (identifier)))))))))))) (return_statement (expression_list (identifier) (identifier) (identifier))))) (comment) (comment) (comment) (comment) (function_definition name: (identifier) parameters: (parameters (default_parameter name: (identifier) value: (none)) (default_parameter name: (identifier) value: (list)) (default_parameter name: (identifier) value: (dictionary))) body: (block (if_statement condition: (comparison_operator (identifier) (none)) consequence: (block (assert_statement (parenthesized_expression (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (integer)))) (with_statement (with_clause (with_item value: (as_pattern (call function: (identifier) arguments: (argument_list (identifier))) alias: (as_pattern_target (identifier))))) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (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 (identifier))))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (identifier)))))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (if_statement condition: (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (identifier)) consequence: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (string (string_start) (string_content) (string_end)))))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (expression_statement (assignment left: (pattern_list (identifier) (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier) (binary_operator left: (identifier) right: (list (identifier)))))))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (none))) (expression_statement (assignment left: (identifier) right: (dictionary)))))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (identifier)))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (none)))))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) alternative: (else_clause (comment) body: (block (if_statement condition: (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (integer)) consequence: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (string (string_start) (string_content) (string_end))))))))))) (if_statement condition: (comparison_operator (identifier) (none)) (comment) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))) (comment) (comment) (for_statement left: (pattern_list (identifier) (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (comment) body: (block (if_statement condition: (comparison_operator (subscript value: (identifier) subscript: (integer)) (string (string_start) (string_content) (string_end))) consequence: (block (continue_statement))) (if_statement condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (assert_statement (parenthesized_expression (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (integer)))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (identifier))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (identifier) (identifier)))))) alternative: (elif_clause condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (assert_statement (parenthesized_expression (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (integer)))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (integer)) (subscript value: (identifier) subscript: (integer)))))))) alternative: (elif_clause condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (assert_statement (parenthesized_expression (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (integer)))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (integer)) (subscript value: (identifier) subscript: (integer)))))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (integer)) (subscript value: (identifier) subscript: (integer)))))))) alternative: (elif_clause condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (identifier))))) alternative: (elif_clause condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (identifier))))) alternative: (elif_clause condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (identifier))))) (comment))) alternative: (elif_clause condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (identifier))))) (comment))) alternative: (elif_clause condition: (comparison_operator (identifier) (string (string_start) (string_content) (string_end))) consequence: (block (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (string (string_start) (string_content) (string_end)))))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (integer))))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (identifier))))))) alternative: (elif_clause condition: (comparison_operator (identifier) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (identifier))))) alternative: (else_clause body: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (call function: (attribute object: (string (string_start) (string_content) (string_end)) attribute: (identifier)) arguments: (argument_list (identifier)))))))))))) (comment) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (integer))) (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (call function: (identifier) arguments: (argument_list (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (integer)))))))) (comment) (for_statement left: (identifier) right: (identifier) body: (block (if_statement condition: (comparison_operator (identifier) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (integer))))))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (string (string_start) (string_content) (string_end)))))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (integer))))) (return_statement (expression_list (identifier) (identifier))))))