(module (expression_statement (string (string_start) (string_content) (string_end))) (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)) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier) (identifier))) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier) (identifier))) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier) (identifier))) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier) (identifier))) name: (dotted_name (identifier)) name: (dotted_name (identifier))) (import_from_statement module_name: (relative_import (import_prefix) (dotted_name (identifier))) name: (dotted_name (identifier))) (function_definition name: (identifier) parameters: (parameters (identifier) (default_parameter name: (identifier) value: (integer)) (default_parameter name: (identifier) value: (float))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (identifier) (keyword_argument name: (identifier) value: (true)))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (unary_operator argument: (integer)) (identifier))) (keyword_argument name: (identifier) value: (true)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (integer)))) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (parenthesized_expression (binary_operator left: (identifier) right: (identifier))) right: (identifier)))))) (comment) (return_statement (comparison_operator (identifier) (identifier))))) (decorated_definition (decorator (identifier)) definition: (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier) (identifier) (default_parameter name: (identifier) value: (false))) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (expression_statement (assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (comment) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (integer)))))) (expression_statement (assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (expression_statement (assignment left: (identifier) right: (attribute object: (identifier) attribute: (identifier)))) (comment) (comment) (comment) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (true))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (true))))) (if_statement condition: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (comment) (comment) consequence: (block (expression_statement (assignment left: (identifier) right: (parenthesized_expression (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (subscript value: (subscript value: (identifier) subscript: (integer)) subscript: (none) subscript: (ellipsis))))) (integer))) (float))))) (expression_statement (assignment left: (identifier) right: (parenthesized_expression (comparison_operator (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (subscript value: (subscript value: (identifier) subscript: (integer)) subscript: (none) subscript: (ellipsis))))) (integer))) (float))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (identifier)))))) (if_statement condition: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (comment) consequence: (block (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier)))))))) (if_statement condition: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (comment) consequence: (block (expression_statement (assignment left: (identifier) right: (comparison_operator (parenthesized_expression (binary_operator left: (subscript value: (identifier) subscript: (unary_operator argument: (integer))) right: (subscript value: (identifier) subscript: (integer)))) (identifier)))) (expression_statement (assignment left: (identifier) right: (comparison_operator (parenthesized_expression (binary_operator left: (subscript value: (identifier) subscript: (unary_operator argument: (integer))) right: (subscript value: (identifier) subscript: (integer)))) (identifier))))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (false))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (false)))))))) (comment) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (slice) subscript: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (slice) subscript: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (expression_statement (assignment left: (identifier) right: (subscript value: (identifier) subscript: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier))))) (comment) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (tuple (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier))))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (tuple (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier))))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (integer) (attribute object: (identifier) attribute: (identifier)))))) (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (integer)))) body: (block (try_statement body: (block (if_statement condition: (subscript value: (identifier) subscript: (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier))))) alternative: (else_clause body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier) (subscript value: (identifier) subscript: (subscript value: (identifier) subscript: (slice) subscript: (identifier))) (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (subscript value: (identifier) subscript: (slice) subscript: (identifier)) subscript: (identifier)) (keyword_argument name: (identifier) value: (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))))))))))) (if_statement condition: (subscript value: (identifier) subscript: (identifier)) consequence: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier))))) alternative: (else_clause body: (block (expression_statement (assignment left: (subscript value: (identifier) subscript: (identifier)) right: (call function: (identifier) arguments: (argument_list (identifier) (subscript value: (identifier) subscript: (subscript value: (identifier) subscript: (slice) subscript: (identifier))) (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (subscript value: (identifier) subscript: (slice) subscript: (identifier)) subscript: (identifier)) (keyword_argument name: (identifier) value: (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)))))))))))) (except_clause (as_pattern (tuple (identifier) (identifier) (identifier)) alias: (as_pattern_target (identifier))) (comment) (block (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))))))) (comment) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (integer))) right: (float)))) (comment) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (integer))) right: (float)))) (comment) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (binary_operator left: (binary_operator left: (identifier) right: (integer)) right: (integer)) (integer))))) (comment) (expression_statement (assignment left: (identifier) right: (dictionary (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (string (string_start) (string_content) (string_end))) (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (tuple (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (none))) (pair key: (string (string_start) (string_content) (string_end)) value: (false)) (comment)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))))))) (comment) (comment) (if_statement condition: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) consequence: (block (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) body: (block (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (float)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (binary_operator left: (float) right: (subscript value: (identifier) subscript: (slice) subscript: (none))) right: (float)))) (unary_operator argument: (float)) (float))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (float) right: (binary_operator left: (identifier) right: (float))) (float) (float))) right: (float)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (float)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (binary_operator left: (float) right: (subscript value: (identifier) subscript: (slice) subscript: (none))) right: (float)))) (unary_operator argument: (float)) (float))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (float) right: (binary_operator left: (identifier) right: (float))) (float) (float))) right: (float)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (identifier)))))))))) (comment) (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 (identifier) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (integer)))) (keyword_argument name: (identifier) value: (float)) (keyword_argument name: (identifier) value: (none)))))) (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 (identifier) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (integer)))) (keyword_argument name: (identifier) value: (float)) (keyword_argument name: (identifier) value: (none)))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (integer))) right: (float)))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (integer))) right: (float)))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) (integer))) right: (float)))) (if_statement condition: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (comment) consequence: (block (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (integer))) right: (float)))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (integer))) right: (float)))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier) (integer))) right: (float)))) (expression_statement (assignment left: (identifier) right: (dictionary (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (string (string_start) (string_content) (string_end))) (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end)))) (pair key: (string (string_start) (string_content) (string_end)) value: (tuple (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) (none))) (pair key: (string (string_start) (string_content) (string_end)) value: (false)) (comment)))) (comment) (comment) (comment) (comment) (comment) (expression_statement (assignment left: (identifier) right: (false))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))))))) (comment) (comment) (if_statement condition: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) consequence: (block (for_statement left: (identifier) right: (call function: (identifier) arguments: (argument_list (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))))) body: (block (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (float)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (binary_operator left: (float) right: (subscript value: (identifier) subscript: (slice) subscript: (none))) right: (float)))) (unary_operator argument: (float)) (float))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (float) right: (binary_operator left: (identifier) right: (float))) (float) (float))) right: (float)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (float)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (binary_operator left: (float) right: (subscript value: (identifier) subscript: (slice) subscript: (none))) right: (float)))) (unary_operator argument: (float)) (float))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (float) right: (binary_operator left: (identifier) right: (float))) (float) (float))) right: (float)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (float)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (binary_operator left: (float) right: (subscript value: (identifier) subscript: (slice) subscript: (none))) right: (float)))) (unary_operator argument: (float)) (float))))) (expression_statement (assignment left: (identifier) right: (binary_operator left: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (float) right: (binary_operator left: (identifier) right: (float))) (float) (float))) right: (float)))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (identifier) (dictionary_splat (identifier)) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (identifier)))))))))) (comment) (if_statement condition: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) consequence: (block (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))))) (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: (dictionary (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier)) (pair key: (string (string_start) (string_content) (string_end)) value: (identifier))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (dictionary_splat (dictionary (pair key: (string (string_start) (string_content) (string_end)) value: (attribute object: (identifier) attribute: (identifier))) (pair key: (string (string_start) (string_content) (string_end)) value: (attribute object: (identifier) attribute: (identifier))) (pair key: (string (string_start) (string_content) (string_end)) value: (attribute object: (identifier) attribute: (identifier))) (pair key: (string (string_start) (string_content) (string_end)) value: (attribute object: (identifier) attribute: (identifier))))))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (attribute object: (identifier) attribute: (identifier))))))) (comment) (comment) (expression_statement (assignment left: (identifier) right: (boolean_operator left: (parenthesized_expression (not_operator argument: (identifier))) right: (identifier)))) (if_statement condition: (identifier) consequence: (block (expression_statement (call function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier) (identifier) (identifier)))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))) (return_statement (expression_list (identifier) (identifier)))))) (function_definition name: (identifier) parameters: (parameters (identifier) (identifier) (identifier) (identifier) (identifier) (identifier)) body: (block (expression_statement (string (string_start) (string_content) (string_end))) (comment) (comment) (import_statement name: (dotted_name (identifier))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end))))) (import_statement name: (dotted_name (identifier))) (import_statement name: (aliased_import name: (dotted_name (identifier) (identifier)) alias: (identifier))) (import_statement name: (aliased_import name: (dotted_name (identifier)) alias: (identifier))) (import_statement name: (dotted_name (identifier))) (import_statement name: (dotted_name (identifier))) (comment) (comment) (comment) (expression_statement (assignment left: (identifier) right: (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))))) (comment) (comment) (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (true))))) (comment) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (integer)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (keyword_argument name: (identifier) value: (subscript value: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (integer)) subscript: (none) subscript: (ellipsis))) (keyword_argument name: (identifier) value: (integer)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)) (keyword_argument name: (identifier) value: (subscript value: (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (integer)) subscript: (none) subscript: (ellipsis))) (keyword_argument name: (identifier) value: (integer)))))) (expression_statement (assignment left: (identifier) right: (call function: (identifier) arguments: (argument_list (integer) (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier)) (attribute object: (identifier) attribute: (identifier)) (attribute object: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) (attribute object: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) (attribute object: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)) (attribute object: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) attribute: (identifier)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (integer)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) arguments: (argument_list (string (string_start) (string_content) (string_end)) (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (pattern_list (identifier) (identifier)) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (tuple (integer) (integer))))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))))) (for_statement left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (identifier) arguments: (argument_list (attribute object: (identifier) attribute: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (true)))) body: (block (expression_statement (assignment left: (identifier) right: (subscript value: (attribute object: (attribute object: (identifier) attribute: (identifier)) attribute: (identifier)) subscript: (identifier)))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (call function: (identifier) arguments: (argument_list (identifier))) attribute: (identifier)) arguments: (argument_list (integer))))) (if_statement condition: (comparison_operator (identifier) (identifier)) consequence: (block (expression_statement (assignment left: (identifier) right: (binary_operator left: (binary_operator left: (binary_operator left: (subscript value: (identifier) subscript: (identifier)) right: (string (string_start) (string_content) (string_end))) right: (identifier)) right: (string (string_start) (string_content) (string_end)))))) alternative: (else_clause body: (block (expression_statement (assignment left: (identifier) right: (identifier)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (keyword_argument name: (identifier) value: (integer)) (keyword_argument name: (identifier) value: (integer)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (unary_operator argument: (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (float))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (unary_operator argument: (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (float))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (unary_operator argument: (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (float))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (unary_operator argument: (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end))) (keyword_argument name: (identifier) value: (float))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (assignment left: (identifier) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (comparison_operator (attribute object: (identifier) attribute: (identifier)) (identifier)))))) (if_statement condition: (call function: (identifier) arguments: (argument_list (identifier))) consequence: (block (expression_statement (assignment left: (identifier) right: (subscript value: (subscript value: (identifier) subscript: (integer)) subscript: (integer)))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (identifier)))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (attribute object: (identifier) attribute: (identifier)) subscript: (slice) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (subscript value: (identifier) subscript: (string (string_start) (string_content) (string_end))) subscript: (identifier)))))) (keyword_argument name: (identifier) value: (string (string_start) (string_content) (string_end)))))))) (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)) (keyword_argument name: (identifier) value: (float)) (keyword_argument name: (identifier) value: (none)))))))))) (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 (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (slice) subscript: (identifier)) (keyword_argument name: (identifier) value: (float)) (keyword_argument name: (identifier) value: (none)))))))))) (if_statement condition: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (comparison_operator (identifier) (integer)))))) consequence: (block (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (list (binary_operator left: (float) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (comparison_operator (identifier) (integer)))))) (binary_operator left: (float) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))))))) (if_statement condition: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (comparison_operator (identifier) (integer)))))) consequence: (block (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list (list (binary_operator left: (float) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (subscript value: (identifier) subscript: (comparison_operator (identifier) (integer)))))) (binary_operator left: (float) right: (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (identifier)))))))))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))) (if_statement condition: (call function: (identifier) arguments: (argument_list (identifier))) consequence: (block (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))) (expression_statement (call function: (attribute object: (subscript value: (identifier) subscript: (integer) subscript: (integer)) attribute: (identifier)) arguments: (argument_list))))) (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 (keyword_argument name: (identifier) value: (list (integer) (float) (integer) (float)))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list (binary_operator left: (identifier) right: (parenthesized_expression (binary_operator left: (identifier) right: (string (string_start) (string_content) (string_end)))))))) (expression_statement (call function: (attribute object: (identifier) attribute: (identifier)) arguments: (argument_list))))) (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 (string (string_start) (string_content) (string_end))))))))