(module (import_statement name: (dotted_name (identifier))) (expression_statement (string (string_start) (string_content) (string_end))) (class_definition name: (identifier) body: (block (function_definition name: (identifier) parameters: (parameters (identifier) (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: (call function: (identifier) arguments: (argument_list (call function: (identifier) arguments: (argument_list (identifier))))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (dictionary_comprehension body: (pair key: (identifier) value: (false)) (for_in_clause left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (dictionary_comprehension body: (pair key: (identifier) value: (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) (identifier))) (for_in_clause left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (dictionary_comprehension body: (pair key: (identifier) value: (integer)) (for_in_clause left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (attribute object: (identifier) attribute: (identifier)) right: (dictionary_comprehension body: (pair key: (identifier) value: (integer)) (for_in_clause left: (identifier) right: (attribute object: (identifier) attribute: (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: (call function: (identifier) arguments: (argument_list)))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (string (string_start) (string_content) (string_end)))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (return_statement (dictionary (pair key: (string (string_start) (string_content) (string_end)) value: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (pair key: (string (string_start) (string_content) (string_end)) value: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (pair key: (string (string_start) (string_content) (string_end)) value: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (for_statement left: (identifier) right: (attribute object: (identifier) attribute: (identifier)) body: (block (if_statement condition: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) consequence: (block (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier)))) (expression_statement (augmented_assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (integer))) (if_statement condition: (comparison_operator (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (for_statement left: (identifier) right: (attribute object: (identifier) attribute: (identifier)) body: (block (if_statement condition: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) consequence: (block (expression_statement (augmented_assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (integer))) (if_statement condition: (comparison_operator (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (false))) (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (integer))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (false))) (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (integer))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (raise_statement (parenthesized_expression (call function: (identifier) arguments: (argument_list (string (string_start) (string_content) (string_end)))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (if_statement condition: (comparison_operator (identifier) (attribute object: (identifier) attribute: (identifier))) consequence: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (true))) (expression_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier)))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (expression_statement (assignment left: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) right: (true))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) (comment) body: (block (return_statement (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (return_statement (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (return_statement (boolean_operator left: (parenthesized_expression (not_operator argument: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)))) (line_continuation) right: (parenthesized_expression (comparison_operator (identifier) (attribute object: (identifier) attribute: (identifier)))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (return_statement (call function: (identifier) arguments: (argument_list (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list))))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (return_statement (call function: (identifier) arguments: (argument_list (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list))))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (return_statement (comparison_operator (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (identifier)) (attribute object: (identifier) attribute: (identifier)))))) (function_definition name: (identifier) parameters: (parameters (identifier)) body: (block (return_statement (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier))))))))))