(module (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier)) body: (block (for_statement left: (pattern_list (identifier) (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)) body: (block (if_statement condition: (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (identifier)) consequence: (block (if_statement condition: (comparison_operator (identifier) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))) alternative: (else_clause body: (block (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier)))))))) alternative: (elif_clause condition: (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (identifier)) consequence: (block (if_statement condition: (comparison_operator (identifier) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))) alternative: (else_clause body: (block (expression_statement (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (identifier)) (identifier))))))))) alternative: (elif_clause condition: (comparison_operator (call function: (identifier) arguments: (argument_list (identifier))) (identifier)) consequence: (block (if_statement condition: (comparison_operator (identifier) (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))) alternative: (else_clause body: (block (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (identifier)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list)))))))))) alternative: (else_clause body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))))))))) (function_definition name: (identifier) parameters: (parameters) body: (block (return_statement (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 (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (identifier)))))))))) (function_definition name: (identifier) parameters: (parameters (typed_parameter (identifier) type: (type (identifier)))) return_type: (type (identifier)) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)))))) (return_statement (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (call function: (identifier) arguments: (argument_list)) (identifier)))))))