KW_DEF IDENTIFIER process L_PAREN IDENTIFIER items R_PAREN COLON NEWLINE INDENT IDENTIFIER result ASSIGN L_BRACKET R_BRACKET NEWLINE KW_FOR IDENTIFIER i COMMA IDENTIFIER item KW_IN IDENTIFIER enumerate L_PAREN IDENTIFIER items R_PAREN COLON NEWLINE INDENT KW_IF IDENTIFIER item GT NUMBER 0 COLON NEWLINE INDENT IDENTIFIER result DOT IDENTIFIER append L_PAREN IDENTIFIER item MULTIPLY NUMBER 2 R_PAREN NEWLINE DEDENT KW_ELIF IDENTIFIER item LT NUMBER 0 COLON NEWLINE INDENT IDENTIFIER result DOT IDENTIFIER append L_PAREN MINUS IDENTIFIER item R_PAREN NEWLINE DEDENT KW_ELSE COLON NEWLINE INDENT KW_PASS NEWLINE DEDENT DEDENT IDENTIFIER total ASSIGN IDENTIFIER sum L_PAREN IDENTIFIER result R_PAREN NEWLINE KW_RETURN IDENTIFIER total NEWLINE DEDENT KW_CLASS IDENTIFIER Calculator COLON NEWLINE INDENT KW_DEF IDENTIFIER __init__ L_PAREN IDENTIFIER self COMMA IDENTIFIER base ASSIGN NUMBER 10 R_PAREN COLON NEWLINE INDENT IDENTIFIER self DOT IDENTIFIER base ASSIGN IDENTIFIER base NEWLINE DEDENT KW_DEF IDENTIFIER add L_PAREN IDENTIFIER self COMMA IDENTIFIER x COMMA IDENTIFIER y R_PAREN COLON NEWLINE INDENT KW_RETURN IDENTIFIER x PLUS IDENTIFIER y NEWLINE DEDENT KW_DEF IDENTIFIER multiply L_PAREN IDENTIFIER self COMMA IDENTIFIER x COMMA IDENTIFIER y R_PAREN COLON NEWLINE INDENT KW_RETURN IDENTIFIER x MULTIPLY IDENTIFIER y NEWLINE DEDENT DEDENT IDENTIFIER x ASSIGN IDENTIFIER process L_PAREN L_BRACKET NUMBER 1 COMMA MINUS NUMBER 2 COMMA NUMBER 0 R_BRACKET R_PAREN NEWLINE IDENTIFIER calc ASSIGN IDENTIFIER Calculator L_PAREN R_PAREN NEWLINE IDENTIFIER sum_result ASSIGN IDENTIFIER calc DOT IDENTIFIER add L_PAREN NUMBER 5 COMMA NUMBER 15 R_PAREN NEWLINE EOF