Mercurial > ~dholland > hg > ag > index.cgi
view tests/agcl/parsifal/good/cpp.cpp @ 17:12171da8943f
Don't refer to CVS.
author | David A. Holland |
---|---|
date | Tue, 31 May 2022 01:56:37 -0400 |
parents | 13d2b8934445 |
children |
line wrap: on
line source
// class AstNode; #include "cppdefs.h" #include "agstk.h" #include <stdio.h> #include "mpp.h" extern int columnNumber; #define INPUT_CODE(t) inputCode(t) #ifndef SYNTAX_ERROR #define SYNTAX_ERROR printf("%s\n", (PCB).error_message) #endif parse_pcb_type *pcbPointer = 0; #define PCB (*pcbPointer) extern char *inputName[]; InputToken *trackPointer; int inputCode(const InputToken &t) { int code = t.code; if (code == IDENTIFIER) code = getTokenType(t.handle); PCB.column = t.column; if (PCB.pointer == trackPointer) return code; trackPointer = PCB.pointer; if (code == LINE) printf("[%02d] %s(%d): %d\n", scopeStack.size(), inputName[code], code, t.handle); else printf("[%02d] %s(%d): %s\n", scopeStack.size(), inputName[code], code, td[t.handle]); return code; } AgStack<ParserState> stateStack; #include "cpp.h" /* * AnaGram, A System for Syntax Directed Programming * File generated by: ... * * AnaGram Parsing Engine * Copyright 1993-2002 Parsifal Software. All Rights Reserved. * * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages * arising from the use of this software. * * Permission is granted to anyone to use this software for any purpose, * including commercial applications, and to alter it and redistribute it * freely, subject to the following restrictions: * * 1. The origin of this software must not be misrepresented; you must not * claim that you wrote the original software. If you use this software * in a product, an acknowledgment in the product documentation would be * appreciated but is not required. * 2. Altered source versions must be plainly marked as such, and must not be * misrepresented as being the original software. * 3. This notice may not be removed or altered from any source distribution. */ #ifndef CPP_H #include "cpp.h" #endif #ifndef CPP_H #error Mismatched header file #endif #include <ctype.h> #include <stdio.h> #define RULE_CONTEXT (&((PCB).cs[(PCB).ssx])) #define ERROR_CONTEXT ((PCB).cs[(PCB).error_frame_ssx]) #define CONTEXT ((PCB).cs[(PCB).ssx]) #define INPUT_VALUE(type) *(type *) &(PCB).input_value #line - "cpp.syn" #include "mpp.h" #include "token.h" #define GET_CONTEXT CONTEXT = ParserState() int typedefFlag = 0; AgStack<int> typedefStack; int templateFlag = 0; AgStack<int> templateStack; AgStack<InputToken> tokenStack; ParserState::ParserState() : pointer(pcbPointer ? pcbPointer->pointer : 0), line(pcbPointer ? pcbPointer->line : 0), scopeStackDepth(scopeStack.size()), typedefStackDepth(typedefStack.size()), nLocalVariables(scopeStackDepth ? scopeStack.top()->nLocals(): 0), templateStackDepth(templateStack.size()), typedefFlag(::typedefFlag), templateFlag(::templateFlag) { } void ParserState::restore() { PCB.pointer = pointer; PCB.line = line; while (scopeStack.size() > scopeStackDepth) scopeStack.pop(); while (typedefStack.size() > typedefStackDepth) typedefStack.pop(); while (templateStack.size() > templateStackDepth) templateStack.pop(); scopeStack.top()->restoreLocals(nLocalVariables); ::typedefFlag = typedefFlag; ::templateFlag = templateFlag; } void diagnose(char *msg) { printf("Error: %s\n", msg); PCB.exit_flag = AG_SEMANTIC_ERROR_CODE; } c_parser::c_parser() { pcbPointer = &pcb; //init_parse(); // init parse } // Destructor c_parser::~c_parser() { } // Reset Parser c_parser &reset(c_parser &c) { return c; } // Transmit token to c_parser /* The overloaded operator "<<" is used to transmit data to a parser. Newline tokens are filtered out, since they are passed along by the token scanner only in case text output of the preprocessor is required. If the parser has encountered an error, there is no point in giving it any further input. Otherwise, the input_code and input_value fields of the pcb are set up and cc() is called to deal with the token. */ token_sink &c_parser::operator << (InputToken c) { printf("%d\n", c.code); if (c.code == 10) return *this; tokenStack.push(c); if (c.code == END_OF_FILE) { int k = tokenStack.size(); int n = k; InputToken *tokenArray = new InputToken[k]; while (k--) { tokenStack.pop(tokenArray[k]); } PCB.pointer = tokenArray; trackPointer = tokenArray - 1; PCB.line = 1; scopeStack.push(new Scope); // global scope parse(); } return *this; } token_sink &c_parser::operator << (InputToken *s) { while (s->code != END_OF_FILE) { if ((int) s->code == 10) continue; tokenStack.push(*s++); } return *this; } #line - "cpp.cpp" #ifndef CONVERT_CASE #define CONVERT_CASE(c) (c) #endif #ifndef TAB_SPACING #define TAB_SPACING 8 #endif static void ag_rp_1(InputToken x) { #line - "cpp.syn" PCB.line = x.handle; #line - "cpp.cpp" } static TypeDefinition ag_rp_2(InputToken n) { #line - "cpp.syn" return TypeDefinition(n); #line - "cpp.cpp" } static TypeDefinition ag_rp_3(InputToken n) { #line - "cpp.syn" return TypeDefinition(n); #line - "cpp.cpp" } static void ag_rp_4(InputToken n) { #line - "cpp.syn" TypeDefinition d(n); if (typedefFlag) { d.tokenType = TYPEDEF_NAME; typedefFlag = 0; } scopeStack.top()->addIdentifier(d); #line - "cpp.cpp" } static Scope * ag_rp_5(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_6(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_7(TypeDefinition n) { #line - "cpp.syn" return n.scope; #line - "cpp.cpp" } static Scope * ag_rp_8(TypeDefinition n) { #line - "cpp.syn" return n.scope; #line - "cpp.cpp" } static Scope * ag_rp_9(TypeDefinition n) { #line - "cpp.syn" return scopeStack[0]->getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_10(TypeDefinition n) { #line - "cpp.syn" return scopeStack[0]->getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_11(Scope * s, TypeDefinition n) { #line - "cpp.syn" return (s == 0) ? 0 : s->getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_12(Scope * s, TypeDefinition n) { #line - "cpp.syn" return (s == 0) ? 0 : s->getNestedScope(n.handle); #line - "cpp.cpp" } static void ag_rp_13(void) { #line - "cpp.syn" diagnose("expression list hack 2"); #line - "cpp.cpp" } static void ag_rp_14(void) { #line - "cpp.syn" diagnose("expression hack 1"); #line - "cpp.cpp" } static void ag_rp_15(void) { #line - "cpp.syn" diagnose("expression hack 1"); #line - "cpp.cpp" } static void ag_rp_16(void) { #line - "cpp.syn" diagnose("statement try 3"); #line - "cpp.cpp" } static void ag_rp_17(void) { #line - "cpp.syn" restoreScope(); #line - "cpp.cpp" } static void ag_rp_18(void) { #line - "cpp.syn" nestScope(); #line - "cpp.cpp" } static void ag_rp_19(void) { #line - "cpp.syn" diagnose("condition kernel 2"); #line - "cpp.cpp" } static void ag_rp_20(void) { #line - "cpp.syn" restoreScope(); #line - "cpp.cpp" } static void ag_rp_21(void) { #line - "cpp.syn" nestScope(); #line - "cpp.cpp" } static void ag_rp_22(void) { #line - "cpp.syn" diagnose("for init 2"); #line - "cpp.cpp" } static int ag_rp_23(void) { #line - "cpp.syn" return 0; #line - "cpp.cpp" } static void ag_rp_24(void) { #line - "cpp.syn" printf("declaration hack complete\n"); #line - "cpp.cpp" } static void ag_rp_25(void) { #line - "cpp.syn" CONTEXT.restore(); #line - "cpp.cpp" } static void ag_rp_26(void) { #line - "cpp.syn" printf("variable declaration\n"); #line - "cpp.cpp" } static void ag_rp_27(void) { #line - "cpp.syn" printf("variable declaration\n"), restoreScope(); #line - "cpp.cpp" } static void ag_rp_28(void) { #line - "cpp.syn" printf("variable declaration\n"), restoreScope(); #line - "cpp.cpp" } static void ag_rp_29(void) { #line - "cpp.syn" printf("function definition 2\n"); #line - "cpp.cpp" } static void ag_rp_30(void) { #line - "cpp.syn" printf("function definition 2\n"), restoreScope(); #line - "cpp.cpp" } static void ag_rp_31(void) { #line - "cpp.syn" printf("function definition 2\n"), restoreScope(); #line - "cpp.cpp" } static void ag_rp_32(void) { #line - "cpp.syn" printf("declarator list\n"); #line - "cpp.cpp" } static void ag_rp_33(void) { #line - "cpp.syn" printf("declarator list\n"), restoreScope(); #line - "cpp.cpp" } static void ag_rp_34(void) { #line - "cpp.syn" printf("function definition 1\n"); #line - "cpp.cpp" } static void ag_rp_35(void) { #line - "cpp.syn" diagnose("attempt declarator list"); #line - "cpp.cpp" } static void ag_rp_36(void) { #line - "cpp.syn" PCB.pointer--; #line - "cpp.cpp" } static void ag_rp_37(void) { #line - "cpp.syn" typedefFlag = 1; #line - "cpp.cpp" } static void ag_rp_38(InputToken n) { #line - "cpp.syn" TypeDefinition d(n); if (templateFlag) { d.tokenType = TEMPLATE_NAME; scopeStack[scopeStack.size() - 2]->addIdentifier(d); } else { d.tokenType = CLASS_NAME; scopeStack.top()->addIdentifier(d); } #line - "cpp.cpp" } static void ag_rp_39(TypeDefinition d) { #line - "cpp.syn" if (templateFlag) { d.tokenType = TEMPLATE_NAME; scopeStack[scopeStack.size() - 2]->addIdentifier(d); } else { d.tokenType = CLASS_NAME; scopeStack.top()->addIdentifier(d); } #line - "cpp.cpp" } static void ag_rp_40(Scope * scope, InputToken n) { #line - "cpp.syn" TypeDefinition d(n); d.tokenType = templateFlag ? TEMPLATE_NAME : CLASS_NAME; scope->addIdentifier(d); #line - "cpp.cpp" } static void ag_rp_41(Scope * scope, TypeDefinition d) { #line - "cpp.syn" d.tokenType = templateFlag ? TEMPLATE_NAME : CLASS_NAME; scope->addIdentifier(d); #line - "cpp.cpp" } static void ag_rp_42(InputToken n) { #line - "cpp.syn" TypeDefinition d(n); d.tokenType = ENUM_NAME; scopeStack.top()->addIdentifier(d); #line - "cpp.cpp" } static TypeDefinition ag_rp_43(InputToken n) { #line - "cpp.syn" return TypeDefinition(n); #line - "cpp.cpp" } static TypeDefinition ag_rp_44(InputToken n) { #line - "cpp.syn" return TypeDefinition(n); #line - "cpp.cpp" } static Scope * ag_rp_45(void) { #line - "cpp.syn" return scopeStack[0]; #line - "cpp.cpp" } static Scope * ag_rp_46(TypeDefinition n) { #line - "cpp.syn" return getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_47(TypeDefinition n) { #line - "cpp.syn" return getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_48(Scope * s, TypeDefinition n) { #line - "cpp.syn" return s->getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_49(Scope * s, TypeDefinition n) { #line - "cpp.syn" return (s == 0) ? 0 : s->getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_50(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_51(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_52(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_53(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_54(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_55(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_56(void) { #line - "cpp.syn" return new Scope; #line - "cpp.cpp" } static Scope * ag_rp_57(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_58(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_59(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_60(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_61(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_62(InputToken n) { #line - "cpp.syn" TypeDefinition d(n); if (typedefFlag) { d.tokenType = TYPEDEF_NAME; typedefFlag = 0; scopeStack.top()->addIdentifier(d); } return new Scope; #line - "cpp.cpp" } static Scope * ag_rp_63(InputToken n) { #line - "cpp.syn" TypeDefinition d(n); if (typedefFlag) { d.tokenType = TYPEDEF_NAME; typedefFlag = 0; scopeStack.top()->addIdentifier(d); } return new Scope; #line - "cpp.cpp" } static Scope * ag_rp_64(InputToken n) { #line - "cpp.syn" return TypeDefinition(n).scope; #line - "cpp.cpp" } static Scope * ag_rp_65(InputToken n) { #line - "cpp.syn" return TypeDefinition(n).scope; #line - "cpp.cpp" } static void ag_rp_66(void) { #line - "cpp.syn" diagnose("declarator hack 3"); #line - "cpp.cpp" } static void ag_rp_67(void) { #line - "cpp.syn" diagnose("expression list hack 4"); #line - "cpp.cpp" } static void ag_rp_68(void) { #line - "cpp.syn" if (templateFlag) restoreScope(); #line - "cpp.cpp" } static void ag_rp_69(void) { #line - "cpp.syn" if (templateFlag) restoreScope(); #line - "cpp.cpp" } static void ag_rp_70(Scope * s) { #line - "cpp.syn" nestScope(s); #line - "cpp.cpp" } static void ag_rp_71(Scope * s) { #line - "cpp.syn" nestScope(s); #line - "cpp.cpp" } static void ag_rp_72(Scope * s) { #line - "cpp.syn" nestScope(s); #line - "cpp.cpp" } static void ag_rp_73(Scope * s) { #line - "cpp.syn" nestScope(s); #line - "cpp.cpp" } static void ag_rp_74(void) { #line - "cpp.syn" restoreScope(); #line - "cpp.cpp" } static void ag_rp_75(void) { #line - "cpp.syn" restoreScope(); #line - "cpp.cpp" } static void ag_rp_76(void) { #line - "cpp.syn" restoreScope(); #line - "cpp.cpp" } static void ag_rp_77(void) { #line - "cpp.syn" CONTEXT.restore(); #line - "cpp.cpp" } static void ag_rp_78(void) { #line - "cpp.syn" nestScope(); #line - "cpp.cpp" } static void ag_rp_79(InputToken n) { #line - "cpp.syn" TypeDefinition d(n); int flag = templateFlag; d.scope = nestScope(d.handle); if (flag) { d.tokenType = TEMPLATE_NAME; scopeStack[scopeStack.size() - 3]->addIdentifier(d); } else { d.tokenType = CLASS_NAME; scopeStack[scopeStack.size() - 2]->addIdentifier(d); } #line - "cpp.cpp" } static void ag_rp_80(TypeDefinition d) { #line - "cpp.syn" d.tokenType = templateFlag? TEMPLATE_NAME : CLASS_NAME; int flag = templateFlag; d.scope = nestScope(d.handle); if (flag) scopeStack[scopeStack.size() - 3]->addIdentifier(d); else scopeStack[scopeStack.size() - 2]->addIdentifier(d); #line - "cpp.cpp" } static void ag_rp_81(InputToken n) { #line - "cpp.syn" TypeDefinition d(n); d.tokenType = templateFlag? TEMPLATE_NAME : CLASS_NAME; int flag = templateFlag; d.scope = nestScope(d.handle); if (flag) scopeStack[scopeStack.size() - 3]->addIdentifier(d); else scopeStack[scopeStack.size() - 2]->addIdentifier(d); #line - "cpp.cpp" } static void ag_rp_82(Scope * s, InputToken n) { #line - "cpp.syn" if (s != 0) s->nest(new Scope(n.handle)); #line - "cpp.cpp" } static void ag_rp_83(Scope * s, InputToken h) { #line - "cpp.syn" if (s != 0) s->nest(new Scope(h.handle)); #line - "cpp.cpp" } static void ag_rp_84(void) { #line - "cpp.syn" diagnose("member specification"); #line - "cpp.cpp" } static void ag_rp_85(void) { #line - "cpp.syn" printf("try member declarator list\n"); #line - "cpp.cpp" } static void ag_rp_86(Scope * s) { #line - "cpp.syn" scopeStack.top()->addBase(s); #line - "cpp.cpp" } static void ag_rp_87(Scope * s) { #line - "cpp.syn" scopeStack.top()->addBase(s); #line - "cpp.cpp" } static Scope * ag_rp_88(InputToken n) { #line - "cpp.syn" return getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_89(InputToken n) { #line - "cpp.syn" return getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_90(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_91(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_92(Scope * s) { #line - "cpp.syn" return s; #line - "cpp.cpp" } static Scope * ag_rp_93(InputToken n) { #line - "cpp.syn" return getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_94(InputToken n) { #line - "cpp.syn" return getNestedScope(n.handle); #line - "cpp.cpp" } static Scope * ag_rp_95(Scope * s, TypeDefinition n) { #line - "cpp.syn" return (s == 0) ? 0 : s->getNestedScope(n.handle); #line - "cpp.cpp" } static void ag_rp_96(void) { #line - "cpp.syn" nestScope(); #line - "cpp.cpp" } static void ag_rp_97(void) { #line - "cpp.syn" templateFlag = 1; #line - "cpp.cpp" } static void ag_rp_98(InputToken n) { #line - "cpp.syn" scopeStack.top()->addIdentifier(TypeDefinition(n.handle, CLASS_NAME)); #line - "cpp.cpp" } static InputToken ag_rp_99(InputToken n) { #line - "cpp.syn" return n; #line - "cpp.cpp" } #ifndef AG_TRACE_FILE_NAME #define AG_TRACE_FILE_NAME "cpp.etr" #endif static void ag_trace_error(void) { FILE *ag_file = fopen(AG_TRACE_FILE_NAME, "w"); int i; if (ag_file == NULL) return; fprintf(ag_file, "%d\n", (PCB).ssx); for (i = 0; i < (PCB).ssx; i++) fprintf(ag_file, "%d\n", (PCB).ss[i]); fprintf(ag_file, "%d\n", (PCB).sn); fprintf(ag_file, "%d\n", (PCB).token_number); fclose(ag_file); } #define READ_COUNTS #define WRITE_COUNTS #undef V #define V(i,t) (*t (&(PCB).vs[(PCB).ssx + i])) #undef VS #define VS(i) (PCB).vs[(PCB).ssx + i] #ifndef GET_CONTEXT #define GET_CONTEXT CONTEXT = (PCB).input_context #endif typedef enum { ag_action_1, ag_action_2, ag_action_3, ag_action_4, ag_action_5, ag_action_6, ag_action_7, ag_action_8, ag_action_9, ag_action_10, ag_action_11, ag_action_12 } ag_parser_action; #ifndef NULL_VALUE_INITIALIZER #define NULL_VALUE_INITIALIZER = { 0 } #endif static parse_vs_type const ag_null_value NULL_VALUE_INITIALIZER; static const unsigned char ag_rpx[] = { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 5, 6, 7, 8, 9, 10, 11, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 20, 21, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 27, 28, 29, 30, 31, 0, 32, 33, 34, 35, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, 0, 0, 0, 0, 0, 0, 0, 0, 42, 0, 0, 0, 0, 43, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, 0, 50, 51, 52, 0, 0, 0, 0, 53, 0, 0, 54, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66, 0, 0, 0, 0, 0, 0, 67, 0, 0, 68, 69, 0, 70, 71, 72, 0, 0, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 76, 77, 78, 79, 80, 81, 82, 83, 0, 0, 0, 0, 0, 0, 0, 0, 84, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 87, 88, 89, 90, 0, 0, 91, 0, 0, 92, 93, 94, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 0, 0, 0, 0, 0, 0, 0, 0, 99 }; #define AG_TCV(x) ag_tcv[(x)] static const unsigned short ag_tcv[] = { 15,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491, 491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,400,491,491, 491,406,396,491,378,377,397,398,393,399,382,405,484,491,491,491,491,491, 491,491,491,491,417,430,387,419,386,418,491,415,423,427,383,491,385,421, 479,411,410,384,409,407,425,422,420,412,416,428,408,426,424,429,371,372, 491,381,491,380,413,491,491,403,404,376,492,491,491,491,491,491,491,491, 491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,434,414,433, 394,491,491,375,373,467,468,478,471,472,491,491,491,367,368,369,370,446, 441,431,456,476,442,432,439,465,436,469,449,464,440,444,435,460,461,447, 443,459,462,395,448,482,437,455,483,463,466,477,438,475,491,491,458,490, 481,491,391,402,388,453,445,491,454,451,450,473,401,491,491,488,485,486, 487,390,389,379,374,489,491,480,392,470,474,452,457,493,493,493,493,493, 491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491, 491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491,491, 491,491,491,491 }; #ifndef SYNTAX_ERROR #define SYNTAX_ERROR fprintf(stderr,"%s\n", (PCB).error_message) #endif #ifndef PARSER_STACK_OVERFLOW #define PARSER_STACK_OVERFLOW {fprintf(stderr, \ "\nParser stack overflow\n");} #endif #ifndef REDUCTION_TOKEN_ERROR #define REDUCTION_TOKEN_ERROR {fprintf(stderr, \ "\nReduction token error\n");} #endif #ifndef INPUT_CODE #define INPUT_CODE(T) (T) #endif static void ag_prot(void) { int ag_k; ag_k = 128 - ++(PCB).btsx; if (ag_k <= (PCB).ssx) { ag_trace_error(); (PCB).exit_flag = AG_STACK_ERROR_CODE; PARSER_STACK_OVERFLOW; return; } (PCB).bts[(PCB).btsx] = (PCB).sn; (PCB).bts[ag_k] = (PCB).ssx; (PCB).vs[ag_k] = (PCB).vs[(PCB).ssx]; (PCB).ss[ag_k] = (PCB).ss[(PCB).ssx]; (PCB).cs[ag_k] = (PCB).cs[(PCB).ssx]; } static void ag_undo(void) { if ((PCB).drt == -1) return; while ((PCB).btsx) { int ag_k = 128 - (PCB).btsx; (PCB).sn = (PCB).bts[(PCB).btsx--]; (PCB).ssx = (PCB).bts[ag_k]; (PCB).vs[(PCB).ssx] = (PCB).vs[ag_k]; (PCB).ss[(PCB).ssx] = (PCB).ss[ag_k]; (PCB).cs[(PCB).ssx] = (PCB).cs[ag_k]; } (PCB).token_number = (parse_token_type) (PCB).drt; (PCB).ssx = (PCB).dssx; (PCB).sn = (PCB).dsn; (PCB).drt = -1; } static const unsigned short ag_tstt[] = { 493,492,483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465, 464,463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447, 446,445,430,379,376,373,15,0,1,365,366, 493,492,0,1, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 430,379,376,373,15,0,13,14,178, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 433,430,379,376,373,86,15,0,5,7,8,24,25,28,37,38,80,136,137,138,140,172, 179,180,181,182,183,184,185,186,187,188,189,190,191,205,206,209,211,215, 216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233, 234,235,236,237,238,239,240,241,242,244,245,246,248,250,254,255,256,257, 258,259,260,263,264,278,279,280,307,312,318,319,320, 15,0, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 387,0,52, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 478,472,471,373,0,5,24,25,38,254,255,280, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 478,472,471,376,373,0,5,8,24,25,28,38,254,255,280, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 376,0,28, 387,0,52, 478,472,471,434,417,376,375,373,0,5,6,24,25,28,38,116,153,247,254,255,280, 316, 478,472,471,434,376,375,373,0,5,6,24,25,28,38,153,247,254,255,280, 434,417,0,116,153, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 488,479,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,430,419, 417,397,396,394,393,381,378,377,376,375,373,0,140,209,212,216,217,218, 219,220,221,222,223,224,225,226,227,228,278,279, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,455,454,453,452,451,450,449,448,447,446,376,373,0,5,7,8, 24,25,28,38,140,206,211,215,216,217,218,219,220,221,222,223,224,225,226, 227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,244,245, 246,248,250,254,255,278,279,280,312,318,319,320, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,208,216,217,218,219,220,221,222,223,224, 225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 480,434,0,153,303,305,308, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,173,254,255,265,266,268,280,339, 430,0,143, 478,473,472,471,470,376,373,0,5,8,24,25,28,38,250,254,255,260,280, 471,434,375,0,6,153,254, 378,0,31, 372,0,22, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 430,387,379,376,373,86,0,5,7,8,24,25,28,37,38,52,80,136,137,138,140,172, 180,181,182,183,184,185,186,187,188,189,190,191,205,206,209,211,215,216, 217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234, 235,236,237,238,239,240,241,242,244,245,246,248,250,254,255,256,257,258, 259,260,263,264,278,279,280,307,312,318,319,320, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,445,397,396, 394,379,378,376,375,373,86,0,37,80,140,141,144,190,191,192,216,217,218, 219,220,221,222,223,224,225,226,227,228,278,279,300, 379,0,37,190, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,455,454,453,452,451,450,449,448,447,446,430,376,373,0,5, 7,8,24,25,28,38,137,138,140,172,205,206,209,211,215,216,217,218,219,220, 221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238, 239,240,241,242,244,245,246,248,250,254,255,278,279,280,307,312,318,319, 320, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,53,80,87,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,249, 250,254,255,278,279,280,283,318,319,320,357, 376,0,28, 478,472,471,468,467,373,0,5,24,25,38,244,245,254,255,280, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,53,80,87,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,249, 250,254,255,278,279,280,283,318,319,320,357, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 376,0,28, 478,472,471,379,375,373,0,5,6,24,25,37,38,254,255,280, 434,417,387,0,52,116,153,316, 488,479,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,434,430, 419,417,397,396,394,393,381,378,377,376,375,373,0,28,116,153,316, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 488,479,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,434,430, 419,417,397,396,394,393,381,378,377,376,375,373,0,116,153,316, 433,375,0,6,251,252,253, 376,0,28, 478,472,471,375,373,0,5,6,24,25,38,254,255,280, 434,0,153, 487,486,485,478,472,471,452,376,373,0,5,24,25,28,38,224,247,254,255,280,315, 326,331,332,333,336,337,338, 487,486,485,483,482,481,478,477,476,474,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 433,430,376,373,86,0,5,7,8,24,25,28,38,80,138,140,143,172,188,206,209, 211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231, 232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250,254,255, 263,278,279,280,307,312,313,314,318,319,320,321,322,323,326,336,337,338, 477,476,455,454,453,452,451,450,449,448,447,446,0,140,216,217,218,219,220, 221,222,223,224,225,226,227,228,278,279, 488,479,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,430,419, 417,397,396,394,393,381,378,377,376,375,373,0,140,209,212,216,217,218, 219,220,221,222,223,224,225,226,227,228,278,279, 488,479,478,477,476,472,471,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,430,419,417,397,396,394,393,381,378, 377,376,375,373,0,140,206,207,208,210,216,217,218,219,220,221,222,223, 224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 434,0,153,303, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,433,432,431,430,376,375,373,86, 0,2,5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147, 148,149,150,151,153,154,157,161,162,163,168,172,174,175,176,177,186,187, 188,189,205,206,209,211,215,216,217,218,219,220,221,222,223,224,225,226, 227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,244,245, 246,248,250,254,255,260,263,264,278,279,280,305,307,312,318,319,320, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,429,428,427,426,425,424,423,422,421,420,419,416,415,414, 413,412,411,410,409,408,407,406,405,404,402,401,400,399,398,397,396,394, 393,387,386,385,384,383,381,378,376,373,0,3,5,7,8,9,10,24,25,28,31,38, 40,47,49,50,52,54,60,62,69,70,71,72,73,91,93,94,97,98,100,101,103,104, 107,109,111,113,119,120,121,122,123,124,125,126,127,128,129,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320,340,346, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 478,373,0,24,280, 480,479,434,430,419,417,393,387,386,381,378,377,0,52, 480,479,434,430,419,417,393,386,381,378,377,376,0, 376,0,28, 488,480,479,478,477,476,472,471,434,433,430,429,428,427,426,425,424,423,422, 421,420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404, 403,399,398,397,396,394,393,387,386,385,384,383,382,381,380,378,377,376, 375,373,0,228,270,271,278,279, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,254,255,266,268,280,339, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,254,255,265,266,268,280,339, 480,434,430,419,393,381,378,0,31,40,119,267, 430,393,0,60,143, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 478,472,471,376,373,0,5,24,25,28,38,247,254,255,280, 478,472,471,376,373,0,5,8,24,25,28,38,254,255,280, 488,478,472,471,375,373,0,5,6,24,25,29,34,36,38,254,255,280,339, 376,0,28, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 433,430,379,376,373,0,178,261, 434,0,153, 434,419,0,119,153, 372,0,22, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 434,430,379,376,373,86,0,5,7,8,24,25,28,37,38,80,136,137,138,140,153, 172,180,181,182,183,184,185,186,187,188,189,190,191,205,206,209,211,215, 216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233, 234,235,236,237,238,239,240,241,242,244,245,246,248,250,254,255,256,257, 258,259,260,263,264,278,279,280,307,312,318,319,320, 481,478,477,476,472,471,470,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,386,379,376,373,0,54,347, 379,0,37,190, 480,434,417,0,116,301,302,304,305, 387,0,52, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,397,396,394, 378,376,375,373,0,140,141,216,217,218,219,220,221,222,223,224,225,226, 227,228,278,279, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,142,159,254,255,266,268,280,339, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,455,454,453,452,451,450,449,448,447,446,430,376,373,0,5, 7,8,24,25,28,38,137,138,140,172,205,206,209,211,215,216,217,218,219,220, 221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238, 239,240,241,242,244,245,246,248,250,254,255,278,279,280,307,312,318,319, 320, 478,472,471,376,375,373,0,5,6,24,25,28,38,247,254,255,280, 478,472,471,376,375,373,0,5,6,24,25,28,38,247,254,255,280, 488,480,479,478,477,476,472,471,434,433,430,429,428,427,426,425,424,423,422, 421,420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404, 403,399,398,397,396,394,393,387,386,385,384,383,382,381,380,378,377,376, 375,373,0,228,278,279,283,284, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,5,7,8,24,25,28,38,206,215,228,229,230,231,232, 233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255,278,279, 280,318,319,320, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,208,216,217,218,219,220,221,222,223,224, 225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 478,472,471,397,396,393,386,381,378,377,376,373,0,4,5,8,24,25,28,31,38,40, 69,70,254,255,280,281,282,291, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,86,0,5,6,8,9,10,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,88,89,92,95,96,206,215,229,230,231,232, 233,234,235,236,237,238,239,244,245,254,255,280,339,352,353,354, 387,0,52, 393,386,0,54,60, 478,472,471,375,373,0,5,6,24,25,38,254,255,280, 393,386,0,54,60, 478,0,25,280, 376,0,28, 488,480,479,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,434, 433,430,429,428,427,426,425,424,423,422,421,420,419,418,417,416,415,414, 413,412,411,410,409,408,407,406,405,404,403,399,398,397,396,394,393,387, 386,385,384,383,382,381,380,378,377,376,375,373,0,28, 488,479,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,434,430, 419,417,397,396,394,393,381,378,377,376,375,373,0,116,153,316, 419,0,119, 393,0,60, 433,0,152, 376,0,28, 433,375,0,6,251,252,253, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 478,472,471,373,0,5,24,25,38,254,255,280, 478,472,471,452,376,373,0,224,335, 487,486,485,478,472,471,376,373,0,326,334,336,337,338, 434,393,387,0,52, 434,393,376,0, 393,0,60, 434,0,153, 478,472,471,470,376,373,0,5,8,24,25,28,38,250,254,255,280, 417,0,116, 488,478,472,471,430,417,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29, 31,34,36,38,62,69,70,116,159,254,255,266,268,280,324,325,327,339, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,445,417,397, 396,394,379,378,376,375,373,86,0,37,140,141,144,190,191,216,217,218,219, 220,221,222,223,224,225,226,227,228,278,279,300, 487,486,485,483,482,481,478,477,476,474,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 433,430,376,373,86,0,5,7,8,24,25,28,38,80,138,140,143,172,188,206,209, 211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231, 232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250,254,255, 263,278,279,280,307,312,318,319,320,321,322,323,326,336,337,338, 433,0,152, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 490,0,306,358,359, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 375,0,6, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 378,0,31, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 434,0,131,149,153, 375,0,6, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,430, 402,401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62, 63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108, 110,112,114,118,167,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 430,0,143, 430,0,143, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,455,454,453,452,451,450,449,448,447,446,430,376,373,86, 0,5,7,8,24,25,28,38,80,140,164,165,169,170,172,206,209,211,215,216,217, 218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235, 236,237,238,239,240,241,242,244,245,246,248,250,254,255,278,279,280,312, 318,319,320, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 378,0,31, 378,0,31, 378,0,31, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,433,432,431,430,376,375,373,86, 0,2,5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147, 148,149,150,151,153,154,157,161,162,163,168,172,174,175,176,177,186,187, 188,189,205,206,209,211,215,216,217,218,219,220,221,222,223,224,225,226, 227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,244,245, 246,248,250,254,255,260,263,264,278,279,280,305,307,312,318,319,320, 417,0,116, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112,114, 206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255,280, 339, 417,0,116, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,445,397,396, 394,379,378,376,375,373,86,0,37,80,139,140,141,144,190,191,216,217,218, 219,220,221,222,223,224,225,226,227,228,278,279,300, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,433,432,431,430,376,375,373,86, 0,2,5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147, 148,149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189, 205,206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228, 229,230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248, 250,254,255,260,263,264,278,279,280,305,307,312,318,319,320, 433,0,152, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 380,0,42, 377,0,33, 381,0,40, 381,0,40, 480,479,478,472,471,434,433,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,399,398, 397,396,393,387,386,385,384,383,382,381,380,378,377,376,373,0,4,5,8,24, 25,28,38,69,70,254,255,280,341,342, 488,478,472,471,397,394,375,373,0,5,6,24,25,29,34,36,38,62,70,254,255,280, 339, 489,488,480,479,478,477,476,472,471,434,433,430,429,428,427,426,425,424,423, 422,421,420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405, 404,403,399,398,397,396,394,393,387,386,385,384,383,382,381,380,378,377, 376,375,373,0,228,270,271,278,279, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,254,255,266,268,280,339, 480,434,430,419,417,393,381,378,377,0,31,40, 377,0,33, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,380,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112, 114,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255, 274,280,339, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,377,376,373, 86,0,5,7,8,24,25,28,38,80,140,172,206,209,211,215,216,217,218,219,220, 221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238, 239,240,241,242,244,245,246,248,250,254,255,269,278,279,280,289,290,292, 293,294,296,312,318,319,320, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,434, 402,401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110, 112,114,118,153,206,215,229,230,231,232,233,234,235,236,237,238,239,244, 245,254,255,280,309,339,354, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,254,255,265,266,268,280,339, 478,472,471,373,0,5,24,25,38,254,255,280, 430,376,0,28,143, 376,0,28, 430,0,143, 488,478,472,471,375,373,0,5,6,24,25,29,34,36,38,254,255,280,339, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 433,430,379,376,373,86,0,5,7,8,24,25,28,37,38,80,136,137,138,140,172, 179,180,181,182,183,184,185,186,187,188,189,190,191,205,206,209,211,215, 216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233, 234,235,236,237,238,239,240,241,242,244,245,246,248,250,254,255,256,257, 258,259,260,263,264,278,279,280,307,312,318,319,320, 433,0,152, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 433,430,379,376,373,0,178,261, 478,472,471,376,373,0,5,24,25,28,38,247,254,255,262,280, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 433,430,379,376,373,0,178,261, 377,0,33, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 433,430,379,376,373,0,14,178, 483,482,481,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463, 462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,445, 430,379,376,373,86,0,5,7,8,24,25,28,37,38,80,136,137,138,140,172,180, 181,182,183,184,185,186,187,188,189,190,191,205,206,209,211,215,216,217, 218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235, 236,237,238,239,240,241,242,244,245,246,248,250,254,255,256,257,258,259, 260,263,264,278,279,280,307,312,318,319,320, 481,478,477,476,472,471,470,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,379,376,373,0,5,8,24,25,28, 37,38,140,206,209,213,214,215,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,244,245,250,254, 255,278,279,280,318,348,349,350,351, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,397,396,394, 378,376,375,373,0,140,141,216,217,218,219,220,221,222,223,224,225,226, 227,228,278,279, 434,417,0,116,301,302, 478,472,471,376,375,373,0,5,6,24,25,28,38,247,254,255,280,333,343,344,345, 434,0,153,303, 481,478,477,476,472,471,470,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,379,376,373,0,347, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,6,9,10,17,18, 19,20,21,22,24,27,28,31,37,40,46,47,49,50,51,52,54,55,56,57,58,60,62,66, 69,70,71,72,73,90,91,93,94,97,98,100,101,103,104,107,109,111,113,115, 116,119,120,121,122,123,124,125,126,127,128,129,143,147,148,153,154,156, 157,161,162,168,174,175,176,177,191,194,195,197,198,217,218,219,220,221, 223,224,225,226,227,229,230,231,232,233,234,235,236,237,238,239,244,245, 248,250,254,255,260,263,264,278,279,280,293,305,318,319,320,330,336,337, 338,339,354,359,364, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,142,159,254,255,266,268,280,339, 480,434,430,417,393,0, 430,393,0,60,143, 478,472,471,375,373,0,5,6,24,25,38,254,255,280, 488,480,479,478,477,476,472,471,434,433,430,429,428,427,426,425,424,423,422, 421,420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404, 403,399,398,397,396,394,393,387,386,385,384,383,382,381,380,378,377,376, 375,373,0,28, 477,476,0,228,278,279, 488,480,479,478,477,476,472,471,434,433,430,429,428,427,426,425,424,423,422, 421,420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404, 403,399,398,397,396,394,393,387,386,385,384,383,382,381,380,378,377,376, 375,373,0,228,278,279,283,284, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,208,216,217,218,219,220,221,222,223,224, 225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,380,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112, 114,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255, 274,280,339, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,397,396,381, 378,377,376,373,0,4,5,7,8,24,25,28,31,33,38,40,69,70,140,172,206,209, 211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231, 232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250,254,255, 278,279,280,281,289,291,292,293,294,312,318,319,320, 376,0,28, 381,378,0,31,40, 478,472,471,397,396,393,386,381,378,377,376,373,0,4,5,8,24,25,28,31,38,40, 69,70,254,255,280,281,282,291, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 376,0,28, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 372,0,22, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 488,478,472,471,402,401,375,373,0,5,6,9,10,24,25,29,38,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,381,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,40,45,49,50,51,55,56,57,58,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236, 237,238,239,244,245,254,255,280,339, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,378,376,373,0,3,5,7,8,24,25,28,31,38,75,78,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 378,0,31, 387,0,52, 387,0,52, 387,0,52, 387,0,52, 378,0,31, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,65,66,67,68, 69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 385,384,383,382,381,378,0,31,40,46,47,49,50, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,32,38,53,80,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 404,403,0,90,91, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 406,405,397,0,70,93,94, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,393,392,391,390,389,388,386,385,384,378, 376,375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21, 22,23,24,25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63, 64,65,66,67,68,69,70,71,72,73,74,85,88,89,92,95,96,206,215,229,230,231, 232,233,234,235,236,237,238,239,244,245,254,255,280,339,352,353,354,355, 399,398,0,71,72, 429,428,427,426,425,424,423,422,421,420,419,418,408,407,0,97,98,115,117,119, 120,121,122,123,124,125,126,127,128,129, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,53,80,87,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320,357, 434,417,0,116,153,316, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112,114, 206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255,280, 339, 375,0,6,253, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 433,0,152, 434,393,378,376,0,28, 478,472,471,376,373,0,5,24,25,28,38,247,254,255,280,333, 478,472,471,376,373,0,5,24,25,28,38,247,254,255,280,333, 487,486,485,478,472,471,452,376,373,0,5,24,25,28,38,224,247,254,255,280,326, 332,333,336,337,338, 487,486,485,483,482,481,478,477,476,474,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 433,430,376,373,86,0,5,7,8,24,25,28,38,80,138,140,143,172,188,206,209, 211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231, 232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250,254,255, 263,278,279,280,307,312,313,314,318,319,320,321,322,323,326,336,337,338, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112,114, 206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255,280, 339, 393,0,60, 430,0,143, 480,434,430,419,417,393,381,378,0,116, 480,434,430,419,393,0,119,328,329, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,397,396,394, 378,376,375,373,0,140,141,216,217,218,219,220,221,222,223,224,225,226, 227,228,278,279, 488,478,472,471,417,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34, 36,38,62,69,70,116,159,254,255,266,268,280,324,327,339, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 378,0,31, 490,0,358,359, 419,0,119, 490,0,306,358,359, 430,0,143, 408,407,0,97,98, 410,409,387,386,0,52,54,100,101, 412,411,0,103,104, 396,0,69, 413,0,107, 414,0,109, 489,488,479,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456, 433,430,417,402,401,400,399,398,397,396,395,394,393,392,391,390,389,388, 385,384,380,378,377,376,375,374,373,372,371,370,369,368,367,0,5,6,8,9, 10,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,34,36,38,39,45,49,50, 51,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96, 99,102,105,106,108,110,112,114,118,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339,354,361, 415,0,111, 429,428,427,426,425,424,423,422,421,420,419,418,416,0,113,115,117,119,120, 121,122,123,124,125,126,127,128,129, 393,0,60, 430,0,143, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,173,254,255,265,266,268,280,339, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,86,0,5,6,8,9,10,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,80,85,89,92,95,96,99,102,105,106,108, 110,112,114,118,171,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 430,0,143, 438,0,161, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,80,155,158,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,80,155,158,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,80,155,158,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 433,0,152, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 418,416,0,113,115, 417,0,116, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,86,0,5,6,8,9,10,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,80,85,89,92,95,96,99,102,105,106,108, 110,112,114,118,145,146,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339,354, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,142,159,254,255,266,268,280,339, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 380,0,42, 380,0,42, 480,479,478,472,471,434,433,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,399,398, 397,396,393,387,386,385,384,383,382,381,380,378,377,376,373,0,4,5,8,24, 25,28,38,69,70,254,255,280,341,342, 478,373,0,24,280, 488,480,479,478,477,476,472,471,434,433,430,429,428,427,426,425,424,423,422, 421,420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404, 403,399,398,397,396,394,393,387,386,385,384,383,382,381,380,378,377,376, 375,373,0,228,270,271,278,279, 480,479,434,430,419,417,393,387,386,381,378,377,0,52, 480,479,434,430,419,417,393,386,381,378,377,376,0, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,377,376,373, 0,5,7,8,24,25,28,38,140,172,206,209,211,215,216,217,218,219,220,221,222, 223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240, 241,242,244,245,246,248,250,254,255,269,278,279,280,289,290,292,293,294, 312,318,319,320, 380,0,42, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,86,0,5,6,8,9,10,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,34,36,38,39,43,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110, 112,114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245, 254,255,280,339,354, 377,0,33, 488,479,478,472,471,419,397,396,394,393,381,378,377,376,375,373,0,4,5,6,8, 24,25,28,29,31,34,36,38,40,62,69,70,254,255,268,275,276,280,285,286,287, 339, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 479,393,0,60,293, 377,0,33, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,434, 433,402,401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378, 376,375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21, 22,23,24,25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62, 63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108, 110,112,114,118,152,153,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,309,310,339,354, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,254,255,265,266,268,280,339, 419,381,378,0,31,40,119,267, 430,376,0,28,143, 488,478,472,471,375,373,0,5,6,24,25,29,34,36,38,254,255,280,339, 430,0,143, 433,0,152, 478,472,471,373,0,5,24,25,38,254,255,280, 430,0,143, 433,0,152, 430,0,143, 433,0,152, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,419,397,396, 394,393,386,381,378,376,375,373,0,140,209,212,216,217,218,219,220,221, 222,223,224,225,226,227,228,278,279, 478,477,476,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,376,373,0,5,8,24,25,28,38,140,206, 214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231, 232,233,234,235,236,237,238,239,244,245,254,255,278,279,280, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,208,216,217,218,219,220,221,222,223,224, 225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 488,478,472,471,419,397,396,394,393,386,381,378,376,375,373,0,4,5,6,8,24,25, 28,29,31,34,36,38,40,62,69,70,254,255,268,275,276,280,285,286,287,339, 387,0,52, 419,393,386,375,0,6,356, 419,375,0,6,119, 393,386,0,54,60, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,254,255,266,268,280,339, 434,0,153,303, 376,0,28, 378,0,31, 393,0,60, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 15,0,1,365,366, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,0,200, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,0,199, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,0,201, 480,434,430,417,393,0, 430,393,0,60,143, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,254,255,266,268,280,339, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 380,0,42, 377,0,33, 376,0,28, 377,0,33, 489,477,476,393,386,381,378,377,0,228,270,271,278,279, 478,472,471,397,373,0,5,24,25,38,70,254,255,280, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,380,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112, 114,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255, 274,280,339, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,377,376,373, 0,5,7,8,24,25,28,38,140,172,206,209,211,215,216,217,218,219,220,221,222, 223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240, 241,242,244,245,246,248,250,254,255,278,279,280,289,290,292,293,294,312, 318,319,320, 488,478,472,471,468,467,379,375,373,0,5,6,24,25,29,34,36,37,38,244,245,254, 255,280,339, 429,428,427,426,425,424,423,422,421,420,419,416,415,414,413,412,411,410,409, 408,407,406,405,404,402,401,400,399,398,397,396,394,393,387,386,385,384, 383,381,378,0,9,10,31,40,47,49,50,52,54,60,62,69,70,71,72,73,91,93,94, 97,98,100,101,103,104,107,109,111,113,119,120,121,122,123,124,125,126, 127,128,129,346, 380,0,42, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,53,79,80,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,378,376,373,0,3,5,7,8,24,25,28,31,38,75,206,215,228,229, 230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254, 255,278,279,280,283,318,319,320, 478,472,471,397,396,381,376,373,0,4,5,8,24,25,28,38,40,69,70,82,83,254,255, 280, 479,433,430,429,428,427,426,425,424,423,422,421,420,419,418,417,416,415,414, 413,412,411,410,409,408,407,406,405,404,403,399,398,397,396,393,387,386, 380,378,377,0,31,76,77, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,32,38,53,80,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,377,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,43,44,45,49,50,51,55,56,57,58,59, 62,63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106, 108,110,112,114,118,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,32,38,53,80,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 488,478,472,471,468,467,394,379,376,375,373,0,5,6,8,24,25,28,29,30,34,35,36, 37,38,48,61,62,244,245,254,255,280,339, 488,478,472,471,468,467,394,379,376,375,373,0,5,6,8,24,25,28,29,30,34,35,36, 37,38,48,61,62,244,245,254,255,280,339, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,377,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,43,44,45,49,50,51,55,56,57,58,59, 62,63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106, 108,110,112,114,118,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63,64, 65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 377,0,33, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,86,0,5,6,8,9,10,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110, 112,114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245, 254,255,280,339,354, 377,0,33, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,206,215,229,230,231,232,233,234,235,236,237, 238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,206,215,229,230,231,232,233,234,235,236,237, 238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,206,215,229,230,231,232,233,234,235,236,237, 238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,206,215,229,230,231,232,233,234,235,236, 237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,206,215,229,230,231,232,233,234,235,236, 237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,85,88,89,92,95,96,206,215,229,230,231,232,233, 234,235,236,237,238,239,244,245,254,255,280,339,352,353,354, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339, 434,393,387,0,52, 434,393,376,0, 433,0,152, 488,478,472,471,417,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34, 36,38,62,69,70,116,159,254,255,266,268,280,327,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112,114, 206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255,280, 339, 488,484,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112, 114,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255, 280,330,339, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,254,255,266,268,280,339, 430,393,0,60,143, 480,434,430,419,417,393,0,119,328,329, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,293,318,319,320,360, 490,0,358,359, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,206,215,229,230,231,232,233,234, 235,236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,206,215,229,230,231,232,233,234, 235,236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,102,206,215,229,230,231,232,233, 234,235,236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,206,215,229,230,231,232, 233,234,235,236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,206,215,229,230,231, 232,233,234,235,236,237,238,239,244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,206,215,229,230, 231,232,233,234,235,236,237,238,239,244,245,254,255,280,339, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63,64, 65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,206,215,229, 230,231,232,233,234,235,236,237,238,239,244,245,254,255,280,339, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 393,0,60, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 393,0,60, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,430,376,373,86,0,3,5,7,8,24,25,28,38,80,155,158,166,206, 215,228,229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246, 248,250,254,255,278,279,280,283,318,319,320, 378,0,31, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,86,0,5,6,8,9,10,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,80,85,89,92,95,96,99,102,105,106,108, 110,112,114,118,160,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 488,478,472,471,397,396,394,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34,36, 38,62,69,70,159,254,255,266,268,280,339, 377,0,33, 377,0,33, 377,0,33, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 430,393,0,60,143, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 430,393,0,60,143, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,0,6,9, 10,17,18,19,20,21,22,24,27,28,31,37,40,42,46,47,49,50,51,52,54,55,56,57, 58,60,62,66,69,70,71,72,73,90,91,93,94,97,98,100,101,103,104,107,109, 111,113,115,116,119,120,121,122,123,124,125,126,127,128,129,143,147,148, 152,153,154,156,157,161,162,168,174,175,176,177,191,217,218,219,220,221, 223,224,225,226,227,229,230,231,232,233,234,235,236,237,238,239,244,245, 248,250,254,255,260,263,264,278,279,280,293,298,299,305,318,319,320,330, 336,337,338,339,354,359,364, 393,0,60, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,380,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112, 114,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255, 274,280,339, 381,378,0,31,40, 419,0,119, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,397,396,381, 378,377,376,373,86,0,4,5,7,8,24,25,28,31,33,38,40,69,70,80,140,172,206, 209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230, 231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250,254, 255,277,278,279,280,281,288,289,291,292,293,294,312,318,319,320, 488,479,478,472,471,419,397,396,394,393,386,381,378,377,376,375,373,0,4,5,6, 8,24,25,28,29,31,34,36,38,40,62,69,70,254,255,268,275,276,280,285,286, 287,339, 381,378,0,31,40, 419,0,119, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,376,373,0,5, 7,8,24,25,28,38,140,172,206,209,211,215,216,217,218,219,220,221,222,223, 224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241, 242,244,245,246,248,250,254,255,278,279,280,293,294,312,318,319,320, 489,480,477,476,434,430,419,417,393,381,378,377,0,228,270,271,278,279, 433,393,0,60,311, 430,0,143, 376,0,28, 488,478,477,476,472,471,455,454,453,452,451,450,449,448,447,446,419,397,396, 394,393,386,381,378,376,375,373,0,140,209,212,216,217,218,219,220,221, 222,223,224,225,226,227,228,278,279, 488,478,477,476,472,471,466,465,464,463,462,461,460,459,458,457,456,455,454, 453,452,451,450,449,448,447,446,419,397,396,394,393,386,381,378,376,375, 373,0,140,206,207,208,210,216,217,218,219,220,221,222,223,224,225,226, 227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 477,476,466,465,464,463,462,461,460,459,458,457,456,455,454,453,452,451,450, 449,448,447,446,0,140,206,207,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,278,279, 419,0,119, 419,0,119, 481,478,477,476,472,471,470,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,379,376,373,0,5,8,24,25,28, 37,38,140,206,209,213,214,215,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,244,245,250,254, 255,278,279,280,318,348,349,350,351, 419,0,119, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 419,393,386,0,119, 481,478,477,476,472,471,470,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,379,376,373,0,5,8,24,25,28, 37,38,140,206,209,213,214,215,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,244,245,250,254, 255,278,279,280,318,349,350,351, 490,0,306,358,359, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,377,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,43,44,45,49,50,51,55,56,57,58,59, 62,63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106, 108,110,112,114,118,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 478,472,471,376,375,373,0,5,6,24,25,28,38,247,254,255,280,333,344,345, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,0,6,9, 10,17,18,19,20,21,22,24,27,28,31,33,37,40,42,46,47,49,50,51,52,54,55,56, 57,58,60,62,66,69,70,71,72,73,90,91,93,94,97,98,100,101,103,104,107,109, 111,113,115,116,119,120,121,122,123,124,125,126,127,128,129,143,147,148, 152,153,154,156,157,161,162,168,174,175,176,177,191,194,195,197,198,217, 218,219,220,221,223,224,225,226,227,229,230,231,232,233,234,235,236,237, 238,239,244,245,248,250,254,255,260,263,264,278,279,280,293,305,318,319, 320,330,336,337,338,339,354,359,364, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,0,6,9, 10,17,18,19,20,21,22,24,27,28,31,33,37,40,42,46,47,49,50,51,52,54,55,56, 57,58,60,62,66,69,70,71,72,73,90,91,93,94,97,98,100,101,103,104,107,109, 111,113,115,116,119,120,121,122,123,124,125,126,127,128,129,143,147,148, 152,153,154,156,157,161,162,168,174,175,176,177,191,194,195,197,198,217, 218,219,220,221,223,224,225,226,227,229,230,231,232,233,234,235,236,237, 238,239,244,245,248,250,254,255,260,263,264,278,279,280,293,305,318,319, 320,330,336,337,338,339,354,359,364, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367,0,6,9, 10,17,18,19,20,21,22,24,27,28,31,33,37,40,42,46,47,49,50,51,52,54,55,56, 57,58,60,62,66,69,70,71,72,73,90,91,93,94,97,98,100,101,103,104,107,109, 111,113,115,116,119,120,121,122,123,124,125,126,127,128,129,143,147,148, 152,153,154,156,157,161,162,168,174,175,176,177,191,194,195,197,198,217, 218,219,220,221,223,224,225,226,227,229,230,231,232,233,234,235,236,237, 238,239,244,245,248,250,254,255,260,263,264,278,279,280,293,305,318,319, 320,330,336,337,338,339,354,359,364, 478,472,471,468,467,397,373,0,5,24,25,38,70,244,245,254,255,280, 489,477,476,393,386,381,378,377,0,228,270,271,278,279, 489,393,386,381,378,377,0,272,273,354, 380,0,42, 377,0,33, 488,375,0,6,29,34,36,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,86,0,5,6,8,9,10,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,34,36,38,39,43,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,80,85,89,92,95,96,99,102,105,106,108, 110,112,114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244, 245,254,255,280,339,354, 377,0,33, 377,0,33, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 479,433,430,429,428,427,426,425,424,423,422,421,420,419,418,417,416,415,414, 413,412,411,410,409,408,407,406,405,404,403,399,398,397,396,393,387,386, 380,378,377,0,31,76,77, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63,64, 65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 381,0,40, 478,472,471,397,396,381,376,373,0,4,5,8,24,25,28,38,40,69,70,82,83,254,255, 280, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,377,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,43,44,45,49,50,51,55,56,57,58,59, 62,63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106, 108,110,112,114,118,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 377,0,33, 377,0,33, 386,0,54, 386,0,54, 386,0,54, 386,0,54, 393,0,60, 377,0,33, 377,0,33, 468,467,0,61,244,245, 376,0,28, 488,478,472,471,376,375,373,0,5,6,8,24,25,28,29,30,34,35,36,38,254,255,280, 339, 478,472,471,468,467,394,373,0,5,24,25,38,61,62,244,245,254,255,280, 376,0,28, 488,478,472,471,376,375,373,0,5,6,8,24,25,28,29,30,34,35,36,38,254,255,280, 339, 377,0,33, 393,380,0,42,60, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,206,215,229,230,231,232,233,234,235,236,237,238, 239,244,245,254,255,280,339, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 393,0,60, 404,403,0,90,91, 404,403,0,90,91, 404,403,0,90,91, 406,405,397,0,70,93,94, 406,405,397,0,70,93,94, 417,408,407,0,97,98,116, 399,398,0,71,72, 399,398,0,71,72, 419,0,119,328,329, 488,478,472,471,397,396,394,381,378,376,375,373,0,4,5,6,8,24,25,28,29,31,34, 36,38,40,62,69,70,254,255,268,275,276,280,285,287,339, 377,0,33, 408,407,0,97,98, 408,407,0,97,98, 408,407,0,97,98, 408,407,0,97,98, 410,409,387,386,0,52,54,100,101, 410,409,387,386,0,52,54,100,101, 412,411,0,103,104, 396,0,69, 413,0,107, 414,0,109, 417,393,0,60,116, 415,0,111, 430,0,143, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,86,0,3,5,7,8,24,25,28,38,80,155,158,206,215,228, 229,230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250, 254,255,278,279,280,283,318,319,320, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 393,0,60, 419,0,119, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421,420,419, 418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401, 400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383, 382,381,380,379,378,376,375,374,373,372,371,370,369,368,367,0,6,9,10,17, 18,19,20,21,22,24,27,28,31,37,40,42,46,47,49,50,51,52,54,55,56,57,58,60, 62,66,69,70,71,72,73,90,91,93,94,97,98,100,101,103,104,107,109,111,113, 115,116,119,120,121,122,123,124,125,126,127,128,129,143,147,148,152,153, 154,156,157,161,162,168,174,175,176,177,191,217,218,219,220,221,223,224, 225,226,227,229,230,231,232,233,234,235,236,237,238,239,244,245,248,250, 254,255,260,263,264,278,279,280,293,305,318,319,320,330,336,337,338,339, 354,359,364, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 380,0,42, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,380,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112, 114,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255, 274,280,339, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,377,376,373, 0,5,7,8,24,25,28,38,140,172,206,209,211,215,216,217,218,219,220,221,222, 223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240, 241,242,244,245,246,248,250,254,255,278,279,280,289,290,292,293,294,312, 318,319,320, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 377,0,33, 377,0,33, 489,479,477,476,419,393,386,381,378,377,0,228,270,271,278,279, 488,478,472,471,397,396,394,378,376,375,373,86,0,4,5,6,8,24,25,28,29,31,34, 36,38,62,69,70,159,254,255,266,268,280,339, 377,0,33, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,380,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112, 114,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255, 274,280,339, 483,482,481,479,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461, 460,459,458,457,456,455,454,453,452,451,450,449,448,447,446,377,376,373, 0,5,7,8,24,25,28,38,140,172,206,209,211,215,216,217,218,219,220,221,222, 223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240, 241,242,244,245,246,248,250,254,255,269,278,279,280,289,290,292,293,294, 312,318,319,320, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 489,480,434,430,419,417,393,381,378,377,0,272,273,354, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,434, 402,401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63, 64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110, 112,114,118,153,206,215,229,230,231,232,233,234,235,236,237,238,239,244, 245,254,255,280,309,339,354, 433,0,152, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,85,88,89,92,95,96,206,215,229,230,231,232,233, 234,235,236,237,238,239,244,245,254,255,280,339,352,353,354, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66, 67,68,69,70,71,72,73,74,85,88,89,92,95,96,206,215,229,230,231,232,233, 234,235,236,237,238,239,244,245,254,255,280,339,352,353,354, 393,386,0,54,60, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 490,0,358,359, 377,0,33, 489,393,386,381,378,377,0,272,273,354, 378,0,31, 489,477,476,393,386,381,378,377,0,228,270,271,278,279, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 393,0,60, 479,433,430,429,428,427,426,425,424,423,422,421,420,419,418,417,416,415,414, 413,412,411,410,409,408,407,406,405,404,403,399,398,397,396,393,387,386, 380,378,377,0,31,76,77, 377,0,33, 393,380,0,42,60, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,84,85,89,92,95,96,99,102,105,106,108,110,112,114, 206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255,280, 339, 377,0,33, 378,0,31, 378,0,31, 378,0,31, 378,0,31, 394,0,62, 376,0,28, 468,467,0,61,244,245, 376,0,28, 488,478,472,471,468,467,394,379,375,373,0,5,6,24,25,29,34,36,37,38,61,62, 244,245,254,255,280,339, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,206,215,229,230,231,232,233,234,235, 236,237,238,239,244,245,254,255,280,339,352, 434,0,131,149,153, 488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402,401, 400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375,374, 373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,62,63,64,65,66,67, 68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112,114,206, 215,229,230,231,232,233,234,235,236,237,238,239,244,245,254,255,280,339, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,377,376, 375,374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62, 63,64,65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108, 110,112,114,118,167,206,215,229,230,231,232,233,234,235,236,237,238,239, 244,245,254,255,280,339,354, 377,0,33, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,45,49,50,51,55,56,57,58,59,62,63,64,65, 66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 436,0,156, 380,0,42, 377,0,33, 489,479,477,476,419,393,386,381,378,377,0,228,270,271,278,279, 489,479,419,393,386,381,378,377,0,272,273,354, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,433,432,431,430,429,428,427,426,425,424,423,422,421, 420,419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403, 402,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385, 384,383,382,381,380,379,378,377,376,375,374,373,372,371,370,369,368,367, 0,6,9,10,11,12,17,18,19,20,21,22,24,27,28,31,33,37,40,42,46,47,49,50,51, 52,54,55,56,57,58,60,62,66,69,70,71,72,73,90,91,93,94,97,98,100,101,103, 104,107,109,111,113,115,116,119,120,121,122,123,124,125,126,127,128,129, 143,147,148,152,153,154,156,157,161,162,168,174,175,176,177,191,217,218, 219,220,221,223,224,225,226,227,229,230,231,232,233,234,235,236,237,238, 239,244,245,248,250,254,255,260,263,264,278,279,280,293,305,318,319,320, 330,336,337,338,339,354,359,364, 380,0,42, 377,0,33, 481,0,318, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,377,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229, 230,231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254, 255,278,279,280,283,318,319,320,362,363, 489,393,386,381,378,377,0,272,273,354, 479,433,430,429,428,427,426,425,424,423,422,421,420,419,418,417,416,415,414, 413,412,411,410,409,408,407,406,405,404,403,399,398,397,396,393,387,386, 380,378,377,0,31,76,77, 380,0,42, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63,64, 65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63,64, 65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63,64, 65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 489,488,478,472,471,468,467,466,465,464,463,462,461,460,459,458,457,456,402, 401,400,399,398,397,396,395,394,392,391,390,389,388,385,384,378,376,375, 374,373,372,371,370,369,368,367,0,5,6,8,9,10,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,34,36,38,39,41,45,49,50,51,55,56,57,58,59,62,63,64, 65,66,67,68,69,70,71,72,73,74,85,89,92,95,96,99,102,105,106,108,110,112, 114,118,206,215,229,230,231,232,233,234,235,236,237,238,239,244,245,254, 255,280,339,354, 468,467,0,61,244,245, 488,478,472,471,379,375,373,0,5,6,24,25,29,34,36,37,38,254,255,280,339, 394,0,62, 468,467,0,61,244,245, 376,0,28, 418,408,407,0,97,98,115, 377,0,33, 430,0,143, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 489,479,477,476,419,393,386,381,378,377,0,228,270,271,278,279, 489,479,419,393,386,381,378,377,0,272,273,354, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420, 419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402, 401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384, 383,382,381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,1,365, 366, 493,492,491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475, 474,473,472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457, 456,455,454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439, 438,437,436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420, 419,418,417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402, 401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384, 383,382,381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,1,365, 366, 491,490,489,488,487,486,485,484,483,482,481,480,479,478,477,476,475,474,473, 472,471,470,469,468,467,466,465,464,463,462,461,460,459,458,457,456,455, 454,453,452,451,450,449,448,447,446,445,444,443,442,441,440,439,438,437, 436,435,434,432,431,430,429,428,427,426,425,424,423,422,421,420,419,418, 417,416,415,414,413,412,411,410,409,408,407,406,405,404,403,402,401,400, 399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382, 381,379,378,376,375,374,373,372,371,370,369,368,367,15,0,81,193, 489,479,477,476,419,393,386,381,378,377,0,228,270,271,278,279, 419,393,386,375,0,6,356, 393,0,60, 377,0,33, 393,377,0,33,60, 393,377,0,33,60, 393,377,0,33,60, 393,377,0,33,60, 468,467,0,61,244,245, 394,0,62, 483,482,481,480,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464, 463,462,461,460,459,458,457,456,455,454,453,452,451,450,449,448,447,446, 444,443,442,441,440,439,438,437,435,434,432,431,430,376,375,373,86,0,2, 5,6,7,8,24,25,28,38,80,130,131,132,133,134,135,136,137,138,140,147,148, 149,153,154,157,161,162,163,168,172,174,175,176,177,186,187,188,189,205, 206,209,211,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229, 230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,248,250, 254,255,260,263,264,278,279,280,305,307,312,318,319,320, 489,479,419,393,386,381,378,377,0,272,273,354, 489,479,419,393,386,381,378,377,0,272,273,354, 419,0,119, 483,482,481,478,477,476,472,471,470,469,468,467,466,465,464,463,462,461,460, 459,458,457,456,376,373,0,3,5,7,8,24,25,28,38,53,206,215,228,229,230, 231,232,233,234,235,236,237,238,239,242,243,244,245,246,248,250,254,255, 278,279,280,283,318,319,320, 468,467,0,61,244,245, 478,0,280, }; static unsigned const char ag_astt[40945] = { 1,2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,7,1,1,1,9,2,5,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,8,1,1,1,2,5,7,2,1,1,2,2, 1,1,2,1,2,2,2,1,1,3,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1, 1,1,3,7,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7,1,1,2,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1, 3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3, 1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,7,2,2,2,2,2,2,1,1,2,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,1, 7,2,1,2,2,1,2,2,2,1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1, 5,1,1,5,1,1,1,1,1,1,1,1,1,7,1,1,2,2,2,1,2,2,1,2,2,1,2,1,1,1,1,1,1,1,7,1,1, 2,2,2,1,1,1,2,2,1,1,1,7,1,1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7, 1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1, 1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,5,5,5,1,1,5,5,1,1,1,1,1,1,1, 1,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,1,1, 2,2,1,2,3,1,1,1,3,3,3,3,3,3,3,3,3,3,3,2,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,2,2,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1, 1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,7,1,3,1,3,1,2,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,1,1,1,1,1,1,1,5,1,2,2,1,1,2,1,2,1,2,2, 2,1,1,1,2,1,2,2,1,1,2,1,1,1,7,3,1,1,1,1,1,1,1,7,2,1,2,2,1,2,1,2,2,1,1,1,1, 1,7,1,1,1,1,7,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,2,7,2,1,1,2,2,1,1,2,1,1,3,2,2,1,1,3,3,3,3, 3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,2,2,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,8,8,1,1,8,8,1,1,1,1,1,1, 1,1,1,1,1,8,8,8,1,8,8,8,8,2,7,1,1,1,1,2,1,1,3,1,1,1,1,1,1,1,1,1,1,1,2,1,1, 1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,8,1,1,7,2,1,1,2,2,1,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,2,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2, 7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1, 1,1,1,1,1,1,1,1,7,1,1,1,1,1,1,1,7,2,2,2,2,3,3,2,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7,2,1,1,1,1,1,1,7, 1,1,2,2,1,1,2,2,1,1,1,1,7,1,2,2,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4, 1,4,4,4,4,4,4,4,1,4,4,7,2,2,2,2,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,1,4,4,4,4,4,4,4,4,4,4,7,2,2,2,8,1, 7,1,1,1,1,1,7,2,1,1,1,1,1,7,1,3,2,2,1,2,2,1,1,5,1,1,1,1,1,1,1,1,1,1,7,1,1, 2,2,1,1,1,2,2,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,2,1,1,2,2,1,2,2,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,3,3,3,3,3,3,3, 3,3,3,3,3,2,3,3,3,5,5,5,1,1,5,5,1,1,1,1,1,1,1,1,1,1,5,5,5,5,5,5,5,5,5,5,5, 5,5,7,1,1,3,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,5,5,5,1,1,5,5,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,1,1,3,1,1,1,1,1,1, 1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1, 2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1, 8,1,1,1,2,7,1,2,1,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,2,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,7,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7, 1,2,1,1,1,1,2,2,1,1,2,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1, 1,1,1,1,3,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,7,2,2,4,4,4,4,4,4,4,1,4,4,4,4,7,1,4,4, 4,4,4,4,4,4,4,4,4,4,7,1,7,1,5,5,5,5,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,3, 3,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,1,2,2,1,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,2,2,2,3,1,2,1,1,4,4, 5,1,5,1,1,7,1,1,1,3,1,1,7,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1, 1,1,1,1,7,1,2,2,2,1,1,2,2,1,1,1,1,1,1,7,2,1,2,2,1,2,2,2,1,1,1,1,1,1,1,7,2, 2,2,2,1,1,1,2,2,2,1,1,1,7,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,1,1,1,7,1,1,1,7,1,1,1,7,1,1,2,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,2,1,1,2,2,1,1,2,1,3,2,2,1, 1,1,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,7,1,1,1,7,1,1,1,8, 1,7,1,1,1,2,1,1,7,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,2,1,8,8,1,1,8,8,1,1,1,1,1,1, 1,1,1,1,8,8,8,8,8,8,8,7,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,7,2,1,1,2,2,1,2,2,2,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,3,2,2,2,1,1,2,2,1,1,1,1,1,1,1,7,1,2, 2,2,2,1,1,2,2,1,5,5,5,5,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,1,1,3,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,1,1,2,2,1,2,1,1,3,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,5,5,1,1,5,1,1,7,1,2,1,2,2,1,1,2,1,1,1,2,2,1,3,3,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2, 1,1,3,3,1,1,5,1,1,1,7,2,1,1,1,1,1,1,7,2,3,2,2,2,2,2,1,1,1,7,3,1,1,7,1,1,1, 7,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,7,2,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,1,4,4,4,4,4,4,4,4,4,4,7,2,2,2,1,5,1,1,5, 1,1,7,3,1,7,2,8,1,7,1,1,1,1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7, 1,1,3,1,1,1,1,7,1,2,2,1,2,2,1,8,8,8,1,8,8,7,1,1,1,1,1,8,8,8,8,8,7,1,1,1,1, 1,4,4,1,7,1,4,4,4,7,1,5,1,1,7,1,1,1,1,1,1,1,7,2,1,2,2,1,2,1,2,2,1,1,7,3,1, 1,1,1,8,1,1,1,1,1,1,1,1,7,1,2,1,1,1,2,1,2,1,2,2,2,1,1,1,1,1,2,2,1,2,1,1,1, 1,1,8,8,1,1,8,8,1,1,1,1,1,1,1,1,1,1,1,8,8,8,8,1,8,8,8,8,1,7,1,1,1,3,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1,2,7,2,1,1,2,2,1,2,2,3,1,3,1,3,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,7,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,7,1,1, 1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7,1,1,2,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7, 2,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7,1,1,2,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,2,1,1,1,1,7,3,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,8,1,1,2,7,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,1,2,1,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,1,7, 1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,8,1,1,1,2,7,1,2,1,1,1,2,2,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1, 1,1,1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,7,1,8,8,1,1,8,8,1,1,1,1,1,1,1,1, 1,1,1,8,8,8,1,8,8,8,8,2,7,1,1,3,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,5,1,1,8,1,1,1,2,7,3,2,1,1,1,2,2,1,2,1,3,3,3,3,3,3,3,3, 3,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,7, 2,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3, 1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1, 2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7, 1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1, 1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7,3,1, 7,3,1,5,1,1,5,1,5,5,1,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,1,1,5,5,5,5,5,5,5,5,5,5,5,1,1,7,1,2,1,2,2,1,2,1,1,2,2,1,3, 3,1,1,1,1,1,1,1,1,7,2,2,1,2,2,2,2,2,1,1,2,2,1,1,5,5,5,5,5,1,1,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,7,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2, 2,1,1,1,2,2,2,1,2,1,1,4,4,4,4,4,4,1,1,4,7,1,1,1,7,2,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,1,7,2,2, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2, 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,5,1,1,2,7,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,2,2,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2, 1,1,1,2,2,3,1,2,1,1,1,1,1,1,7,1,2,2,1,2,2,1,1,1,7,2,3,1,7,1,1,7,3,1,1,1,1, 1,1,7,2,2,2,2,1,1,1,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,8,1,1,1,2,7,2,1,1,2,2,1,1,2,1,2,2,2,1,1,3, 2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,7,3,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, 7,1,1,1,1,1,1,1,7,1,2,2,2,1,1,2,2,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,1,1,1,7,1,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,8,1,1,1,2,7,2,1,1,2,2,1,1,2,1,3,2,2,1,1,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,3,3, 3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,7,2,1,2,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,8,8,1,1,8,8,1,1,1,1,1,1,1,1, 1,1,8,8,8,8,8,8,8,7,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,8,1,7,1,1,1,1,1,1,1, 1,1,7,1,1,2,2,2,1,1,2,2,1,1,1,1,1,1,7,1,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,3,3,3,3,3, 3,3,3,3,3,3,3,1,3,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1, 1,1,2,2,1,2,1,1,4,4,5,4,5,7,1,1,7,1,2,1,1,1,1,1,7,1,2,2,2,1,2,2,1,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,7,2,1,1,5,3,3,3,5,5,5,5,1,1,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,1, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,1,1,5,1,1,1,1,1,1,1,5,5,1, 1,5,1,1,7,1,2,1,2,2,1,1,2,1,1,1,2,2,1,3,3,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,2,1, 1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,5,1,1,2,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,5,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,1,1,1,1,7,2,3,3,3,2,2,3,2,2,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,1,1,3,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,1,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,7,1,1,7,1,1,7,1,1,7,1,1,7,1,1,7,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1, 1,1,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 1,3,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 1,3,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 1,3,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1, 1,1,5,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1, 2,1,1,2,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,1,5,1,1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,5,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1,1,1,5,1,1,1,1, 1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,3,3,1,3,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1, 2,1,1,2,2,1,2,3,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,3,1,1,7,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1, 1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,7,1,3,1,2,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,7,1,1,3,1,7,2,4,4,4,1,7,2,1,1,1,1,1,7,1,1,2,2,1,1,2,2,1,2,1, 1,1,1,1,7,1,2,2,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,7,1,1,2,2,1,1,1,2,2,1,1,2, 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,8,1,1,1,2,7,2,1,1,2,2,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,3,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,5,1,1,7,3,4,4,4,4,1,4,4,4,7,1,4,4,5, 1,5,7,1,3,3,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,2,1,8,8,1,1,8,8,1,1,1,1,1,1,1,1,1,1, 8,8,8,8,8,8,8,7,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 7,1,2,1,1,1,2,1,2,1,2,2,2,1,1,1,1,1,2,2,1,2,1,1,1,1,1,2,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,7,1,1,3,1,7,1,1,5,3,1,1,7,1,1,7,1,1,1,1,7,3,1,1,5,1,1,1,1,1,1, 5,1,1,1,1,1,1,5,1,1,1,5,1,1,5,1,1,5,1,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,5,5,5,1,1,1,1,1,1,1,1,1,5,1,1,1,1,1,1,1,5,1,5,1,1,1,1,1,1,1,1,1,1,7,2,2, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 2,2,1,1,1,3,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,5,1,1,7,3,1,1,1,1,1,1,1,1,1,1,1,5,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,1,2,2,1, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1, 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,7,1,1,7,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,1,1,1,1,1,1,7,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,3,2,1,1, 1,2,2,1,2,1,3,3,3,3,3,3,3,3,3,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,3,3,3,3,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2, 7,3,2,1,1,1,2,2,1,2,1,3,3,3,3,3,3,3,3,3,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,3, 3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,2,2,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,1,1,2,2,1,2,1,1,1, 2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 7,1,1,3,1,7,3,1,7,3,5,5,1,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,1,1,5,5,5,5,5,5,5,5,5,5,5,1,1,7,1,2,1,2,2,1,2,1,1,2,2, 1,3,3,1,1,7,2,2,5,5,5,5,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,3,3,1,1,4,4,4, 4,4,4,4,1,4,4,4,4,7,1,4,4,4,4,4,4,4,4,4,4,4,4,7,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,7,2,1,1,2,2,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,7,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1, 2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,7,3,1,5, 1,1,1,8,1,1,1,5,1,1,5,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,5,1,3,1,7,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1, 2,1,2,2,2,1,1,1,2,2,3,1,2,1,1,1,1,1,5,1,1,1,3,1,1,7,2,3,1,1,1,1,1,1,7,2,2, 2,2,1,1,1,2,2,2,1,1,1,7,3,1,7,3,1,1,1,1,7,1,2,2,1,2,2,1,1,7,3,1,7,3,1,7,3, 1,7,3,5,5,1,1,5,5,1,1,1,1,1,1,1,1,1,1,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,1,1, 1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,7,2,1,2,2,1,2,3,1,1,1,3,3,3,3,3,3,3,3,3,3,3,2,3,1,1,1,1,1,1,1,1, 1,1,1,1,1,2,2,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,5,5, 1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,7,1,8,5, 5,1,7,1,1,1,1,5,1,1,1,1,7,2,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2, 2,2,1,1,1,2,2,2,1,2,1,1,1,7,1,1,1,5,2,1,7,1,1,5,1,1,2,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7, 1,1,3,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,1,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,7,1,4,4,5,4,5,7,1,1,7,1,2,1,1,1,1,1,1,1,1,1,1,1,7, 1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,3,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,1,7,3,1,7,3,1,5,1,1,7,1,8,1,1,5,5,5,5,5,7,1,1,1,1,1,1,1,1,1,1,7,2,2,2,2, 1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 8,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,7,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,2,2,2,2,2,1,2,3,3,2,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,1,1, 1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,2,1,1,2,2, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,1,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5, 1,2,1,2,2,1,2,1,1,1,3,1,2,2,1,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,1,5,7,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,7,1,2,1,1,2,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1, 2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,2,1,1,2,2,1,1,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,7,2,2,1,2,2,1,3,3,3,3,3,1,2,3,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,7,2,2,1,2,2,1,3,3,3,3,3,1,2,3,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,7,2,2,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2, 2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,2,2,1,1,1,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,3,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,3,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1, 1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1, 1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2, 2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1, 1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1, 1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,3,3,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,4, 4,1,7,1,4,4,4,7,1,7,2,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,1,2,1,2,1,2,2,2,1, 1,1,1,1,2,2,1,2,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1, 1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1, 1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1, 1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1, 3,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,2,2,2,1,2,1,1,1, 1,7,1,3,4,4,5,1,4,5,7,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,1,1,5,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1, 1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2, 2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1, 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1, 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1, 1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1, 1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,3,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,5,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,2,1,1,5,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,2,7,1,2,1,1,2,2,1,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,7,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,2,1,1,2,1, 2,1,2,2,2,1,1,1,1,2,2,1,2,1,1,1,7,1,1,7,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8, 1,1,1,2,7,3,2,1,1,1,2,2,1,2,1,3,3,3,3,3,3,3,3,3,1,1,1,1,2,1,1,1,1,1,1,1,1, 1,1,1,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,3,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,7,2,1,1,1,7,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1,1,1,1,1,1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1, 1,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,8,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1, 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,5,1,1,1,5,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,2,1, 1,2,2,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,1,1,1,5,1,1, 1,5,5,1,1,5,1,1,1,7,1,2,2,1,1,2,1,2,1,2,2,2,1,1,1,1,2,2,1,3,1,1,3,3,1,1,1, 1,5,1,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,7,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,3,3,1,1,1,1,8,5,1,1,5,5,5,5,5,5,5, 5,7,1,1,1,1,1,8,1,7,1,1,1,7,3,1,5,2,5,5,1,1,5,5,1,1,1,1,1,1,1,1,1,1,5,5,5, 5,5,5,5,5,5,5,5,7,1,1,3,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,5,5,1,1,5,5,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,5,5,5,5,5,5,5,5,5,5,7,1,1,1,1,3,1,1,1, 1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,1,5,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,7,2,1,2,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,2,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,1,1,1,1,1,1,4,4,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,1,2,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,3,3,3,1,7,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1,1,1, 1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,7,1,1,2,2,2,1,1,2,2,1,1,3,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,7,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,1,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,7,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,7,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,7,2,2,2,2,1,3,3,2, 2,1,8,1,1,5,5,5,5,5,7,1,1,1,1,1,1,5,5,5,5,5,7,3,3,1,1,7,3,1,7,1,1,1,7,2,2, 2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1, 1,1,1,1,1,1,1,1,3,3,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2, 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,2,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,7,3,1,7,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,1,5,7,1,3,3,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,2,1,1,1,1,5,1,1,1,1,1,1,1,1,1,5,1,2,1,2,2,1,2,1,1,1,3,1,2,2,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1, 1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,7,3,1,7,3,1,7,1,1,7,1,1,7,1,1,7,1,1,5,1,1, 7,3,1,7,3,1,1,7,3,3,3,1,7,1,1,1,1,1,1,1,1,7,2,2,1,2,2,1,3,3,3,3,3,2,2,2,1, 1,1,1,1,1,1,1,1,7,2,2,2,2,1,1,1,1,2,2,1,1,7,1,1,1,1,1,1,1,1,7,2,2,1,2,2,1, 3,3,3,3,3,2,2,2,1,1,1,7,3,1,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1, 1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,3,3,1,1,3,3,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,2,1,1,5,1,1, 1,5,1,1,1,1,5,1,1,1,1,5,1,1,1,1,1,5,1,1,1,1,1,1,5,1,1,1,1,1,1,7,1,1,1,1,1, 5,1,1,1,1,5,1,1,1,5,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,5,1,2,2,1,1,2,1,2,1,2,2, 2,1,1,1,1,2,2,1,3,1,1,3,1,1,1,7,1,1,1,5,1,1,1,1,5,1,1,1,1,5,1,1,1,1,5,1,1, 1,1,1,1,5,1,1,1,1,1,1,1,1,5,1,1,1,1,1,1,5,1,1,1,5,1,1,5,1,1,5,1,1,1,7,1,1, 1,5,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,2,1,1, 2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,7,2,1,1,5,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1, 2,7,3,2,1,1,1,2,2,1,2,1,3,3,3,3,3,3,3,3,3,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1, 3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,3, 2,1,1,1,2,2,1,2,1,3,3,3,3,3,3,3,3,3,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,3,3,3, 3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,1,2,1,1, 1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, 3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1, 1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1, 1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,7, 2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1, 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,7,3,1,7,1,8,5,1,1,5,5,5,5,5,5,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1, 2,2,1,1,2,1,2,1,2,2,2,1,1,1,3,2,2,1,2,1,1,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1, 1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5, 1,1,7,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 2,2,1,1,1,1,5,5,5,5,5,5,5,5,5,7,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,2,2,1,1,1,1,1,1, 1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,3,1, 1,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2,2,1,1,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2, 1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,3,3,1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,2,3,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,7,1,2,1,1,2,2,1,2,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 2,2,1,1,1,1,1,1,1,1,5,3,1,1,7,3,1,5,5,5,5,5,7,3,3,1,1,7,1,8,1,1,5,5,5,5,5, 7,1,1,1,1,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,2,1,1,5,1,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,1,5,7,1,3,3,1,7,1,1,1,7, 3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,7,3,1,7,1,1,7,1,1,7,1,1,7,1,1,7,1,1,7,1,1, 1,7,3,3,3,1,7,1,1,1,1,1,1,1,1,1,1,1,7,2,2,2,2,2,2,2,1,2,1,1,1,1,2,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2, 2,1,1,3,1,7,3,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1, 1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1, 1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2, 1,1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1, 1,2,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,5,1,1,7,3,1,7,1,8,5,1,1,5,5, 5,5,5,5,7,1,1,1,1,1,1,5,5,5,5,5,5,5,7,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,3,1,7,1,1,7,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,7,1,2,1,1,2,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,5,5,5,5,5,7,3,3,1,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,1,5,7,1,3, 3,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1, 1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,2,2,1,1,1,1,1,1,1,1, 1,1,1,2,2,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1, 7,3,3,3,1,1,1,1,1,1,1,7,2,2,2,2,2,2,2,1,2,2,2,1,1,1,7,1,1,1,7,3,3,3,1,7,1, 1,1,1,5,1,1,1,1,7,1,1,7,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,3,2,1,1,1,2, 2,1,2,1,3,3,3,3,3,3,3,3,3,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,3,3,3,3,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1, 1,1,1,1,1,1,1,1,1,1,8,5,1,1,5,5,5,5,5,5,7,1,1,1,1,1,1,5,5,5,5,5,5,5,7,3,3, 1,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3,1,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,7,1,1,3, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,7,2,1,8,5,1,1,5,5,5,5,5,5,7,1,1,1,1,1,8,5,5,1,7,1, 1,1,5,1,1,7,3,1,1,7,3,1,1,1,7,3,1,1,1,7,3,1,1,1,7,3,1,1,1,7,3,3,3,1,7,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,8,1,1,1,2,7,2,2,1,1,1,2,2,1,2,1,2,2,2,2,2,2,2,2,2,1, 1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,5,5,5, 5,5,5,5,7,3,3,1,1,5,5,5,5,5,5,5,7,3,3,1,1,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,7,1,2,1,1,2,2,1,2,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,1,7,3,3,3,1,7,3 }; static const unsigned short ag_pstt[] = { 1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, 2,2,2,2,2,2,0,1,1,2, 1025,1,1027,1025, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,2,0,4,3, 12,13,14,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46, 29,30,17,18,19,20,53,21,22,23,56,213,58,54,10,9,225,213,3,28,32,31,12, 13,24,63,29,64,214,226,229,48,57,212,214,214,214,214,214,214,214,214, 214,214,66,65,58,49,48,47,47,48,48,48,48,62,48,48,48,48,48,48,300,48,49, 49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,214,214, 214,214,60,59,61,48,48,8,55,35,33,33,33, 3,4, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,5, 1,1,1139, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,6, 1,1,1133, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,7, 1,1,1132, 67,8,68, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,9, 1,1,1034, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 10,1,1,1037, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 11,1,1,1131, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 12,1,1,1144, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 13,1,1,1143, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 14,1,1,1142, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 15,1,1,1138, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 16,1,1,1137, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 17,1,1,1114, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 18,1,1,1113, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 19,1,1,1112, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 20,1,1,1111, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 21,1,1,1109, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 22,1,1,1108, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 23,1,1,1107, 5,6,7,9,24,30,12,13,31,343,344,8, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 25,1,1,1129, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 26,1,1,1128, 5,6,7,10,9,27,28,69,12,13,24,29,343,344,8, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 28,1,1,1130, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 29,1,1,1116, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 30,1,1,1115, 10,321,70, 67,332,71, 5,6,7,72,73,10,78,9,33,77,79,12,13,360,74,486,486,75,343,344,76,487, 5,6,7,72,10,78,9,34,81,83,12,13,360,74,80,82,343,344,8, 72,73,35,84,85, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 36,1,1,1127, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 37,1,1,1126, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 38,1,1,1125, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 39,1,1,1124, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 40,1,1,1123, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 41,1,1,1122, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 42,1,1,1121, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 43,1,1,1120, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 44,1,1,1119, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 45,1,1,1118, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 46,1,1,1117, 275,275,275,15,16,275,275,29,30,17,18,19,20,53,21,22,23,275,275,275,275,275, 275,275,275,275,275,275,275,275,47,86,86,277,86,86,86,86,86,86,86,86,86, 86,86,300,86,86,86, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17, 18,19,20,53,21,22,23,10,9,48,28,32,31,12,13,24,29,271,88,87,87,271,271, 271,271,271,271,271,271,271,271,271,300,271,88,88,88,88,88,88,88,88,88, 88,88,87,87,87,87,87,33,34,27,343,344,271,271,8,35,33,33,33, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,266,89, 89,89,89,89,89,89,89,89,89,89,89,89,89,89,300,89,89,89,89,89,89,89,89, 89,89,89,89,89,89, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 50,1,1,1135, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 51,1,1,1134, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 52,1,1,1136, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 53,1,1,1110, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 54,1,1,1040, 90,72,55,92,468,91,469, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 56,1,1,1106, 93,5,6,7,97,96,95,98,10,78,9,261,105,28,23,102,101,13,24,397,104,397,397,29, 99,105,103,470,107,343,344,107,106,375,100,94, 108,58,262, 5,51,6,7,11,10,9,59,28,112,12,13,111,29,110,343,344,109,8, 7,72,78,60,115,113,114, 98,61,116, 117,288,118, 12,13,14,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46, 29,30,17,18,19,20,53,21,22,23,56,58,67,54,10,9,225,63,28,32,31,12,13,24, 63,29,119,64,626,226,229,48,57,626,626,626,626,626,626,626,626,626,626, 66,65,58,49,48,47,47,48,48,48,48,62,48,48,48,48,48,48,300,48,49,49,49, 49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,626,626,626,626, 60,59,61,48,48,8,55,35,33,33,33, 125,125,15,16,125,125,29,30,17,18,19,20,53,21,22,23,56,125,125,125,54,125, 125,125,125,225,64,122,123,125,125,235,124,120,232,125,125,125,125,125, 125,125,125,125,125,125,300,125,125,125,121, 54,65,122,126, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17, 18,19,20,53,21,22,23,58,10,9,66,28,32,31,12,13,24,29,227,230,48,57,58, 49,48,47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49,49, 49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,48,48,8,55,35,33,33,33, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 67,1,1,1048, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 68,132,28,32,31,12,13,24,29,135,133,135,131,129,130,131,131,131,131,131, 131,131,131,131,131,131,129,129,129,129,128,127,135,27,343,344,130,130, 134,130,128,128,128,135, 10,69,136, 5,6,7,25,26,9,70,32,12,13,33,322,323,343,344,8, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 71,132,28,32,31,12,13,24,29,137,133,137,131,129,130,131,131,131,131,131, 131,131,131,131,131,131,129,129,129,129,128,127,137,27,343,344,130,130, 134,130,128,128,128,137, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 72,1,1,1095, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 73,1,1,1078, 10,74,362, 5,6,7,54,78,9,75,140,141,12,13,138,139,343,344,8, 72,73,67,76,68,486,486,490, 327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,72,327, 327,73,327,327,327,327,327,327,327,10,327,327,77,361,486,486,489, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 78,1,1,1036, 326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,72,326, 326,73,326,326,326,326,326,326,326,326,326,326,79,486,486,488, 144,78,80,142,143,144,143, 10,81,361, 5,6,7,78,9,82,145,331,12,13,139,343,344,8, 72,330,146, 147,148,149,5,6,7,18,10,9,84,81,154,13,360,74,152,150,343,344,153,156,151, 155,520,524,151,151,151, 147,148,149,12,13,14,5,15,16,50,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44, 45,46,29,30,17,18,19,20,53,21,22,23,162,108,10,9,225,85,28,32,31,12,13, 24,29,502,161,48,161,159,161,49,48,47,47,48,48,48,48,48,48,48,48,48,48, 48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343, 344,157,48,48,8,55,35,161,162,33,33,33,161,161,160,158,158,158,158, 15,16,29,30,17,18,19,20,53,21,22,23,276,271,271,271,271,271,271,271,271,271, 271,271,271,300,271,271,271, 275,275,275,15,16,275,275,29,30,17,18,19,20,53,21,22,23,275,275,275,275,275, 275,275,275,275,275,275,275,275,87,86,86,278,86,86,86,86,86,86,86,86,86, 86,86,300,86,86,86, 272,272,272,15,16,272,272,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19, 20,53,21,22,23,272,272,272,272,272,272,272,272,272,272,272,272,272,88, 163,163,163,163,274,163,163,163,163,163,163,163,163,163,163,163,300,163, 163,163,163,163,163,163,163,163,163,163,163,163,163, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,269, 268,268,268,268,268,268,268,268,268,268,268,268,268,268,300,268,268,268, 268,268,268,268,268,268,268,268,268,268,268, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 90,1,1,1141, 72,91,92,164, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 194,176,177,58,10,78,9,225,92,193,28,191,32,31,12,13,24,29,192,193,193, 193,193,193,193,193,193,193,48,190,189,188,193,194,179,187,186,185,184, 183,171,57,182,181,180,179,193,193,193,193,58,49,48,47,47,48,48,48,48, 48,48,48,48,48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47, 47,47,33,34,27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 93,1,1,1149, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,209,210, 211,212,213,214,215,216,217,218,220,201,202,222,223,205,206,203,204,207, 208,224,225,197,228,229,221,226,227,97,96,95,198,67,219,199,200,196,195, 98,10,9,94,234,28,32,31,233,232,12,13,24,231,29,230,549,549,549,549,549, 549,549,549,549,549,549,549,549,549,549,549,549,549,549,549,549,549,549, 549,549,549,549,549,549,549,549,549,549,549,549,549,131,129,130,131,131, 131,131,131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344, 130,130,8,130,128,128,128,537,549, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 95,1,1,1055, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 96,1,1,1057, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 97,1,1,1058, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 98,1,1,1039, 5,9,99,405,406, 404,404,404,404,404,404,404,67,404,404,404,404,100,68, 403,403,403,403,403,403,403,403,403,403,403,12,101, 10,102,235, 376,376,376,376,15,16,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,103,236,391,391,236,236, 93,5,6,7,97,96,95,98,10,78,9,104,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,239,343,344,238,375,100,94, 93,5,6,7,97,96,95,98,10,78,9,105,105,28,23,102,101,13,24,397,104,397,397,29, 99,105,103,374,343,344,372,106,375,100,94, 373,373,370,220,370,195,98,106,241,240,242,371, 108,198,107,243,263, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 108,1,1,1091, 5,6,7,10,9,109,81,12,13,360,245,244,343,344,8, 5,6,7,10,9,110,28,246,12,13,24,29,343,344,8, 93,5,6,7,78,9,111,30,23,12,13,247,247,247,31,343,344,8,94, 10,112,248, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,113,249,250, 72,114,251, 72,220,115,252,253, 117,116,254, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 117,1,1,1033, 12,13,14,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46, 29,30,17,18,19,20,53,21,22,23,56,72,58,54,10,9,225,118,28,32,31,12,13, 24,63,29,64,367,226,229,48,255,57,367,367,367,367,367,367,367,367,367, 367,66,65,58,49,48,47,47,48,48,48,48,62,48,48,48,48,48,48,300,48,49,49, 49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,367,367,367, 367,60,59,61,48,48,8,55,35,33,33,33, 592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592, 592,592,592,592,592,592,592,592,592,592,592,219,592,592,592,119,256,257, 54,120,122,258, 90,261,73,121,260,261,261,463,259, 67,122,262, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,123,236,263, 264,264,15,16,264,264,29,30,17,18,19,20,53,21,22,23,264,264,264,264,264,264, 264,124,264,264,264,264,264,264,264,264,264,264,264,264,264,300,264,264, 264, 93,5,6,7,97,96,95,98,10,78,9,125,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,266,265,343,344,238,375,100,94, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17, 18,19,20,53,21,22,23,58,10,9,126,28,32,31,12,13,24,29,228,231,48,57,58, 49,48,47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49,49, 49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,48,48,8,55,35,33,33,33, 5,6,7,10,78,9,127,81,330,12,13,360,74,82,343,344,8, 5,6,7,10,78,9,128,268,326,12,13,360,74,267,343,344,8, 416,416,416,416,15,16,416,416,416,416,416,416,416,416,416,416,416,416,416, 416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416, 416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416, 416,416,129,269,269,269,269,418, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,130, 28,32,31,12,13,24,29,271,270,413,271,271,271,271,271,271,271,271,271, 271,271,270,270,270,270,128,127,27,343,344,413,413,8,128,128,128, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,410, 272,272,272,272,272,272,272,272,272,272,272,272,272,272,272,300,272,272, 272,272,272,272,272,272,272,272,272,272,272,272, 5,6,7,97,96,407,407,195,98,407,10,9,132,277,28,275,12,13,24,274,29,273,277, 103,343,344,8,409,409,276, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,278,133,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,103,308,310,312, 313,301,301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344, 8,94,103,103,311, 67,624,68, 198,219,135,620,314, 5,6,7,78,9,136,32,334,12,13,33,343,344,8, 198,219,137,333,314, 5,138,315,8, 10,139,364, 329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329, 329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329, 329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329,329, 329,329,329,329,329,329,329,329,329,10,329,329,140,363, 328,328,328,328,328,328,328,328,328,328,328,328,328,328,328,328,328,72,328, 328,73,328,328,328,328,328,328,328,328,328,328,141,486,486,491, 220,341,316, 198,336,317, 318,144,337, 10,145,363, 319,78,146,142,143,319,143, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 147,1,1,1148, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 148,1,1,1147, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 149,1,1,1146, 5,6,7,9,150,320,12,13,139,343,344,8, 321,321,321,18,321,321,151,321,321, 147,148,149,322,322,322,322,322,152,322,322,322,322,322, 523,523,67,153,68, 522,522,12,154, 198,519,323, 72,156,324, 5,6,7,11,10,9,157,28,112,12,13,111,29,110,343,344,8, 73,158,509, 93,5,6,7,327,73,97,96,95,98,10,78,9,159,237,28,328,102,101,13,24,397,104, 397,397,29,99,237,103,325,329,343,344,238,375,100,326,327,326,94, 332,332,15,16,332,332,29,30,17,18,19,20,53,21,22,23,56,332,332,332,332,54, 332,332,332,332,330,160,122,332,332,500,331,120,332,332,332,332,332,332, 332,332,332,332,332,300,332,332,332,121, 147,148,149,12,13,14,5,15,16,50,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44, 45,46,29,30,17,18,19,20,53,21,22,23,483,108,10,9,225,161,28,32,31,12,13, 24,29,502,497,48,497,159,497,49,48,47,47,48,48,48,48,48,48,48,48,48,48, 48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343, 344,157,48,48,8,55,35,33,33,33,497,497,160,158,158,158,158, 318,162,484, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,273, 268,268,268,268,268,268,268,268,268,268,268,268,268,268,300,268,268,268, 268,268,268,268,268,268,268,268,268,268,268, 333,164,335,335,334, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 165,1,1,1101, 78,166,336, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 167,1,1,1105, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 168,1,1,1104, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 169,1,1,1103, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 170,1,1,1102, 98,171,199, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 172,1,1,1100, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 173,1,1,1099, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 174,1,1,1098, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 175,1,1,1096, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 176,1,1,1093, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 177,1,1,1092, 72,178,337,188,179, 78,179,338, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,349,228,229,221,226,227, 97,96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,180,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,348,301,305,304,300,299,298,297,296, 348,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,348,348,349,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,343,344,8,94,345, 108,181,208, 108,182,207, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17, 18,19,20,53,21,22,23,352,10,9,225,183,28,32,31,12,13,24,29,351,48,352, 352,352,352,350,49,48,47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49, 49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,48,48,8, 35,33,33,33, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,184,353,28,191,32,31,12,13,24,29,192,353,353,353, 353,353,353,353,353,353,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,353,353,353,353,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 98,185,354, 98,186,355, 98,187,356, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 357,176,177,58,10,78,9,225,188,193,28,191,32,31,12,13,24,29,192,193,193, 193,193,193,193,193,193,193,48,190,189,188,193,357,179,187,186,185,184, 183,171,57,182,181,180,179,193,193,193,193,58,49,48,47,47,48,48,48,48, 48,48,48,48,48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47, 47,47,33,34,27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 73,189,358, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,190,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,360,293,308,310,312,339,340, 341,342,343,344,346,359,360,301,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,343,344,8,94, 73,191,361, 363,363,15,16,363,363,29,30,17,18,19,20,53,21,22,23,56,363,363,363,54,363, 363,363,363,225,192,122,362,164,363,363,164,331,120,363,363,363,363,363, 363,363,363,363,363,363,300,363,363,363,121, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 177,176,177,58,10,78,9,225,193,181,28,191,32,31,12,13,24,29,192,181,181, 181,181,181,181,181,181,181,48,190,189,188,179,187,186,185,184,183,171, 57,182,181,180,179,181,181,181,181,58,49,48,47,47,48,48,48,48,48,48,48, 48,48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33, 34,27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 318,194,471, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 195,1,1,1042, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 196,1,1,1044, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 197,1,1,1065, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 198,1,1,1054, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 199,1,1,1046, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 200,1,1,1045, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 201,1,1,1077, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 202,1,1,1076, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 203,1,1,1071, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 204,1,1,1070, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 205,1,1,1073, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 206,1,1,1072, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 207,1,1,1069, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 208,1,1,1068, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 209,1,1,1090, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 210,1,1,1089, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 211,1,1,1088, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 212,1,1,1087, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 213,1,1,1086, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 214,1,1,1085, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 215,1,1,1084, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 216,1,1,1083, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 217,1,1,1082, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 218,1,1,1081, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 219,1,1,1047, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 220,1,1,1080, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 221,1,1,1061, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 222,1,1,1075, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 223,1,1,1074, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 224,1,1,1067, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 225,1,1,1066, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 226,1,1,1060, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 227,1,1,1059, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 228,1,1,1063, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 229,1,1,1062, 364,230,591, 365,231,590, 195,551,366, 195,550,367, 538,538,5,6,7,538,538,538,538,538,538,538,538,538,538,538,538,538,538,538, 538,538,538,538,538,538,538,538,538,538,538,538,538,538,538,538,538,97, 96,538,538,538,538,538,538,538,538,538,538,538,10,9,234,368,28,275,12, 13,24,29,368,103,343,344,8,540,540, 93,5,6,7,97,95,78,9,235,32,23,372,13,398,398,398,33,369,370,343,344,371,94, 376,376,376,376,376,15,16,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,376,236,236,394,394,236,236, 93,5,6,7,97,96,95,98,10,78,9,237,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,374,343,344,238,375,100,94, 373,373,373,373,373,373,195,98,373,238,373,240, 365,239,384, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,374,98,10,78,285,9,117,279,280,281, 282,283,240,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,374,293,308,310,312,339, 340,341,342,343,344,346,359,374,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,343,344,374,8,94, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,428,10,9,225,241,28,32,31,12,13,24,29,375,48, 377,49,48,47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49, 49,49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,380,48,48,8,380,380, 379,380,379,376,35,33,33,33, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,72,228,229,221,226,227, 97,96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,242,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,473, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,473,473,381,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,473,94,345, 93,5,6,7,97,96,95,98,10,78,9,243,382,28,23,102,101,13,24,397,104,397,397,29, 99,382,103,343,344,369,383,375,100,94, 5,6,7,9,244,145,12,13,384,343,344,8, 108,10,245,362,358, 10,246,385, 108,247,357, 93,5,6,7,78,9,248,32,23,12,13,386,386,386,33,343,344,8,94, 12,13,14,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46, 29,30,17,18,19,20,53,21,22,23,56,352,58,54,10,9,225,249,28,32,31,12,13, 24,63,29,64,214,226,229,48,57,212,214,214,214,214,214,214,214,214,214, 214,66,65,58,49,48,47,47,48,48,48,48,62,48,48,48,48,48,48,300,48,49,49, 49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,214,214,214, 214,60,59,61,48,48,8,55,35,33,33,33, 318,250,351, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,251,249,387, 5,6,7,10,9,252,81,12,13,360,74,388,343,344,389,8, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,253,249,390, 365,254,391, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211,211, 211,211,211,211,211,255,392,3, 12,13,14,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46, 29,30,17,18,19,20,53,21,22,23,56,58,54,10,9,225,256,28,32,31,12,13,24, 63,29,64,627,226,229,48,57,627,627,627,627,627,627,627,627,627,627,66, 65,58,49,48,47,47,48,48,48,48,62,48,48,48,48,48,48,300,48,49,49,49,49, 49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343,344,627,627,627,627,60, 59,61,48,48,8,55,35,33,33,33, 14,5,15,16,6,7,11,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20, 53,21,22,23,54,10,9,257,28,31,12,13,24,397,29,394,395,394,396,393,393, 394,394,394,394,394,394,394,394,394,394,394,300,394,395,395,395,395,395, 395,395,395,395,395,395,393,393,398,343,344,394,394,8,399,400,400,400, 400, 401,401,15,16,401,401,29,30,17,18,19,20,53,21,22,23,401,401,401,401,401,401, 401,258,401,401,401,401,401,401,401,401,401,401,401,401,401,300,401,401, 401, 402,73,259,260,402,402, 5,6,7,10,78,9,260,403,404,12,13,360,74,150,343,344,8,404,405,405,404, 72,261,92,462, 592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592,592, 592,592,592,592,592,592,592,592,592,592,592,592,592,592,262,257, 411,333,309,93,147,148,149,409,12,13,14,90,378,5,15,16,52,50,51,6,7,11,28, 25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,56, 167,168,169,170,165,172,173,174,406,175,72,176,177,108,209,210,211,212, 213,214,215,216,217,218,220,408,73,201,202,222,223,205,206,203,204,207, 208,224,225,197,407,228,229,221,226,227,97,96,295,95,198,287,288,289, 290,291,67,219,199,200,196,410,195,54,98,10,78,285,9,117,279,280,281, 282,283,239,263,241,241,241,241,241,241,241,241,241,241,241,241,413,241, 412,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241, 241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241, 241,241,241,241,241,241,241,241,241,241,241,237,241,241,414,241,241,241, 241,241,241,241,241,241,241,241,238,241,241,241,241,241,241,241,241,241, 241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241, 241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241, 241,241,241,241, 93,5,6,7,97,96,95,98,10,78,9,264,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,416,415,343,344,238,375,100,94, 465,465,264,465,264,265, 108,198,266,417,233, 5,6,7,78,9,267,140,328,12,13,139,343,344,8, 327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327, 327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327, 327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,327,10, 327,327,268,361, 15,16,417,413,413,413, 416,416,416,416,15,16,416,416,416,416,416,416,416,416,416,416,416,416,416, 416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416, 416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416,416, 416,416,270,269,269,269,269,419, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,414, 418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,300,418,418, 418,418,418,418,418,418,418,418,418,418,418,418, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,411, 268,268,268,268,268,268,268,268,268,268,268,268,268,268,300,268,268,268, 268,268,268,268,268,268,268,268,268,268,268, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,419,98,10,78,285,9,117,279,280,281, 282,283,273,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,419,293,308,310,312,339, 340,341,342,343,344,346,359,419,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,343,344,419,8,94, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,97,96,195,98,365,10,9,274,277,28,32,421,12,13, 24,274,423,29,273,277,103,48,377,49,48,47,47,48,48,48,48,48,48,48,48,48, 48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27, 343,344,48,48,8,420,422,276,379,422,379,35,33,33,33, 10,275,424, 195,98,433,426,425, 5,6,7,97,96,407,407,195,98,407,10,9,277,277,28,275,12,13,24,274,29,273,277, 103,343,344,8,432,432,276, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,278,104,263, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 279,1,1,1032, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 280,1,1,1031, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 281,1,1,1030, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 282,1,1,1029, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 283,1,1,1028, 10,321,427, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 285,1,1,1035, 117,11,10, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 287,1,1,1053, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 288,1,1,1052, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 289,1,1,1051, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 290,1,1,1050, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 291,1,1,1049, 93,5,6,7,228,229,78,9,292,30,16,83,98,12,13,17,31,343,344,8,428, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,195,98,10,78,285,9,117,279,280,281, 282,283,293,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,429,301,305,304,300,299,298,297,296, 303,95,95,303,302,95,95,303,303,303,303,303,294,293,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,343,344,8,94, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,98,10,9, 294,432,28,32,31,12,13,24,430,29,433,431,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 295,1,1,1056, 98,296,434, 67,297,435, 67,298,436, 67,299,437, 67,300,438, 98,301,439, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,302,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,440,306,306,29,306,301,305,304,300,299,298,297,296,303,66, 303,302,66,66,303,303,303,303,303,294,293,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,303,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,65, 65,303,302,65,65,303,303,303,303,303,294,293,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,304,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,64, 64,303,302,64,64,303,303,303,303,303,294,293,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,305,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,63, 63,303,302,63,63,303,303,303,303,303,294,293,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94, 199,200,196,410,195,98,62,443,444,442,441,46,47, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 307,132,28,32,31,12,13,24,447,29,445,446,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 197,407,108,449,448, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 309,1,1,1150, 224,225,97,112,452,451,450, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,607,287,288,289,290,291,607,199,200,98,10,78,285,9,117,279, 280,281,282,283,311,28,23,284,294,293,306,306,306,306,306,306,286,286, 12,13,306,306,292,306,306,307,306,306,29,306,301,305,304,300,299,298, 297,296,303,308,308,303,302,308,308,303,303,303,303,303,294,293,609,308, 310,312,313,301,301,301,301,301,301,301,301,301,301,301,301,301,301,301, 343,344,8,94,609,609,311,609, 226,227,115,454,453, 209,210,211,212,213,214,215,216,217,218,220,408,207,208,605,458,457,455,456, 456,456,456,456,456,456,456,456,456,456,456, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 314,132,28,32,31,12,13,24,29,622,133,622,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 134,130,128,128,128,622, 72,73,315,486,486,492, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,316,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,342,293,308,310,312,339,340, 341,342,343,344,346,359,342,301,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,343,344,8,94, 78,317,142,340, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 318,1,1,1094, 318,319,338, 533,533,533,10,320,363, 5,6,7,10,9,321,81,460,13,360,74,150,343,344,459,530, 5,6,7,10,9,322,81,12,13,360,74,150,343,344,8,527, 147,148,149,5,6,7,18,10,9,323,81,154,13,360,74,152,150,343,344,153,151,521, 524,151,151,151, 147,148,149,12,13,14,5,15,16,50,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44, 45,46,29,30,17,18,19,20,53,21,22,23,461,108,10,9,225,324,28,32,31,12,13, 24,29,502,161,48,161,159,161,49,48,47,47,48,48,48,48,48,48,48,48,48,48, 48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34,27,343, 344,157,48,48,8,55,35,161,461,33,33,33,161,161,160,158,158,158,158, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,325,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,515,293,308,310,312,339,340, 341,342,343,344,346,359,515,301,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,343,344,8,94, 198,505,462, 108,327,506, 23,23,23,23,73,23,23,23,328,463, 470,470,512,220,512,329,464,513,514, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,330,501,263, 465,465,15,16,465,465,29,30,17,18,19,20,53,21,22,23,465,465,465,465,465,465, 465,331,465,465,465,465,465,465,465,465,465,465,465,465,465,300,465,465, 465, 93,5,6,7,73,97,96,95,98,10,78,9,332,237,28,328,102,101,13,24,397,104,397, 397,29,99,237,103,325,467,343,344,238,375,100,466,466,94, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 333,1,1,1151, 98,334,468, 333,472,630,334, 220,336,252, 333,337,469,469,334, 108,338,210, 207,208,118,458,457, 203,204,67,219,123,473,472,471,470, 205,206,126,475,474, 96,128,476, 223,130,477, 222,132,478, 309,93,636,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,636,636,636,228,229, 221,226,227,97,96,295,95,636,287,288,289,290,291,199,200,636,98,636,10, 78,285,9,117,279,280,281,282,283,345,28,23,284,294,293,306,306,306,306, 306,306,286,286,12,13,306,306,292,306,306,307,306,306,29,306,301,305, 304,300,299,298,297,296,638,303,308,308,303,302,308,308,303,303,303,303, 303,294,293,308,310,312,339,340,341,342,343,344,346,347,638,638,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94,345, 638, 202,134,479, 209,210,211,212,213,214,215,216,217,218,220,408,201,136,482,481,480,480,480, 480,480,480,480,480,480,480,480,480, 198,197,483, 108,349,209, 93,5,6,7,97,96,95,98,10,78,9,203,382,28,23,102,101,13,24,397,104,397,397,29, 99,382,103,484,343,344,484,383,375,100,94, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,225,351,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,486,301,305,304,300,299,298,297, 296,486,303,308,308,303,302,308,308,303,303,303,303,303,294,485,293,308, 310,312,339,340,341,342,343,344,346,347,486,486,202,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,343,344,8,94,345, 108,352,487, 173,353,488, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 354,490,28,32,31,12,13,24,29,489,491,491,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 355,490,28,32,31,12,13,24,29,489,492,492,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 356,490,28,32,31,12,13,24,29,489,493,493,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 318,357,178, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,358,174,28,191,32,31,12,13,24,29,192,174,174,174, 174,174,174,174,174,174,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,174,174,174,174,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 408,201,136,482,481, 73,360,494, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,361,172,28,191,32,31,12,13,24,29,192,172,172,172, 172,172,172,172,172,172,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,172,172,172,172,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,225,362,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,495,301,305,304,300,299,298,297, 296,495,303,308,308,303,302,308,308,303,303,303,303,303,294,496,293,308, 310,312,339,340,341,342,343,344,346,347,495,495,169,169,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,301,343,344,8,94,345, 93,5,6,7,97,96,95,98,10,78,9,363,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,497,265,343,344,238,375,100,94, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 364,1,1,1041, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 365,1,1,1038, 364,366,553, 364,367,552, 538,538,5,6,7,538,538,538,538,538,538,538,538,538,538,538,538,538,538,538, 538,538,538,538,538,538,538,538,538,538,538,538,538,538,538,538,538,97, 96,538,538,538,538,538,538,538,538,538,538,538,10,9,368,368,28,275,12, 13,24,29,368,103,343,344,8,541,541, 5,9,369,400,402, 376,376,376,376,15,16,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376,376, 376,376,370,236,393,393,236,236, 401,401,401,401,401,401,401,67,401,401,401,401,371,68, 399,399,399,399,399,399,399,399,399,399,399,12,372, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,428,10,9,373,28,32,31,12,13,24,29,48,377,49,48, 47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49,49,49,49, 49,49,49,47,47,47,47,47,33,34,27,343,344,380,48,48,8,380,380,379,380, 379,35,33,33,33, 364,374,383, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,498,375,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,499,301,305,304,300,299,298,297, 296,499,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310, 312,339,340,341,342,343,344,346,347,499,499,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,343,344,8,94,345, 365,376,474, 93,420,5,6,7,502,97,96,95,420,195,98,420,10,78,9,377,504,28,23,102,101,13, 24,397,503,397,397,29,500,99,504,103,343,344,505,506,505,100,502,502, 501,94, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 378,1,1,1140, 378,198,440,507,442, 365,380,508, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,72,318,228,229,221,226, 227,97,96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280, 281,282,283,381,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296, 509,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,509,509,479,381,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,509,509,94,345, 93,5,6,7,97,96,95,98,10,78,9,382,382,28,23,102,101,13,24,397,104,397,397,29, 99,382,103,343,344,372,383,375,100,94, 220,195,98,370,241,240,242,371, 108,10,384,364,359, 93,5,6,7,78,9,385,32,23,12,13,510,510,510,33,343,344,8,94, 108,386,355, 318,387,350, 5,6,7,9,388,145,12,13,511,343,344,8, 108,389,353, 318,390,349, 108,391,365, 318,392,366, 275,275,15,16,275,275,29,30,17,18,19,20,53,21,22,23,275,275,275,275,275,275, 275,275,275,275,275,393,86,86,282,86,86,86,86,86,86,86,86,86,86,86,300, 86,86,86, 5,15,16,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21, 22,23,10,9,394,28,31,12,13,24,29,271,513,512,512,271,271,271,271,271, 271,271,271,271,271,271,300,271,513,513,513,513,513,513,513,513,513,513, 513,512,512,343,344,271,271,8, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,279, 514,514,514,514,514,514,514,514,514,514,514,514,514,514,514,300,514,514, 514,514,514,514,514,514,514,514,514,514,514,514, 93,5,6,7,515,97,96,95,420,420,195,98,10,78,9,396,504,28,23,102,101,13,24, 397,503,397,397,29,500,99,504,103,343,344,505,516,505,100,515,515,501, 94, 67,397,517, 518,614,614,78,398,518,518, 220,78,610,520,519, 198,219,400,593,521, 93,5,6,7,97,96,95,98,10,78,9,401,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,467,343,344,238,375,100,94, 72,402,92,522, 10,547,361, 98,404,523, 198,542,524, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 406,1,1,1097, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 407,1,1,1064, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 408,1,1,1079, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 409,1,1,1145, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 410,1,1,1043, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 411,1,1,1152, 525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525, 525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525, 525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525, 525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525, 525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525, 525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525, 525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,525,412,525, 526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526, 526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526, 526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526, 526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526, 526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526, 526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526, 526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,526,413,526, 527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527, 527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527, 527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527, 527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527, 527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527, 527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527, 527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,527,414,527, 466,466,264,466,264,415, 108,198,416,417,234, 93,5,6,7,97,96,95,98,10,78,9,417,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,265,343,344,238,375,100,94, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,415, 268,268,268,268,268,268,268,268,268,268,268,268,268,268,300,268,268,268, 268,268,268,268,268,268,268,268,268,268,268, 364,419,436, 365,420,437, 10,321,528, 365,422,529, 530,15,16,376,376,376,376,376,423,236,530,530,236,236, 5,6,7,97,9,424,32,12,13,33,370,343,344,8, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,531,98,10,78,285,9,117,279,280,281, 282,283,425,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,531,293,308,310,312,339, 340,341,342,343,344,346,359,531,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,343,344,531,8,94, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,532,10,9,426,28,32,31,12,13,24,29,48,377,49,48, 47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49,49,49,49, 49,49,49,47,47,47,47,47,33,34,27,343,344,48,48,8,532,532,379,532,379,35, 33,33,33, 93,5,6,7,25,26,54,78,9,427,32,23,12,13,26,26,26,533,33,322,323,343,344,8,94, 209,210,211,212,213,214,215,216,217,218,220,201,202,222,223,205,206,203,204, 207,208,224,225,197,228,229,221,226,227,97,96,95,198,67,219,199,200,196, 195,98,428,233,232,231,230,549,549,549,549,549,549,549,549,549,549,549, 549,549,549,549,549,549,549,549,549,549,549,549,549,549,549,549,549,549, 549,549,549,549,549,549,549,549, 364,429,534, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 430,132,28,32,31,12,13,24,29,537,536,535,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,98,10,9, 431,432,28,32,31,12,13,24,538,29,539,131,129,130,131,131,131,131,131, 131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8, 130,128,128,128, 5,6,7,97,96,195,10,9,87,542,28,275,12,13,24,29,540,542,103,88,541,343,344,8, 76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76, 76,76,76,76,76,76,76,76,76,76,76,76,76,98,76,433,543,78,78, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 434,132,28,32,31,12,13,24,545,29,544,446,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,435, 132,28,32,31,12,13,24,29,546,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,436, 132,28,32,31,12,13,24,29,547,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,437, 132,28,32,31,12,13,24,29,548,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,438, 132,28,32,31,12,13,24,29,549,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,551,10,78,285,9,117,279,280, 281,282,283,439,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,550,551,301,305,304,300,299,298, 297,296,550,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308, 310,312,339,340,341,342,343,344,346,347,550,550,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94,345, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 440,132,28,32,31,12,13,24,447,29,552,446,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 93,5,6,7,25,26,95,54,10,78,9,441,28,23,557,12,13,556,42,42,42,42,42,555,29, 45,554,553,554,554,343,344,8,94, 93,5,6,7,25,26,95,54,10,78,9,442,28,23,557,12,13,556,40,40,40,40,40,558,29, 44,554,553,554,554,343,344,8,94, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,559,10,78,285,9,117,279,280, 281,282,283,443,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,550,559,301,305,304,300,299,298, 297,296,550,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308, 310,312,339,340,341,342,343,344,346,347,550,550,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94,345, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,444,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,560,301,305,304,300,299,298,297,296, 560,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,560,560,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,94,345, 365,445,561, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,562,446,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,563,301,305,304,300,299,298,297, 296,563,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310, 312,339,340,341,342,343,344,346,347,563,563,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,343,344,8,94,345, 365,447,19, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,448,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,107, 107,303,302,107,107,303,303,303,303,303,294,293,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,449,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,106, 106,303,302,106,106,303,303,303,303,303,294,293,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,450,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,564, 564,303,302,564,564,303,303,303,303,303,294,293,564,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,451,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,565, 565,303,302,565,565,303,303,303,303,303,294,293,565,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,452,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,566, 566,303,302,566,566,303,303,303,303,303,294,293,566,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,453,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,567,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,454,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,568,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,455,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,569,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,456,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,293,603,308,310,312,313, 301,301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8, 94,603,603,311, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,457,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,570,301,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,458,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,571,301,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 532,532,67,459,68, 531,531,12,460, 318,461,485, 93,5,6,7,73,97,96,95,98,10,78,9,462,237,28,328,102,101,13,24,397,104,397, 397,29,99,237,103,325,572,343,344,238,375,100,511,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,463,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,516,293,308,310,312,339,340, 341,342,343,344,346,359,516,301,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,343,344,8,94, 93,409,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,464,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,518,293,308,310,312,339, 340,341,342,343,344,346,359,518,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,343,344,8,517,94, 93,5,6,7,97,96,95,98,10,78,9,465,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,466,343,344,238,375,100,94, 108,198,466,462,499, 465,465,512,220,465,512,467,464,513,514, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9, 468,573,28,32,31,12,13,24,29,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,574, 128,128,128,574, 333,628,630,334, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,470,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,575,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,471,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,576,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,472,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,577,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,473,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,578,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,474,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,579,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,475,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,580,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,476,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,340,581, 301,301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8, 94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,477,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,340,341, 582,301,301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344, 8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,478,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,340,341, 342,583,301,301,301,301,301,301,301,301,301,301,301,301,301,301,301,343, 344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,479,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,340,341, 342,343,584,301,301,301,301,301,301,301,301,301,301,301,301,301,301,301, 343,344,8,94, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,480,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,139, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,139,139,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,343,344,8,94,345, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,481,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,585,301,305,304,300,299,298,297,296, 585,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,585,585,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,94,345, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,482,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,340,341, 342,343,344,586,301,301,301,301,301,301,301,301,301,301,301,301,301,301, 301,343,344,8,94, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,483,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,153, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,153,153,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,343,344,8,94,345, 198,204,243, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,485,206,263, 198,205,483, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,587,10,9, 225,487,490,28,32,31,12,13,24,29,489,587,587,587,131,129,130,131,131, 131,131,131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344, 130,130,8,130,128,128,128, 98,488,588, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,225,489,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,590,301,305,304,300,299,298,297, 296,590,303,308,308,303,302,308,308,303,303,303,303,303,294,589,293,308, 310,312,339,340,341,342,343,344,346,347,590,590,187,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,301,343,344,8,94,345, 93,5,6,7,97,96,95,98,10,78,9,490,237,28,23,102,101,13,24,397,104,397,397,29, 99,237,103,591,343,344,238,375,100,94, 365,491,592, 365,492,593, 365,493,594, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,494,173,28,191,32,31,12,13,24,29,192,173,173,173, 173,173,173,173,173,173,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,173,173,173,173,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 108,198,495,483,175, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,496,171,263, 108,198,497,417,167, 411,333,309,93,147,148,149,409,12,13,14,90,378,5,15,16,52,50,51,6,7,11,28, 25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,56, 167,168,169,170,165,172,173,174,406,175,72,318,176,177,108,209,210,211, 212,213,214,215,216,217,218,220,408,73,201,202,222,223,205,206,203,204, 207,208,224,225,197,407,228,229,221,226,227,97,96,295,95,198,287,288, 289,290,291,67,219,199,200,196,410,195,364,54,98,457,10,78,285,9,117, 279,280,281,282,283,498,595,595,595,595,595,595,595,595,595,595,595,595, 595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595, 595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595, 595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595, 595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595, 595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595,595, 595,595,595,595,595,595,595,595,595,595,595,459,595,595,595,595,595,595, 595,595,595,595,595,595, 198,454,596, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,597,98,10,78,285,9,117,279,280,281, 282,283,500,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,597,293,308,310,312,339, 340,341,342,343,344,346,359,597,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,343,344,597,8,94, 195,98,423,599,598, 220,448,600, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,97,96,195,98,365,10,9,225,503,277,28,32,421,12, 13,24,274,603,29,273,277,103,604,48,377,49,48,47,47,48,48,48,48,48,48, 48,48,48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47, 33,34,27,343,344,605,48,48,8,601,602,602,276,379,602,379,35,33,33,33, 93,420,5,6,7,420,97,96,95,420,420,195,98,420,10,78,9,504,504,28,23,102,101, 13,24,397,503,397,397,29,500,99,504,103,343,344,505,386,505,100,422,422, 501,94, 195,98,385,607,606, 220,446,608, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,10,9,507,28,32,31,12,13,24,29,48,377,49,48,47, 47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49,49,49,49,49, 49,49,47,47,47,47,47,33,34,27,343,344,48,48,8,443,445,35,33,33,33, 609,376,15,16,376,376,376,376,376,376,376,376,508,236,609,609,236,236, 611,198,509,610,611, 108,510,356, 10,354,364, 275,275,15,16,275,275,29,30,17,18,19,20,53,21,22,23,275,275,275,275,275,275, 275,275,275,275,275,512,86,86,283,86,86,86,86,86,86,86,86,86,86,86,300, 86,86,86, 272,272,15,16,272,272,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53, 21,22,23,272,272,272,272,272,272,272,272,272,272,272,513,163,163,163, 163,281,163,163,163,163,163,163,163,163,163,163,163,300,163,163,163,163, 163,163,163,163,163,163,163,163,163,163, 15,16,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,280, 268,268,268,268,268,268,268,268,268,268,268,268,268,268,300,268,268,268, 268,268,268,268,268,268,268,268,268,268,268, 220,600,612, 220,598,613, 14,5,15,16,6,7,11,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20, 53,21,22,23,54,10,9,517,28,31,12,13,24,397,29,394,395,394,396,393,393, 394,394,394,394,394,394,394,394,394,394,394,300,394,395,395,395,395,395, 395,395,395,395,395,395,393,393,398,343,344,394,394,8,399,614,614,614, 614, 220,616,615, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,519, 132,28,32,31,12,13,24,29,612,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 220,611,611,520,616, 14,5,15,16,6,7,11,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20, 53,21,22,23,54,10,9,521,28,31,12,13,24,397,29,394,395,394,396,393,393, 394,394,394,394,394,394,394,394,394,394,394,300,394,395,395,395,395,395, 395,395,395,395,395,395,393,393,398,343,344,394,394,8,399,595,595,595, 333,522,617,617,334, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,618,10,78,285,9,117,279,280, 281,282,283,523,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,550,618,301,305,304,300,299,298, 297,296,550,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308, 310,312,339,340,341,342,343,344,346,347,550,550,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94,345, 5,6,7,10,78,9,524,403,404,12,13,360,74,150,343,344,8,404,544,404, 411,333,309,93,147,148,149,409,12,13,14,90,378,5,15,16,52,50,51,6,7,11,28, 25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,56, 167,168,169,170,165,172,173,174,406,175,72,318,176,177,108,209,210,211, 212,213,214,215,216,217,218,220,408,73,201,202,222,223,205,206,203,204, 207,208,224,225,197,407,228,229,221,226,227,97,96,295,95,198,287,288, 289,290,291,67,219,199,200,196,410,195,364,54,98,365,10,78,285,9,117, 279,280,281,282,283,525,253,253,253,253,253,253,253,253,253,253,253,253, 413,254,253,412,246,253,253,253,253,253,253,253,253,253,253,253,253,253, 253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, 253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,254,253,253, 254,414,253,253,253,253,253,253,253,253,253,253,253,255,253,253,253,253, 253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, 253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, 253,253,253,253,253,253,253,253,253, 411,333,309,93,147,148,149,409,12,13,14,90,378,5,15,16,52,50,51,6,7,11,28, 25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,56, 167,168,169,170,165,172,173,174,406,175,72,318,176,177,108,209,210,211, 212,213,214,215,216,217,218,220,408,73,201,202,222,223,205,206,203,204, 207,208,224,225,197,407,228,229,221,226,227,97,96,295,95,198,287,288, 289,290,291,67,219,199,200,196,410,195,364,54,98,365,10,78,285,9,117, 279,280,281,282,283,526,249,249,249,249,249,249,249,249,249,249,249,249, 413,245,249,412,250,249,249,249,249,249,249,249,249,249,249,249,249,249, 249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249, 249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,250,249,249, 250,414,249,249,249,249,249,249,249,249,249,249,249,251,249,249,249,249, 249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249, 249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249,249, 249,249,249,249,249,249,249,249,249, 411,333,309,93,147,148,149,409,12,13,14,90,378,5,15,16,52,50,51,6,7,11,28, 25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,56, 167,168,169,170,165,172,173,174,406,175,72,318,176,177,108,209,210,211, 212,213,214,215,216,217,218,220,408,73,201,202,222,223,205,206,203,204, 207,208,224,225,197,407,228,229,221,226,227,97,96,295,95,198,287,288, 289,290,291,67,219,199,200,196,410,195,364,54,98,365,10,78,285,9,117, 279,280,281,282,283,527,257,257,257,257,257,257,257,257,257,257,257,257, 413,258,257,412,258,257,257,257,257,257,257,257,257,257,257,257,257,257, 257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257, 257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,258,257,257, 247,414,257,257,257,257,257,257,257,257,257,257,257,259,257,257,257,257, 257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257, 257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257, 257,257,257,257,257,257,257,257,257, 5,6,7,25,26,97,9,528,32,12,13,33,370,322,323,343,344,8, 619,15,16,376,376,376,376,376,529,236,619,619,236,236, 309,378,378,378,378,378,530,434,434,620, 364,531,439, 365,532,621, 93,78,533,23,27,27,27,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,534,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,96, 96,303,302,96,96,303,303,303,303,303,294,293,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,225,535,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,623,301,305,304,300,299,298,297, 296,623,303,308,308,303,302,308,308,303,303,303,303,303,294,622,293,308, 310,312,339,340,341,342,343,344,346,347,623,623,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94,345, 365,536,84, 365,537,624, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,538, 132,28,32,31,12,13,24,29,625,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76, 76,76,76,76,76,76,76,76,76,76,76,76,76,98,76,539,543,79,79, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,540,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,626,301,305,304,300,299,298,297,296, 626,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,626,626,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,94,345, 195,91,627, 5,6,7,97,96,195,10,9,89,542,28,275,12,13,24,29,540,542,103,90,541,343,344,8, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,628,10,78,285,9,117,279,280, 281,282,283,543,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,550,628,301,305,304,300,299,298, 297,296,550,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308, 310,312,339,340,341,342,343,344,346,347,550,550,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94,345, 365,544,53, 365,545,52, 219,546,629, 219,547,630, 219,548,631, 219,549,632, 198,37,596, 365,551,39, 365,552,67, 25,26,553,59,59,59, 10,554,633, 93,5,6,7,10,78,9,555,28,23,634,12,13,24,43,43,43,43,43,29,343,344,8,94, 5,6,7,25,26,95,9,556,30,12,13,31,636,635,636,636,343,344,8, 10,557,637, 93,5,6,7,10,78,9,558,28,23,634,12,13,24,41,41,41,41,41,29,343,344,8,94, 365,559,38, 198,364,560,35,483, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,561,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,100, 100,303,302,100,100,303,303,303,303,303,294,293,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,562,102,263, 198,101,483, 197,407,111,449,448, 197,407,110,449,448, 197,407,109,449,448, 224,225,97,114,452,451,450, 224,225,97,113,452,451,450, 73,207,208,569,458,457,638, 226,227,117,454,453, 226,227,116,454,453, 220,512,464,513,514, 93,5,6,7,97,96,95,195,98,10,78,9,634,504,28,23,102,101,13,24,397,503,397, 397,29,500,99,504,103,343,344,505,632,505,100,633,501,94, 365,574,639, 207,208,122,458,457, 207,208,121,458,457, 207,208,120,458,457, 207,208,119,458,457, 203,204,67,219,125,473,472,471,470, 203,204,67,219,124,473,472,471,470, 205,206,127,475,474, 96,129,476, 223,131,477, 222,133,478, 73,198,585,483,640, 202,135,479, 108,587,641, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,225, 588,490,28,32,31,12,13,24,29,489,642,642,131,129,130,131,131,131,131, 131,131,131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130, 8,130,128,128,128, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,589,189,263, 198,188,483, 220,591,643, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,592,190,28,191,32,31,12,13,24,29,192,190,190,190, 190,190,190,190,190,190,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,190,190,190,190,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,593,184,28,191,32,31,12,13,24,29,192,184,184,184, 184,184,184,184,184,184,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,184,184,184,184,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,594,644,28,191,32,31,12,13,24,29,192,644,644,644, 644,644,644,644,644,644,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,644,644,644,644,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 411,333,309,93,147,148,149,409,12,13,14,90,378,5,15,16,52,50,51,6,7,11,28, 25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22,23,56, 167,168,169,170,165,172,173,174,406,175,72,318,176,177,108,209,210,211, 212,213,214,215,216,217,218,220,408,73,201,202,222,223,205,206,203,204, 207,208,224,225,197,407,228,229,221,226,227,97,96,295,95,198,287,288, 289,290,291,67,219,199,200,196,410,195,364,54,98,10,78,285,9,117,279, 280,281,282,283,458,456,456,456,456,456,456,456,456,456,456,456,456,456, 456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456, 456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456, 456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456, 456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456, 456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456, 456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456,456, 456,456,456, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,596,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,55, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,55,55,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,343,344,8,94,345, 364,597,426, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,645,98,10,78,285,9,117,279,280,281, 282,283,598,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,645,293,308,310,312,339, 340,341,342,343,344,346,359,645,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,343,344,645,8,94, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,646,10,9,599,28,32,31,12,13,24,29,48,377,49,48, 47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49,49,49,49, 49,49,49,47,47,47,47,47,33,34,27,343,344,48,48,8,646,646,379,646,379,35, 33,33,33, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,600,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,449, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,449,449,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,343,344,8,94,345, 365,601,427, 365,602,647, 648,376,15,16,376,376,376,376,376,376,603,236,648,648,236,236, 93,5,6,7,97,96,95,98,10,78,9,649,604,237,28,23,102,101,13,24,397,104,397, 397,29,99,237,103,451,343,344,238,375,100,94, 365,605,390, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,650,98,10,78,285,9,117,279,280,281, 282,283,606,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,650,293,308,310,312,339, 340,341,342,343,344,346,359,650,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,343,344,650,8,94, 12,13,14,378,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30, 17,18,19,20,53,21,22,23,428,10,9,607,28,32,31,12,13,24,29,48,377,49,48, 47,47,48,48,48,48,48,48,48,48,48,48,48,300,48,49,49,49,49,49,49,49,49, 49,49,49,47,47,47,47,47,33,34,27,343,344,651,48,48,8,651,651,379,651, 379,35,33,33,33, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,608,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,447, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,447,447,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,343,344,8,94,345, 309,378,378,378,378,378,378,378,378,378,609,380,380,620, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,72,228,229,221,226,227, 97,96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,477,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,481, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,481,481,381,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,481,94,345, 318,611,478, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,612,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,293,601,308,310,312,313, 301,301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8, 94,601,601,311, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,613,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303, 308,308,303,302,308,308,303,303,303,303,303,294,293,599,308,310,312,313, 301,301,301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8, 94,599,599,311, 198,219,614,652,521, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,615, 132,28,32,31,12,13,24,29,617,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,616, 132,28,32,31,12,13,24,29,613,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 333,464,630,334, 365,618,545, 309,378,378,378,378,378,619,435,435,620, 98,620,653, 654,15,16,376,376,376,376,376,621,236,654,654,236,236, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,622,86,263, 198,85,596, 76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76, 76,76,76,76,76,76,76,76,76,76,76,76,76,98,76,624,543,80,80, 365,625,655, 198,364,626,92,483, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,627,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,656,293,308,310,312,339,340, 341,342,343,344,346,359,656,301,301,301,301,301,301,301,301,301,301,301, 301,301,301,301,343,344,8,94, 365,628,94, 98,629,657, 98,630,658, 98,631,659, 98,632,660, 95,633,661, 10,634,662, 25,26,635,61,61,61, 10,636,663, 93,5,6,7,25,26,95,54,78,9,637,32,23,12,13,26,26,26,533,33,665,664,665,665, 343,344,8,94, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,638,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,666,301,301, 301,301,301,301,301,301,301,301,301,301,301,301,301,343,344,8,94,606, 72,639,631,188,179, 93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97,96, 295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281,282, 283,640,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306,306, 292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,303,308, 308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339,340,341, 342,343,344,346,359,137,301,301,301,301,301,301,301,301,301,301,301,301, 301,301,301,343,344,8,94, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,667,10,78,285,9,117,279,280, 281,282,283,641,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13, 306,306,292,306,306,307,306,306,29,306,348,301,305,304,300,299,298,297, 296,348,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310, 312,339,340,341,342,343,344,346,347,348,348,667,301,301,301,301,301,301, 301,301,301,301,301,301,301,301,301,343,344,8,94,345, 365,642,668, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,643,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,301,305,304,300,299,298,297,296,186, 303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312,339, 340,341,342,343,344,346,347,186,186,301,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,343,344,8,94,345, 406,182,669, 364,645,431, 365,646,670, 671,376,15,16,376,376,376,376,376,376,647,236,671,671,236,236, 309,378,378,378,378,378,378,378,648,424,424,620, 672,673,411,333,309,93,147,148,149,409,12,13,14,90,378,5,15,16,52,50,51,6,7, 11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,29,30,17,18,19,20,53,21,22, 23,56,167,168,169,170,165,172,173,174,406,175,72,318,176,177,108,209, 210,211,212,213,214,215,216,217,218,220,408,73,201,202,222,223,205,206, 203,204,207,208,224,225,197,407,228,229,221,226,227,97,96,295,95,198, 287,288,289,290,291,67,219,199,200,196,410,195,364,54,98,365,10,78,285, 9,117,279,280,281,282,283,649,674,674,674,674,674,674,674,674,674,674, 674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674, 674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674, 674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674, 674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674, 674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674, 674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674,674, 674,674,674,674,674,674,674,674,674, 364,650,389, 365,651,675, 14,652,676, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,678,10,9, 653,132,28,32,31,12,13,24,29,677,131,129,130,131,131,131,131,131,131, 131,131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130, 128,128,128,677,678, 309,378,378,378,378,378,654,438,438,620, 76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76,76, 76,76,76,76,76,76,76,76,76,76,76,76,76,98,76,655,543,81,81, 364,656,93, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,657,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,679,301,305,304,300,299,298,297,296, 679,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,679,679,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,94,345, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,658,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,680,301,305,304,300,299,298,297,296, 680,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,680,680,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,94,345, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,659,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,681,301,305,304,300,299,298,297,296, 681,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,681,681,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,94,345, 309,93,5,6,7,25,26,36,37,38,39,40,41,42,43,44,45,46,228,229,221,226,227,97, 96,295,95,287,288,289,290,291,199,200,98,10,78,285,9,117,279,280,281, 282,283,660,28,23,284,294,293,306,306,306,306,306,306,286,286,12,13,306, 306,292,306,306,307,306,306,29,306,682,301,305,304,300,299,298,297,296, 682,303,308,308,303,302,308,308,303,303,303,303,303,294,293,308,310,312, 339,340,341,342,343,344,346,347,682,682,301,301,301,301,301,301,301,301, 301,301,301,301,301,301,301,343,344,8,94,345, 25,26,661,56,56,56, 93,5,6,7,54,78,9,662,32,23,12,13,26,26,26,533,33,343,344,8,94, 95,663,683, 25,26,664,60,60,60, 10,665,684, 408,207,208,605,458,457,455, 365,667,685, 108,668,191, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,669,183,28,191,32,31,12,13,24,29,192,183,183,183, 183,183,183,183,183,183,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,183,183,183,183,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 686,376,15,16,376,376,376,376,376,376,670,236,686,686,236,236, 309,378,378,378,378,378,378,378,671,425,425,620, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,672,1,1,1154, 1,1,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026, 1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,1026,673,1,1,1153, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263,263, 263,263,263,263,263,263,263,263,263,263,263,263,263,263,674,452,263, 687,376,15,16,376,376,376,376,376,376,675,236,687,687,236,236, 688,614,614,78,676,688,688, 198,640,689, 365,678,641, 198,365,679,51,483, 198,365,680,50,483, 198,365,681,49,483, 198,365,682,48,483, 25,26,683,58,58,58, 95,684,690, 12,13,14,90,5,15,16,52,50,51,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45, 46,29,30,17,18,19,20,53,21,22,23,167,168,169,170,165,172,173,174,175,72, 176,177,58,10,78,9,225,685,198,28,191,32,31,12,13,24,29,192,198,198,198, 198,198,198,198,198,198,48,190,189,188,179,187,186,185,184,183,171,57, 182,181,180,179,198,198,198,198,58,49,48,47,47,48,48,48,48,48,48,48,48, 48,48,48,300,48,49,49,49,49,49,49,49,49,49,49,49,47,47,47,47,47,33,34, 27,343,344,166,59,61,48,48,8,178,55,35,33,33,33, 309,378,378,378,378,378,378,378,686,430,430,620, 309,378,378,378,378,378,378,378,687,388,388,620, 220,618,691, 12,13,14,5,15,16,6,7,11,28,25,26,36,37,38,39,40,41,42,43,44,45,46,10,9,689, 132,28,32,31,12,13,24,29,643,131,129,130,131,131,131,131,131,131,131, 131,131,131,131,129,129,129,129,128,127,27,343,344,130,130,8,130,128, 128,128, 25,26,690,57,57,57, 5,691,619, }; static const unsigned short ag_sbt[] = { 0, 48, 52, 98, 224, 226, 358, 490, 622, 625, 757, 889,1021,1153, 1285,1417,1549,1681,1813,1945,2077,2209,2341,2473,2605,2617,2749,2881, 2896,3028,3160,3292,3295,3298,3320,3339,3344,3476,3608,3740,3872,4004, 4136,4268,4400,4532,4664,4796,4845,4933,4987,5119,5251,5383,5515,5647, 5654,5786,5822,5825,5844,5851,5854,5857,5982,6033,6037,6132,6264,6334, 6337,6353,6423,6555,6687,6690,6706,6714,6750,6882,6917,6924,6927,6941, 6944,6972,7084,7113,7162,7235,7288,7420,7424,7572,7704,7850,7982,8114, 8246,8378,8383,8397,8410,8413,8476,8510,8545,8557,8562,8694,8709,8724, 8743,8746,8791,8794,8799,8802,8934,9059,9096,9100,9109,9112,9238,9279, 9314,9409,9426,9443,9506,9568,9622,9652,9773,9776,9781,9795,9800,9804, 9807,9876,9911,9914,9917,9920,9923,9930,10062,10194,10326,10338,10347, 10361,10366,10370,10373,10376,10393,10396,10436,10486,10596,10599,10652, 10657,10789,10792,10924,11056,11188,11320,11323,11455,11587,11719,11851, 11983,12115,12120,12123,12253,12256,12259,12356,12501,12504,12507,12510, 12658,12661,12785,12788,12839,12985,12988,13120,13252,13384,13516,13648, 13780,13912,14044,14176,14308,14440,14572,14704,14836,14968,15100,15232, 15364,15496,15628,15760,15892,16024,16156,16288,16420,16552,16684,16816, 16948,17080,17212,17344,17476,17608,17611,17614,17617,17620,17687,17710, 17774,17808,17820,17823,17949,18050,18180,18214,18226,18231,18234,18237, 18256,18381,18384,18429,18445,18490,18493,18538,18661,18745,18786,18792, 18813,18817,18852,19102,19137,19143,19148,19162,19221,19227,19290,19344, 19397,19523,19631,19634,19639,19669,19795,19927,20059,20191,20323,20455, 20458,20590,20593,20725,20857,20989,21121,21253,21274,21387,21455,21587, 21590,21593,21596,21599,21602,21605,21715,21826,21937,22048,22061,22129, 22134,22266,22273,22396,22401,22431,22500,22506,22630,22634,22766,22769, 22775,22791,22807,22833,22945,23069,23072,23075,23085,23094,23220,23261, 23299,23431,23434,23438,23441,23446,23449,23454,23463,23468,23471,23474, 23477,23612,23615,23643,23646,23649,23684,23815,23818,23821,23889,23957, 24025,24028,24173,24178,24181,24326,24458,24493,24625,24757,24760,24763, 24830,24835,24898,24912,24925,25023,25026,25155,25158,25201,25333,25338, 25341,25474,25508,25516,25521,25540,25543,25546,25558,25561,25564,25567, 25570,25616,25688,25742,25784,25787,25794,25799,25804,25838,25842,25845, 25848,25851,25983,26115,26247,26379,26511,26643,26770,26897,27024,27030, 27035,27069,27122,27125,27128,27131,27134,27148,27162,27288,27385,27410, 27492,27495,27563,27630,27654,27698,27766,27831,27896,27961,28026,28156, 28224,28258,28292,28422,28550,28553,28682,28685,28796,28907,29019,29131, 29243,29356,29469,29584,29704,29818,29932,29937,29941,29944,29981,30105, 30231,30265,30270,30280,30347,30351,30466,30581,30696,30811,30927,31043, 31160,31278,31397,31517,31644,31772,31893,32020,32023,32149,32152,32222, 32225,32356,32390,32393,32396,32399,32544,32549,32675,32680,32932,32935, 33061,33066,33069,33181,33225,33230,33233,33326,33344,33349,33352,33355, 33401,33471,33524,33527,33530,33614,33617,33682,33687,33770,33775,33905, 33925,34180,34435,34690,34708,34722,34732,34735,34738,34746,34857,34987, 34990,34993,35058,35102,35230,35233,35257,35387,35390,35393,35396,35399, 35402,35405,35408,35411,35414,35420,35423,35447,35466,35469,35493,35496, 35501,35612,35738,35741,35746,35751,35756,35763,35770,35777,35782,35787, 35792,35830,35833,35838,35843,35848,35853,35862,35871,35876,35879,35882, 35885,35890,35893,35896,35964,36090,36093,36096,36241,36386,36531,36780, 36907,36910,37036,37133,37260,37263,37266,37282,37317,37320,37446,37544, 37671,37685,37815,37818,37938,38058,38063,38128,38193,38197,38200,38210, 38213,38227,38353,38356,38400,38403,38408,38532,38535,38538,38541,38544, 38547,38550,38553,38559,38562,38590,38706,38711,38834,38964,38967,39094, 39097,39100,39103,39119,39131,39386,39389,39392,39395,39463,39473,39517, 39520,39648,39776,39904,40032,40038,40059,40062,40068,40071,40078,40081, 40084,40229,40245,40257,40386,40515,40641,40657,40664,40667,40670,40675, 40680,40685,40690,40696,40699,40844,40856,40868,40871,40936,40942,40945 }; static const unsigned short ag_sbe[] = { 44, 50, 94, 142, 225, 354, 486, 618, 623, 753, 885,1017,1149,1281, 1413,1545,1677,1809,1941,2073,2205,2337,2469,2601,2609,2745,2877,2886, 3024,3156,3288,3293,3296,3306,3327,3341,3472,3604,3736,3868,4000,4132, 4264,4396,4528,4660,4792,4826,4880,4956,5115,5247,5379,5511,5643,5649, 5782,5797,5823,5832,5847,5852,5855,5900,6008,6034,6073,6260,6290,6335, 6343,6379,6551,6683,6688,6696,6709,6745,6878,6913,6919,6925,6932,6942, 6953,7014,7096,7143,7203,7258,7416,7421,7479,7700,7769,7978,8110,8242, 8374,8380,8395,8409,8411,8470,8487,8521,8552,8559,8690,8699,8714,8730, 8744,8788,8792,8796,8800,8930,8977,9093,9097,9103,9110,9235,9261,9290, 9350,9415,9432,9500,9531,9591,9634,9698,9774,9778,9786,9797,9801,9805, 9874,9907,9912,9915,9918,9921,9925,10058,10190,10322,10330,10344,10355, 10364,10369,10371,10374,10382,10394,10409,10463,10528,10597,10622,10653, 10785,10790,10920,11052,11184,11316,11321,11451,11583,11715,11847,11979, 12111,12116,12121,12169,12254,12257,12296,12410,12502,12505,12508,12565, 12659,12705,12786,12814,12894,12986,13116,13248,13380,13512,13644,13776, 13908,14040,14172,14304,14436,14568,14700,14832,14964,15096,15228,15360, 15492,15624,15756,15888,16020,16152,16284,16416,16548,16680,16812,16944, 17076,17208,17340,17472,17604,17609,17612,17615,17618,17672,17695,17768, 17785,17817,17821,17868,17987,18096,18191,18218,18228,18232,18235,18243, 18299,18382,18426,18434,18487,18491,18535,18580,18694,18768,18788,18798, 18814,18850,18975,19113,19142,19145,19153,19219,19223,19284,19313,19367, 19442,19564,19632,19636,19651,19792,19923,20055,20187,20319,20451,20456, 20586,20591,20721,20853,20985,21117,21249,21261,21319,21413,21583,21588, 21591,21594,21597,21600,21603,21649,21759,21870,21981,22054,22087,22131, 22262,22269,22320,22398,22415,22457,22502,22550,22631,22762,22767,22773, 22780,22796,22816,22875,22989,23070,23073,23083,23090,23217,23243,23273, 23427,23432,23435,23439,23442,23447,23451,23458,23465,23469,23472,23475, 23529,23613,23628,23644,23647,23660,23730,23816,23819,23847,23915,23983, 24026,24082,24175,24179,24235,24372,24469,24621,24753,24758,24761,24815, 24832,24892,24910,24924,24962,25024,25072,25156,25174,25329,25335,25339, 25388,25485,25511,25518,25527,25541,25544,25550,25559,25562,25565,25568, 25597,25646,25711,25757,25785,25791,25796,25801,25815,25839,25843,25846, 25849,25979,26111,26243,26375,26507,26639,26768,26895,27022,27029,27032, 27046,27092,27123,27126,27129,27132,27142,27153,27207,27325,27394,27450, 27493,27521,27589,27638,27694,27724,27791,27856,27921,27986,28072,28182, 28235,28269,28338,28467,28551,28599,28683,28729,28840,28951,29063,29175, 29287,29400,29513,29629,29748,29862,29935,29940,29942,29956,30025,30150, 30242,30267,30276,30306,30348,30395,30510,30625,30740,30855,30971,31087, 31204,31322,31441,31562,31689,31816,31938,32021,32146,32150,32179,32223, 32271,32367,32391,32394,32397,32453,32546,32672,32677,32805,32933,32980, 33063,33067,33111,33198,33227,33231,33269,33338,33346,33350,33353,33382, 33439,33494,33525,33528,33563,33615,33642,33685,33720,33771,33821,33911, 34050,34305,34560,34697,34716,34728,34733,34736,34740,34790,34903,34988, 34991,35018,35098,35147,35231,35241,35303,35388,35391,35394,35397,35400, 35403,35406,35409,35412,35416,35421,35430,35454,35467,35476,35494,35498, 35545,35735,35739,35743,35748,35753,35759,35766,35773,35779,35784,35788, 35804,35831,35835,35840,35845,35850,35857,35866,35873,35877,35880,35883, 35887,35891,35894,35922,36087,36091,36094,36150,36295,36440,36655,36825, 36908,36955,37073,37178,37261,37264,37276,37294,37318,37365,37483,37589, 37681,37731,37816,37863,37983,38060,38088,38153,38194,38198,38206,38211, 38221,38350,38354,38396,38401,38405,38452,38533,38536,38539,38542,38545, 38548,38551,38555,38560,38572,38634,38707,38755,38880,38965,39012,39095, 39098,39101,39113,39127,39258,39387,39390,39393,39421,39469,39513,39518, 39565,39693,39821,39949,40034,40045,40060,40064,40069,40074,40079,40082, 40138,40239,40253,40382,40511,40638,40651,40661,40665,40668,40672,40677, 40682,40687,40692,40697,40753,40852,40864,40869,40896,40938,40943,40945 }; static const unsigned char ag_fl[] = { 2,1,1,2,1,1,1,1,1,1,2,1,1,1,1,1,2,2,1,3,1,1,1,1,1,1,3,4,1,1,2,2,3,3,1, 4,0,1,4,4,3,4,3,4,3,3,2,2,7,7,7,7,4,4,1,3,4,6,5,2,4,3,1,2,2,2,2,4,1,1, 1,1,1,1,1,1,0,1,3,4,5,6,1,2,3,2,3,1,2,1,2,1,3,4,3,2,4,1,2,1,4,2,3,2,3, 1,3,3,1,3,3,3,1,3,3,1,3,3,1,3,3,3,3,1,3,3,1,3,1,3,1,3,1,3,1,3,1,5,1,3, 1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,2,0,1,3,1,2,1,2,3,4,3, 2,0,1,3,1,1,2,5,7,5,1,4,2,1,2,5,7,0,1,0,1,0,1,8,2,1,1,2,1,2,1,2,2,2,3, 3,0,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,3,1,2,3,2,3,4,1,2,2,2,2,0,2,1,1,1, 3,3,3,0,2,2,2,0,2,2,2,0,2,2,2,0,1,2,3,1,3,1,1,2,2,1,2,0,1,3,0,1,2,3,1, 2,3,2,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,3,3,1,1,2,2,3,3,2,3,1,4,4,0,1,4,5,1,3,1,3,1,1,1,1,1,1,5, 5,4,1,5,2,5,6,4,4,5,1,2,2,3,3,5,5,3,1,3,1,2,2,1,2,1,0,1,0,1,6,0,1,4,3, 1,2,1,6,4,3,2,1,4,2,1,1,1,3,3,4,3,4,1,1,2,2,0,1,2,1,2,1,2,2,3,0,1,2,3, 0,1,2,1,4,5,3,3,0,1,6,4,2,1,4,5,3,3,6,4,1,1,2,3,1,3,2,4,2,4,1,2,4,1,2, 1,2,0,1,3,0,1,3,2,4,2,3,4,2,2,2,3,3,2,3,1,0,1,4,2,1,3,0,1,4,6,1,2,3,3, 3,4,5,1,1,1,1,2,1,4,2,3,1,1,0,1,3,1,1,2,1,3,1,2,2,2,3,2,2,1,1,3,1,1,1, 0,1,3,0,1,3,3,3,2,1,1,1,2,0,1,2,2,2,1,3,4,1,1,1,2,1,1,3,3,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,0,5,1, 3,1,1,2,4,2,4,1,3,1,1,5,0,1,2,1,2,3,4,0,1,2,4,6,8,4,1,3,1,1,1,2,4,3,1, 2,5,2,2,1,1,0,1,2,0,1,4,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,2,0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 }; static const unsigned short ag_ptt[] = { 0, 1, 1, 13, 16, 16, 16, 16, 16, 23, 23, 16, 5, 5, 26, 26, 26, 26, 26, 26, 26, 35, 35, 34, 34, 34, 30, 30, 8, 8, 8, 8, 8, 8, 39, 39, 44, 44, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 43, 43, 48, 48, 48, 48, 48, 48, 63, 63, 63, 63, 63, 63, 63, 63, 65, 65, 65, 65, 65, 65, 77, 77, 67, 67, 67, 67, 74, 74, 78, 79, 79, 75, 75, 82, 82, 82, 83, 83, 76, 68, 68, 85, 85, 64, 64, 32, 32, 87, 87, 89, 89, 89, 92, 92, 92, 92, 95, 95, 95, 96, 96, 96, 99, 99, 99, 99, 99,102,102,102, 105,105,106,106,108,108,110,110,112,112,114,114, 59, 59, 59,117,117,117, 117,117,117,117,117,117,117,117, 41, 41, 84, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,141,141,139,139,139,145,145,130,130,130,146,151,151,131,149, 150,150,132,132,132,155,158,158,160,160,133,133,165,165,166,166,167,167, 133,163,164,169,169,170,170,171,171,134,134,134,134,178,178, 14,179,180, 180,180,180,180,180,136,136,136,136, 80,181,181,181,181,181,181,181,192, 192,192,192, 81, 81, 81,193,193,195,195,195,197,198,194,199,199,199,199, 200,200,200,200,201,201,201,201,205,205,137,137,142,142,172,208,208,172, 209,209,210,210,172,212,212,172,172,213,213,213,213,213,214,216,216,216, 216,216,222,222,222, 45, 45,207,207,140,140,140,140,140,206,206,206,206, 206,206,206,206,206,206,206,211,211,211,211,243,243,215,215,215,215,215, 61, 61,242,242,242,242,242,242,242,242, 7,252,252,241,241,251,251,253, 253, 38, 38,185,185,256,256,258,259,257,261,187,262,188,188,188,189,189, 247,247,247,247,247,186,184,184,173,173,265,265,265,159,159,266,271,271, 273,273,266,274,274,266,266,275,275,276,276,276,276, 4, 4, 4,270,228, 228,268,268,268,268,268,268,268,268,268,268,282,282, 53, 3, 3,283,283, 3, 3,284,284, 3, 3,286,286,285,285,287,287,287,287,290,290,287,287, 281,281,291,291,291,291,291,291,289,289,289,289,292,292,294,294,294,294, 288,277,277,269,296,298,298,299,299,296,302,302,144,144,304,300,300,300, 138,138,307,303,308,267,267,309,311,311,309,309,310,310,314,314,240,240, 316,312,312,312,312,312,312,246,246,246,313,313,321,321,321,321,323,322, 325,325,322,322,322,322,324,324,327,327,327,327,327,328,329,315,331,331, 332,332,332,334,334,332,335,335,332,332,332,333,326,326,326, 36,342,342, 340,341,301,343,343,344,345,345,345, 29,346,346,346,346,346,346,346,346, 346,346,346,346,346,346,346,346,346,346,346,346,346,346,346,346,346,346, 346,346,346,346,346,346,346,346,346,346,346,346,346,346,346,346,347,190, 348,348,349,349,351,351,351,351, 88, 88, 88,352,352,355,355,353,350,350, 350,350,356,356,350,350,350,350, 25,249,249,357,357,357,182,183,135,306, 306,358,360,360,360,360,361,361,118,363,363,272,362,362,196,196,196,196, 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, 196,196,196,196,196,196,202,202,202,203,203,203,204,204,204,295,295,295, 295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295, 295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295, 295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295, 295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295, 295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295, 295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295, 295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,295,297,297, 297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297, 297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297, 297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297, 297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297, 297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297, 297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297,297, 297,297,297,297,297,297,297,297,297,297,297,297,297,297,317,317,365,365, 366,366, 17, 18, 19, 20, 21, 22, 24, 27, 6, 28, 33, 31, 37, 42, 40, 46, 47, 49, 50, 54, 52, 51, 55, 56, 57, 58, 60, 62, 66, 69, 70, 71, 72, 73, 9, 10, 90, 91, 93, 94, 97, 98,100,101,103,104,107,109,111,113,116,115, 119,120,121,122,123,124,125,126,127,128,129,143,147,148,152,153,154,156, 157,161,162,168,174,175,176,177,191,217,218,219,220,221,223,224,225,226, 227,229,230,231,232,233,234,235,236,237,238,239,244,245,248,250,254,255, 260,263,264,278,279,280,293,305,318,319,320,330,336,337,338,339,354,359, 364, 11, 12 }; static void ag_ra(void) { switch(ag_rpx[(PCB).ag_ap]) { case 1: ag_rp_1(V(0,(InputToken *))); break; case 2: V(0,(TypeDefinition *)) = ag_rp_2(V(0,(InputToken *))); break; case 3: V(0,(TypeDefinition *)) = ag_rp_3(V(0,(InputToken *))); break; case 4: ag_rp_4(V(0,(InputToken *))); break; case 5: V(0,(Scope * *)) = ag_rp_5(V(0,(Scope * *))); break; case 6: V(0,(Scope * *)) = ag_rp_6(V(0,(Scope * *))); break; case 7: V(0,(Scope * *)) = ag_rp_7(V(0,(TypeDefinition *))); break; case 8: V(0,(Scope * *)) = ag_rp_8(V(0,(TypeDefinition *))); break; case 9: V(0,(Scope * *)) = ag_rp_9(V(1,(TypeDefinition *))); break; case 10: V(0,(Scope * *)) = ag_rp_10(V(1,(TypeDefinition *))); break; case 11: V(0,(Scope * *)) = ag_rp_11(V(0,(Scope * *)), V(2,(TypeDefinition *))); break; case 12: V(0,(Scope * *)) = ag_rp_12(V(0,(Scope * *)), V(2,(TypeDefinition *))); break; case 13: ag_rp_13(); break; case 14: ag_rp_14(); break; case 15: ag_rp_15(); break; case 16: ag_rp_16(); break; case 17: ag_rp_17(); break; case 18: ag_rp_18(); break; case 19: ag_rp_19(); break; case 20: ag_rp_20(); break; case 21: ag_rp_21(); break; case 22: ag_rp_22(); break; case 23: V(0,(int *)) = ag_rp_23(); break; case 24: ag_rp_24(); break; case 25: ag_rp_25(); break; case 26: ag_rp_26(); break; case 27: ag_rp_27(); break; case 28: ag_rp_28(); break; case 29: ag_rp_29(); break; case 30: ag_rp_30(); break; case 31: ag_rp_31(); break; case 32: ag_rp_32(); break; case 33: ag_rp_33(); break; case 34: ag_rp_34(); break; case 35: ag_rp_35(); break; case 36: ag_rp_36(); break; case 37: ag_rp_37(); break; case 38: ag_rp_38(V(1,(InputToken *))); break; case 39: ag_rp_39(V(1,(TypeDefinition *))); break; case 40: ag_rp_40(V(1,(Scope * *)), V(2,(InputToken *))); break; case 41: ag_rp_41(V(1,(Scope * *)), V(2,(TypeDefinition *))); break; case 42: ag_rp_42(V(1,(InputToken *))); break; case 43: V(0,(TypeDefinition *)) = ag_rp_43(V(0,(InputToken *))); break; case 44: V(0,(TypeDefinition *)) = ag_rp_44(V(0,(InputToken *))); break; case 45: V(0,(Scope * *)) = ag_rp_45(); break; case 46: V(0,(Scope * *)) = ag_rp_46(V(0,(TypeDefinition *))); break; case 47: V(0,(Scope * *)) = ag_rp_47(V(0,(TypeDefinition *))); break; case 48: V(0,(Scope * *)) = ag_rp_48(V(0,(Scope * *)), V(1,(TypeDefinition *))); break; case 49: V(0,(Scope * *)) = ag_rp_49(V(0,(Scope * *)), V(1,(TypeDefinition *))); break; case 50: V(0,(Scope * *)) = ag_rp_50(V(0,(Scope * *))); break; case 51: V(0,(Scope * *)) = ag_rp_51(V(1,(Scope * *))); break; case 52: V(0,(Scope * *)) = ag_rp_52(V(0,(Scope * *))); break; case 53: V(0,(Scope * *)) = ag_rp_53(V(0,(Scope * *))); break; case 54: V(0,(Scope * *)) = ag_rp_54(V(0,(Scope * *))); break; case 55: V(0,(Scope * *)) = ag_rp_55(V(1,(Scope * *))); break; case 56: V(0,(Scope * *)) = ag_rp_56(); break; case 57: V(0,(Scope * *)) = ag_rp_57(V(0,(Scope * *))); break; case 58: V(0,(Scope * *)) = ag_rp_58(V(0,(Scope * *))); break; case 59: V(0,(Scope * *)) = ag_rp_59(V(0,(Scope * *))); break; case 60: V(0,(Scope * *)) = ag_rp_60(V(0,(Scope * *))); break; case 61: V(0,(Scope * *)) = ag_rp_61(V(0,(Scope * *))); break; case 62: V(0,(Scope * *)) = ag_rp_62(V(0,(InputToken *))); break; case 63: V(0,(Scope * *)) = ag_rp_63(V(0,(InputToken *))); break; case 64: V(0,(Scope * *)) = ag_rp_64(V(1,(InputToken *))); break; case 65: V(0,(Scope * *)) = ag_rp_65(V(1,(InputToken *))); break; case 66: ag_rp_66(); break; case 67: ag_rp_67(); break; case 68: ag_rp_68(); break; case 69: ag_rp_69(); break; case 70: ag_rp_70(V(1,(Scope * *))); break; case 71: ag_rp_71(V(2,(Scope * *))); break; case 72: ag_rp_72(V(3,(Scope * *))); break; case 73: ag_rp_73(V(1,(Scope * *))); break; case 74: ag_rp_74(); break; case 75: ag_rp_75(); break; case 76: ag_rp_76(); break; case 77: ag_rp_77(); break; case 78: ag_rp_78(); break; case 79: ag_rp_79(V(1,(InputToken *))); break; case 80: ag_rp_80(V(1,(TypeDefinition *))); break; case 81: ag_rp_81(V(1,(InputToken *))); break; case 82: ag_rp_82(V(1,(Scope * *)), V(2,(InputToken *))); break; case 83: ag_rp_83(V(1,(Scope * *)), V(3,(InputToken *))); break; case 84: ag_rp_84(); break; case 85: ag_rp_85(); break; case 86: ag_rp_86(V(0,(Scope * *))); break; case 87: ag_rp_87(V(2,(Scope * *))); break; case 88: V(0,(Scope * *)) = ag_rp_88(V(0,(InputToken *))); break; case 89: V(0,(Scope * *)) = ag_rp_89(V(0,(InputToken *))); break; case 90: V(0,(Scope * *)) = ag_rp_90(V(0,(Scope * *))); break; case 91: V(0,(Scope * *)) = ag_rp_91(V(2,(Scope * *))); break; case 92: V(0,(Scope * *)) = ag_rp_92(V(2,(Scope * *))); break; case 93: V(0,(Scope * *)) = ag_rp_93(V(2,(InputToken *))); break; case 94: V(0,(Scope * *)) = ag_rp_94(V(2,(InputToken *))); break; case 95: V(0,(Scope * *)) = ag_rp_95(V(0,(Scope * *)), V(1,(TypeDefinition *))); break; case 96: ag_rp_96(); break; case 97: ag_rp_97(); break; case 98: ag_rp_98(V(1,(InputToken *))); break; case 99: V(0,(InputToken *)) = ag_rp_99(V(0,(InputToken *))); break; } (PCB).la_ptr = (PCB).pointer; } #define TOKEN_NAMES parse_token_names const char *const parse_token_names[494] = { "translation unit", "line number", "statement", "type specifier seq", "ptr operator", "class name", "IDENTIFIER", "explicitly typed identifier", "nested name specifier", "NEW", "DELETE", "LINE", "", "translation unit", "declaration list", "eof", "literal", "HEXconstant", "OCTconstant", "DECconstant", "FLOATconstant", "CHARACTERconstant", "STRINGliteral", "", "CLASS_NAME", "template id", "primary expression", "THIS", "QUAL", "operator function id", "qualified id", "'('", "expression hack 1", "')'", "unqualified id", "id expression", "conversion function id", "TEMPLATE", "namespace name", "postfix expression", "'['", "expression", "']'", "expression list", "", "simple type specifier", "'.'", "ARROW", "pseudo destructor name", "INCR", "DECR", "DYNAMIC_CAST", "'<'", "type id", "'>'", "STATIC_CAST", "REINTERPRET_CAST", "CONST_CAST", "TYPEID", "assignment expression", "','", "nonclass type name", "'~'", "unary expression", "cast expression", "unary operator", "SIZEOF", "new expression", "delete expression", "'&'", "'*'", "'+'", "'-'", "'!'", "new", "new type id", "new initializer", "", "new placement", "expression list hack 2", "retry", "resynch", "new declarator", "direct new declarator", "constant expression", "delete", "error", "restricted assignment expression hack 5", "restricted assignment expression", "pm expression", "DOT_STAR", "ARROW_STAR", "multiplicative expression", "'/'", "'%'", "additive expression", "shift expression", "LS", "RS", "relational expression", "LE", "GE", "equality expression", "EQ", "NE", "and expression", "exclusive or expression", "'^'", "inclusive or expression", "'|'", "logical and expression", "AND", "logical or expression", "OR", "conditional expression", "'\\?'", "':'", "assignment operator", "throw expression", "'='", "MULT_EQ", "DIV_EQ", "MOD_EQ", "ADD_EQ", "SUB_EQ", "LS_EQ", "RS_EQ", "AND_EQ", "OR_EQ", "XOR_EQ", "labeled statement", "compound statement", "selection statement", "iteration statement", "jump statement", "try block", "block declaration", "variable declaration", "function definition 2", "statement try 2", "type qualifier", "", "declarator list", "';'", "function definition 1", "statement try 3", "expression statement", "CASE", "DEFAULT", "begin block", "statement seq", "", "'}'", "'{'", "IF", "condition", "ELSE", "SWITCH", "condition kernel", "declarator", "condition kernel 2", "WHILE", "DO", "for header", "for init statement", "", "", "", "FOR", "for init", "for variable declaration", "for init 2", "decl specifier seq", "init declarator list", "BREAK", "CONTINUE", "RETURN", "GOTO", "declaration seq", "declaration hack", "declaration", "simple declaration", "explicit instantiation", "explicit specialization", "linkage specification", "namespace definition", "asm definition", "namespace alias definition", "using declaration", "using directive", "template header", "EXPORT", "attempt declarator list", "resynch text", "balanced braces", "resynch item", "", "balanced parens", "balanced brackets", "not right paren", "not right bracket", "not right brace", "", "", "", "", "fundamental type", "predefined specifier", "", "", "", "user defined specifier", "", "restricted decl specifier seq", "restricted specifier", "qualified type name", "storage class specifier", "AUTO", "REGISTER", "STATIC", "EXTERN", "MUTABLE", "function specifier", "INLINE", "VIRTUAL", "EXPLICIT", "FRIEND", "TYPEDEF", "cv qualifier", "CHAR", "WCHAR_T", "BOOL", "SHORT", "INT", "LONG", "SIGNED", "UNSIGNED", "FLOAT", "DOUBLE", "VOID", "class specifier", "enum specifier", "elaborated type specifier", "user type specifier", "ENUM_NAME", "TYPEDEF_NAME", "class key", "name qualifier", "ENUM", "template argument list", "TYPENAME", "enumerator list", "", "enumerator definition", "NAMESPACE_NAME", "NAMESPACE_ALIAS", "named namespace definition", "unnamed namespace definition", "original namespace definition", "extension namespace definition", "NAMESPACE", "namespace body", "qualified namespace specifier", "USING", "ASM", "init declarator", "direct declarator", "initializer", "declarator id", "parameter declaration clause hack 4", "cv qualifier seq", "", "exception specification", "", "", "declarator hack", "direct declarator hack", "declarator hack 3", "CONSTANT", "VOLATILE", "TEMPLATE_NAME", "abstract declarator", "", "", "", "abstract declarator hack", "", "direct abstract declarator hack", "parameter declaration clause hack 3", "parameter declaration clause", "", "direct abstract declarator", "parameter declaration list", "ELLIPSIS", "parameter declaration", "", "expression list hack 4", "", "", "", "constructor identifier", "ctor initializer", "", "function body", "constructor try block", "TRY", "handler seq", "function identifier", "function try block", "initializer clause", "initializer list", "", "class head", "member specification", "", "base clause", "specifier lookahead", "", "CLASS", "STRUCT", "UNION", "member declaration hack", "member declaration", "member restore", "member declarator list", "", "access specifier", "member declarator", "pure specifier", "constant intializer", "'0'", "base specifier list", "base specifier", "qualified class name", "", "", "PRIVATE", "PROTECTED", "PUBLIC", "OPERATOR", "conversion type id", "conversion declarator", "", "mem initializer list", "mem initializer", "mem initializer id", "operator", "", "template parameter list", "template parameter", "type parameter", "template parameter declaration", "restricted conditional expression", "restricted throw expression", "THROW", "", "", "template argument", "handler", "CATCH", "exception declaration", "", "type id list", "", "", "", "", "HEXconstant", "OCTconstant", "DECconstant", "FLOATconstant", "CHARACTERconstant", "STRINGliteral", "CLASS_NAME", "THIS", "IDENTIFIER", "QUAL", "')'", "'('", "TEMPLATE", "']'", "'['", "'.'", "ARROW", "INCR", "DECR", "'>'", "'<'", "DYNAMIC_CAST", "STATIC_CAST", "REINTERPRET_CAST", "CONST_CAST", "TYPEID", "','", "'~'", "SIZEOF", "'&'", "'*'", "'+'", "'-'", "'!'", "NEW", "DELETE", "DOT_STAR", "ARROW_STAR", "'/'", "'%'", "LS", "RS", "LE", "GE", "EQ", "NE", "'^'", "'|'", "AND", "OR", "':'", "'\\?'", "'='", "MULT_EQ", "DIV_EQ", "MOD_EQ", "ADD_EQ", "SUB_EQ", "LS_EQ", "RS_EQ", "AND_EQ", "OR_EQ", "XOR_EQ", "';'", "CASE", "DEFAULT", "'}'", "'{'", "IF", "ELSE", "SWITCH", "WHILE", "DO", "FOR", "BREAK", "CONTINUE", "RETURN", "GOTO", "EXPORT", "AUTO", "REGISTER", "STATIC", "EXTERN", "MUTABLE", "INLINE", "VIRTUAL", "EXPLICIT", "FRIEND", "TYPEDEF", "CHAR", "WCHAR_T", "BOOL", "SHORT", "INT", "LONG", "SIGNED", "UNSIGNED", "FLOAT", "DOUBLE", "VOID", "ENUM_NAME", "TYPEDEF_NAME", "ENUM", "TYPENAME", "NAMESPACE_NAME", "NAMESPACE_ALIAS", "NAMESPACE", "USING", "ASM", "CONSTANT", "VOLATILE", "TEMPLATE_NAME", "ELLIPSIS", "TRY", "CLASS", "STRUCT", "UNION", "'0'", "PRIVATE", "PROTECTED", "PUBLIC", "OPERATOR", "THROW", "CATCH", "", "LINE", "", }; #ifndef MISSING_FORMAT #define MISSING_FORMAT "Missing %s" #endif #ifndef UNEXPECTED_FORMAT #define UNEXPECTED_FORMAT "Unexpected %s" #endif #ifndef UNNAMED_TOKEN #define UNNAMED_TOKEN "input" #endif static void ag_diagnose(void) { int ag_snd = (PCB).sn; int ag_k = ag_sbt[ag_snd]; if (*TOKEN_NAMES[ag_tstt[ag_k]] && ag_astt[ag_k + 1] == ag_action_8) { sprintf((PCB).ag_msg, MISSING_FORMAT, TOKEN_NAMES[ag_tstt[ag_k]]); } else if (ag_astt[ag_sbe[(PCB).sn]] == ag_action_8 && (ag_k = (int) ag_sbe[(PCB).sn] + 1) == (int) ag_sbt[(PCB).sn+1] - 1 && *TOKEN_NAMES[ag_tstt[ag_k]]) { sprintf((PCB).ag_msg, MISSING_FORMAT, TOKEN_NAMES[ag_tstt[ag_k]]); } else if ((PCB).token_number && *TOKEN_NAMES[(PCB).token_number]) { sprintf((PCB).ag_msg, UNEXPECTED_FORMAT, TOKEN_NAMES[(PCB).token_number]); } else if (isprint(INPUT_CODE((*(PCB).pointer))) && INPUT_CODE((*(PCB).pointer)) != '\\') { char buf[20]; sprintf(buf, "\'%c\'", (char) INPUT_CODE((*(PCB).pointer))); sprintf((PCB).ag_msg, UNEXPECTED_FORMAT, buf); } else sprintf((PCB).ag_msg, UNEXPECTED_FORMAT, UNNAMED_TOKEN); (PCB).error_message = (PCB).ag_msg; } static int ag_action_1_r_proc(void); static int ag_action_2_r_proc(void); static int ag_action_3_r_proc(void); static int ag_action_4_r_proc(void); static int ag_action_1_s_proc(void); static int ag_action_3_s_proc(void); static int ag_action_1_proc(void); static int ag_action_2_proc(void); static int ag_action_3_proc(void); static int ag_action_4_proc(void); static int ag_action_5_proc(void); static int ag_action_6_proc(void); static int ag_action_7_proc(void); static int ag_action_8_proc(void); static int ag_action_9_proc(void); static int ag_action_10_proc(void); static int ag_action_11_proc(void); static int ag_action_8_proc(void); static int (*const ag_r_procs_scan[])(void) = { ag_action_1_r_proc, ag_action_2_r_proc, ag_action_3_r_proc, ag_action_4_r_proc }; static int (*const ag_s_procs_scan[])(void) = { ag_action_1_s_proc, ag_action_2_r_proc, ag_action_3_s_proc, ag_action_4_r_proc }; static int (*const ag_gt_procs_scan[])(void) = { ag_action_1_proc, ag_action_2_proc, ag_action_3_proc, ag_action_4_proc, ag_action_5_proc, ag_action_6_proc, ag_action_7_proc, ag_action_8_proc, ag_action_9_proc, ag_action_10_proc, ag_action_11_proc, ag_action_8_proc }; static int ag_action_1_er_proc(void); static int ag_action_2_er_proc(void); static int ag_action_3_er_proc(void); static int ag_action_4_er_proc(void); static int (*const ag_er_procs_scan[])(void) = { ag_action_1_er_proc, ag_action_2_er_proc, ag_action_3_er_proc, ag_action_4_er_proc }; static void ag_error_resynch(void) { int ag_k; int ag_ssx = (PCB).ssx; ag_diagnose(); SYNTAX_ERROR; if ((PCB).exit_flag != AG_RUNNING_CODE) return; while (1) { ag_k = ag_sbt[(PCB).sn]; while (ag_tstt[ag_k] != 86 && ag_tstt[ag_k]) ag_k++; if (ag_tstt[ag_k] || (PCB).ssx == 0) break; (PCB).sn = (PCB).ss[--(PCB).ssx]; } if (ag_tstt[ag_k] == 0) { (PCB).sn = PCB.ss[(PCB).ssx = ag_ssx]; (PCB).exit_flag = AG_SYNTAX_ERROR_CODE; return; } ag_k = ag_sbt[(PCB).sn]; while (ag_tstt[ag_k] != 86 && ag_tstt[ag_k]) ag_k++; (PCB).ag_ap = ag_pstt[ag_k]; (ag_er_procs_scan[ag_astt[ag_k]])(); while (1) { ag_k = ag_sbt[(PCB).sn]; while (ag_tstt[ag_k] != (unsigned short) (PCB).token_number && ag_tstt[ag_k]) ag_k++; if (ag_tstt[ag_k] && ag_astt[ag_k] != ag_action_10) break; if ((PCB).token_number == 15) {(PCB).exit_flag = AG_SYNTAX_ERROR_CODE; return;} (PCB).la_ptr = ++(PCB).pointer; (PCB).token_number = (parse_token_type) AG_TCV(INPUT_CODE(*(PCB).la_ptr)); (PCB).la_ptr++; } (PCB).la_ptr = (PCB).pointer; } static int ag_action_10_proc(void) { int ag_t = (PCB).token_number; (PCB).btsx = 0, (PCB).drt = -1; do { (PCB).pointer = (PCB).la_ptr; (PCB).token_number = (parse_token_type) AG_TCV(INPUT_CODE(*(PCB).la_ptr)); (PCB).la_ptr++; } while ((PCB).token_number == (parse_token_type) ag_t); (PCB).la_ptr = (PCB).pointer; return 1; } static int ag_action_11_proc(void) { int ag_t = (PCB).token_number; (PCB).btsx = 0, (PCB).drt = -1; do { (*(InputToken *) &(PCB).vs[(PCB).ssx]) = *(PCB).pointer; (PCB).ssx--; (PCB).pointer = (PCB).la_ptr; ag_ra(); if ((PCB).exit_flag != AG_RUNNING_CODE) return 0; (PCB).ssx++; (PCB).token_number = (parse_token_type) AG_TCV(INPUT_CODE(*(PCB).la_ptr)); (PCB).la_ptr++; } while ((PCB).token_number == (parse_token_type) ag_t); (PCB).la_ptr = (PCB).pointer; return 1; } static int ag_action_3_r_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap] - 1; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; (PCB).btsx = 0, (PCB).drt = -1; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; ag_ra(); return (PCB).exit_flag == AG_RUNNING_CODE; } static int ag_action_3_s_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap] - 1; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; (PCB).btsx = 0, (PCB).drt = -1; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; ag_ra(); return (PCB).exit_flag == AG_RUNNING_CODE; } static int ag_action_4_r_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap] - 1; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; return 1; } static int ag_action_2_proc(void) { (PCB).btsx = 0, (PCB).drt = -1; if ((PCB).ssx >= 128) { ag_trace_error(); (PCB).exit_flag = AG_STACK_ERROR_CODE; PARSER_STACK_OVERFLOW; } (*(InputToken *) &(PCB).vs[(PCB).ssx]) = *(PCB).pointer; GET_CONTEXT; (PCB).ss[(PCB).ssx] = (PCB).sn; (PCB).ssx++; (PCB).sn = (PCB).ag_ap; (PCB).pointer = (PCB).la_ptr; return 0; } static int ag_action_9_proc(void) { if ((PCB).drt == -1) { (PCB).drt=(PCB).token_number; (PCB).dssx=(PCB).ssx; (PCB).dsn=(PCB).sn; } ag_prot(); (PCB).vs[(PCB).ssx] = ag_null_value; GET_CONTEXT; (PCB).ss[(PCB).ssx] = (PCB).sn; (PCB).ssx++; (PCB).sn = (PCB).ag_ap; (PCB).la_ptr = (PCB).pointer; return (PCB).exit_flag == AG_RUNNING_CODE; } static int ag_action_2_r_proc(void) { (PCB).ssx++; (PCB).sn = (PCB).ag_ap; return 0; } static int ag_action_7_proc(void) { --(PCB).ssx; (PCB).la_ptr = (PCB).pointer; (PCB).exit_flag = AG_SUCCESS_CODE; return 0; } static int ag_action_1_proc(void) { (PCB).pointer = (PCB).la_ptr; (PCB).exit_flag = AG_SUCCESS_CODE; return 0; } static int ag_action_1_r_proc(void) { (PCB).exit_flag = AG_SUCCESS_CODE; return 0; } static int ag_action_1_s_proc(void) { (PCB).exit_flag = AG_SUCCESS_CODE; return 0; } static int ag_action_4_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap] - 1; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; (PCB).btsx = 0, (PCB).drt = -1; (*(InputToken *) &(PCB).vs[(PCB).ssx]) = *(PCB).pointer; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; else GET_CONTEXT; (PCB).ss[(PCB).ssx] = (PCB).sn; (PCB).pointer = (PCB).la_ptr; while ((PCB).exit_flag == AG_RUNNING_CODE) { unsigned ag_t1 = ag_sbe[(PCB).sn] + 1; unsigned ag_t2 = ag_sbt[(PCB).sn+1] - 1; do { unsigned ag_tx = (ag_t1 + ag_t2)/2; if (ag_tstt[ag_tx] < (unsigned short)(PCB).reduction_token) ag_t1 = ag_tx + 1; else ag_t2 = ag_tx; } while (ag_t1 < ag_t2); (PCB).ag_ap = ag_pstt[ag_t1]; if ((ag_s_procs_scan[ag_astt[ag_t1]])() == 0) break; } return 0; } static int ag_action_3_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap] - 1; (PCB).btsx = 0, (PCB).drt = -1; (*(InputToken *) &(PCB).vs[(PCB).ssx]) = *(PCB).pointer; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; else GET_CONTEXT; (PCB).ss[(PCB).ssx] = (PCB).sn; (PCB).pointer = (PCB).la_ptr; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; ag_ra(); while ((PCB).exit_flag == AG_RUNNING_CODE) { unsigned ag_t1 = ag_sbe[(PCB).sn] + 1; unsigned ag_t2 = ag_sbt[(PCB).sn+1] - 1; do { unsigned ag_tx = (ag_t1 + ag_t2)/2; if (ag_tstt[ag_tx] < (unsigned short)(PCB).reduction_token) ag_t1 = ag_tx + 1; else ag_t2 = ag_tx; } while (ag_t1 < ag_t2); (PCB).ag_ap = ag_pstt[ag_t1]; if ((ag_s_procs_scan[ag_astt[ag_t1]])() == 0) break; } return 0; } static int ag_action_8_proc(void) { int ag_k = ag_sbt[(PCB).sn]; while (ag_tstt[ag_k] != 86 && ag_tstt[ag_k]) ag_k++; if (ag_tstt[ag_k] == 0) ag_undo(); ag_trace_error(); (PCB).la_ptr = (PCB).pointer; ag_error_resynch(); return (PCB).exit_flag == AG_RUNNING_CODE; } static int ag_action_5_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap]; (PCB).btsx = 0, (PCB).drt = -1; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; else { GET_CONTEXT; (PCB).ss[(PCB).ssx] = (PCB).sn; } (PCB).la_ptr = (PCB).pointer; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; ag_ra(); while ((PCB).exit_flag == AG_RUNNING_CODE) { unsigned ag_t1 = ag_sbe[(PCB).sn] + 1; unsigned ag_t2 = ag_sbt[(PCB).sn+1] - 1; do { unsigned ag_tx = (ag_t1 + ag_t2)/2; if (ag_tstt[ag_tx] < (unsigned short)(PCB).reduction_token) ag_t1 = ag_tx + 1; else ag_t2 = ag_tx; } while (ag_t1 < ag_t2); (PCB).ag_ap = ag_pstt[ag_t1]; if ((ag_r_procs_scan[ag_astt[ag_t1]])() == 0) break; } return (PCB).exit_flag == AG_RUNNING_CODE; } static int ag_action_6_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap]; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; if ((PCB).drt == -1) { (PCB).drt=(PCB).token_number; (PCB).dssx=(PCB).ssx; (PCB).dsn=(PCB).sn; } if (ag_sd) { (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; } else { ag_prot(); (PCB).vs[(PCB).ssx] = ag_null_value; GET_CONTEXT; (PCB).ss[(PCB).ssx] = (PCB).sn; } (PCB).la_ptr = (PCB).pointer; while ((PCB).exit_flag == AG_RUNNING_CODE) { unsigned ag_t1 = ag_sbe[(PCB).sn] + 1; unsigned ag_t2 = ag_sbt[(PCB).sn+1] - 1; do { unsigned ag_tx = (ag_t1 + ag_t2)/2; if (ag_tstt[ag_tx] < (unsigned short)(PCB).reduction_token) ag_t1 = ag_tx + 1; else ag_t2 = ag_tx; } while (ag_t1 < ag_t2); (PCB).ag_ap = ag_pstt[ag_t1]; if ((ag_r_procs_scan[ag_astt[ag_t1]])() == 0) break; } return (PCB).exit_flag == AG_RUNNING_CODE; } static int ag_action_2_er_proc(void) { (PCB).btsx = 0, (PCB).drt = -1; (*(InputToken *) &(PCB).vs[(PCB).ssx]) = *(PCB).pointer; (PCB).ssx++; (PCB).sn = (PCB).ag_ap; return 0; } static int ag_action_1_er_proc(void) { (PCB).btsx = 0, (PCB).drt = -1; (PCB).exit_flag = AG_SUCCESS_CODE; return 0; } static int ag_action_4_er_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap] - 1; (PCB).btsx = 0, (PCB).drt = -1; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; else (PCB).ss[(PCB).ssx] = (PCB).sn; while ((PCB).exit_flag == AG_RUNNING_CODE) { unsigned ag_t1 = ag_sbe[(PCB).sn] + 1; unsigned ag_t2 = ag_sbt[(PCB).sn+1] - 1; do { unsigned ag_tx = (ag_t1 + ag_t2)/2; if (ag_tstt[ag_tx] < (unsigned short)(PCB).reduction_token) ag_t1 = ag_tx + 1; else ag_t2 = ag_tx; } while (ag_t1 < ag_t2); (PCB).ag_ap = ag_pstt[ag_t1]; if ((ag_s_procs_scan[ag_astt[ag_t1]])() == 0) break; } return 0; } static int ag_action_3_er_proc(void) { int ag_sd = ag_fl[(PCB).ag_ap] - 1; (PCB).btsx = 0, (PCB).drt = -1; if (ag_sd) (PCB).sn = (PCB).ss[(PCB).ssx -= ag_sd]; else (PCB).ss[(PCB).ssx] = (PCB).sn; (PCB).reduction_token = (parse_token_type) ag_ptt[(PCB).ag_ap]; ag_ra(); while ((PCB).exit_flag == AG_RUNNING_CODE) { unsigned ag_t1 = ag_sbe[(PCB).sn] + 1; unsigned ag_t2 = ag_sbt[(PCB).sn+1] - 1; do { unsigned ag_tx = (ag_t1 + ag_t2)/2; if (ag_tstt[ag_tx] < (unsigned short)(PCB).reduction_token) ag_t1 = ag_tx + 1; else ag_t2 = ag_tx; } while (ag_t1 < ag_t2); (PCB).ag_ap = ag_pstt[ag_t1]; if ((ag_s_procs_scan[ag_astt[ag_t1]])() == 0) break; } return 0; } void init_parse(void) { (PCB).la_ptr = (PCB).pointer; (PCB).ss[0] = (PCB).sn = (PCB).ssx = 0; (PCB).exit_flag = AG_RUNNING_CODE; (PCB).btsx = 0, (PCB).drt = -1; } void parse(void) { init_parse(); (PCB).exit_flag = AG_RUNNING_CODE; while ((PCB).exit_flag == AG_RUNNING_CODE) { unsigned ag_t1 = ag_sbt[(PCB).sn]; if (ag_tstt[ag_t1]) { unsigned ag_t2 = ag_sbe[(PCB).sn] - 1; (PCB).token_number = (parse_token_type) AG_TCV(INPUT_CODE(*(PCB).la_ptr)); (PCB).la_ptr++; do { unsigned ag_tx = (ag_t1 + ag_t2)/2; if (ag_tstt[ag_tx] > (unsigned short)(PCB).token_number) ag_t1 = ag_tx + 1; else ag_t2 = ag_tx; } while (ag_t1 < ag_t2); if (ag_tstt[ag_t1] != (unsigned short)(PCB).token_number) ag_t1 = ag_sbe[(PCB).sn]; } (PCB).ag_ap = ag_pstt[ag_t1]; (ag_gt_procs_scan[ag_astt[ag_t1]])(); } }