(module (expression_statement (string (string_start) (string_content) (string_end))) (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (comment) (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier) (identifier))) (import_statement name: (dotted_name (identifier))) (import_from_statement module_name: (dotted_name (identifier)) name: (dotted_name (identifier))) (import_from_statement module_name: (dotted_name (identifier)) name: (dotted_name (identifier))) (import_from_statement module_name: (dotted_name (identifier)) name: (dotted_name (identifier))) (import_from_statement module_name: (dotted_name (identifier)) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier))) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier))) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier))) name: (dotted_name (identifier))) (class_definition name: (identifier) superclasses: (argument_list (identifier)) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (pass_statement))) (function_definition name: (identifier) parameters: (parameters) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (if_statement condition: (comparison_operator (attribute object: (identifier) attribute: (identifier)) (tuple (integer) (integer))) consequence: (block (return_statement (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)))) right: (string (string_start) (string_content) (string_end))))) alternative: (else_clause body: (block (with_statement (with_clause (with_item value: (as_pattern (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)))) alias: (as_pattern_target (identifier))))) body: (block (return_statement (call function: (identifier) arguments: (argument_list (identifier))))))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (return_statement (call function: (attribute object: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) attribute: (identifier)) arguments: (argument_list))))) (function_definition name: (identifier) parameters: (parameters (identifier) (default_parameter name: (identifier) value: (none))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (with_statement (with_clause (with_item value: (as_pattern (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) alias: (as_pattern_target (identifier))))) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))))) (comment) (comment) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (default_parameter name: (identifier) value: (integer))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (while_statement condition: (true) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (if_statement condition: (not_operator argument: (identifier)) consequence: (block (break_statement))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (default_parameter name: (identifier) value: (none))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (comment) (try_statement body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (keyword_argument name: (identifier) value: (true)) (keyword_argument name: (identifier) value: (true)) (keyword_argument name: (identifier) value: (true)) (keyword_argument name: (identifier) value: (identifier)))))) (comment) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content (escape_sequence) (escape_sequence) (escape_sequence)) (string_end)) (identifier) (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier)))))) (except_clause (as_pattern (attribute object: (identifier) attribute: (identifier)) alias: (as_pattern_target (identifier))) (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content (escape_sequence) (escape_sequence) (escape_sequence) (escape_sequence) (escape_sequence)) (string_end)) (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier))))) (raise_statement (identifier) cause: (identifier))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier) (default_parameter name: (identifier) value: (false)) (default_parameter name: (identifier) value: (integer)) (default_parameter name: (identifier) value: (none))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (comment) (expression_statement (assignment left: (identifier) right: (string (string_start) (string_content) (string_end)))) (if_statement condition: (comparison_operator (identifier) (none)) consequence: (block (expression_statement (augmented_assignment left: (identifier) right: (string (string_start) (string_content) (interpolation expression: (identifier)) (string_content) (string_end)))))) (if_statement condition: (identifier) consequence: (block (expression_statement (augmented_assignment left: (identifier) right: (string (string_start) (string_content) (string_end)))))) (if_statement condition: (comparison_operator (identifier) (none)) consequence: (block (expression_statement (augmented_assignment left: (identifier) right: (string (string_start) (string_content) (interpolation expression: (identifier)) (string_content) (string_end)))))) (expression_statement (augmented_assignment left: (identifier) right: (string (string_start) (interpolation expression: (identifier)) (string_content) (string_end)))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (identifier) (identifier)))) (comment) (expression_statement (call function: (identifier) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (identifier))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (default_parameter name: (identifier) value: (true))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (comment) (expression_statement (assignment left: (identifier) right: (string (string_start) (string_content) (string_end)))) (if_statement condition: (identifier) consequence: (block (expression_statement (augmented_assignment left: (identifier) right: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (identifier) (identifier)))) (comment) (expression_statement (call function: (identifier) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (identifier))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (default_parameter name: (identifier) value: (false)) (default_parameter name: (identifier) value: (none))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (string (string_start) (string_content) (string_end))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (true)) (keyword_argument name: (identifier) value: (true))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (identifier)))))) (comment) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (string (string_start) (string_content) (string_end))))) (if_statement condition: (not_operator argument: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (true))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (dictionary_comprehension body: (pair key: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) value: (identifier)) (for_in_clause left: (identifier) right: (identifier)) (if_clause (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)))))))) (expression_statement (assignment left: (identifier) right: (list_comprehension body: (identifier) (for_in_clause left: (identifier) right: (identifier)) (if_clause (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)))))) (comment) (for_statement left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) body: (block (expression_statement (call function: (identifier) arguments: (argument_list (identifier)))))) (comment) (if_statement condition: (comparison_operator (identifier) (none)) consequence: (block (for_statement left: (identifier) right: (identifier) body: (block (expression_statement (call function: (identifier) arguments: (argument_list (identifier))))))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (identifier)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (identifier) (keyword_argument name: (identifier) value: (integer)))))) (comment) (while_statement condition: (not_operator argument: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (attribute object: (identifier) attribute: (identifier)) (call function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (integer))))))) (comment) (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) (identifier)) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (if_statement condition: (comparison_operator (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (string (string_start) (string_content) (string_end))) consequence: (block (if_statement condition: (call function: (attribute object: (parenthesized_expression (binary_operator left: (identifier) right: (string (string_start) (string_content) (string_end)))) attribute: (identifier)) arguments: (argument_list)) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (identifier) arguments: (argument_list (keyword_argument name: (identifier) value: (binary_operator left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))))) (comment)) alternative: (elif_clause condition: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (raise_statement (call function: (identifier) arguments: (argument_list (string (string_start) (string_content) (interpolation expression: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (string_end))))))) alternative: (else_clause body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (keyword_argument name: (identifier) value: (identifier)))))))))) (if_statement condition: (comparison_operator (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (string (string_start) (string_content) (string_end))) (comment) consequence: (block (expression_statement (assignment left: (identifier) right: (conditional_expression (false) (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))))) (expression_statement (assignment left: (identifier) right: (conditional_expression (string (string_start) (string_content) (string_end)) (identifier) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) right: (identifier)))))) (expression_statement (assignment left: (identifier) right: (true))) (if_statement condition: (boolean_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) right: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier))) (comment) consequence: (block (if_statement condition: (comparison_operator (call function: (identifier) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (identifier) right: (false))))))) (if_statement condition: (identifier) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (true))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (with_statement (with_clause (with_item value: (as_pattern (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) alias: (as_pattern_target (identifier))))) (comment) body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))))))) (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 (identifier))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (identifier)))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (if_statement condition: (comparison_operator (identifier) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)))))) alternative: (else_clause body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))))))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (identifier)))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) (comment) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (identifier) arguments: (argument_list (identifier) (identifier)))))))))) (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) consequence: (block (for_statement left: (identifier) right: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (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)))))) (comment) (with_statement (with_clause (with_item value: (call function: (identifier) arguments: (argument_list (identifier))))) body: (block (if_statement condition: (comparison_operator (string (string_start) (string_content) (string_end)) (identifier)) (comment) consequence: (block (if_statement condition: (call function: (attribute object: (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) arguments: (argument_list)) consequence: (block (if_statement condition: (parenthesized_expression (comparison_operator (call function: (identifier) arguments: (argument_list (call function: (attribute object: (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) arguments: (argument_list)))) (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end))))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))))) (continue_statement)) alternative: (else_clause body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) 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: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))))) (comment) (expression_statement (call function: (identifier) arguments: (argument_list (dictionary_splat (parenthesized_expression (subscript value: (identifier) subscript: (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: (identifier) right: (call function: (identifier) arguments: (argument_list (call function: (attribute object: (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) arguments: (argument_list)))))) (if_statement condition: (comparison_operator (identifier) (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end)))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end))))))) alternative: (else_clause body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content (escape_sequence) (escape_sequence)) (string_end)) (call function: (attribute object: (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) arguments: (argument_list)) (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (string (string_start) (string_content) (string_end))) (identifier))))))))))))))))))