(module (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_statement name: (aliased_import name: (dotted_name (identifier)) alias: (identifier))) (import_statement name: (dotted_name (identifier))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (comment) (identifier) (comment) (identifier) (comment) (comment) (identifier) (comment) (identifier) (comment) (identifier) (comment) (comment) (identifier) (comment) (comment)) body: (block (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list (list (identifier) (identifier)) (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (none))) (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))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (integer))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (integer))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (if_statement condition: (comparison_operator (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (return_statement (attribute object: (identifier) attribute: (identifier)))) alternative: (else_clause body: (block (return_statement (subscript value: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) subscript: (integer)))))))) (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (string (string_start) (string_content) (string_end))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (parenthesized_expression (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (integer))) right: (integer)))) (integer))))) (if_statement condition: (comparison_operator (attribute object: (identifier) attribute: (identifier)) (attribute object: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier))) consequence: (block (expression_statement (assignment left: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) right: (subscript value: (attribute object: (subscript value: (subscript value: (identifier) subscript: (comparison_operator (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (attribute object: (identifier) attribute: (identifier)))) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) subscript: (integer))))) alternative: (else_clause body: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (string (string_start) (string_content) (string_end))) right: (integer)))))) (if_statement condition: (comparison_operator (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list)))) alternative: (else_clause (comment) (comment) body: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) subscript: (integer)) (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (dictionary)))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) subscript: (integer)) (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (dictionary)))))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list)))))) (expression_statement (augmented_assignment left: (attribute object: (identifier) attribute: (identifier)) right: (integer))) (if_statement condition: (comparison_operator (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (assert_statement (parenthesized_expression (comparison_operator (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (identifier) right: (integer))) (comment) (expression_statement (assignment left: (identifier) right: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)))) (expression_statement (assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (augmented_assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier)) right: (attribute object: (subscript value: (identifier) subscript: (integer)) attribute: (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))))) (comment) (comment) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier)) body: (block (expression_statement (assignment left: (identifier) right: (integer))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (augmented_assignment left: (attribute object: (identifier) attribute: (identifier)) right: (identifier))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (subscript value: (identifier) subscript: (slice (integer)))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (subscript value: (identifier) subscript: (slice (integer)))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (subscript value: (identifier) subscript: (slice (integer)))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (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)))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (subscript value: (identifier) subscript: (slice (integer)))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (subscript value: (identifier) subscript: (slice (integer)))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (integer)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (binary_operator left: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)) right: (identifier)) right: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)) right: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (integer))))) (expression_statement (augmented_assignment left: (identifier) right: (identifier))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (binary_operator left: (attribute object: (identifier) attribute: (identifier)) right: (identifier)))))))))